Kaggle: איפה שמדעני נתונים לומדים ומתחרים

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

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

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

מה זה קגל?

במבט מקיף יותר, Kaggle היא קהילה מקוונת עבור מדעני נתונים המציעה תחרויות למידת מכונה, מערכי נתונים, מחברות, גישה למאיצי הכשרה וחינוך. אנתוני גולדבלום (מנכ"ל) ובן המנר (CTO) הקימו את קגל בשנת 2010, וגוגל רכשה את החברה בשנת 2017.

תחרויות קאגגל שיפרו את מצב האמנות ללימוד מכונה בכמה תחומים. האחת היא מיפוי חומר אפל; אחר הוא מחקר HIV / איידס. כשמסתכלים על הזוכים בתחרויות קאגגל, תראה המון דגמי XGBoost, כמה דגמי יער אקראי וכמה רשתות עצביות עמוקות.

תחרויות קאגגל

יש חמש קטגוריות של תחרות Kaggle: תחילת העבודה, מגרש משחקים, מוצעים, מחקר וגיוס עובדים.

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

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

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

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

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

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

מערכי נתונים של Kaggle

Kaggle מארח מעל 35 אלף מערכי נתונים. אלה נמצאים במגוון פורמטים של פרסום, כולל ערכים המופרדים באמצעות פסיקים (CSV) עבור נתונים טבלאיים, JSON עבור נתונים דמויי עצים, מסדי נתונים של SQLite, ארכיוני ZIP ו- 7z (משמשים לעתים קרובות למערכי נתונים של תמונות), ומערכי נתונים של BigQuery, שהם רבים - מערכי נתונים SQL של ​​בתים מתארחים בשרתי גוגל.

ישנן מספר דרכים למצוא מערכי נתונים של Kaggle. בדף הבית של Kaggle תוכלו למצוא רשימה של מערכי נתונים ומערכי נתונים "חמים" שהועלו על ידי אנשים שאתם עוקבים אחריהם. בדף מערכי הנתונים של Kaggle תמצאו רשימת מערכי נתונים (שהוזמנו בתחילה לפי "הכי חם" אך עם אפשרויות הזמנה אחרות) ומסנן חיפוש. תוכל גם להשתמש בתגים ובדפי תגים כדי לאתר מערכי נתונים, למשל //www.kaggle.com/tags/crime.

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

נכון לעכשיו, לקאגגל יש לא מעט ערכות נתונים, אתגרים ומחברות של COVID-19. היו כבר כמה תרומות קהילתיות למאמץ להבין את המחלה הזו ואת הנגיף שגורם לה.

מחברות Kaggle

Kaggle תומך בשלושה סוגים של מחשבים ניידים: סקריפטים, סקריפטים RMarkdown ו- Jupyter Notebooks. סקריפטים הם קבצים שמבצעים הכל כקוד ברצף. אתה יכול לכתוב מחברות ב- R או Python. קודני R ואנשים שמגישים קוד לתחרויות משתמשים לעתים קרובות בתסריטים; קודני פיתון ואנשים שעושים ניתוח נתונים חקר נוטים להעדיף מחברות Jupyter.

מחשבים ניידים מכל פס יכול לכלול אופציונלי GPU (Nvidia Tesla P100) או מאיצים TPU בחינם, והם עשויים להשתמש בשירותי Google Cloud Platform, אך קיימות מכסות החלות, למשל 30 שעות GPU ו- 30 שעות TPU בשבוע. ביסודו של דבר, אל תשתמש ב- GPU או TPU במחברת, אלא אם כן אתה צריך להאיץ את אימון הלמידה העמוקה. שימוש בשירותי Google Cloud Platform עשוי לחייב חיובים בחשבון Google Cloud Platform שלך אם אתה חורג מקצבאות שכבות בחינם.

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

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

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

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

ממשק API ציבורי של Kaggle

בנוסף לבניית והפעלת מחברות אינטראקטיביות, באפשרותך לקיים אינטראקציה עם Kaggle באמצעות שורת הפקודה Kaggle מהמחשב המקומי שלך, המכנה את ממשק ה- API הציבורי של Kaggle. באפשרותך להתקין את ה- Kaggle CLI באמצעות מתקין ה- Python 3 pipולאמת את המחשב שלך על ידי הורדת אסימון API מאתר Kaggle.

ה- CLI ו- API של Kaggle יכולים לתקשר עם תחרויות, מערכי נתונים ומחברות (גרעינים). ה- API הוא קוד פתוח ומתארח ב- GitHub בכתובת //github.com/Kaggle/kaggle-api. קובץ README שם מספק את התיעוד המלא לכלי שורת הפקודה.

קהילת Kaggle וחינוך

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

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