Root Nationחֲדָשׁוֹתחדשות ITIBM יצרה את מערך הנתונים של Project CodeNet: 14 מיליון דגימות קוד ילמדו AI לתכנת

IBM יצרה את מערך הנתונים של Project CodeNet: 14 מיליון דגימות קוד ילמדו AI לתכנת

-

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

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

IBM Project CodeNet
Project CodeNet הוא מערך נתונים עצום של ~ 14 מיליון דוגמאות קוד הפזורות על פני עשרות שפות תכנות.

מאמץ רב הושקע ביצירת מערכי נתונים ואמות מידה לפיתוח והערכה של מערכות בינה מלאכותית לקוד על ידי קהילת המומחים. אבל, לאור האופי היצירתי והפתוח של פיתוח תוכנה, קשה מאוד ליצור את מערך הנתונים המושלם לתכנות. עם Project CodeNet, חוקרי IBM ניסו ליצור מערך נתונים רב תכליתי שניתן להשתמש בו כדי לאמן מודלים של למידת מכונה במגוון משימות. היוצרים של CodeNet מתארים אותו כ"מערך נתונים בקנה מידה גדול מאוד, מגוון ואיכותי להאצת התקדמות אלגוריתמית ב-AI עבור קוד."

מערך הנתונים מכיל 14 מיליון דוגמאות של 500 מיליון שורות קוד שנכתבו ב-55 שפות תכנות שונות. דוגמאות קוד התקבלו מכמעט 4000 משימות שהוגשו שפורסמו בפלטפורמות הקידוד המקוונות של AIZU ו-AtCoder. דוגמאות הקוד כוללות גם תשובות נכונות וגם לא נכונות למשימות הנתונות.

מעניין גם:

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

IBM Project CodeNet

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

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

קרא גם:

מָקוֹרanalyticsindiamag
הירשם
תודיע על
אורח

2 תגובות
חדשים יותר
המבוגרים יותר הפופולרי ביותר
ביקורות משובצות
הצג את כל ההערות
מְנַצֵחַ
מְנַצֵחַ
לפני 2 שנים

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

אאסד
אאסד
לפני 2 שנים

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