Keras: ה-API ברמה גבוהה עבור TensorFlow

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

עם Keras, יש לך גישה מלאה למדרגיות וליכולות חוצות הפלטפורמות של TensorFlow. אתה יכול להפעיל את Keras על גבי TPU Pod או על אשכולות גדולים של GPUs, ותוכל לייצא דגמי Keras להפעלה בדפדפן או במכשירים ניידים. אתה יכול גם לשרת דגמי Keras באמצעות API אינטרנט.

קרס נועד להפחית עומס קוגניטיבי על ידי השגת המטרות הבאות:

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

מי צריך להשתמש ב-Keras

התשובה הקצרה היא שכל משתמש TensorFlow צריך להשתמש ב-Keras APIs כברירת מחדל. בין אם אתה מהנדס, חוקר או מתרגל ML, אתה צריך להתחיל עם Keras.

ישנם כמה מקרי שימוש (לדוגמה, בניית כלים על גבי TensorFlow או פיתוח פלטפורמה משלך בעלת ביצועים גבוהים) הדורשים ממשקי API של TensorFlow Core ברמה נמוכה. אבל אם מקרה השימוש שלך לא נופל באחד מיישומי Core API , אתה צריך להעדיף Keras.

רכיבי API של Keras

מבני הנתונים הליבה של Keras הם שכבות ומודלים . שכבה היא טרנספורמציה פשוטה של ​​קלט/פלט, ומודל הוא גרף אציקלי מכוון (DAG) של שכבות.

שכבות

מחלקת tf.keras.layers.Layer היא ההפשטה הבסיסית ב-Keras. Layer מקפלת מצב (משקלים) וחישוב כלשהו (מוגדר בשיטת tf.keras.layers.Layer.call ).

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

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

דגמים

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

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

שיעור tf.keras.Model כולל שיטות הדרכה והערכה מובנות:

  • tf.keras.Model.fit : מכשיר את הדגם למספר קבוע של עידנים.
  • tf.keras.Model.predict : יוצר תחזיות פלט עבור דגימות הקלט.
  • tf.keras.Model.evaluate : מחזירה את ערכי ההפסד והמדדים עבור המודל; מוגדר באמצעות שיטת tf.keras.Model.compile .

שיטות אלו מעניקות לך גישה לתכונות האימון המובנות הבאות:

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

ממשקי API וכלים אחרים

Keras מספקת ממשקי API וכלים רבים אחרים ללמידה עמוקה, כולל:

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

הצעדים הבאים

כדי להתחיל להשתמש ב-Keras עם TensorFlow, בדוק את הנושאים הבאים:

למידע נוסף על Keras, עיין בנושאים הבאים ב- keras.io :