הצטרף לקהילת SIG TFX-Addons ועזור לשפר את TFX!

מדריך למשתמש TFX

מבוא

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

TFX 1.0

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

הַתקָנָה

פִּיתוֹןPyPI

pip install tfx

חבילות ליליות

TFX מארח גם חבילות ליליות בבית https://pypi-nightly.tensorflow.org על Google Cloud Print. להתקנת החבילה הלילית האחרונה, השתמש בפקודה הבאה:

pip install -i https://pypi-nightly.tensorflow.org/simple --pre tfx

פעולה זו תתקין את החבילות הליליות לתלות העיקרית של TFX כגון ניתוח מודל TensorFlow (TFMA), TensorFlow Data Validation (TFDV), TensorFlow Transform (TFT), TFX Basic Shared Library (TFX-BSL), ML Metadata (MLMD).

אודות TFX

TFX היא פלטפורמה לבניית וניהול זרימות עבודה של ML בסביבת ייצור. TFX מספק את הדברים הבאים:

  • ערכת כלים לבניית צינורות ML. צינורות TFX מאפשרים לך לתזמן את זרימת ה- ML שלך בכמה פלטפורמות, כגון: Apache Airflow, Apache Beam ו- Kubeflow Pipelines.

    למידע נוסף על צינורות TFX .

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

    למידע נוסף על רכיבים סטנדרטיים TFX .

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

    למידע נוסף על ספריות TFX .

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

רכיבי TFX סטנדרטיים

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

צינור TFX כולל בדרך כלל את הרכיבים הבאים:

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

  • StatisticsGen מחשבת הסטטיסטיקה עבור בסיס הנתונים.

  • SchemaGen בוחן את הסטטיסטיקה ויוצר סכימת נתונים.

  • ExampleValidator מחפש אנומליות וערכים חסרים במערך הנתונים.

  • Transform הנדסת תכונה מבצעת על בסיס הנתונים.

  • מאמן רכבות המודל.

  • טיונר tunes את hyperparameters של המודל.

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

  • InfraValidator צ'קים המודל הוא למעשה servable מהתשתית, ומונע מודל רע מדחיפתה.

  • Pusher ופורס את המודל על תשתית משרתים.

  • BulkInferrer עיבוד אצווה מבצע על מודל עם בקשות היקש נטולות-תווית.

תרשים זה ממחיש את זרימת הנתונים בין רכיבים אלה:

זרימת רכיבים

ספריות TFX

TFX כולל גם ספריות וגם רכיבי צינור. תרשים זה ממחיש את הקשרים בין ספריות TFX ורכיבי צינור:

ספריות ורכיבים

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

ספריות TFX כוללות:

  • TensorFlow אימות נתונים (TFDV) היא ספרייה לניתוח נתוני למידת מכונת תוקף. זה נועד להיות מדרגי מאוד ולעבוד טוב עם TensorFlow ו- TFX. TFDV כולל:

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

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

    • צופה בסכמה שיעזור לך לבדוק את הסכימה.

    • זיהוי חריגות לזיהוי חריגות, כגון תכונות חסרות, ערכים מחוץ לטווח, או סוגי תכונות שגויים, עד כמה שם.

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

  • TensorFlow Transform (TFT) הוא ספריית נתוני עיבוד מקדים עם TensorFlow. Transform TensorFlow שימושי לנתונים הדורשים מעבר מלא, כגון:

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

    KerasTuner משמש hyperparameters כוונון עבור דגם.

  • TensorFlow דגם ניתוח (TFMA) היא ספריה להערכת מודלים TensorFlow. הוא משמש יחד עם TensorFlow ליצירת EvalSavedModel, שהופך לבסיס לניתוחו. זה מאפשר למשתמשים להעריך את המודלים שלהם על כמויות גדולות של נתונים באופן מבוזר, תוך שימוש באותם מדדים שהוגדרו במאמן שלהם. ניתן לחשב מדדים אלה על גבי פרוסות נתונים שונות ולהמחישם במחברות Jupyter.

  • TensorFlow Metadata (TFMD) מספק ייצוגים תקן metadata כי הם שימושיים כאשר לומדים מודלים מכונת אימונים עם TensorFlow. המטא-נתונים עשויים להיות מיוצרים בעבודת יד או באופן אוטומטי במהלך ניתוח נתוני הקלט, וניתן לצרוך אותם לצורך אימות נתונים, חקר ושינוי טרנספורמציה. הפורמטים לסידור מטא-נתונים כוללים:

    • סכמה המתארת ​​נתונים טבלאיים (למשל, דוגמאות למשל).
    • אוסף של נתונים סטטיסטיים מסכמים על מערכי נתונים כאלה.
  • ML Metadata (MLMD) היא ספריה הקלטה ואחזור metadata הקשורים מפתח ML ומדען נתונים זרימות עבודה. לרוב המטא-נתונים משתמשים בייצוגי TFMD. MLMD מצליח התמדה באמצעות SQL-לייט , MySQL , ובמאגרי נתונים דומים אחרים.

