Matlab: خريطة التنظيم الذاتي (SOM)
-
18-09-2019 - |
سؤال
أحاول تجميع بعض الصور اعتمادا على الزوايا بين أجزاء الجسم.
الميزات المستخرجة من كل صورة هي:
angle1 : torso - torso
angle2 : torso - upper left arm
..
angle10: torso - lower right foot
لذلك فإن بيانات الإدخال هي مصفوفة بحجم 1057 × 10، حيث يقف 1057 لعدد الصور، و 10 أعوام لزوايا أجزاء الجسم مع الجذع. وبالمثل الاختبار هو مصفوفة 821x10.
أريد أن يتم تجميع جميع الصفوف في بيانات الإدخال ب 88 مجموعة. ثم سوف أستخدم هذه المجموعات للعثور على مجموعات تسقط TestData؟
في عمل سابق، اعتدت K يعني التجميع وهو واضح جدا. نحن فقط نسأل K يعني تجميع البيانات إلى 88 مجموعة. وتنفيذ طريقة أخرى تحسب المسافة بين كل صف في بيانات الاختبار ومراكز كل كتلة، ثم اختر أصغر القيم. هذه هي مجموعة صف بيانات الإدخال المقابلة.
لدي سؤالان:
هل من الممكن القيام بذلك باستخدام في في ماتلاب؟ AFAIK SOM لتجميع البصرية. لكنني بحاجة إلى معرفة الطبقة الفعلية لكل كتلة حتى أتمكن من تسمية بيانات الاختبار الخاصة بي لاحقا عن طريق حساب المجموعة التي تنتمي إليها.
هل لديك حل أفضل؟
المحلول
خريطة التنظيم الذاتي (SOM) هي طريقة التجميع التي تعتبر اختلافا غير مخالف لل الشبكة العصبية الاصطناعية (آن). وبعد ويستخدم ذلك التعلم التنافسي تقنيات لتدريب الشبكة (العقد تنافس فيما بينها لعرض أقوى التنشيط لبيانات معينة)
يمكنك التفكير في SOM كما لو كان يتألف من شبكة من العقد المترابط (الشكل المربع، سداسي، ..)، حيث تكون كل عقدة ناقلات N-Dimtor من الأوزان (نفس حجم البعد مثل نقاط البيانات التي نريد المجموعة).
الفكرة بسيطة؛ بالنظر إلى ناقل كمدخل إلى سوم، نجد العقدة خزانة لذلك، ثم قم بتحديث أوزانها وأوزان العقد المجاورة بحيث يتعامل مع ما يقترب من ناقلات الإدخال (وبالتالي اسم التنظيم الذاتي). تتكرر هذه العملية لجميع بيانات الإدخال.
يتم تعريف المجموعات التي تشكلت ضمنيا من خلال كيفية تنظيم العقد أنفسهم وتشكل مجموعة من العقد بأوزان مماثلة. يمكن رؤيتها بسهولة بصريا.
سوم في وسيلة مماثلة ل K- يعني خوارزمية ولكن مختلفة في أننا لا نفرض عدد ثابت من المجموعات، بدلا من ذلك، نحدد عدد وشكل العقد في الشبكة التي نريدها أن تتكيف مع بياناتنا.
أساسا عندما يكون لديك سوم مدرب، وتريد أن تصنف متجه جديد لإدخال اختبار، فأنت ببساطة تعيينها إلى أقرب عقدة (المسافة كقاييس تشابه) على الشبكة (أفضل وحدة مطابقة BMU)، ويعطي كتنبؤ، فئة [الأغلبية] من المتجهات التي تنتمي إلى عقدة BMU.
ل MATLAB، يمكنك العثور على عدد من صناديق الأدوات التي تنفذ سوم:
- ال Toolbox الشبكة العصبية من mathworks يمكن أن يكون تستخدم بالنسبة تجميع باستخدام سوم (انظر
nctool
أداة التجميع). - أيضا يستحق التدقيق هو Som Toolbox.