55
Computing with Spiking Neurons ןןןן ןןן ןןןןן ןןןןןןן

Computing with Spiking Neurons איתי שור וכפיר אגוסטון

  • View
    223

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Spiking Neurons

איתי שור וכפיר אגוסטון

Page 2: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

הקדמה

עד עכשיו ראינו מספר מודלים שמתארים •Spiking neurons.

ובין Spiking neuronsישנם הבדלים בין •-Mccullochהמודלים היותר נפוצים )כגון

Pitts:ועולות כמה שאלות כגון ,), כאשר Spiking neuronsאיך אפשר לחשב עם –

הקלט והפלט מורכבים מפולסים?מה הכוח החישובי של רשת נוירונים כזאת –

לעומת הכוח החישובי של המודלים הנפוצים?

Page 3: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Agenda

• Reminder of Spiking Neuron Model.• McCulloch-Pitts Neuron Simulation.• Spiking Neurons Synchronization.• Computing with Temporal Patterns.• Coincidence Detection.• Computing a Weighted Sum in Temporal Coding.• Universal Approximation of Continuous Functions with

Spiking Neurons.• Computing with Firing Rates.• Computing with Firing Rates and Temporal Correlations.• Conclusions

Page 5: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

קבוצת נוירונים, ונניח כי עבור כל Iתהי •קיימת תת – קבוצה של קודמים מיידים

(“presynaptic neurons”.ברשת )זמני הירי עבור כל נוירון מוגדרים •

רקורסיבית. יירה כאשר iנוירון •

.iחוצה את הסף של נוירון

Spiking Neuronתזכורת - מודל

i I

i I

( )fi it Fi I

Page 6: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neuronתזכורת - מודל

הפונקציה ממדלת גירוי חיובי או •, אשר נגרמת iשלילי בסומה של נוירון

presynaptic)כתוצאה מירי של נוירון קודם neuron) j בזמן

הפונקציה ממדלת את תגובת הנוירון •i לספייק של עצמו (refractoriness).

לא ירה הרבה iבתור התחלה, נניח כי נוירון •זמן, ולכן ניתן להתעלם מהביטוי

( )fjt

Page 7: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neuronתזכורת - מודל

Page 8: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neuronתזכורת - מודל

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

הרשת.בעצם הקלט והפלט מורכבים מוקטורים של •

סדרות זמנים.

,input outputI I I I

iFinputi I

iFoutputi I

Page 9: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

McCulloch-Pitts Neuron

-McCullochהמודל הכי פשוט של נוירון הוא •Pitts נקרא גם פרספטרון או( threshold gate :והוא מוגדר כך ,)

ברשת נוירונים רב-שכבתית, פלט הנוירון •יהיה באמצעות פונקציה אקטיבציה רציפה,

(:sigmoidחסומה ולא יורדת )

Page 10: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

McCulloch-Pitts Neuron Simulation

•Spiking neuron, i יכול לסמלץ כל ,וקלט בינארי. θפרספטרון בעל סף חיובי

נניח כי פונקציות התגובה זהות פרט •לסימן, אשר נבחר אותו להיות חיובי אם

ושלילי אחרת.כמו-כן נניח כי כל הנוירונים הפרה-סינפטים •

j יורים באותו הזמן ,

( )ij x

0ij

j inputt T

Page 11: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

McCulloch-Pitts Neuron Simulation

יורה אם spiking neuron iבמקרה זה, כל •ורק אם

כאשר הוא הערך הקיצוני של הפונקציה•, יכול spiking neuron iעבור , •

לסמלץ כל פרספטרון, כאשר הקלט מקודד כיש/אין ירי של נוירון פרה-סינפטי בזמן

. iוהפלט מקודד כיש/אין ירי של נוירון

ij( )ij x

inputT

Page 12: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

McCulloch-Pitts Neuron Simulation

Page 13: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

McCulloch-Pitts Neuron Simulation

קשה יותר לסמלץ רשת של נוירונים באמצעות •spiking neurons.

אזי0אם גדול מאוד מ-• יחצה את הסף מוקדם יותר, ויגרום לירי מוקדם של הנוירון, מאשר

.0 חיובי אבל קרוב ל-

לכן, נוירונים בשכבה אחת יירו בזמנים קצת • יירו באותו jשונים, אפילו אם כל נוירוני קלט

הזמן inputT

Page 14: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neurons Synchronization

spiking neuronsניתן לסנכרן באמצעות הוספת •נוספים.

שיטת סינכרון זו מתבססת על עיקרון השלילה •הכפולה.

הכח המניע לירי של נוירון מגיע ממקור קלט שאינו •תלוי בקלט המקודד המקורי.

באמצעות שיטת סינכרון זו ניתן לסמלץ כל מעגל • spikingבוליאני באמצעות רשת סופית של