תמיכה בטכנולוגיות

נדרש

  • אפצ'י Beam הוא קוד פתוח, מודל מאוחד להגדרה הן תצווה הזרמת צינורות עיבוד מקביל נתונים. TFX משתמש ב- Apache Beam כדי ליישם צינורות מקבילים לנתונים. צינור מבוצע אז על ידי אחד מסתיים בחזרה עיבוד מבוזר נתמך של Beam, הכוללים Apache פלינק, ספארק Apache, Google Cloud dataflow , ואחרים.

אופציונאלי

מתזמרים כמו Apache Airflow ו- Kubeflow הופכים את התצורה, ההפעלה, הניטור והשמירה על צינור ML לקלים יותר.

  • Airflow האפצ'י הוא פלטפורמת זרימות עבודת מחבר, לוח זמנים ואת הצג תכנותי. TFX משתמש ב- Airflow כדי לחבר זרימות עבודה כגרפים acyclic מכוונים (DAG) של משימות. מתזמן זרימת האוויר מבצע משימות במערך עובדים תוך מעקב אחר התלות שצוינה. כלי שורת פקודה עשירים הופכים את הביצוע של ניתוחים מורכבים ב- DAG לביצועים מהירים. ממשק המשתמש העשיר מקל על הדמיה של צינורות הפועלים בייצור, מעקב אחר התקדמות ופתרון בעיות בעת הצורך. כאשר תהליכי עבודה מוגדרים כקוד, הם הופכים לתחזוקיים יותר, ניתנים לגרסה, ניתנים לבדיקה ושיתופי פעולה.

  • Kubeflow מוקדש עושה פריסות של למידת מכונה (ML) ותהליכי עבודה על פשוטה Kubernetes, נייד וניתן להרחבה. מטרתו של קובפלוב אינה ליצור מחדש שירותים אחרים, אלא לספק דרך פשוטה לפרוס מערכות קוד פתוח מיטביות עבור ML בתשתיות מגוונות. Kubeflow צנרת לאפשר רכב וביצוע של תהליכי עבודה לשחזור על Kubeflow, משולב עם חוויות מבוססות התנסות מחברת. שירותי Kubeflow Pipelines ב- Kubernetes כוללים את חנות Metadata המתארחת, מנוע תזמור מבוסס מכולה, שרת מחברות ו- UI שיעזרו למשתמשים לפתח, להריץ ולנהל צינורות ML מורכבים בקנה מידה. ה- SDK של צינורות Kubeflow מאפשר יצירה ושיתוף של רכיבים והרכב צינורות באופן פרוגרמטי.

ניידות ויכולת פעולה הדדית

TFX נועד להיות נייד לסביבות מרובות ומסגרות תזמור, כולל Airflow Apache , Apache Beam ו Kubeflow . זהו גם נייד לפלטפורמות מיחשוב שונות, לרבות על-הנחת יסוד, פלטפורמות ענן כגון בפלטפורמת הענן של Google (GCP) . בפרט, interoperates TFX עם שירותי GCP serveral הצליח, כגון ענן AI פלטפורמה עבור הדרכה וחיזוי , ואת קלאוד dataflow עבור נתונים מבוזרים עיבוד במשך כמה היבטים אחרים של מחזור חיי ML.

מודל מול SavedModel

דֶגֶם

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

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

SavedModel

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

SavedModel הוא פורמט הסידור המומלץ להגשת מודל TensorFlow בייצור, או לייצוא מודל מאומן ליישום מקומי לנייד או JavaScript. לדוגמא, כדי להפוך מודל לשירות REST לצורך חיזוי, ניתן לסדר את המודל כסמל מודל ולהגיש אותו באמצעות TensorFlow Serving. ראה ריצוי TensorFlow דגם לקבלת מידע נוסף.

סכֵימָה

רכיבים TFX מסוימים משתמשים בתיאור נתוני הקלט שלך נקרא סכמה. הסכימה היא מופע של schema.proto . סכימות הן סוג של חיץ פרוטוקול , יותר המוכר באופן כללי כ "Protobuf". הסכימה יכולה לציין סוגי נתונים עבור ערכי תכונות, בין אם תכונה צריכה להיות נוכחת בכל הדוגמאות, טווחי הערכים המותרים ותכונות אחרות. אחד היתרונות של שימוש ב- TensorFlow Validation Data (TFDV) הוא שהוא ייצור באופן אוטומטי סכימה על ידי הסקת סוגים, קטגוריות וטווחים מנתוני האימון.

