النماذج الخطية Linear models تمثل أحد أساسيات تعلم الآلات، حيث تستخدم بشكل واسع في حل مشكلات الانحدار regression والتصنيف classification بفعالية. إحدى مميزات هذه النماذج هي بساطتها ووضوحها، مما يجعلها سهلة التفسير بالنسبة للمستخدمين وسريعة التنفيذ عند التدريب والتطبيق العملي. بفضل هذه الخصائص، تُعد النماذج الخطية الخيار الأول والأساسي في بداية أي تدفق عمل لتدريب النماذج الجديدة.
على الرغم من فوائدها، فإن النماذج الخطية تواجه بعض القيود:
تُعتبر النماذج الخطية أداة تعليمية قيمة لفهم أساسيات تعلم الآلات وتوفر منصة ممتازة للتجارب الأولية في مشاريع التعلم العميق. كما أنها توفر أساسًا قويًا للبناء عليه وتجريب تقنيات أكثر تقدمًا.
من خلال فهم هذه الخصائص والقيود، يمكن لمطوري النماذج استخدام النماذج الخطية بشكل فعال كأدوات أولية قبل التحول إلى نماذج أكثر تعقيدًا وقوة.
هذا الكود يقوم بتوضيح كيفية استخدام مكتبة pandas لتحميل البيانات ومكتبة sklearn لتطبيق نموذجين من النماذج الإحصائية الخطية: الانحدار الخطي والانحدار اللوجستي. سأقوم بشرح كل جزء من الكود خطوة بخطوة:
1- استيراد الحزم اللازمة:
import pandas as pd
from sklearn.linear_model import LinearRegression, LogisticRegression
يتم استيراد حزمة pandas للتعامل مع البيانات في صورة جداول (DataFrames)، وكذلك يتم استيراد LinearRegression و LogisticRegression من sklearn.linear_model لبناء نماذج الانحدار الخطي واللوجستي.
2. إنشاء DataFrame:
df = pd.DataFrame(
[[1, 2, 0], [3, 4, 1], [5, 6, 0], [7, 8, 1]],
columns=["num", "amount", "target"]
)
هنا، يتم إنشاء جدول بيانات DataFrame يحتوي على ثلاثة أعمدة: num, amount, و target. الأعمدة num و amount هي المتغيرات المستقلة، بينما target هو المتغير التابع الذي يتم التنبؤ به.
3. بناء نموذج الانحدار الخطي:
# regression model
reg = LinearRegression().fit(df[["num", "amount"]], df["target"])
reg.score(df[["num", "amount"]], df["target"])
تم إنشاء نموذج الانحدار الخطي LinearRegression وتدريبه (fit) باستخدام المتغيرات num و amount كمتغيرات مستقلة و target كمتغير تابع. بعد ذلك، يتم تقييم النموذج باستخدام طريقة score، والتي تقيس مدى جودة تنبؤات النموذج مقارنةً بالبيانات الفعلية.
4. بناء نموذج الانحدار اللوجستي:
#classification model
clf = LogisticRegression().fit(df[["num", "amount"]], df["target"])
clf.score(df[["num", "amount"]], df["target"])
بشكل مشابه لنموذج الانحدار الخطي، يتم هنا استخدام LogisticRegression لبناء نموذج لتصنيف البيانات. يستخدم هذا النموذج للتنبؤ بفئات العمود target استنادًا إلى المتغيرات المستقلة. بعد التدريب، يتم أيضا تقييم النموذج باستخدام score.
بهذا يكون الكود قد قدم مثالاً على كيفية تنفيذ وتقييم نموذجين إحصائيين لتحليل البيانات، واحد للانحدار الخطي وآخر للتصنيف باستخدام الانحدار اللوجستي.
العودة إلي 005 Algorithms and Tools