Menu
CoddyTech
flag Ar iconالعربيةdown icon

ما هو نموذج تعلم الآلة؟

الدرس 3 من 19 في دورة مقدمة في تعلم الآلة على Coddy.

يهدف نموذج تعلم الآلة إلى إجراء تنبؤات بناءً على البيانات التاريخية. وللقيام بذلك بفعالية، يجب على النموذج فهم الخصائص الإحصائية لمجموعة البيانات. ولا يمكن تحقيق هذا الفهم بمجرد تزويد النموذج بخوارزمية أو دالة رياضية تصف توزيع البيانات.

بدلاً من ذلك، يجب على النموذج تعلم هذه الخصائص من خلال التدريب. علاوة على ذلك، تمتلك كل مجموعة بيانات خصائص إحصائية فريدة. لذلك، يجب تدريب نموذج منفصل لكل مجموعة بيانات متميزة.

 

تسمى مرحلة التعلم fitting أو fit. وبعد أن يتعلم النموذج توزيع البيانات، يمكننا تزويده ببيانات جديدة لم يسبق له رؤيتها والتنبؤ بمخرجاتها، وتسمى هذه المرحلة predicting أو predict.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

challenge icon

التحدي

سهل

سنقوم بإنشاء أبسط نموذج تعلم آلي خاضع للإشراف (supervised learning) في هذا التحدي. لا يُستخدم هذا النموذج بأي شكل من الأشكال في الصناعة. بدلاً من ذلك، الغرض الكامل من هذا النموذج هو توضيح كيف سيبدو نموذج التعلم الآلي الحقيقي.

قم بإنشاء نموذج يعيد قيمة y الأكثر تكراراً لقيم X المقابلة.

التعليمات: 

  • تقوم طريقة fit بحساب قيمة y الأكثر تكراراً لكل X وتخزن النتيجة في متغير self.mode
    على سبيل المثال لمجموعة البيانات التالية:

    <strong>X</strong>ABAAB
    <strong>Y</strong>11011

    يجب أن يحتوي self.mode على: {"A": 1, "B": 1}

  • تستقبل طريقة predict قائمة من X_test وتعيد قائمة بنفس الطول. كل قيمة في القائمة المعادة هي قيمة y المتوقعة المقابلة لـ X، باستخدام self.mode الذي تم تعلمه في مرحلة fit.
    على سبيل المثال إذا كان self.mode يحتوي على {"A": 1, "B": 1} وكانت X_train هي ['A', 'B', 'C'] فإن المخرجات يجب أن تكون: [1, 1, None]

كيفية اجتياز حالات الاختبار:

قم بإنشاء دالة باسم train_and_predict تستقبل قوائم X_train و y_train و X_test. وستتبع الخطوات التالية:

  • التعلم باستخدام طريقة fit مع X_train و y_train 
  • التنبؤ بتسميات (labels) X_test
  • إرجاع التسميات المتوقعة

جرّب بنفسك

import numpy as np
np.set_printoptions(legacy='1.13')

class SimpleModel:
    def __init__(self):
        self.mode = {}

    def fit(self, X, y):
        # اكتب كودك هنا
        

    def predict(self, X):
        # اكتب كودك هنا

def train_and_predict(X_train, y_train, X_test):
    model = SimpleModel()
    # تدريب النموذج باستخدام X_train و y_train
    
    # التنبؤ بتسميات X_test
    
    # إرجاع التسميات المتوقعة

جميع دروس مقدمة في تعلم الآلة

تدرّب بنفسك: مترجم Python عبر الإنترنت