📝 ملخص كورس علم البيانات - 7
هذا الملخص بداية للفصل الثاني بعنوان التعلم العميق ويعطي لمحة بسيطة عن الشبكات العصبية.
الفصل الثاني - التعلم العميق Deep Learning
الدرس الأول - مدخل إلى الشبكات العصبية Introduction to Neural Networks
عمل الشبكات العصبية مشابه لحد كبير لعمل عقل الإنسان، وفيها الآلة تتعلم من الأنماط التي تلاحظها في البيانات التي نعطيها. تستخدم خوارزميات مختلفه في ذلك وتعمل عملية حسابية تستخرج منها افضل النتائج لإتخاذ القرارات. التعلم العميق جزء من تعلم الآلة لذا يجب ان نعرف وتكون لدينا معلومات اساسية عن تعلم الآلة وأساسياتها. شرحت اغلبها في الملخصات السابقة.
شرح مبسط للشبكات العصبية (إضغط على الصورة للإنتقال للفيديو):
Discrete vs Continuous
يقصد بـDiscrete هي البيانات التي ليست متسلسلة مثلاً [2,6,9,15]
ونقوم بعملية حسابيه لتحويلها لبيانات متسلسلة من 0 إلى 1، البيانات يفضل انت تكون دائماً متسلسلة في الشبكات العصبية. sigmoid(x) = 1/(1+e^-x)
The Softmax Function
عندما تكون لدينا أكثر من نتيجتين، مثلاً في الأمثلة السابقة كنا نتوقع رسائل البريد مزعجه أو لا، ماذا لو أردنا ان يخبرنا المودل إذا كان البريد مهم أو لا أو إذا كان مزعجاً.
الآن لدينا ثلاث نتائج:
- البريد مهم
- البريد مزعج
- البريد غير ذلك
نستخدم القانون التالية لتحويل النتائج Scores إلى إحتمالات Probabilites: 1
مثال بايثون
في المثال التالي طريقة حساب Softmax
import numpy as np
def softmax(L):
expL = np.exp(L)
sumExpL = sum(expL)
result = []
for i in expL:
result.append(i*1.0/sumExpL)
return result
One-Hot Encoding
تحدثت في الملخص الثاني عن هذه العملية.
Maximum Likelihood
هي طريقة لزيادة الـProbability وعندما تكون الـ Probability أعلى، يدل أن نتائج المودل ممتازة. 2
Cross-Entropy
تقيم اداء المودل، كلما كان الرقم أقل كل ما كان أفضل. مثال
مثال بايثون
import numpy as np
def cross_entropy(Y, P):
Y = np.float_(Y)
P = np.float_(P)
return -np.sum(Y * np.log(P) + (1 - Y) * np.log(1 - P))
الإنحدار اللوجستي Logistic Regression
سبق ان تحدثت عنه بشكل مفصل في تعلم الآلة للجميع -3
العودة إلى ملخص كورس علم البيانات - 6 - الإنتقال إلى ملخص كورس علم البيانات - 8