הנה קטע מ- protobuf סכמה:

...
feature {
  name: "age"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
feature {
  name: "capital-gain"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
...

הרכיבים הבאים משתמשים בסכמה:

  • אימות נתונים של TensorFlow
  • טרנספורמציה של TensorFlow

בצינור TFX טיפוסי TensorFlow Validation Data מייצר סכמה הנצרכת על ידי הרכיבים האחרים.

פיתוח עם TFX

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

חקר נתונים, ויזואליזציה וניקוי

חקר נתונים, ויזואליזציה וניקוי

צינורות TFX בדרך כלל מתחילים עם ExampleGen רכיב, אשר מקבל נתוני קלט פורמטים בה tf.Examples. לעיתים קרובות הדבר נעשה לאחר פיצול הנתונים למערכי נתונים של אימונים והערכה כך שלמעשה ישנם שני עותקים של רכיבי ExampleGen, אחד כל אחד להכשרה והערכה. זה ואחריו בדרך כלל על ידי StatisticsGen רכיב לבין SchemaGen רכיב, אשר יבחן את הנתונים ולהסיק סכימה נתונים וסטטיסטיקות. הסכימה והסטטיסטיקות תהיינה נצרכו על ידי ExampleValidator רכיב, אשר יחפש אנומליות, ערכים חסרים, וסוגי נתונים שגויים בנתונים שלך. כל המרכיבים הללו למנף את היכולות של אימות נתונים TensorFlow הספרייה.

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

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

נתונים להדמיה

לאחר שתסיים את הריצה הראשונה של הנתונים שלך דרך קטע הצינור שלך המשתמש ב- TFDV (בדרך כלל StatisticsGen, SchemaGen ו- ExampleValidator) תוכל לדמיין את התוצאות במחברת בסגנון Jupyter. לריצות נוספות תוכל להשוות תוצאות אלה תוך כדי התאמות, עד שהנתונים שלך יהיו אופטימליים עבור המודל והיישום שלך.

אתה תהיה הראשון שאילתה ML Metadata (MLMD) כדי לאתר את התוצאות של הוצאות להורג אלה של רכיבים אלה, ולאחר מכן להשתמש ב- API תמיכה להדמיה ב TFDV כדי ליצור את חזותיים במחברת. זה כולל tfdv.load_statistics () ו tfdv.visualize_statistics () באמצעות ויזואליזציה זו ניתן להבין טוב יותר את המאפיינים של הנתונים שלך, ואם שינוי הכרחי כנדרש.

פיתוח והדרכת מודלים

הנדסת תכונות

צינור TFX טיפוסי יכלול Transform רכיב, אשר יבצע הנדסת תכונה ידי מינוף היכולות של TensorFlow Transform (TFT) הספרייה. Transform צורכת רכיב בסכימה נוצרה על ידי רכיב SchemaGen, ומחיל טרנספורמציות נתונים כדי ליצור, לשלב, ולהפוך את התכונות אשר תשמש כדי לאמן את המודל שלך. ניקוי ערכים חסרים והמרת סוגים צריך להיעשות גם ברכיב הטרנספורמציה אם קיימת אי פעם שאלה יהיו נוכחים גם בנתונים שנשלחו לבקשות הסקה. יש כמה שיקולים חשובים בעת תכנון קוד TensorFlow לאימונים TFX.

דוגמנות והדרכה

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

בעבודה עם מודלים מבוססי Estimator, החלק האחרון בקוד הדוגמנות שלך צריך לשמור את המודל שלך כ- SavedModel ו- EvalSavedModel. שמירה כ- EvalSavedModel מבטיחה שהמדדים המשמשים בזמן האימון זמינים גם במהלך ההערכה (שימו לב שזה לא נדרש למודלים מבוססי keras). שמירת EvalSavedModel דורשת כי תייבא ניתוח דגם TensorFlow (TFMA) ספריית רכיב המאמן שלך.

import tensorflow_model_analysis as tfma
...

tfma.export.export_eval_savedmodel(
        estimator=estimator,
        export_dir_base=eval_model_dir,
        eval_input_receiver_fn=receiver_fn)

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

ניתוח והבנת ביצועי הדגם

ניתוח מודלים

בעקבות פיתוח ואימון ראשוני של המודל חשוב לנתח ולהבין באמת את ביצועי המודל שלך. צינור TFX טיפוסי יכלול למעריכי רכיב, אשר ממנף את היכולות של ניתוח דגם TensorFlow (TFMA) הספרייה, אשר מספק ערכת כלים כוח עבור שלב זה של הפיתוח. נסיון בהערכת מרכיב צורכת המודל שאתה המיוצא לעיל, ומאפשר לך להגדיר רשימה של tfma.SlicingSpec שאתה יכול להשתמש כאשר חזותי וניתוח ביצועים של הדגם שלך. כול SlicingSpec מגדיר פרוס נתון האימון שלך כי אתה רוצה לבחון, כגון קטגוריות בפרט עבור תכונות הקטגורי, או לטווחים מסוימים עבור תכונות מספריות.

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

ניתוח מודלים והדמיה

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

אתה תהיה ראשון שאילתא ML Metadata (MLMD) כדי לאתר את התוצאות של הוצאות להורג אלה של רכיבים אלה, ולאחר מכן להשתמש ב- API תמיכה להדמיה ב TFMA כדי ליצור את חזותיים במחברת. זה כולל tfma.load_eval_results ו tfma.view.render_slicing_metrics באמצעות ויזואליזציה זו ניתן להבין טוב יותר את המאפיינים של המודל שלך, ואם שינוי הכרחי כנדרש.

אימות ביצועי המודל

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

מאמת שניתן להגיש מודל

אימות אינפרא

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

יעדי פריסה

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

זרימת רכיבים

מסקנה: הגשת TensorFlow

TensorFlow הגשה (TFS) הוא מערכת שמשמשת ביצועים גבוהים וגמישה, עבור מודלים של למידת מכונה, המיועד לסביבות ייצור. הוא צורך SavedModel ויקבל בקשות הסקה על ממשקי REST או gRPC. הוא פועל כמערכת תהליכים על שרתי רשת אחד או יותר, תוך שימוש בכמה מכמה ארכיטקטורות מתקדמות לטיפול בסינכרון ובחישוב מבוזר. עיין בתיעוד TFS למידע נוסף על פיתוח ופריסה של פתרונות TFS.

בשנת צינור טיפוסי, SavedModel אשר הוכשר בבית מאמן מרכיב היה ראשון להיות אינפרא-תוקף באופן InfraValidator רכיב. InfraValidator משיק שרת דגם TFS הקנרי שיגיש בפועל את ה- SavedModel. אם אימות עבר, A Pusher רכיב ולבסוף יטמיע את SavedModel לתשתית TFS שלך. זה כולל טיפול במספר גרסאות ועדכוני דגם.

הסקה ביישומי Native Mobile ו- IoT: TensorFlow Lite

TensorFlow לייט הוא חבילה של כלים אשר מוקדש מפתחי עזרת משתמשים במודלי TensorFlow המאומנים שלהם ביישומים ניידים IOT ילידים. הוא צורך אותם SavedModels כמו TensorFlow Serving, ומיישם אופטימיזציות כגון כימות וגיזום כדי לייעל את הגודל והביצועים של המודלים המתקבלים לאתגרים של ריצה במכשירים ניידים ו- IoT. עיין בתיעוד של TensorFlow Lite למידע נוסף על השימוש ב- TensorFlow Lite.

הסקה ב- JavaScript: TensorFlow JS

TensorFlow JS היא ספריית JavaScript להכשרת ופריסה דגמי ML בדפדפן ועל Node.js. הוא צורך אותם SavedModels כמו TensorFlow Serving ו- TensorFlow Lite, וממיר אותם לפורמט האינטרנט TensorFlow.js. עיין בתיעוד TensorFlow JS לקבלת פרטים נוספים על השימוש ב- TensorFlow JS.

יצירת צינור TFX עם זרימת אוויר

בדוק זרימת אוויר סדנה לפרטים

יצירת צינור TFX עם Kubeflow

להכין

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

הגדר והפעל צינור TFX

אנא עקבו אחר TFX על הדרכה ענן AI פלטפורמת צינור לרוץ בצנרת למשל TFX על Kubeflow. רכיבי TFX עברו מיכל להכנת צינור Kubeflow והמדגם ממחיש את היכולת להגדיר את הצינור לקריאת מערך נתונים ציבורי גדול ולבצע שלבי הדרכה ועיבוד נתונים בקנה מידה ענן.

ממשק שורת פקודה לפעולות צינור

TFX מספק CLI מאוחד שעוזר לבצע מגוון רחב של פעולות צינור כגון יצירה, עדכון, הפעלה, רשימה ומחיקת צינורות בתזמורים שונים כולל Apache Airflow, Apache Beam ו- Kubeflow לפרטים, אנא פעל לפי ההוראות הבאות .