דיפוזיה יציבה: אינטואיציה בסיסית מאחורי AI גנרטיבי - KDnuggets

צומת המקור: 2152419

דיפוזיה יציבה: אינטואיציה בסיסית מאחורי AI גנרטיבי
תמונה שנוצרה באמצעות דיפוזיה יציבה

עולם הבינה המלאכותית עבר באופן דרמטי לכיוון מודלים גנרטיביים במהלך השנים האחרונות, הן בראייה ממוחשבת והן בעיבוד שפה טבעית. Dalle-2 ו-Midjourney משכו את תשומת לבם של אנשים, מה שהוביל אותם לזהות את העבודה יוצאת הדופן שבוצעה בתחום של AI Generative.

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

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

 

דיפוזיה יציבה: אינטואיציה בסיסית מאחורי AI גנרטיבי
תמונה מאת המחבר

תשומות

המודלים של Stable Diffusion מאומנים על מערכי נתונים של Image Captioning כאשר לכל תמונה יש כיתוב או הנחיה המשויכים המתארים את התמונה. לכן ישנן שתי כניסות למודל; הנחיה טקסטואלית בשפה טבעית ותמונה בגודל (3,512,512) בעלת 3 ערוצי צבע ומידות בגודל 512.

רעש נוסף

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

מקודד תמונה

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

מקודד טקסט

ההנחיה בשפה הטבעית הופכת להטמעה וקטורית על ידי מקודד הטקסט. תהליך זה משתמש במודל Transformer Language, כגון מודלים מבוססי BERT או GPT CLIP Text. דגמי מקודד טקסט משופרים משפרים משמעותית את איכות התמונות שנוצרו. הפלט המתקבל של מקודד הטקסט מורכב ממערך של וקטורי הטבעה של 768 מימדים עבור כל מילה. על מנת לשלוט באורך ההנחיה, נקבעה מגבלה מקסימלית של 77. כתוצאה מכך, מקודד הטקסט מייצר טנזור עם ממדים של (77, 768).

UNet

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

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

ה-UNet מוציא טנסור בגודל (4, 64, 64) המועבר לחלק המפענח של ה- Variational AutoEncoder.

מפענח

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

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

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

בול זמן:

עוד מ KDnuggets