neurons.

Page 15: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neurons Synchronization

Page 16: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Spiking Neurons Synchronization

ניתן להשיג כמעט סינכון של זמני הירי •.sin(w t)באמצעות הוספת אות רקע כגון

עבור כל נוירון, יחצה את הסף כאשר אות •הרקע קרוב לשיא.

( )iu t

Page 17: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Temporal Patterns

נתעסק כעת במקרה האסינכרוני, בו •נוירונים קודמים לא יורים באותו הזמן. מודל

זה יותר דומה לנוירון הביולוגי.

Page 18: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

שאין לה דומה ברשתות spiking neuronתכונה של •נוירונים מוכרות.

•Spiking neuron יכול להתנהג כ"גלאי צירוף-מקרים".

אם זמני הפולסים הנכנסים מקודדים מספרים, •הנוירון יגלה אם למספרים אלו יש )כמעט( ערכים

זהים.פעולה זו היא יקרה מאוד כאשר משתמשים •

בנוירונים הרגילים.

Page 19: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

הגדרות:•. לחיבור i קודמים מידיים של נוירון •

יש אותה השהייהiשלהם לנוירון המשקלים עבור כל •פונקצית התגובה מוגדרת כך:•

כאשר הם קבועים המייצגים זמן.

Page 20: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

Page 21: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

עבור כל קבועי זמן , , ניתן למצוא •כך ש- עבור כל קלט θערכים ו-

במרחק EPSPהמורכב ממספר שרירותי של =>C2 ו- עובר את הסף ,θ עבור זוגEPSP

.C1במרחק >= לא ירה אם הנוירונים יורים בקצב iנוירון •

=>C2 אבל כן ירה כאשר קיים זוג נוירונים .C1פרה-סינפטיים אשר יורים בקצב >=

Page 22: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

x1,…,xn מספרים ממשיים nנניח כי • נוירונים nמקודדים באמצעות זמני הירי של

ב- " אם 1 מקודד כ-"iנניח כי הפלט של נוירון •

" אם לא.0הוא יורה ו-" מחשב את הפונקציה iאזי נוירון •

הבאה:

Page 23: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

Page 24: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

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

כל רשת שכבתית המורכבת מפרספטרונים •ומחשבת את הפונקציה , מספר

הנוירונים שיהיו לה בשכבה הראשנה <=כל רשת המורכבת מסיגמויד ומחשבת את •

הפונקציה , מספר הנוירונים שיהיו לה יהיה <=

Page 25: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Coincidence Detection

ניתן להרחיב את הגלאי הקודם שיזהה דוגמאות יותר •מסובכות.

iבמקום שההשהיה בין נוירונים פרה-סינפטיים ובין נוירון • השהיות שונות בין jתהיה זהה, אפשר להשתמש ב-

.i ל-jנוירון קיימות עדויות שבמערכות נוירונים ביולוגיות, אפשר לכוון •

את ההשהיות הללו באמצעות "אלגוריתמי למידה". בנוסף ניתן לכוון גם את הסף וגם את המשקלים של הנוירון.

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

.iכמעט באותו הזמן לסומה של נוירון

Page 26: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

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

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

נדגים חישוב של הסכום באמצעות •. ו- iזמן הירי של נוירון

נניח כי עבור כל פונקצית תגובה יש את •הצורה הבאה:

Page 27: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

Page 28: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

עבור ואז היא עולה )או 0 יש ערך ל-•יורדת( לינארית בקירוב עם שיפוע

.R>0בקטע בגודל נניח שנוירונים פרה-סינפטיים יורים •

בזמן חוצה את הסף iאם של נוירון •

כאשר כל פונקציות התגובהtiבזמן נקבע כך: tiבמצב עליה לינארית, אז

Page 29: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

עבור ואת כ λנכתוב •ונקבל:

Page 30: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

נכתוב בצורה שקולה:•

כאשר הוא משתנה •עצמאי שאינו תלוי בקלט, והמשקלים

מוגדרים

Page 31: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing a Weighted Sum in Temporal Coding

Page 32: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Universal Approximation of Continuous Functions with Spiking

Neuronsניתן להרחיב את מנגנון החישוב ל- •

כך שיוכל לסמלץ נוירון מסוג סיגמויד אם פונקצית אקטיבציה:

יגיב לירי של iבמקרה זה נרצה שנוירון •נוירונים פרה-סינפטיים בזמנים

באמצעות ירי בזמן

Page 33: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Universal Approximation of Continuous Functions with Spiking

Neuronsלכן, ניתן לסמלץ כל נוירון סיגמויד עם •

spiking באמצעות SATפונקצית אקטיבציה neuron.

כיוון שהקלט והפלט מקודדים באותה • spikingהצורה, פלט משכבה ראשונה של

neurons יכול לשמש כקלט לשכבה אחרת .spiking neuronsשל

הנ"ל מביא למסקנות הבאות:•

Page 34: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Universal Approximation of Continuous Functions with Spiking

Neuronsכל רשת נוירונים המורכבת מסיגמויד בעלת •

יכולה להיות SATפונקצית אקטיבציה spikingמסומלצת בקירוב באמצעות רשת של

neurons.בנוסף למה שנאמר מקודם על מספר הנוירונים •

, קיימת spiking neuronsלסימלוץ רשת של אסימטריה בכל הקשור לכח החישובי של רשת

נוירונים: בעוד שרשת נוירונים סיגמויד יכולה להיות לא spiking neuronsמסומלצת באמצעות רשת של

spiking neuronsגדולה משמעותית, רשת של יכולה להיות מסומלצת באמצעות רשת נוירונים

גדולה מאוד משמעותית.

Page 35: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Universal Approximation of Continuous Functions with Spiking

Neuronsידוע שרשת נוירונים סיגמויד עם פונקצית •

יכולה לקרב כל פונקציה SATאקטיבציה רציפה לדיוק כמה שנרצה.

כל פונקציה יכולה להיות • spikingמקורבת באמצעות רשת של

neurons.

Page 36: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates

תזכורת קידוד מבוסס על תדירות הירי:•

Page 37: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates

בד"כ קשר בין רשתות נוירונים סיגמויד ובין •רשתות נוירונים ביולוגיות מבוסס ע"י פירוש

0 כמספר בין spiking neuronקצב הירי של .1ל-

באמצעות פירוש זה ניתן לקבל התאמה •סבירה בין התלות של הפלט של

נוירון סיגמויד בערכים ובין התלות של בקצב הירי spiking neuron iקצב הירי של

של נוירונים פרה-סינפטיים

Page 38: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates

קיימות המון עדויות ביולוגיות לכך שאינפורמציה •מגירוי כלשהו במערכת נוירונים ביולוגית מקודדת

באמצעות זמני הירי של הנוירונים.תוצאות הקשורות להתנהגות הדינאמית של •

סינפסה ביולוגית מראות שעבור כמה רשתות העוצמה 10Hzנוירונים, מעל קצב מגביל של

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

Page 39: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates

תוצאות אלו מציעות שבמקום משקל קבוע •, יש למדל את העוצמה של סינפסה

ביולוגית עבור קידוד לפי קצב הירי כפונקציה של נוירון אשר תלויה בקצב הירי

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

אשר j של נוירונים פרה-סינפטיים הירי יורים בקצב גבוה מהקצב המגביל.

Page 40: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates

עובד כך שהוא מגיב spiking neuronהראו שאם •לקלט של שרשרת ספייקים, אשר מיוצרות לפי

התפלגות פואסונית, אזי קצב הירי שבפלט יהיה פרופורציוני למכפלה של קצב הירי של הנוירונים

הפרה-סינפטיים. נוירונים 3לדוגמא, שרשראות ספייקים מ-•

נוצרים לפי התפלגות פואסון. jפרה-סינפטיים Spiking neuron i ירה אם ורק אם שלושת הנוירונים

הפרה-סינפטיים הללו ירו באותו פרק זמן, וקצב הירי שלו מקודד את המכפלה של קצב הירי של

.jהנוירונים הפרה-סינפטיים

Page 41: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

תקשורת באמצעות שרשראות ספייקים מציעה •דרך ישירה לקודד קשרים שמניים בין נוירונים שונים: באמצעות צירוף של זמני הירי שלהם.

Page 42: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

מה ניתן לחשב באמצעות התאמה בזמני הירי •?spiking neuronsברשת של

-integrateהוצע מודל אשר מורכב מנוירונים מסוג •and-fire :אשר מקבלים שני סוגי קלט feeding

input, linking input.•Feeding input קשרים אשר מחוברים לנוירונים –

הבאים ומתחילים בגירוי עצמו.•Linking input קשרים אשר מתחילים משכבות –

גבוהות ומחוברים לנוירונים קודמים.

Page 43: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

Page 44: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

Page 45: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

מייצגים linking inputקשרים מסוג •אינפורמציה השמורה בזיכרון אסוציאטיבי.

סימולציות ממוחשבות הראו שמודל זה •מצליח לשחזר דוגמאות כתגובה לגירוי

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

Page 46: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

, עם שני סוגי spiking neuronsעוד מודל – אך ללא •קשרים.

•RF כמו – feeding input.•CF כמו – linking input.יחידת חישוב אחת במודל מוציאה כפלט ערך בין •

באמצעות 1- ל 1•r היא סכום ממושקל של קלט RF.• c היא סכום ממושקל של קלטCF.•g.היא פונקציית סיגמויד

Page 47: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

r=0 קובעת את סימן הפלט. rביחידת חישוב זו, •.c, ללא תלות כלשהי ב-0גורר שהפלט יהיה

אזי הפלט יגדל, r אותו הסימן כמו ל-cאם ל-•ואחרת הוא יקטן.

סימולציות מחשב של רשתות גדולות אשר מכילות •יחידות חישוב כאלו, הראו תוצאות צפויות אשר נראו במחקרים פסיכולוגיים של תפיסה חזותית

אצל אנשים.

Page 48: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

עד עכשיו אף מודל לא הראה יכולת חישובית גדולה •יותר מהמודלים הרגילים.

כל פונקציה אשר מחושבת באמצעות כל אחד •מהמודלים הקודמים יכולה להיות מקורבת

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

שנרצה.לכן השאלה מהגדלת כח החישוב באמצעות •

התאמה בזמני הירי עוברת כעת לשאלה של כמות – כמה חומרה, זמן חישוב,... רשת נוירונים יכולה

לחסוך באמצעות חישוב באמצעות התאמה בזמני הירי וקצב הירי?

Page 49: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

•V(i) הפלט של נוירון סיגמויד. )ניתן להסתכל – .1 ל 0( – ערך בין iעל זה כקצב הירי של נוירון

•C(S) עבור קבוצת נוירונים – S כמה התאמה ,יש בקצב הירי שלהם בחלון זמן מסוים – ערך

– כל נוירון יורה ללא תלות בנוירון 0, 1 ל 0בין – כל נוירונים יורים בהתאמה.1אחר בקבוצה,

נכניס את המשתנה החדש לתוך משוואת •הסיגמויד:

Page 50: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

יעלה אם קבוצה אחת v(i)נרצה שקצב הירי •או כמה של נוירונים קודמים יורים עם

. c(S)>0התאמה בקצב

המכפלה מייצגת את העובדה שזמני •הירי של נוירונים יכולים רק להגדיל את

משמעותית אם קצב iקצב הירי של נוירון של כל הנוירונים מספיק גבוה. v(j)הירי

Page 51: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

– משתנה ההתאמה c(S)נגדיר איך מחושב •.i של נוירונים נסתרים S– עבור קבוצה

•C(S) יגדל כאשר כל הנוירונים מקבלים .kאת אותו הקלט מנוירון אחר

•C(S)' יגדל אם קיימת קבוצה S של נוירונים ( כך c(S)>0אחרים עם התאמה משמעותית )

שלכל נוירון קיים נוירון שהוא קודם לו.

Page 52: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

שנוספו למשוואות מייצגים wהמשתנים החדשים •את כמות ההשפעה של ירי בהתאמה שיש לקבוצת

נוירונים פרה-סינפטיים על קצב הירי של נוירון. לא זקוקה ליחידות spiking neuronsרשת של •

.c(S)חישוב נוספות בשביל לחשב את בצורה v(i) שמחשבת את iנראה שליחידת חישוב •

שהוזכרה יש יותר כח חישוב מנוירון סיגמויד ואפילו ,v(j)מרשת של סיגמויד, שמקבלת כקלט משתנים

c(S) זה נובע מהעובדה שהנוסחאות מחשבות – .מכפלה של משתני הקלט בעצמם.

Page 53: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

נגדיר פונקציה בוליאנית:• משתני קלט n עבור 1ערך הפונקציה הוא •

, ו- מתשני קלט v(j)בוליאנים עבור כל תת הקבוצות c(S)בוליאנים

ו - c(S)=1 אם ורק אם 2 בגודל עבור תת-קבוצות

Page 54: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Computing with Firing Rates and Temporal Correlations

המתוארת באמצעות iיחידת חישוב אחת •הנוסחאות הנ"ל יכולה לחשב את הפונקציה

Fn.מצד שני מספר גדול מאוד של נוירונים •

רגילים יוכלו לחשב את אותה הפונקציה – סדר גודל של עבור נוירונים רגילים

עבור נוירונים סיגמויד. nוסדר גודל של

Page 55: Computing with Spiking Neurons איתי שור וכפיר אגוסטון

Conclusions

מציגות spiking neuronsרשתות המורכבות מ-•מחלקה חדשה של מודלים לחישוב.

הן יכולות לבצע חישוב באמצעות שיטות קידוד •שונות.

קיימות הוכחות תאורטיות המראות שרשתות • המקודדות באמצעות spiking neuronsנוירונים של

זמני הירי משיגות יותר כח חישובי עבור משימות מסויימות, מאשר הרשתות הרגילות מאותו הגודל.