משתמש:YoavRamon/רשת קונבולוציה

מתוך ויקיפדיה, האנציקלופדיה החופשית

בלמידת מכונה, רשת קונבולוציה (בקיצור באנגלית נקראות לפעמים CNN), היא סוג של רשת עצבית מלאכותית, הנפוצה בשימוש בעיקר בתחום של ראייה ממוחשבת.

ההמצאה של רשתות קונבולציה קיבלה השראה במידה רבה ממחקרים ביולוגיים על תהליך הראייה עצמו[1] ומתוך תפיסה שהחיבוריות בין הנוירונים ברשת דומה לסידור הנוירונים בתוך קליפת הראייה. במוח, נוירונים בודדים בקליפת המוח מגיבים לגירויים רק באזור מוגבל של שדה הראייה (Visual field) המכונה שדה הקלט (Receptive Field) ושדות הקלט של נוירונים שונים חופפים זה על זה כך שהם מכסים את כל שדה הראייה. מונחים אלה הלקוחים מתחום האופטיקה יחזרו כאשר נתאר בפירוט את רשת הקונבולוציה.

ברשתות קונבולוציה משתמשים בעיבוד-מקדים מועט ביחס לאלגוריתמים קלאסיים אחרים. משמעות הדבר היא שהרשת לומדת בעצמה כיצד להציג פילטרים שבאלגוריתמים קלאסיים היו נבחרים בצורה ידנית ועל ידי ניסוי. העצמאות הזאת מידע מוקדם על הבעייה עצמה ומהצורך לעבודה אנושית היא יתרון משמעותי התורם לפופולריות בשימוש שרשתות אלה.

לרשתות קונבולוציה יש יישומים בראייה ממוחשבתעיבוד תמונהמערכות זיהוי דיבור מערכות המלצה[2] ובעיבוד שפה טבעית.[3]

אבני יסוד[עריכת קוד מקור | עריכה]

רשתות קונבולוציה מורכבת משכבת קלט (Input Layer), שכבת פלט (Output Layer) כמו גם מכמה שכבות חבויות (Hidden Layers). השכבות החבויות ברשתות קונבולוציה הן בדרך כלל שכבות קונבולוציה (Convolutional layers), שכבות צירוף (Pooling layers), שכבות מחוברות-לגמרי (Fully connected layers) ושכבות נוספות העוסקות בנורמליזציה.

שכבות קונבולוציה (Convolutional)[עריכת קוד מקור | עריכה]

The convolutional layer is the core building block of a CNN. The layer's parameters consist of a set of learnable filters (or kernels), which have a small receptive field, but extend through the full depth of the input volume. During the forward pass, each filter is convolved across the width and height of the input volume, computing the dot product between the entries of the filter and the input and producing a 2-dimensional activation map of that filter. As a result, the network learns filters that activate when it detects some specific type of feature at some spatial position in the input.

Stacking the activation maps for all filters along the depth dimension forms the full output volume of the convolution layer. Every entry in the output volume can thus also be interpreted as an output of a neuron that looks at a small region in the input and shares parameters with neurons in the same activation map.

שכבות קונבולוציה הן אבני הבניין הבסיסיות של רשתות קונבולוציה. הפטרמטרים בש

שכבות קונבולוציה, מפעילות פונקציית קונבולוציה על קלט שלהן ומעבירות את התוצאה לשכבה הבאה. הקונבולציה היא זאת שמדמה את התגובה של הניורון הבודד לגירוי הויזואלי.

כל נוירון העושה פעולת קונבולוציה ברשת מעבד רק מידע שנמצא בתוך שדה הקלט שלו.

למרות שניתן להשתמש גם ברשת זרימה קדימה כדי ללמוד מאפיינים או כדי לסווג נתונים שונים, לא ניתן להשתמש בארכיטקטורות פשוטות כאלה כדי לעשות זאת בצורה פרקטית. זאת מכיוון שגם ברשת רדודה למדי יהיה צורך בחישובים רבים על הקלט מכיוון שכל פיקסל בתמונה הוא משתנה רלוונטי. לדוגמא, בשכבה מחוברת-לגמרי המקבלת תמונה בגודל של 100 על 100 פיקסלים נאלץ להשתמש ב-10000 משקלים שונים לחישוב התוצאה של כל נוירון בודד בשכבה החבויה. ברשתות קונבולוציה לעומת זאת, מספר הפרמטרים נמוך משמעות מה שמאפשר פרקטית ליצור רשתות עמוקות בהרבה.[4]

שכבות צירוף (Pooling layers)[עריכת קוד מקור | עריכה]

