פונקציית אקטיבציה
![](http://178.128.105.246/cars-http-upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Artificial_neuron_structure.svg/306px-Artificial_neuron_structure.svg.png)
![](http://178.128.105.246/cars-http-upload.wikimedia.org/wikipedia/commons/thumb/8/88/Logistic-curve.svg/220px-Logistic-curve.svg.png)
פונקציית אקטיבציה של נוירון ברשת עצבית מלאכותית היא פונקציה מתמטית המחשבת את הפלט של הנוירון ביחס לקלטים שהוא מקבל ולמשקלם. פונקציות האקטיבציה הן מרכיב מרכזי ברשתות נוירונים, שהן צורת המימוש הנפוצה של מערכות בינה מלאכותית מודרנית.[1] לפונקציה הנבחרת יש השפעה על ביצועי הרשת, ועל ההתאמה שלה לביצוע המשימה שעליה אומנה.[1][2][3]
מטרת הפונקציה היא לקבוע את עוצמת הפלט של הנוירון, ביחס לקלט שקיבל. ההשראה לאופן הפעולה של פונקציות אקטיבציה התקבלה מאופן הפעולה של תאי העצב במוח, אשר הפלט שלהם נקבע בהתאם לפוטנציאל הפעולה.[4][5][6]
נוירון ברשת נוירונים מלאכותית פועל כפרספטרון (אלגוריתם בסיסי בתחום למידת המכונה), כך שהוא מקבל וקטור קלט, מכפיל אותו בווקטור משקולות שנלמד בזמן האימון. לאחר מכן נקבע פלט הנוירון באמצעות העברת תוצאת המכפלה בפונקציית האקטיבציה.[7][8]
מטרה נוספת של פונקציית האקטיבציה היא להכניס אי-ליניאריות לרשת, ולכן הפונקציות הנמצאות בשימוש רווח הן פונקציות לא ליניאריות, או פונקציות שיש בהן אלמנט כלשהו של אי ליניאריות.[9]
פונקציית אקטיבציה לא ליניארית מאפשרת לפתור בעיות לא טריוויאליות באמצעות חיבור של מספר קטן של צמתים.[10] פונקציות האקטיבציה המודרניות כוללות את ReLU ששימשה במודל הראייה הממוחשבת AlexNet מ-2012,[11][12] את GELU ששימשה במודל BERT שאומן על ידי Google ב-2018,[13] ואת הפונקציה הלוגיסטית סיגמואיד ששימשה במודל זיהוי דיבור משנת 2012 שפותח על ידי הינטון.[14]
השוואה בין פונקציות אקטיבציה
[עריכת קוד מקור | עריכה]מלבד הביצועים האמפיריים שלהן, לפונקציות האקטיבציה יש גם תכונות מתמטיות שונות. לכל תכונה יש השפעה כלשהי על אימון הרשת, וישנן תכונות נוספות שעשויות להשפיע עליה.[15]
ליניאריות ואי ליניאריות
[עריכת קוד מקור | עריכה]על פי משפט הקירוב האוניברסלי (אנ'), רשת עצבית דו-שכבתית שמשתמשת בפונקציית אקטיבציה לא ליניארית, יכולה לקרב כל פונקציה.[16] כאשר הנוירונים ברשת משתמשים בפונקציית אקטיבציה ליניארית, הרשת כולה שווה ערך לרשת חד-שכבתית בשל תכונות הליניאריות.[15][17]
טווח
[עריכת קוד מקור | עריכה]כאשר פונקציית האקטיבציה חסומה, שיטות אימון מבוססות גרדיאנט נוטות להיות יציבות יותר, מכיוון ששינוי בקלט משפיע על המשקולות באופן מוגבל בכל צעד. כאשר הפונקציה לא חסומה, האימון בדרך כלל יעיל יותר מכיוון שקלטים מסוים עשויים להשפיע בצורה חזקה יותר על השינוי במשקולות. במקרה כזה, נדרש בדרך כלל שימוש ב-learning rate (אנ') קטן יותר.[15]
פונקציות שהשיפוע שלהן באינסוף לא שואף לאפס, כלומר לא מתקיים , מתאימות להתמודדות עם בעיית הגרדיאנט הנעלם (אנ') דוגמה לפונקציה כזו היא ReLU.[18]
גזירות ברציפות
[עריכת קוד מקור | עריכה]בשימוש בשיטות אופטימיזציה מבוססות גרדיאנט רצוי שהפונקציה תהיה גזירה ברציפות. פונקציית המדרגה (פונקציה שנותנת 0 לכל ערך שקטן מ-0, ו-1 לכל ערך שגדול מ-0)[19] אינה גזירה ב-0, והנגזרת שלה היא 0 לכל ערך אחר, ולכן שיטות מבוססות גרדיאנט לא יכולות לבצע את השיפורים שלהם בהתבסס עליה.[20]
פירוט מתמטי
[עריכת קוד מקור | עריכה]ניתן לחלק את פונקציות האקטיבציה הנפוצות ביותר לשלוש קטגוריות: פונקציות ridge, פונקציות רדיאליות ופונקציות אגרגציה.
פונקציות ridge
[עריכת קוד מקור | עריכה]![](http://178.128.105.246/cars-http-upload.wikimedia.org/wikipedia/commons/thumb/4/42/ReLU_and_GELU.svg/220px-ReLU_and_GELU.svg.png)
פונקציות ridge (אנ') הן פונקציות מרובות משתנים הפועלות על צירוף ליניארי של משתני הקלט.[21] דוגמאות לפונקציות נפוצות הן:
- פונקציה ליניארית: ,
- פונקציית ReLU: ,
- פונקציית מדרגה: ,
- פונקציה לוגיסטית: .
ברשתות עצביות ביולוגיות, פונקציית האקטיבציה היא בדרך כלל הפשטה המייצגת את הדחף עצבי בנוירון.[5] בצורתה הפשוטה ביותר, הפונקציה היא בינארית, כלומר הנוירון יכול לבחור האם להוציא פלט או לא. עוצמת הפלט של נוירונים חסומה, ופונקציות שמחקות את ההתנהגות הזו בצורה מהימנה הן פונקציות שהטווח שלהן הוא מרחב סופי, כמו סיגמואיד.[22][23]
פונקציות רדיאליות
[עריכת קוד מקור | עריכה]פונקציות רדיאליות (אנ') נמצאות ברשתות מסוג RBF (אנ'), שיעילות בקירוב אוניברסלי של פונקציות. פונקציה בשימוש נפוץ היא פונקציית גאוס, , כאשר הוא הווקטור המייצג את מרכז הפונקציה ו- ו- הם פרמטרים המשפיעים על רדיוס הגאוסיאן.[24]
פונקציות אגרגציה
[עריכת קוד מקור | עריכה]פונקציות אגרגציה (אנ') נמצאות בשימוש נרחב בשכבת האגרגציה (pooling) ברשתות קונבולוציה, ובשכבת הפלט של רשתות סיווג בעלות מספר מחלקות. הפונקציות האלה מבצעות אגרגציה על הקלט, למשל בחירת הממוצע, המינימום או המקסימום.[25][26] בסיווג מרובה מחלקות, נעשה שימוש בפונקציית סופטמקס שיוצרת התפלגות מהקלט שהתקבל, כלומר מייצרת וקטור שסכומו 1.[27][28]
פונקציות אקטיבציה נפוצות
[עריכת קוד מקור | עריכה]שם | ויזואליזציה | משוואה, | נגזרות, | טווח | סדר גזירות |
---|---|---|---|---|---|
פונקציית הזהות | ![]() |
||||
פונקציית מדרגה | ![]() |
||||
טנגנס היפרבולי | ![]() |
||||
ReLU (אנ')[29] | ![]() |
||||
GELU (Gaussian Error Linear Unit)[30] | ![]() |
||||
Leaky ReLU[31] | ![]() |
||||
גאוסיאן | ![]() |
||||
סופטמקס (אנ') | לכל | ||||
Maxout[32] |
ראו גם
[עריכת קוד מקור | עריכה]הערות שוליים
[עריכת קוד מקור | עריכה]- ^ 1 2 Bin Ding, Huimin Qian, Jun Zhou, Activation functions and their characteristics in deep neural networks, IEEE, 2018-06, עמ' 1836–1841 doi: 10.1109/CCDC.2018.8407425
- ^ Dabal Pedamonti, Comparison of non-linear activation functions for deep neural networks on MNIST classification task, 2018 doi: 10.48550/ARXIV.1804.02763
- ^ Yingying Wang, Yibin Li, Yong Song, Xuewen Rong, The Influence of the Activation Function in a Convolution Neural Network Model of Facial Expression Recognition, Applied Sciences 10, 2020-01, עמ' 1897 doi: 10.3390/app10051897
- ^ Artificial neurons mimic complex brain abilities for next-generation AI computing | University of Oxford, www.ox.ac.uk, 2023-05-05 (באנגלית)
- ^ 1 2 A. L. Hodgkin, A. F. Huxley, A quantitative description of membrane current and its application to conduction and excitation in nerve, The Journal of Physiology 117, 1952-08-28, עמ' 500–544 doi: 10.1113/jphysiol.1952.sp004764
- ^ J. A. Williams, Electrical correlates of secretion in endocrine and exocrine cells, Federation Proceedings 40, 1981-02, עמ' 128–134
- ^ Artificial Neuron - an overview | ScienceDirect Topics, www.sciencedirect.com
- ^ Rami A. Alzahrani, Alice C. Parker, Neuromorphic Circuits With Neural Modulation Enhancing the Information Content of Neural Signaling, ACM, 2020-07-28, עמ' 1–8 doi: 10.1145/3407197.3407204
- ^ Jonathan L. Shapiro, Adam Prügel-Bennett, Unsupervised Hebbian Learning and the Shape of the Neuron Activation Function, Boston, MA: Springer US, 1993, עמ' 25–29, ISBN 978-1-4613-6431-3. (באנגלית)
- ^ Knut Hinkelmann, Neural Networks (עמ' 7), University of Applied Sciences Northwestern Switzerland, 2018-10-06
- ^ Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton, ImageNet classification with deep convolutional neural networks, Communications of the ACM 60, 2017-05-24, עמ' 84–90 doi: 10.1145/3065386
- ^ King Abdulaziz University, Norah Al-johania, Lamiaa Elrefaei, Benha University, Dorsal Hand Vein Recognition by Convolutional Neural Networks: Feature Learning and Transfer Learning Approaches, International Journal of Intelligent Engineering and Systems 12, 2019-06-30, עמ' 178–191 doi: 10.22266/ijies2019.0630.19
- ^ Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding, Proceedings of the 2019 Conference of the North, Association for Computational Linguistics, 2019, עמ' 4171–4186 doi: 10.18653/v1/N19-1423
- ^ Geoffrey Hinton, Li Deng, Dong Yu, George Dahl, Abdel-rahman Mohamed, Navdeep Jaitly, Andrew Senior, Vincent Vanhoucke, Patrick Nguyen, Tara Sainath, Brian Kingsbury, Deep Neural Networks for Acoustic Modeling in Speech Recognition: The Shared Views of Four Research Groups, IEEE Signal Processing Magazine 29, 2012-11, עמ' 82–97 doi: 10.1109/MSP.2012.2205597
- ^ 1 2 3 Andrinandrasana David Rasamoelina, Fouzia Adjailia, Peter Sincak, A Review of Activation Function for Artificial Neural Network, IEEE, 2020-01, עמ' 281–286 doi: 10.1109/SAMI48414.2020.9108717
- ^ G. Cybenko, Approximation by superpositions of a sigmoidal function, Mathematics of Control, Signals, and Systems 2, 1989-12, עמ' 303–314 doi: 10.1007/BF02551274
- ^ Siddharth Sharma, Anidhya Athaiya, ACTIVATION FUNCTIONS IN NEURAL NETWORKS, International Journal of Engineering Applied Sciences and Technology, 4, 2020, עמ' 310-316
- ^ Zheng Hu, Jiaojiao Zhang, Yun Ge, Handling Vanishing Gradient Problem Using Artificial Derivative, IEEE Access 9, 2021, עמ' 22371–22377 doi: 10.1109/ACCESS.2021.3054915
- ^ Mostafa Zaman, Binary Step Function - Figure, ResearchGate
- ^ Snyman, Jan (3 במרץ 2005). Practical Mathematical Optimization: An Introduction to Basic Optimization Theory and Classical and New Gradient-Based Algorithms. Springer Science & Business Media. ISBN 978-0-387-24348-1.
{{cite book}}
: (עזרה) - ^ Allan Pinkus, Ridge functions, 2015-01-01, ISBN 978-1-107-12439-4
- ^ Heny Pratiwi, Agus Perdana Windarto, S. Susliansyah, Ririn Restu Aria, Susi Susilowati, Luci Kanti Rahayu, Yuni Fitriani, Agustiena Merdekawati, Indra Riyana Rahadjeng, Sigmoid Activation Function in Selecting the Best Model of Artificial Neural Networks, Journal of Physics: Conference Series 1471, 2020-02-01, עמ' 012010 doi: 10.1088/1742-6596/1471/1/012010
- ^ Jun Han, Claudio Moraga, The influence of the sigmoid function parameters on the speed of backpropagation learning, כרך 930, Berlin, Heidelberg: Springer Berlin Heidelberg, 1995, עמ' 195–201, ISBN 978-3-540-59497-0
- ^ J. Ghosh, A. Nag, An Overview of Radial Basis Function Networks, כרך 67, Heidelberg: Physica-Verlag HD, 2001, עמ' 1–36, ISBN 978-3-7908-2483-4
- ^ Ian Goodfellow, David Warde-Farley, Mehdi Mirza, Aaron Courville, Yoshua Bengio, Maxout Networks, Proceedings of the 30th International Conference on Machine Learning, PMLR, 2013-05-26, עמ' 1319–1327
- ^ Papers with Code - Maxout Explained, paperswithcode.com (באנגלית)
- ^ Kunal Banerjee, Vishak Prasad C, Rishi Raj Gupta, Karthik Vyas, Anushree H, Biswajit Mishra, Exploring Alternatives to Softmax Function, 2020 doi: 10.48550/ARXIV.2011.11538
- ^ Softmax Function, DeepAI, 2019-05-17
- ^ Vinod Nair, Geoffrey E. Hinton, Rectified linear units improve restricted boltzmann machines, Proceedings of the 27th International Conference on International Conference on Machine Learning, ICML'10, Omnipress, 2010-06-21, עמ' 807–814 doi: 10.5555/3104322.3104425
- ^ Hendrycks, Dan; Gimpel, Kevin (2016). "Gaussian Error Linear Units (GELUs)". arXiv:1606.08415 [cs.LG].
- ^ Papers with Code - Leaky ReLU Explained, paperswithcode.com (באנגלית)
- ^ Ian J. Goodfellow, David Warde-Farley, Mehdi Mirza, Aaron Courville, Yoshua Bengio, Maxout Networks, 2013 doi: 10.48550/ARXIV.1302.4389