שימוש ב-BigQuery ML לחיזוי משקל פינגווינים

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

במדריך הזה משתמשים במערך הנתונים bigquery-public-data.ml_datasets.penguins.

מטרות

במדריך הזה תבצעו את המשימות הבאות:

  • יוצרים מודל רגרסיה ליניארית.
  • מעריכים את המודל.
  • ליצור תחזיות באמצעות המודל.

עלויות

במדריך הזה משתמשים ברכיבים של Google Cloud, והשימוש בהם כרוך בתשלום, כולל:

  • BigQuery
  • BigQuery ML

למידע נוסף על העלויות של BigQuery, קראו את הדף תמחור ב-BigQuery.

למידע נוסף על העלויות של BigQuery ML, קראו את המאמר תמחור ב-BigQuery ML.

לפני שמתחילים

  1. בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.

    התפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • בחירת פרויקט: כדי לבחור פרויקט לא נדרש תפקיד IAM ספציפי – אתם יכולים לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד "יצירת פרויקטים" (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים?

    כניסה לדף לבחירת הפרויקט

  2. מוודאים שהחיוב מופעל בפרויקט ב- Google Cloud .

  3. מפעילים את BigQuery API, אם הוא עדיין לא מופעל.

    התפקידים שנדרשים כדי להפעיל ממשקי API

    כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, אתם יכולים לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים?

    להפעלת ה-API

ההרשאות הנדרשות

כדי ליצור את המודל באמצעות BigQuery ML, אתם צריכים את הרשאות ה-IAM הבאות:

  • bigquery.jobs.create
  • bigquery.models.create
  • bigquery.models.getData
  • bigquery.models.updateData
  • bigquery.models.updateMetadata

כדי להריץ הסקה, צריך את ההרשאות הבאות:

  • ‫bigquery.models.getData במודל
  • bigquery.jobs.create

יצירת קבוצת נתונים

כדי ליצור מערך נתונים ב-BigQuery, בוחרים אחת מהאפשרויות הבאות:

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

    אם החלונית הימנית לא מוצגת, לוחצים על Expand left pane כדי לפתוח אותה.

  3. ב-Explorer, מרחיבים את הפרויקט ולוחצים על Datasets.

  4. בדף Datasets, לוחצים על Create dataset.

  5. בחלונית Create dataset:

    • בשדה Dataset ID, מזינים bqml_tutorial.

    • בקטע Data location (מיקום הנתונים), בוחרים באפשרות US (ארה"ב).

    משאירים את שאר הגדרות ברירת המחדל כמו שהן.

  6. לוחצים על Create dataset.

BQ

כדי ליצור קבוצת נתונים חדשה, משתמשים בפקודה bq mk --dataset.

  1. יוצרים מערך נתונים בשם bqml_tutorial ומגדירים את מיקום הנתונים ל-US:

    bq mk --dataset \
      --location=US \
      --description "BigQuery ML tutorial dataset." \
      bqml_tutorial
  2. מוודאים שמערך הנתונים נוצר:

    bq ls

API

מפעילים את השיטה datasets.insert עם משאב של מערך נתונים מוגדר:

{
  "datasetReference": {
     "datasetId": "bqml_tutorial"
  }
}

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

import google.cloud.bigquery

bqclient = google.cloud.bigquery.Client()
bqclient.create_dataset("bqml_tutorial", exists_ok=True)

יצירת המודל

יצירת מודל רגרסיה לינארית באמצעות מערך הנתונים לדוגמה של Analytics ל-BigQuery.

SQL

כדי ליצור מודל רגרסיה לינארית, משתמשים בהצהרה CREATE MODEL ומציינים את סוג המודל LINEAR_REG. יצירת המודל כוללת את אימון המודל.

הנה כמה דברים שכדאי לדעת על ההצהרה CREATE MODEL:

  • האפשרות input_label_cols מציינת באיזו עמודה בהצהרה SELECT להשתמש כעמודת התווית. כאן, עמודת התווית היא body_mass_g. במודלים של רגרסיה לינארית, עמודת התווית חייבת להיות בעלת ערך ממשי, כלומר ערכי העמודה חייבים להיות מספרים ממשיים.
  • ההצהרה SELECT של השאילתה הזו משתמשת בעמודות הבאות בטבלה bigquery-public-data.ml_datasets.penguins כדי לחזות את משקל הפינגווין:

    • ‫species: זן הפינגווין.
    • ‫island: האי שבו הפינגווין נמצא.
    • ‫culmen_length_mm: אורך רכס המקור של הפינגווין במילימטרים.
    • ‫culmen_depth_mm: עומק רכס המקור של הפינגווין במילימטרים.
    • flipper_length_mm: אורך הסנפירים של הפינגווין במילימטרים.
    • ‫sex: המין של הפינגווין.
  • הסעיף WHERE בהצהרה SELECT של השאילתה הזו, WHERE body_mass_g IS NOT NULL, מחריג שורות שבהן העמודה body_mass_g היא NULL.

מריצים את השאילתה שיוצרת את מודל הרגרסיה הליניארית:

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה ל-BigQuery

  2. בעורך השאילתות, מריצים את השאילתה הבאה:

    CREATE OR REPLACE MODEL `bqml_tutorial.penguins_model`
    OPTIONS
      (model_type='linear_reg',
      input_label_cols=['body_mass_g']) AS
    SELECT
      *
    FROM
      `bigquery-public-data.ml_datasets.penguins`
    WHERE
      body_mass_g IS NOT NULL;
  3. יצירת המודל של penguins_model נמשכת כ-30 שניות.

    כדי לראות את המודל:

    1. בחלונית הימנית, לוחצים על Explorer:

      כפתור מודגש לחלונית Explorer.

      אם החלונית הימנית לא מוצגת, לוחצים על הרחבת החלונית הימנית כדי לפתוח אותה.

    2. בחלונית Explorer, מרחיבים את הפרויקט ולוחצים על Datasets.

    3. לוחצים על מערך הנתונים bqml_tutorial.

    4. לוחצים על הכרטיסייה Models.

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

import bigframes.pandas as bpd
from bigframes.bigquery import ml

# Set partial ordering mode for BigQuery DataFrames.
# For more information, see the BigQuery DataFrames performance documentation:
# https://cloud.google.com/bigquery/docs/dataframes-performance#partial-ordering-mode
bpd.options.bigquery.ordering_mode = "partial"

# Load data from BigQuery
bq_df = bpd.read_gbq("bigquery-public-data.ml_datasets.penguins")

# Drop rows with nulls to get training data
training_data = bq_df.dropna(subset=["body_mass_g"])

# A Linear Regression model predicts a continuous numerical value.
#
# Use ml.create_model to create and train the model in BigQuery.
# The options parameter specifies the model type and the label column.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.create_model.html#bigframes.bigquery.ml.create_model
ml.create_model(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
    options={
        "model_type": "LINEAR_REG",
        "input_label_cols": ["body_mass_g"],
    },
    training_data=training_data,
    replace=True,
)

יצירת המודל נמשכת כ-30 שניות. כדי לראות את המודל:

  1. בחלונית הימנית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

  2. בחלונית Explorer, מרחיבים את הפרויקט ולוחצים על Datasets.

  3. לוחצים על מערך הנתונים bqml_tutorial.

  4. לוחצים על הכרטיסייה Models.

קבלת נתונים סטטיסטיים על האימונים

כדי לראות את תוצאות אימון המודל, אפשר להשתמש בפונקציה ML.TRAINING_INFO או לצפות בנתונים הסטטיסטיים במסוף Google Cloud . במדריך הזה נשתמש במסוף Google Cloud .

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

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

צפייה בנתונים הסטטיסטיים של אימון המודל שנוצרו כשהרצתם את השאילתה CREATE MODEL:

  1. בחלונית הימנית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

  2. בחלונית Explorer, מרחיבים את הפרויקט ולוחצים על Datasets.

  3. לוחצים על מערך הנתונים bqml_tutorial.

  4. לוחצים על הכרטיסייה Models.

  5. כדי לפתוח את חלונית המידע של המודל, לוחצים על penguins_model.

  6. לוחצים על הכרטיסייה אימון ואז על טבלה. התוצאות אמורות להיראות כך:

    הפלט של ML.TRAINING_INFO

    העמודה Training Data Loss מייצגת את מדד האובדן שחושב אחרי שהמודל אומן על מערך נתוני האימון. מכיוון שביצעתם רגרסיה לינארית, בעמודה הזו מוצג הערך של mean squared error. באימון הזה נעשה שימוש אוטומטי באסטרטגיית אופטימיזציה של normal_equation, ולכן נדרשת רק איטרציה אחת כדי להתכנס למודל הסופי. מידע נוסף על הגדרת אסטרטגיית האופטימיזציה של המודל זמין במאמר optimize_strategy.

הערכת המודל

אחרי שיוצרים את המודל, מעריכים את הביצועים שלו באמצעות הפונקציה ML.EVALUATE או הפונקציה bigframes.bigquery.ml.evaluate של BigQuery DataFrames, כדי להשוות בין הערכים החזויים שנוצרו על ידי המודל לבין הנתונים בפועל.

SQL

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

    SELECT
      *
    FROM
      ML.EVALUATE(MODEL bqml_tutorial.penguins_model);
    

מריצים את השאילתה ML.EVALUATE:

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה ל-BigQuery

  2. בעורך השאילתות, מריצים את השאילתה הבאה:

      SELECT
        *
      FROM
        ML.EVALUATE(MODEL `bqml_tutorial.penguins_model`,
          (
          SELECT
            *
          FROM
            `bigquery-public-data.ml_datasets.penguins`
          WHERE
            body_mass_g IS NOT NULL));
      

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

# Use the ml.evaluate method to evaluate the model with test data.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.evaluate.html#bigframes.bigquery.ml.evaluate
ml.evaluate(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
    input_=training_data,
)
# Expected output results:
# index  mean_absolute_error  mean_squared_error  mean_squared_log_error  median_absolute_error  r2_score  explained_variance
#   0        227.012237         81838.159892            0.00507                173.080816        0.872377    0.872377
#   1 rows x 6 columns

התוצאות אמורות להיראות כך:

הפלט של ML.EVALUATE

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

  • mean_absolute_error
  • mean_squared_error
  • mean_squared_log_error
  • median_absolute_error
  • r2_score
  • explained_variance

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

אפשר גם להסתכל בחלונית המידע של המודל במסוף Google Cloud כדי לראות את מדדי ההערכה:

הפלט של ML.EVALUATE

שימוש במודל כדי לחזות תוצאות

אחרי שהערכתם את המודל, השלב הבא הוא להשתמש בו כדי לחזות תוצאה. אתם יכולים להריץ במודל את הפונקציה ML.PREDICT או את הפונקציה bigframes.bigquery.ml.predict של BigQuery DataFrames כדי לחזות את מסת הגוף בגרמים של כל הפינגווינים שחיים באיי ביסקו.

SQL

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

מריצים את השאילתה ML.PREDICT:

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה ל-BigQuery

  2. בעורך השאילתות, מריצים את השאילתה הבאה:

    SELECT
    *
    FROM
    ML.PREDICT(MODEL `bqml_tutorial.penguins_model`,
      (
      SELECT
        *
      FROM
        `bigquery-public-data.ml_datasets.penguins`
      WHERE island = 'Biscoe'));

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

# Load data from BigQuery
bq_df = bpd.read_gbq("bigquery-public-data.ml_datasets.penguins")

# Use 'contains' function to filter by island containing the string
# "Biscoe".
biscoe_data = bq_df[bq_df["island"].str.contains("Biscoe")]

# Use the ml.predict method to predict results using your model.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.predict.html#bigframes.bigquery.ml.predict
ml.predict(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
    input_=biscoe_data,
)

# Expected output results:
#     predicted_body_mass_g  	      species	                island	 culmen_length_mm  culmen_depth_mm   body_mass_g 	flipper_length_mm	sex
# 23	  4681.782896	   Gentoo penguin (Pygoscelis papua)	Biscoe	      <NA>	            <NA>	        <NA>	          <NA>	        <NA>
# 332	  4740.7907	       Gentoo penguin (Pygoscelis papua)	Biscoe	      46.2	            14.4	        214.0	          4650.0	    <NA>
# 160	  4731.310452	   Gentoo penguin (Pygoscelis papua)	Biscoe	      44.5	            14.3	        216.0	          4100.0	    <NA>

התוצאות אמורות להיראות כך:

הפלט של ML.PREDICT

הסבר על תוצאות החיזוי

SQL

כדי להבין למה המודל יוצר את תוצאות החיזוי האלה, אפשר להשתמש בפונקציה ML.EXPLAIN_PREDICT.

‫ML.EXPLAIN_PREDICT היא גרסה מורחבת של הפונקציה ML.PREDICT. ‫ML.EXPLAIN_PREDICT לא רק מפיק תוצאות חיזוי, אלא גם מפיק עמודות נוספות כדי להסביר את תוצאות החיזוי. בפועל, אפשר להריץ את ML.EXPLAIN_PREDICT במקום ML.PREDICT. מידע נוסף זמין במאמר סקירת AI ניתן להסברה ב-BigQuery ML.

מריצים את השאילתה ML.EXPLAIN_PREDICT:

  1. נכנסים לדף BigQuery במסוף Google Cloud .

כניסה ל-BigQuery

  1. בעורך השאילתות, מריצים את השאילתה הבאה:
SELECT
  *
FROM
  ML.EXPLAIN_PREDICT(MODEL `bqml_tutorial.penguins_model`,
    (
    SELECT
      *
    FROM
      `bigquery-public-data.ml_datasets.penguins`
    WHERE island = 'Biscoe'),
    STRUCT(3 as top_k_features));
  1. התוצאות אמורות להיראות כך:

    הפלט של ML.EXPLAIN_PREDICT

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

# Use the ml.explain_predict method to understand why the model is
# generating these prediction results.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.explain_predict.html#bigframes.bigquery.ml.explain_predict
#
# Using the trained model and utilizing data specific to Biscoe Island,
# explain the predictions of the top 3 features.
ml.explain_predict(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
    input_=biscoe_data,
    top_k_features=3,
)

# Expected results:
#   predicted_body_mass_g               top_feature_attributions	        baseline_prediction_value	prediction_value	approximation_error	              species	            island	culmen_length_mm	culmen_depth_mm	flipper_length_mm	body_mass_g	    sex
# 0	 5413.510134	        [{'feature': 'island', 'attribution': 7348.877...	-5320.222128	          5413.510134	            0.0	         Gentoo penguin (Pygoscelis papua)	Biscoe	    45.2	              16.4	        223.0	           5950.0	    MALE
# 1	 4768.351092            [{'feature': 'island', 'attribution': 7348.877...	-5320.222128	          4768.351092	            0.0	         Gentoo penguin (Pygoscelis papua)	Biscoe	    46.5	              14.5	        213.0	           4400.0	   FEMALE
# 2	 3235.896372	        [{'feature': 'island', 'attribution': 7348.877...	-5320.222128	          3235.896372	            0.0	        Adelie Penguin (Pygoscelis adeliae)	Biscoe	    37.7	              16.0          183.0	           3075.0	   FEMALE
# 3	 5349.603734	        [{'feature': 'island', 'attribution': 7348.877...	-5320.222128	          5349.603734	            0.0	         Gentoo penguin (Pygoscelis papua)	Biscoe	    46.4	              15.6	        221.0	           5000.0	    MALE
# 4	 4637.165037	        [{'feature': 'island', 'attribution': 7348.877...	-5320.222128	          4637.165037	            0.0	         Gentoo penguin (Pygoscelis papua)	Biscoe	    46.1	              13.2	        211.0	           4500.0	   FEMALE

במודלים של רגרסיה לינארית, ערכי Shapley משמשים ליצירת ערכי שיוך (Attribution) של מאפיינים לכל מאפיין במודל. הפלט כולל את שלושת שיוכי המאפיינים המובילים לכל שורה בטבלה penguins, כי top_k_features הוגדר ל-3. השיוכים האלה ממוינים לפי הערך המוחלט של השיוך בסדר יורד. בכל הדוגמאות, המאפיין sex תרם הכי הרבה לחיזוי הכולל.

הסבר גלובלי על המודל

SQL

כדי לדעת אילו תכונות הן בדרך כלל החשובות ביותר לקביעת משקל הפינגווין, אפשר להשתמש בפונקציה ML.GLOBAL_EXPLAIN. כדי להשתמש ב-ML.GLOBAL_EXPLAIN, צריך לאמן מחדש את המודל כשהאפשרות ENABLE_GLOBAL_EXPLAIN מוגדרת ל-TRUE.

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

  1. נכנסים לדף BigQuery במסוף Google Cloud .

כניסה ל-BigQuery

  1. בעורך השאילתות, מריצים את השאילתה הבאה כדי לאמן מחדש את המודל:

    #standardSQL
    CREATE OR REPLACE MODEL `bqml_tutorial.penguins_model`
    OPTIONS (
      model_type = 'linear_reg',
      input_label_cols = ['body_mass_g'],
      enable_global_explain = TRUE)
    AS
    SELECT
    *
    FROM
    `bigquery-public-data.ml_datasets.penguins`
    WHERE
    body_mass_g IS NOT NULL;
  2. בעורך השאילתות, מריצים את השאילתה הבאה כדי לקבל הסברים גלובליים:

    SELECT
    *
    FROM
    ML.GLOBAL_EXPLAIN(MODEL `bqml_tutorial.penguins_model`)
  3. התוצאות אמורות להיראות כך:

    הפלט של ML.GLOBAL_EXPLAIN

BigQuery DataFrames

לפני שתנסו את הדוגמה הזו, פעלו לפי הוראות ההגדרה של BigQuery DataFrames שמפורטות במאמר התחלה מהירה ב-BigQuery באמצעות BigQuery DataFrames. מידע נוסף זמין במאמרי העזרה של BigQuery DataFrames.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת ADC לסביבת פיתוח מקומית.

# To use the ml.global_explain method, the model must be created with
# enable_global_explain set to True.
#
# Use ml.create_model to create and train the model in BigQuery.
# The options parameter specifies the model type and the label column.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.create_model.html#bigframes.bigquery.ml.create_model
training_data = bq_df.dropna(subset=["body_mass_g"])
ml.create_model(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
    options={
        "model_type": "LINEAR_REG",
        "input_label_cols": ["body_mass_g"],
        "enable_global_explain": True,
    },
    training_data=training_data,
    replace=True,
)

# Use the ml.global_explain method to explain the model.
# For more information, see the BigQuery DataFrames API reference documentation:
# https://dataframes.bigquery.dev/reference/api/bigframes.bigquery.ml.global_explain.html#bigframes.bigquery.ml.global_explain
ml.global_explain(
    your_model_id,  # For example: "bqml_tutorial.penguins_model",
)

# Expected results:
#                       attribution
# feature
# island	            5737.315921
# species	            4073.280549
# sex	                622.070896
# flipper_length_mm	    193.612051
# culmen_depth_mm	    117.084944
# culmen_length_mm	    94.366793

הסרת המשאבים

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

  • אתם יכולים למחוק את הפרויקט שיצרתם.
  • אפשר גם להשאיר את הפרויקט ולמחוק את מערך הנתונים.

מחיקת מערך הנתונים

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

  1. אם צריך, פותחים את הדף של BigQuery במסוףGoogle Cloud .

    כניסה לדף BigQuery

  2. בניווט, לוחצים על מערך הנתונים bqml_tutorial שיצרתם.

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

  4. בתיבת הדו-שיח Delete dataset, מאשרים את פקודת המחיקה על ידי הקלדת שם מערך הנתונים (bqml_tutorial) ולוחצים על Delete.

מחיקת הפרויקט

כדי למחוק את הפרויקט:

  1. במסוף Google Cloud , נכנסים לדף Manage resources.

    כניסה לדף Manage resources

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.

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

  • לסקירה כללית על BigQuery ML, קראו את המאמר מבוא ל-BigQuery ML.
  • מידע על יצירת מודלים זמין בדף התחביר של CREATE MODEL.