בדף הזה מוסבר למה כדאי להשתמש בתכונה MLTransform ואיך משתמשים בה כדי להכין את הנתונים לאימון מודלים של למידת מכונה (ML). כשמשלבים כמה טרנספורמציות של עיבוד נתונים במחלקה אחת, MLTransformהתהליך של הפעלת פעולות עיבוד נתונים של Apache Beam ML על תהליך העבודה מתייעל.
מידע על שימוש ב-MLTransform למשימות של יצירת הטבעות זמין במאמר יצירת הטבעות באמצעות MLTransform.

MLTransform בשלב העיבוד המקדים של תהליך העבודה.
יתרונות
היתרונות של סוג האחסון MLTransform:
- להפוך את הנתונים בלי לכתוב קוד מורכב או לנהל ספריות בסיסיות.
- אפשר לשרשר ביעילות כמה סוגים של פעולות עיבוד בממשק אחד.
ליצור הטמעות שאפשר להשתמש בהן כדי להעביר נתונים למסדי נתונים וקטוריים או כדי להריץ הסקה.
מידע נוסף על יצירת הטמעות זמין במאמר בנושא יצירת הטמעות באמצעות MLTransform.
תמיכה ומגבלות
יש הגבלות על המחלקה MLTransform:
- התכונה זמינה לצינורות שמשתמשים ב-Apache Beam Python SDK בגרסה 2.53.0 ואילך.
- בצינורות צריך להשתמש בחלונות ברירת המחדל.
טרנספורמציות של עיבוד נתונים שמשתמשות ב-TFT:
- תמיכה ב-Python 3.9, 3.10 ו-3.11.
- תמיכה בצינורות עיבוד נתונים של קבוצות.
תרחישים לדוגמה
מחברות הדוגמה מראות איך להשתמש ב-MLTransform לתרחישי שימוש ספציפיים של הטמעות.
- אני רוצה לחשב אוצר מילים ממערך נתונים
- חישוב אוצר מילים ייחודי מתוך מערך נתונים, ואז מיפוי של כל מילה או טוקן לאינדקס של מספר שלם נפרד. משתמשים בטרנספורמציה הזו כדי לשנות נתונים טקסטואליים להצגות מספריות למשימות של למידת מכונה.
- אני רוצה להגדיל את הנתונים כדי לאמן את מודל ה-ML
- התאמת הנתונים כך שתוכלו להשתמש בהם לאימון מודל ML. המחלקות של Apache Beam
MLTransformכוללות כמה טרנספורמציות של שינוי קנה מידה של נתונים.
רשימה מלאה של טרנספורמציות זמינה במאמר Transforms במסמכי התיעוד של Apache Beam.
שימוש ב-MLTransform
כדי להשתמש במחלקה MLTransform לעיבוד מקדים של נתונים, צריך לכלול את הקוד הבא בצינור העיבוד:
import apache_beam as beam
from apache_beam.ml.transforms.base import MLTransform
from apache_beam.ml.transforms.tft import TRANSFORM_NAME
import tempfile
data = [
{
DATA
},
]
artifact_location = gs://BUCKET_NAME
TRANSFORM_FUNCTION_NAME = TRANSFORM_NAME(columns=['x'])
with beam.Pipeline() as p:
transformed_data = (
p
| beam.Create(data)
| MLTransform(write_artifact_location=artifact_location).with_transform(
TRANSFORM_FUNCTION_NAME)
| beam.Map(print))
מחליפים את הערכים הבאים:
-
TRANSFORM_NAME: השם של הטרנספורמציה שרוצים להשתמש בה -
BCUKET_NAME: השם של הקטגוריה של Cloud Storage -
DATA: נתוני הקלט להמרה -
TRANSFORM_FUNCTION_NAME: השם שאתם מקצים לפונקציית הטרנספורמציה בקוד
המאמרים הבאים
- פרטים נוספים על
MLTransformזמינים במאמר עיבוד מקדים של נתונים במסמכי התיעוד של Apache Beam. - דוגמאות נוספות זמינות במאמר
MLTransformלעיבוד נתונים בקטלוג הטרנספורמציות של Apache Beam. - הפעלת קובץ notebook אינטראקטיבי ב-Colab.