أهلا ومرحبا بكم مرة أخرى في الدورة والتعلم العميق.
الآن بعد أن رأينا الشبكات العصبية تعمل ، حان الوقت لنكتشف كيف يتعلمون.
لذلك دعونا نتعمق فيه مباشرة.
هناك طريقتان مختلفتان جوهريًا لجعل البرنامج يفعل ما تريده أن يفعله.
أحدهما هو الترميز الثابت ، حيث تخبر فعليًا القواعد المحددة للبرنامج والنتائج التي تريدها وتوجهها
طوال الطريق بالكامل وتحسب جميع الخيارات الممكنة التي يتعين على البرنامج
التعامل معها.
من ناحية أخرى ، لديك شبكات عصبية حيث تقوم بإنشاء ملف.
تسهيل البرنامج ليكون قادرًا على فهم ما يحتاج إلى القيام به بمفرده.
لذلك تقوم بإنشاء هذه الشبكة العصبية حيث تزودها بالمدخلات ، وتخبرها بما تريده
كمخرجات ، ثم تتركها تكتشف كل شيء بمفردها.
نهجين مختلفين اختلافا جوهريا.
وهذا شيء يجب أن نضعه في الاعتبار أثناء استعراضنا لهذه الدروس.
هدفنا هو إنشاء هذه الشبكة التي تتعلم بعد ذلك من تلقاء نفسها.
سوف نتجنب محاولة وضع القواعد.
والمثال الجيد الذي يمكنني تقديمه لك الآن هو أن هذا سيأتي إلى أبعد من ذلك في الدورة ، لكنه مجرد
مثال مرئي للغاية.
على سبيل المثال ، كيف تميز بين كلب وقط أربعة على الجانب الأيسر؟
في النهج الموضح على اليسار ، يمكنك برمجة أشياء مثل آذان القط يجب أن تكون
هكذا.
ابحث عن شعيرات ، ابحث عن هذا النوع من الأنف.
ابحث عن هذا النوع من أشكال الوجه.
ابحث عن هذه الألوان.
أنت نوعًا ما تصف كل هذه الأشياء وستكون لديك ظروف مثل إذا كانت الأذنين مدببتين
، ثم قطة ، إذا كانت الأذنان تنزلقان ، فمن المحتمل أن تكون كلبًا وما إلى ذلك.
من ناحية أخرى ، بالنسبة للشبكة العصبية ، تقوم فقط بترميز الشبكات العصبية ، وترميز
البنية ، ثم تقوم بتوجيه الشبكة العصبية إلى مجلد به كل هذه القطط والكلاب مع صور القطط والكلاب
التي تم تصنيفها بالفعل.
وأنت تقول ذلك ، حسنًا ، لقد حصلت عليك.
لدي بعض صور القطط والكلاب.
اذهب وتعلم ما هي القطة.
اذهب وتعلم ما هو الكلب.
وستفهم الشبكة العصبية من تلقاء نفسها كل ما تحتاج إلى فهمه.
ثم بعد ذلك ، بمجرد تدريبه ، عندما تعطيه صورة جديدة لقط أو كلب ، سيكون قادرًا
على فهم ما كان عليه.
لذا ها هم.
هذان هما النهجان المختلفان جوهريا.
واليوم سنبدأ ببطء في التعرف على كيفية عمل هذا النهج الثاني.
حسنا.
لذلك دعنا نصل إليها مباشرة هنا.
لدينا شبكة عصبية أساسية للغاية بطبقة واحدة تسمى طبقة واحدة ، شبكة عصبية
متجهة إلى الأمام ، وتسمى أيضًا بصبر.
الآن ، قبل المضي قدمًا ، هناك شيء واحد نحتاج إلى تعديله وهو قيمة المخرجات الآن يمكنك
أن ترى أنه مجرد سبب احتياجنا لوضع قبعة y هناك.
والسبب في ذلك هو عادةً أن Y تمثل القيمة الفعلية وهذا ما سنستخدمه.
إذن Y ستكون القيمة الفعلية التي نراها.
في الواقع ، قيمة المخرجات هي القيمة المتوقعة بواسطة الخوارزمية ، بواسطة الشبكة العصبية
، y hat هي قيمة الإخراج.
هذا هو أساس قيمة المخرجات.
وقد اخترع الباسترون لأول مرة في عام 1957 من قبل فرانك روزنبلات.
وكانت فكرته كلها إنشاء شيء يمكنه التعلم والتكيف مع نفسه.
وهذا ما سننظر إليه الآن.
لذلك لدينا مدرك.
دعونا نرى كيف يتعلم المستوعب.
لنفترض أن لدينا بعض قيم المدخلات التي تم توفيرها إلى المستشعر و / أو بشكل أساسي لشبكتنا
العصبية.
ثم يتم تطبيق وظيفة التنشيط ، لدينا مخرجات والآن سنقوم برسم الناتج على الرسم
البياني.
إذن ها هو ناتجنا y قبعة.
الآن ما نحتاج إلى القيام به هو أن نكون قادرين على التعلم ، نحتاج إلى مقارنة قيمة المخرجات بالقيمة
الفعلية التي نريد أن تحصل عليها الشبكة العصبية بشكل صحيح.
وهذه هي القيمة Y.
وبالتالي إذا قمنا برسمها هنا ، فسترى أن هناك اختلافًا بسيطًا.
سنقوم الآن بحساب دالة تسمى دالة التكلفة يتم حسابها على أنها نصف الفرق في تربيع
الفرق بين القيمة الفعلية وقيمة المخرجات.
يوجد الآن العديد من الطرق التي يمكنك من خلالها التوصل إلى دالة التكلفة.
هناك العديد من وظائف التكلفة المختلفة التي يمكنك استخدامها.
ربما تكون هذه هي وظيفة الفصل الأكثر استخدامًا ولماذا هذه الوظيفة بالتحديد هي التي نستخدمها.
سنكتشف المزيد عندما نتحدث عن الانحدار المتدرج.
لكن في الوقت الحالي سنتفق فقط على أن هذه هي دالة التكلفة.
وبشكل أساسي ، ما تخبرنا به دالة التكلفة هو ما هو الخطأ الذي لديك في تنبؤاتك؟
وهدفنا هو تقليل دالة التكلفة لأنه كلما انخفضت دالة التكلفة ، كلما
اقتربت y من Y.
لذا طالما أننا نتفق على ذلك ، فلنبدأ.
من هنا ، ما يحدث هو دالة التكلفة.
ومن هنا ما يحدث الآن هو أننا بمجرد المقارنة الآن ، سنقوم بتغذية هذه المعلومات
مرة أخرى في الشبكة العصبية.
لذا ها نحن ذا.
هناك معلومات تعود إلى الشبكة العصبية وتذهب إلى الأوزان ويتم تحديث
الأوزان.
في الأساس ، الشيء الوحيد الذي نتحكم فيه في هذه الشبكة العصبية البسيطة للغاية
هو الأوزان w واحد ، w اثنان على طول الطريق إلى w m وهدفنا هو تقليل دالة التكلفة.
لذلك كل ما يمكننا فعله هو تحديث الوزن.
لذلك نقوم بتحديث الأوزان وتعديلها قليلاً وكيف سنكتشف ذلك بالضبط ولكن في الوقت الحالي
نتفق على ذلك.
الأوزان ثم نستمر.
لذا ، لقد وضعت هنا لقطة الشاشة هذه للبيانات فقط لتوضيح نقطة واحدة واضحة جدًا أنه في الوقت الحالي خلال
هذه التجربة بأكملها ، كل ما نقوم به الآن ، نتعامل مع صف واحد فقط.
لذلك نحن نتعامل مع لدينا مجموعة بيانات من صف واحد حيث لدينا على سبيل المثال ، نحن نتعامل
مع المدة التي تدرسها.
مثل المتغير الذي نتوقعه هو ماذا ، ما هي النتائج التي ستحصل عليها في الاختبار.
والمتغيرات المستقلة التابعة التي لدينا هي كم ساعة درست فيها؟
كم ساعة نمت وماذا حصلت في الاختبار القصير في منتصف الفصل الدراسي؟
لذلك في منتصف الفصل الدراسي كان هناك اختبار.
ما هي النسبة التي حصلت عليها هناك؟
بناءً على هذه المتغيرات ، نحاول التنبؤ بالدرجة التي ستحصل عليها في الاختبار.
وفي الامتحان ، 93٪ ، هذه هي القيمة الفعلية.
لهذا السبب نقوم بتغذية هذه القيم الثلاث في شبكتنا العصبية مرة أخرى للمرة الثانية الآن وبعد
ذلك سنقوم بمقارنة النتيجة بـ Y.
لذلك دعونا نرى كيف يعمل هذا.
نحن نغذي هذه القيم في الشبكة العصبية.
يتم تعديل كل شيء وتعديل الأوزان.
لذا كما ترون ، هذا مرة أخرى ، سنقوم بتغذية القيم.
مرة أخرى ، النقطة هنا هي أننا نتغذى بهذه القيم نفسها.
لذلك لدينا صف واحد فقط.
نحاول أن نتدرب في صف واحد.
هذا لأن هذا مجرد مثال أساسي بسيط للغاية.
ثم سنرى ما سيحدث عندما يكون هناك المزيد من الصفوف.
لذا مرة أخرى ، نقوم بتغذية هذه الصفوف في تعديل دوال التكلفة الخاصة بنا.
كما ترى ، كل شيء يحدث على هذا المنوال مرة أخرى.
كما ترون ، في كل مرة تتغير فيها قبعتنا البيضاء لأننا قمنا بتعديل الأوزان ، يتغير رأسنا
المرتفع ، تتغير وظيفة التكلفة لدينا.
دعونا نلقي نظرة مرة أخرى.
لذلك نحن نطعم أولئك الذين يرتدون قبعة بيضاء يتغير ، وظيفة التكلفة تتغير.
نحصل على معلومات تعاد إلى الأوزان حتى يتم تعديل الأوزان مرة أخرى.
نقوم بتغذية نفس القيم في كل مرة يتم فيها تعديل كل شيء والعودة إلى
الأوزان ومرة أخرى يتم التغذية فيها ووقت آخر.
لذلك قمنا بضبط الوزن المعدل ، الأوزان التي نغذيها في المعلومات وها نحن ذا.
إذن هذه المرة قبعة y تساوي y يساوي صفرًا وظيفيًا.
عادة لا نحصل على دالة تكلفة تساوي الصفر.
لكن هذا مثال بسيط للغاية.
لذلك نأمل أن يكون كل هذا منطقيًا في كل مرة نتغذى فيها في نفس الصف بالضبط لأنه في هذه الحالة
فقط ، نتعامل فقط مع هذا الصف في شبكتنا العصبية.
ثم تحصل على الأوزان ، يتم ضرب القيم بالطرق التي يتم بها تطبيق وظيفة التنشيط.
نحصل على y hat y hat مقارنة بـ y.
ثم نرى كيف تغيرت دالة التكلفة.
تغذي التعليقات هذه المعلومات مرة أخرى إلى الشبكة العصبية وقم فقط بضبط الأوزان مرة أخرى
ثم نكرر نفس العملية مرة أخرى بنفس الصف بالضبط.
نحن نحاول تقليل دالة التكلفة هذه.
حتى الآن ، كنا نتعامل مع هذا الصف فقط.
دعونا نرى ما يحدث عندما يكون لديك عدة صفوف.
إذن ها هي مجموعة البيانات الكاملة.
لدينا ثمانية صفوف لعدد ساعات نومك ، أو ربما يكون هؤلاء طلابًا مختلفين في إجراء نفس الاختبار.
كم عدد الساعات الأخرى التي درسوها وعدد الساعات التي قضوها قبل الامتحان وما حصلوا
عليه في الاختبار والنتيجة النهائية للاختبار.
وكما ترون هنا على اليسار ، لدي ثمانية من هذه التصورات.
في الواقع ، هم جميعًا نفس المدرك.
لذلك من المهم أيضًا فهم ذلك.
لقد قمت بضربها أو تكرارها ثماني مرات فقط حتى نتمكن من فهم المفاهيم.
لكن الشيء المهم هنا هو نفس الشبكة العصبية.
سنقوم بتغذية هذه في نفس الشبكة العصبية.
إذا هيا بنا.
هيا بنا نبدأ.
إذن ، حقبة واحدة ، كما ستسمعون ، ذكر فيها آلان حقبة واحدة عندما نمر بمجموعة كاملة من البيانات
ونقوم بتدريب شبكتنا العصبية على كل هذه الصفوف.
إذا هيا بنا.
هيا بنا نبدأ.
إذن لدينا الصف الأول وهناك قبعة y للصف الأول.
هناك صف ثاني.
هناك قبعة بيضاء للصف الثاني.
لذا مرة أخرى ، يتم تغذيتها في نفس الشبكة العصبية في كل مرة.
لقد قمت فقط بنسخها عدة مرات حتى نتمكن من رؤية كيف يحدث هذا بصريًا.
ثم مرة أخرى ، إنه يحدث مرة أخرى.
هذا هو الصف الثالث.
الصف الرابع.
هناك قبعتنا البيضاء للصف الرابع وهكذا.
في الأساس ، نحصل أيضًا على نفس القيم للصفوف الأربعة المتبقية.
لذلك في كل مرة نتغذى فيها على التوالي في شبكتنا العصبية ، نحصل على قيمة.
ثم نقارن بالقيم الفعلية.
إذن هم القيم الفعلية.
لذلك لدينا قيمة فعلية لكل صف واحد.
وبناءً على كل هذه الاختلافات بين القبعة البيضاء و y ، يمكننا حساب دالة
التكلفة ، وهي مجموع كل تلك الفروق التربيعية بين القبعة البيضاء و y ، وكل ذلك منقسم إلى النصف.
وهناك دالة التكلفة.
والآن بشكل أساسي ، ما نفعله بعد أن نحصل على دالة التكلفة الكاملة ، نعود ونحدِّث الأوزان ، ونحدِّث
aw1 ، و w اثنان ، و w ثلاثة.
والشيء المهم الذي يجب تذكره هنا هو أن كل هؤلاء الإدراك الحسي ، كل هذه الشبكات العصبية هي في الواقع
شبكة عصبية واحدة.
لذلك ليس هناك ثمانية منهم.
هناك واحد فقط.
وعندما نقوم بتحديث الأوزان ، سنقوم بتحديث الأوزان في تلك الشبكة العصبية الواحدة.
لذلك ، ستكون الأوزان هي نفسها لجميع الصفوف.
لذلك ليس الأمر أن كل صف له أوزانه الخاصة.
الآن ، تشترك جميع الصفوف في الأوزان.
ولهذا السبب نظرنا إلى دالة التكلفة ، وهي مجموع الفروق التربيعية ، ثم قمنا بتحديث
الأوزان.
والآن من هنا كان هذا مجرد تكرار واحد.
بعد ذلك سنقوم بتشغيل كل هذا مرة أخرى.
سنقوم بتغذية كل صف في الشبكة العصبية ، ومعرفة وظيفة التكلفة لدينا ، والقيام بهذه العملية برمتها
مرة أخرى.
فكما رأينا سابقًا حيث كان لدينا صف واحد فقط وكنا نفعل كل شيء مرارًا وتكرارًا ، مرة
أخرى ، نفس الشيء هنا.
لكننا الآن سنقوم بذلك ثمانية صفوف أو 800 صف أو 8000 صف.
على الرغم من وجود العديد من الصفوف في مجموعة البيانات الخاصة بك ، فإنك تقوم بهذه العملية ثم تحسب دالة التكلفة.
والهدف هنا هو تقليل دالة التكلفة والحصول بمجرد العثور على الحد الأدنى من دالة التكلفة
، هذا هو شبكتك العصبية النهائية.
هذا يعني أنه تم تعديل الأوزان الخاصة بك ووجدت الأوزان المثلى لمجموعة البيانات هذه التي تتدرب عليها وأنت جاهز للمضي
قدمًا في مرحلة الاختبار أو إلى مرحلة التطبيق.
وهذه العملية برمتها تسمى التكاثر العكسي.
لذلك بعض القراءة الإضافية التي قد ترغب في القيام بها لوظيفة التكلفة.
وأنا أعلم أننا تحدثنا للتو عن واحد وهم كثيرون مختلفون.
مقال جيد يقع على الصليب التحقق من صحتها.
يطلق عليه قائمة وظائف التكلفة المستخدمة في الشبكات العصبية جنبًا إلى جنب مع التطبيقات.
لذا فإن عنوان URL موجود ، ولكن يمكنك فقط استخدام Google لمصطلح البحث المحدد أو عبارة البحث ، وسترى
أن هذا هو أول ما ينبثق.
لقد حصلت بالفعل على بعض الأمثلة الجيدة والتطبيقات أو حالات الاستخدام لوظائف التكلفة المختلفة.
لذلك إذا كنت مهتمًا بمعرفة المزيد حول وظائف التكلفة ، فاطلع على هذه المقالة.
وفي هذه الملاحظة ، أتمنى أن تستمتع ببرنامج اليوم التعليمي.
أتطلع إلى رؤيتك في المرة القادمة.
حتى ذلك الحين ، استمتع بالتعلم العميق.