סיווגי נתונים

‫Vertex AI SDK כולל מחלקות שמאחסנות וקוראות נתונים שמשמשים לאימון מודל. כל מחלקה שקשורה לנתונים מייצגת מערך נתונים מנוהל של Gemini Enterprise Agent Platform, שמכיל נתונים מובנים, נתונים לא מובנים או נתונים של Vertex AI Feature Store. אחרי שיוצרים מערך נתונים, משתמשים בו כדי לאמן את המודל.

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

dataset = aiplatform.ImageDataset('projects/my-project/location/my-region/datasets/{DATASET_ID}')

מחלקות של נתונים מובְנים

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

TabularDataset

אפשר להשתמש במחלקה הזו כדי לעבוד עם מערכי נתונים טבלאיים. אפשר להשתמש בקובץ CSV, ב-BigQuery או ב-pandas DataFrame כדי ליצור מערך נתונים טבלאי. מידע נוסף על דפדוף בנתוני BigQuery זמין במאמר קריאת נתונים באמצעות BigQuery API עם חלוקה לדפים. מידע נוסף על נתונים טבלאיים זמין במאמר בנושא נתונים טבלאיים.

הקוד הבא מראה איך ליצור מערך נתונים טבלאי על ידי ייבוא של קובץ CSV.

my_dataset = aiplatform.TabularDataset.create(
    display_name="my-dataset", gcs_source=['gs://path/to/my/dataset.csv'])

הקוד הבא מראה איך ליצור מערך נתונים טבלאי על ידי ייבוא קובץ CSV בשני שלבים נפרדים.

my_dataset = aiplatform.TextDataset.create(
    display_name="my-dataset")

my_dataset.import(
    gcs_source=['gs://path/to/my/dataset.csv']
    import_schema_uri=aiplatform.schema.dataset.ioformat.text.multi_label_classification
)

אם יוצרים מערך נתונים טבלאי באמצעות pandas‏ DataFrame, צריך להשתמש בטבלה ב-BigQuery כדי לאחסן נתונים במחסן ביניים (Stage) את הנתונים לשימוש ב-Gemini Enterprise Agent Platform:

my_dataset = aiplatform.TabularDataset.create_from_dataframe(
    df_source=my_pandas_dataframe,
    staging_path=f"bq://{bq_dataset_id}.table-unique"
)

TimeSeriesDataset

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

אפשר ליצור מערך נתונים מנוהל של נתוני סדרות זמן מקובצי CSV בקטגוריה של Cloud Storage או מטבלה ב-BigQuery.

הקוד הבא מראה איך ליצור TimeSeriesDataset על ידי ייבוא של קובץ מקור נתונים מסוג CSV שמכיל את מערך הנתונים של סדרת הזמן:

my_dataset = aiplatform.TimeSeriesDataset.create(
    display_name="my-dataset", gcs_source=['gs://path/to/my/dataset.csv'])

בדוגמה הבאה אפשר לראות איך יוצרים TimeSeriesDataset על ידי ייבוא של קובץ טבלה ב-BigQuery שמכיל את מערך הנתונים של סדרת הזמן:

my_dataset = aiplatform.TimeSeriesDataset.create(
    display_name="my-dataset", bq_source=['bq://path/to/my/bigquerydataset.train'])

כיתות של נתונים לא מובנים

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

ImageDataset

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

שימוש בנתוני תמונות למטרות הבאות:

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

my_dataset = aiplatform.ImageDataset.create(
    display_name="my-image-dataset",
    gcs_source=['gs://path/to/my/image-dataset.csv'],
    import_schema_uri=['gs://path/to/my/schema.yaml']
    )

סיווג נתונים ב-Vertex AI Feature Store

‫Vertex AI Feature Store הוא שירות מנוהל שמשמש לאחסון, להצגה, לניהול ולשיתוף של תכונות של למידת מכונה בהתאם לצורך ולגודל.

‫Vertex AI Feature Store משתמש במודל נתונים של סדרות זמן שמורכב משלוש מחלקות ששומרות על התכונות כשהן משתנות לאורך זמן. שלושת הסוגים מסודרים בסדר ההיררכי הבא:

היררכיית המחלקות של Vertex AI Feature Store

מידע נוסף על מודל הנתונים של Vertex AI Feature Store זמין במאמר מודל נתונים ומשאבים. מידע נוסף על הדרישות לגבי מקור נתונים של Vertex AI Feature Store זמין במאמר בנושא דרישות לגבי נתוני המקור.

המחלקות הבאות משמשות עם נתונים מ-Vertex AI Feature Store:

Featurestore

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

יצירת סוג ישות

משתמשים בשיטה Featurestore.create_entity_type עם entity_type_id כדי ליצור משאב מסוג ישות. משאב מסוג ישות מיוצג על ידי המחלקה EntityType. המחרוזת entity_type_id היא אלפאנומרית וחייבת להיות ייחודית במאגר הפיצ'רים. בהמשך מופיעה דוגמה לאופן שבו אפשר ליצור סוג ישות:

entity_type = aiplatform.featurestore.create_entity_type(
        entity_type_id=my_entity_type_name, description=my_entity_type_description
        )

סוגי ישויות להצגת מודעות

אפשר להשתמש באחת משלוש השיטות של Featurestore כדי להציג פריטי נתונים של ישויות:

EntityType

המחלקות EntityType מייצגות משאב מסוג ישות, שהוא אוסף של תכונות שקשורות מבחינה סמנטית שהגדרתם. לדוגמה, לשירות מוזיקה יכולים להיות סוגי הישויות musical_artist ו-user. אפשר להשתמש בשיטה FeatureStore.create_entity_type או בשיטה EntityType.create כדי ליצור סוג ישות. בקוד הבא מוצג אופן השימוש ב-EntityType.create:

entity_type = aiplatform.EntityType.create(
        entity_type_id=my_entity_type_name, featurestore_name=featurestore_name
    )

Feature

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

כשיוצרים Feature, צריך לציין את סוג הערך שלו (לדוגמה, BOOL_ARRAY, ‏DOUBLE, ‏DOUBLE_ARRAY או STRING). בדוגמת הקוד הבאה מוצג אופן יצירת תכונה:

my_feature = aiplatform.Feature.create(
    feature_id='my_feature_id',
    value_type='INT64',
    entity_type_name='my_entity_type_id',
    featurestore_id='my_featurestore_id',
)

המאמרים הבאים