רשתות קונבולוציה יכול לכלול שכבות צירוף המצרפות את הערכים של מספר נוירונים בקלט אל ערך אחד בפלט לשכבה הבאה.[5] לדוגמה, שכבת צירוף מקסימום (Max pooling) היא שכבה הלוקחת את הערך המקסימלי מבין מספר נוירונים ומוציאה בקלט את ערך זה.[6] דוגמה נוספת היא שכבת צירוף ממצעת (Average pooling) הלוקחת את הערכים ממספר נוירונים ומוציאה בפלט את הערך הממוצע.

שכבות מחוברות-לגמרי (Fully conected layers)[עריכת קוד מקור | עריכה]

שכבות מחוברות לגמרי הן שכבות שבהן כל נוירון מחובר לנוירון שנמצא בשכבה שלפניה. הדבר דומה לארכיטקטורה של פרספטרון רב-שכבתי.

שדה הקלט (Receptive field)[עריכת קוד מקור | עריכה]

ברשתות עצביות מלאכותיות כל נוירון מחובר למספר מסויים של נוירונים בשכבה שלפניו. בשכבות קונבולוציה כל נוירון מקבל מידע רק מאזור מצומצם בשכבה הקודמת הנקרא שדה הקלט. בדרך כלל האזור המצומצם הוא ריבועי.



ארכיטקטורה[עריכת קוד מקור | עריכה]

- CNN אדריכלות נוצר על ידי ערימה של שכבות ברורות זה לשנות את עוצמת הקלט לתוך פלט נפח (למשל, מחזיק את הכיתה ציונים) באמצעות גזיר פונקציה. כמה סוגים שונים של שכבות משמשים בדרך כלל. אנחנו נדון בהם בהמשך:

ארכיטקטורה אופיינית של רשת קונבולוציה

מספר מסננים[עריכת קוד מקור | עריכה]

מאז תכונת המפה גודל פוחתת עם עומק, שכבות ליד קלט השכבה נוטים להיות פחות מסננים בעוד יותר שכבות יכול לקבל יותר. כדי להשוות חישוב על כל שכבה, את התכונה x פיקסל מיקום המוצר נשמר בערך קבוע על פני שכבות. שימור מידע נוסף על הקלט ידרוש שמירה על המספר הכולל של הפעלות (מספר תכונה מפות פעמים מספר פיקסל עמדות) לא פוחת מ שכבה אחת על הבא.

ראה גם[עריכת קוד מקור | עריכה]

המלצות[עריכת קוד מקור | עריכה]

  1. ^ Matusugu, Masakazu; Katsuhiko Mori; Yusuke Mitari; Yuji Kaneda (2003). "Subject independent facial expression recognition with robust face detection using a convolutional neural network" (PDF). Neural Networks. 16 (5): 555–559. doi:10.1016/S0893-6080(03)00115-1. נבדק ב-17 בנובמבר 2013. {{cite journal}}: (עזרה)
  2. ^ van den Oord, Aaron; Dieleman, Sander; Schrauwen, Benjamin (2013-01-01). Burges, C. J. C.; Bottou, L.; Welling, M.; Ghahramani, Z.; Weinberger, K. Q. (eds.). Deep content-based music recommendation (PDF). Curran Associates, Inc. pp. 2643–2651.
  3. ^ Collobert, Ronan; Weston, Jason (2008-01-01). "A Unified Architecture for Natural Language Processing: Deep Neural Networks with Multitask Learning". Proceedings of the 25th International Conference on Machine Learning. ICML '08. New York, NY, USA: ACM: 160–167. doi:10.1145/1390156.1390177. ISBN 978-1-60558-205-4.
  4. ^ Habibi,, Aghdam, Hamed. Guide to convolutional neural networks : a practical application to traffic-sign detection and classification. Heravi, Elnaz Jahani,. Cham, Switzerland. ISBN 9783319575490. OCLC 987790957.{{cite book}}: תחזוקה - ציטוט: extra punctuation (link)
  5. ^ Krizhevsky, Alex. "ImageNet Classification with Deep Convolutional Neural Networks" (PDF). נבדק ב-17 בנובמבר 2013. {{cite web}}: (עזרה)
  6. ^ Ciresan, Dan; Meier, Ueli; Schmidhuber, Jürgen (ביוני 2012). "Multi-column deep neural networks for image classification". 2012 IEEE Conference on Computer Vision and Pattern Recognition. New York, NY: Institute of Electrical and Electronics Engineers (IEEE): 3642–3649. arXiv:1202.2745. doi:10.1109/CVPR.2012.6248110. ISBN 978-1-4673-1226-4. OCLC 812295155. נבדק ב-2013-12-09. {{cite journal}}: (עזרה)

[[קטגוריה:ראייה ממוחשבת]]