Datumbox Machine Learning Framework 0.6.0 שיחררה PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

מסגרת הלמידה על מכונה של Datumbox 0.6.0 שוחררה

הגרסה החדשה של מסגרת הלמידה של מכונת הדייטבוקס שוחררה! הורד אותו עכשיו מ- GitHub or מאגר מרכזי של מייבן.

מה חדש?

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

בואו נראה בפירוט את השינויים בגירסה זו:

  1. טפל בנתונים גדולים: ניהול הזיכרון המשופר ומנועי אחסון ההתמדה החדשים אפשרו למסגרת להתמודד עם מערכי נתונים גדולים בגודל GB. הוספת תמיכה של MapDB מנוע מסד הנתונים מאפשר למסגרת להימנע מאחסון כל הנתונים בזיכרון ובכך להיות מסוגל לטפל בנתונים גדולים. מנוע ברירת המחדל של InMemory מעוצב מחדש כדי להיות יעיל יותר בזמן שמנוע ה- MongoDB הוסר בגלל בעיות ביצועים.
  2. ארכיטקטורת מסגרת משופרת ופשוטה: רמת ההפשטה מופחתת משמעותית ומספר רכיבי ליבה מתוכננים מחדש. בפרט כותבים מנגנוני האחסון להתמדה ומסולקים כמה תכונות ומבני נתונים מיותרים.
  3. ממשקי API חדשים לציבור "Scikit-like-like": כל השיטות הציבוריות של האלגוריתמים משתנות כך שתדמה ממשקי ה- API של Scikit-Learn של פייתון (פרדיגמת ההתאמה / החיזוי / ההמרה). השיטות הציבוריות החדשות גמישות יותר, קלות וידידותיות יותר לשימוש.
  4. פשט ניתוח נתונים: המסגרת החדשה מגיעה עם מערך של שיטות נוחות המאפשרות ניתוח מהיר של קבצי CSV או טקסט והמרתם לאובייקטים של מערך נתונים.
  5. תיעוד משופר: כל השיעורים הציבוריים / מוגנים ושיטות המסגרת מתועדים באמצעות הערות Javadoc. בנוסף הגירסה החדשה מספקת בדיקות JUnit משופרות שהן דוגמאות נהדרות לשימוש בכל אלגוריתם של המסגרת.
  6. רישיון Apache חדש: רישיון התוכנה של המסגרת השתנה מ- "הרישיון הציבורי הכללי של GNU v3.0"כדי"רישיון Apache, גרסה 2.0“. הרישיון החדש מתיר והוא מאפשר חלוקה מחדש בתוך תוכנה מסחרית.

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

איך להשתמש בו

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

השלבים הבאים ומפת הדרכים

פיתוח המסגרת יימשך ויש לבצע את השיפורים הבאים לפני יציאת גרסה 1.0:

  1. Using מסגרת מהקונסולה: למרות שמטרתה העיקרית של המסגרת היא לסייע בפיתוח יישומי Machine Learning, יש להקל עליה להשתמש במפתחים שאינם Java. על פי גישה דומה כמו Mahout, המסגרת צריכה לספק גישה לאלגוריתמים באמצעות פקודות קונסולה. הממשק צריך להיות פשוט, קל לשימוש ויש בקלות לשלב את האלגוריתמים השונים.
  2. תמיכה בריבוי הברגה: המסגרת משתמשת כיום בשרשורים רק לתהליכי ניקוי וכתיבה אסינכרונית לדיסק. עם זאת ניתן להקביל חלק מהאלגוריתמים וזה יפחית משמעותית את זמני הביצוע. הפיתרון במקרים אלה צריך להיות אלגנטי וצריך לשנות כמה שפחות את ההיגיון / מתמטיקה הפנימיים של אלגוריתמי למידת המכונה.
  3. צמצם את השימוש במערכים ומטריצות דו-ממדיות: מספר קטן של אלגוריתמים עדיין משתמש במערכים דו-ממדיים ומטריצות. זה גורם לטעינת כל הנתונים לזיכרון המגביל את גודל הנתונים שאפשר להשתמש בהם. יש ליישם מחדש אלגוריתמים מסוימים (כגון PCA) בכדי להימנע משימוש במטריצות ואילו עבור אחרים (כמו GaussianDPMM, MultinomialDPMM וכו ') עלינו להשתמש במטריצות דלילות.

משימות חשובות אחרות שיש לבצע בגירסאות הקרובות:

  1. כלול אלגוריתמים חדשים למידת מכונה: ניתן להרחיב את המסגרת כך שתתמוך בכמה אלגוריתמים נהדרים כמו תערובת גאוסים, תהליכים גאוסיים, k-NN, עצי החלטה, ניתוח גורמים, SVD, PLSI, רשתות עצביות מלאכותיות וכו '.
  2. שפר את התיעוד, כיסוי מבחן ודוגמאות קוד: צור תיעוד טוב יותר, שפר את בדיקות JUnit, שפר הערות קוד, סיפק דוגמאות טובות יותר לשימוש באלגוריתמים וכו '.
  3. שפר את האדריכלות & אופטימיזציה של קוד: פישוט ושיפורים נוספים בארכיטקטורת המסגרת, רציונלי הפשטה, שיפור העיצוב, מיטוב מהירות וצריכת זיכרון וכו '.

כפי שאתה יכול לראות שזה דרך ארוכה ויכולתי להשתמש בעזרה. אם אתה עומד לאתגר ירידה לי קו או שלח את בקשת המשיכה שלך ב- github.

תודות

אני רוצה להודות אלפתריוס במפלטאקיס על תשומותיו שלא יסולא בפז לשיפור האדריכלות של המסגרת. כמו כן ברצוני להודות ej-Technologies GmbH על שהעניק לי רישיון לפרופיל ה- Java שלהם. יתר על כן הקודואים שלי ל ג'אן קוטק על עבודתו המדהימה במנוע האחסון MapDB. אחרון חביב, אהבתי לחברתי קיריאקי על כך שהשלים איתי.

אל תשכח להוריד את הקוד של Datumbox v0.6.0 מ GitHub. הספרייה זמינה גם ב- מאגר מרכזי של מייבן. למידע נוסף על אופן השימוש בספריה בסימון פרויקט Java שלך, להלן מדריך או קרא את ההוראות בדף הראשי של ריפו Github שלנו.

אני מצפה לתגובות ולהמלצות שלך. בקשות למשוך תמיד יתקבלו בברכה! 🙂

בול זמן:

עוד מ דטומבוקס