GAN (למידה חישובית)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Woman_1.jpg/220px-Woman_1.jpg)
GAN (ראשי תיבות של: Generative Adversarial Network) הוא סוג של מודל גנרטיבי ללמידת מכונה שתוכנן על ידי איאן גודפלו ועמיתיו בשנת 2014.[1]
בהינתן סט אימון, ניתן להשתמש ב-GAN בשביל ללמוד את ההתפלגות שממנה מגיעים הנתונים, וכתוצאה מכך ניתן להשתמש בו בשביל ליצור דגימות חדשות שנראות כמו דגימות ששייכות למאגר הנתונים. לדוגמה, GAN שאומן על מאגר תצלומים של בני אדם, יוכל ליצור תצלומים חדשים שנראים אותנטיים ומכילים מאפיינים מציאותיים רבים. אף על פי שבמקור ה-GAN הוצע כסוג של מודל גנרטיבי ללמידה לא מונחית, הוכח שמודלים מהסוג הזה שימושיים גם בלמידה מונחית למחצה,[2] בלמידה מונחית,[3] ובלמידת חיזוק.[4]
ארכיטקטורה
[עריכת קוד מקור | עריכה]GAN מורכבת משני חלקים מרכזיים: רשת discriminator (מאבחן) ורשת generator (מחולל). המחולל יוצר דגימות מזויפות והמאבחן מסווג האם הן מזויפות או אמתיות.
Discriminator
[עריכת קוד מקור | עריכה]המאבחן הוא מסווג (classifier), ומטרתו להבחין בין דוגמאות אמיתיות, שנדגמו מההתפלגות של מדגם האימון, לבין דוגמאות מזויפות שנוצרו על ידי רשת נוירונים עצבית.
ב-GANs המאומנים ליצירת תמונות, הקלט ל-discriminator הוא תמונה. הפלט של המאבחן מורכב מנוירון אחד או יותר, ומהווה "ציון" לתמונת הקלט. מספרים גבוהים בפלט יציינו סיווג דוגמה כריאליסטית, בעוד שמספר נמוך יציין דוגמה שהdiscriminator מזהה כמזויפת.
ניתן להשתמש בפונקציות הפסד שונות למדידת המרחק בין ההתפלגות של המידע הנכון למידע שהמחולל מייצר כגון מרחק וסרשטיין 1 (אנ'), דיברגנץ קולבק-ליבלר ודיבגרנץ ינסן-שאנון.[5] מטרת המאבחן היא להגדיל ככל הניתן את ההפרש בין הערך הניתן לדוגמאות האמיתיות לבין זה הניתן לדוגמאות המזויפות, (כלומר להגדיל ככל הניתן את המרחק בין התפלגות המידע האמיתי להתפלגות של הדוגמאות שנוצרו על ידי המחולל).
Generator
[עריכת קוד מקור | עריכה]כדי שהמחולל לא ייצור כל פעם את אותה הדוגמה הוא מקבל בשכבת הקלט וקטור רעש אקראי. רשת המחולל אמורה ללמוד למפות בין התפלגות וקטור הרעש לבין התפלגות המידע הנכון וכך להוציא כפלט דוגמאות שנדגמו מאותה ההתפלגות של המידע.
אימון ה-GAN
[עריכת קוד מקור | עריכה]הרעיון המרכזי של GAN מבוסס על אימון של רשת נוירונים הנקראת "רשת גנרטיבית" שלומדת את התפלגות הנתונים, ומטרתה ללמוד לייצר נתונים חדשים שנראים כאילו נלקחו מאותה ההתפלגות. האימון עצמו הוא "עקיף" תוך שימוש ברשת נוספת הנקראת "הרשת הדיסקרימינטיבית", שגם היא מתעדכנת באופן דינמי. הרשת הדיסקרימינטיבית היא רשת שלומדת להבחין בין דגימה שהגיעה ממאגר הנתונים המקורי, לבין דגימה שהגיעה מהגנרטור. כתוצאה מכך, אימון ה-GAN כולו הוא אימון משותף של שתי הרשתות, כאשר הרשת הגנרטיבית מייצרת דגימה במטרה להתחזות למאגר הנתונים האמיתי, והרשת הדיסקרימינטיבית היא מסווג בינארי שמנסה להכריע מי מהדגימות שקיבלה היא האמיתית.
עם הזמן, הרשת הדיסקרימינטיבית לומדת להבדיל בצורה טובה יותר בין הדגימות האמיתיות לבין אלו שהגיעו מהרשת הגנרטיבית, ואילו זו לומדת לייצר דגימות שהולכות ומידמות לדגימות מהמאגר האמיתי. בסיום האימון המשותף, הרשת הגנרטיבית תוכל לייצר דגימות שנראות כמו דגימות שנוצרו מההתפלגות המקורית. לכן, בתום שלב האימון, נוכל להשתמש ברשת הגנרטיבית לבדה ליצירת דוגמאות חדשות - באופן עצמאי, ללא הרשת הדיסקרימינטיבית.[6] למידה באופן הזה מאפשרת למודל ללמוד בצורה לא מונחית.
כאמור, הרשת הגנרטיבית מייצרת דגימות חדשות בעוד שהרשת הדיסקרימינטיבית מותאמת להבדלה בין דגימות אמיתיות לבין דוגמאות שהגיעו מהרשת הגנרטיבית.[1] מכיוון שיצירת דוגמאות מהתפלגות נתונה עשויה להיות בעיה קשה, GAN בדרך כלל משתמשים בהתפלגות שקל לדגום – כמו התפלגות נורמלית, והרשת הגנרטיבית לומדת למפות וקטור ממרחב סמוי (אנ') שמתפלג נורמלית לוקטור מההתפלגות הרצויה. מטרת האימון של הרשת הגנרטיבית היא להגדיל את שיעור השגיאות ברשת הדיסקרימינטיבית, כלומר, "להטעות" את הרשת הדיסקרימינטיבית על ידי הפקת דגימות חדשות שהיא תטעה לחשוב שהגיעו מההתפלגות האמיתית.[1]
בעיות אפשריות ב-GAN
[עריכת קוד מקור | עריכה]GAN עשויים לסבול מ"קריסה למצב" (mode collapse), בעיה שבה הרשת הגנרטיבית מנצלת חולשות שהיא מזהה ברשת הדיסקרימינטיבית, ומייצרת דוגמאות רק מסוג יחיד. במצב כזה הרשת הגנרטיבית מצליחה להערים על הרשת הדיסקרימינטיבית, אך כתוצאה מכך היא לא מצליחה להכליל את התפלגות הנתונים כראוי, וחסרים חלקים שלמים מהתפלגות הקלט. לדוגמה, GAN שאומן על המאגר MNIST שמכיל דוגמאות רבות של כל הספרות כתובות בכתב יד, עשוי להשמיט ספרות מסוימות מהפלט שלו. GAN כזה יכול ללמוד לייצר בצורה טובה רק את הספרות שלוש וארבע, ובכך להערים על הרשת הדיסקרימינטיבית, אך הוא לא ילמד למדל נכונה את מאגר הספרות המלא. ניתנו כמה הסברים לבעיה, בין היתר: אימון יתר של הרשת הגנרטיבית בכל שלב ובחירה בפונקציית הפסד בעייתית.[7][8] לבעיה הוצעו מספר פתרונות.[9][10]
שימושים
[עריכת קוד מקור | עריכה]ל-Generative adversarial network יש שימושים רבים.[11]
במדע
[עריכת קוד מקור | עריכה]GAN נמצאים בשימוש בשיפור תמונות אסטרונומיות[12] וכן ניתן לדמות באמצעותם עדשות כובד לצורך מחקר חומר אפל.[13] בשנת 2019 השתמשו ברשת כזו בהצלחה למידול התפלגות החומר האפל באזור מסוים בחלל, כדי לחזות את העידוש הכבידתי שיתרחש.[14]
GAN הוצעו כדרך מהירה ומדויקת למדל היווצרות של סילונים באנרגיה גבוהה[15] והשתמשו בהם בשביל למדל מקלחות חלקיקים באמצעות קלורימטרים של ניסויים בפיזיקת חלקיקים.[16] GANs הוכשרו גם ליצירת קירוב מדויק של צווארי בקבוק בסימולציות יקרות חישובית של ניסויים בפיזיקת חלקיקים. במאיץ החלקיקים CERN השתמשו ברשתות גנרטיביות בשביל להוכיח את הפוטנציאל של שיטות אלה להאצת סימולציות או לשיפור מהימנות ההדמיה.[17]
באמנות
[עריכת קוד מקור | עריכה]ניתן להשתמש ב-GAN ליצירת אמנות ולשחזור של תמונות. בתעשיית האופנה ניתן להשתמש ברשתות הללו ליצירת תמונות של דוגמניות אופנה דמיוניות, ללא צורך לשכור מודל, צלמת או מאפרת, או לשלם עבור אולפן.[18]
שימושים נוספים
[עריכת קוד מקור | עריכה]- זיהוי תמונות גלאוקומטיות המסייעות לאבחון מוקדם, אשר חיוני כדי למנוע אובדן חלקי או מוחלט של הראייה[19]
- הזקנת צילומי פנים כדי להראות כיצד המראה של אדם עשוי להשתנות עם הגיל[20]
- העברת סגנונות מפה בקרטוגרפיה[21] והגדלת תמונות תצוגת רחוב[22]
- יצירת תמונות על פי טקסט, יכולת שיכולה לייתר שימוש במערכות חיפוש תמונות[23]
- יצירת סימולציות שמדגימות כיצד שינויי האקלים ישפיעו על בתים ספציפיים[24]
- מודל GAN בשם Speech2Face יכול ליצור תמונה של פניו של אדם לאחר האזנה לקולו.[25]
- בשנת 2016 נעשה שימוש ב-GAN ליצירת מולקולות חדשות עבור מגוון חלבונים הקשורים בסרטן, דלקות ופיברוזיס. בשנת 2019 מולקולות שנוצרו על ידי GAN אושרו בניסוי שבוצע על עכברים.[26][27]
בעיות אתיות
[עריכת קוד מקור | עריכה]ניתן לבצע שימוש זדוני בתמונות אנושיות שנוצרו באמצעות סינתזה על ידי GAN. שימוש אפשרי כזה כולל הפקת תצלומים וסרטונים מזויפים לצורך הפללה.[28] כמו כן, ניתן להשתמש ב-GAN ליצירת תמונות פרופיל ייחודיות ומציאותיות של אנשים שאינם קיימים, על מנת לאפשר יצירת פרופילים מזויפים ברשתות החברתיות בצורה אוטומטית.[29]
בשנת 2019 מדינת קליפורניה העבירה את הצעת החוק AB-602, האוסרת על שימוש בטכנולוגיות של סינתזת תמונות אנושיות ליצירת פורנוגרפיה מזויפת ללא הסכמת האנשים המתוארים.[30][31] באותה השנה עברה הצעת חוק נוספת - AB-730, האוסרת הפצה של סרטונים של מועמד פוליטי שעברו מניפולציות, בתוך 60 יום ממועד הבחירות.[32][33] שתי הצעות החוק נחתמו על ידי המושל גווין ניוסם. החוקים נכנסו לתוקף בשנת 2020.
קישורים חיצוניים
[עריכת קוד מקור | עריכה]- רשימת פרויקטים ומאמרים שמשתמשים ב-GAN, באתר GitHub
- מה הוא GAN? באתר Medium (באנגלית)
הערות שוליים
[עריכת קוד מקור | עריכה]- ^ 1 2 3 Goodfellow, Ian; Pouget-Abadie, Jean; Mirza, Mehdi; Xu, Bing; Warde-Farley, David; Ozair, Sherjil; Courville, Aaron; Bengio, Yoshua, Generative Adversarial Nets, 2014
- ^ Tim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, Xi Chen, Improved Techniques for Training GANs, 2016
- ^ Phillip Isola, Jun-Yan Zhu, Tinghui Zhou, Alexei A. Efros, Image-to-Image Translation with Conditional Adversarial Nets, CVPR, 2017
- ^ Jonathan Ho, Stefano Ermon, Generative Adversarial Imitation Learning, 2016
- ^ Martin Arjovsky, Soumith Chintala, Léon Bottou, Wasserstein GAN, arXiv:1701.07875 [cs, stat], 2017-12-06
- ^ Nikolas Adaloglou, GANs in computer vision: Introduction to generative learning, AI Summer, 10 באפריל 2020
- ^ Jonathan Hui, GAN — Why it is so hard to train Generative Adversarial Networks!, Medium, 2019-10-29 (באנגלית)
- ^ Martin Arjovsky, Soumith Chintala, Léon Bottou, Wasserstein GAN, 2017
- ^ Zinan Lin, Ashish Khetan, Giulia Fanti, Sewoong Oh, PacGAN: the power of two samples in generative adversarial networks, 2018
- ^ Luke Metz, Ben Poole, David Pfau, Jascha Sohl-Dickstein, Unrolled Generative Adversarial Networks, 2017
- ^ A list of papers and other resources on Generative Adversarial (Neural) Networks, GitHub
- ^ Kevin Schawinski, Ce Zhang, Hantian Zhang, Lucas Fowler, Gokula Krishnan Santhanam, Generative Adversarial Networks recover features in astrophysical images of galaxies beyond the deconvolution limit doi: 10.1093/mnrasl/slx008
- ^ DOE/Lawrence Berkeley National Laboratory, Training a neural network to study dark matter, Science Daily, 2019
- ^ Mustafa Mustafa, Deborah Bard, Wahid Bhimji, Zarija Lukić, Rami Al-Rfou, Jan M. Kratochvil, CosmoGAN: creating high-fidelity weak lensing convergence maps using Generative Adversarial Networks doi: 10.1186/s40668-019-0029-9
- ^ Luke de Oliveira, Michela Paganini, Benjamin Nachman, Learning Particle Physics by Example: Location-Aware Generative Adversarial Networks for Physics Synthesis doi: 10.1007/s41781-017-0004-6
- ^ Michela Paganini, Luke de Oliveira, Benjamin Nachman, Accelerating Science with Generative Adversarial Networks: An Application to 3D Particle Showers in Multi-Layer Calorimeters doi: 10.1103/PhysRevLett.120.042003
- ^ ATLAS, Collaboration, Deep generative models for fast shower simulation in ATLAS, 2018
- ^ Ceecee Wong, The Rise of AI Supermodels, 27 במאי 2019
- ^ Tomaz Ribeiro Viana Bisneto, Antonio Oseas de Carvalho Filho, Deborah Maria Vieira Magalhães, Generative adversarial network and texture features applied to automatic glaucoma detection, Applied Soft Computing 90, 2020-05, עמ' 106165 doi: 10.1016/j.asoc.2020.106165
- ^ Grigory Antipov, Moez Baccouche, Jean-Luc Dugelay, Face Aging With Conditional Generative Adversarial Networks, arXiv:1702.01983 [cs], 2017-05-30
- ^ Yuhao Kang, Song Gao, Robert E. Roth, Transferring multiscale map styles using generative adversarial networks, International Journal of Cartography 5, 2019-05-04, עמ' 115–141 doi: 10.1080/23729333.2019.1615729
- ^ Jasper S. Wijnands, Kerry A. Nice, Jason Thompson, Haifeng Zhao, Streetscape augmentation using generative adversarial networks: Insights related to health and wellbeing, Sustainable Cities and Society 49, 2019-08, עמ' 101602 doi: 10.1016/j.scs.2019.101602
- ^ Antti Ukkonen, Pyry Joona, Tuukka Ruotsalo, Generating Images Instead of Retrieving Them: Relevance Feedback on Generative Adversarial Networks, Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval, ACM, 2020-07-25, עמ' 1329–1338 doi: 10.1145/3397271.3401129
- ^ AI can show us the ravages of climate change, MIT Technology Review (באנגלית)
- ^ Astounding AI guesses what you look like based on your voice, Futurism
- ^ Alex Zhavoronkov, Yan A. Ivanenkov, Alex Aliper, Mark S. Veselov, Deep learning enables rapid identification of potent DDR1 kinase inhibitors, Nature Biotechnology 37, 2019-09, עמ' 1038–1040 doi: 10.1038/s41587-019-0224-x
- ^ Barber, Gregory. "A Molecule Designed by AI Exhibits 'Druglike' Qualities". Wired (באנגלית אמריקאית). ISSN 1059-1028. נבדק ב-2021-12-31.
- ^ 'This Person Does Not Exist' Website Uses AI To Create Realistic Yet Horrifying Faces - Slashdot, tech.slashdot.org (באנגלית)
- ^ Michael Doyle, John Beasley lives on Saddlehorse Drive in Evansville. Or does he?, Evansville Courier & Press (באנגלית אמריקאית)
- ^ Bill Text - AB-602 Depiction of individual using digital or electronic technology: sexually explicit material: cause of action., leginfo.legislature.ca.gov
- ^ Name, California Moves Closer to Making Deepfakes Pornography Illegal, Tech Monitor, 2019-05-16 (באנגלית אמריקאית)
- ^ Bill Text - AB-730 Elections: deceptive audio or visual media., leginfo.legislature.ca.gov
- ^ Carrie Mihalcik, California laws seek to crack down on deepfakes in politics and porn, CNET (באנגלית)