نمونه سازی مدل ها در نوت بوک های پلتفرم هوش مصنوعی

۱. مرور کلی

این آزمایشگاه شما را با ابزارهای مختلف در نوت‌بوک‌های پلتفرم هوش مصنوعی برای کاوش در داده‌ها و نمونه‌سازی مدل‌های یادگیری ماشین آشنا می‌کند.

آنچه یاد می‌گیرید

شما یاد خواهید گرفت که چگونه:

  • یک نمونه از نوت‌بوک‌های پلتفرم هوش مصنوعی ایجاد و سفارشی‌سازی کنید
  • کد نوت‌بوک‌های خود را با گیت، که مستقیماً در نوت‌بوک‌های پلتفرم هوش مصنوعی ادغام شده است، پیگیری کنید
  • از ابزار «چه می‌شود اگر» در دفترچه یادداشت خود استفاده کنید

هزینه کل راه‌اندازی این آزمایشگاه در گوگل کلود حدود ۱ دلار است. جزئیات کامل در مورد قیمت‌گذاری نوت‌بوک‌های پلتفرم هوش مصنوعی را می‌توانید اینجا بیابید.

۲. یک نمونه از نوت‌بوک‌های پلتفرم هوش مصنوعی ایجاد کنید

برای اجرای این codelab به یک پروژه Google Cloud Platform با قابلیت پرداخت صورتحساب نیاز دارید. برای ایجاد یک پروژه، دستورالعمل‌های اینجا را دنبال کنید.

مرحله ۲: فعال کردن رابط برنامه‌نویسی کاربردی موتور محاسبات

به Compute Engine بروید و اگر از قبل فعال نشده است، آن را فعال کنید . برای ایجاد نمونه نوت‌بوک خود به این مورد نیاز خواهید داشت.

مرحله 3: یک نمونه دفترچه یادداشت ایجاد کنید

به بخش AI Platform Notebooks در Cloud Console خود بروید و روی New Instance کلیک کنید. سپس آخرین نوع نمونه TensorFlow 2 Enterprise را بدون GPU انتخاب کنید:

9f2bb4dec1ba4f4f.png

به نمونه خود یک نام بدهید یا از نام پیش‌فرض استفاده کنید. سپس گزینه‌های سفارشی‌سازی را بررسی خواهیم کرد. روی دکمه سفارشی‌سازی کلیک کنید:

63be602ba45ca7c9.png

نوت‌بوک‌های پلتفرم هوش مصنوعی گزینه‌های سفارشی‌سازی مختلفی دارند، از جمله: منطقه‌ای که نمونه شما در آن مستقر می‌شود، نوع تصویر، اندازه دستگاه، تعداد پردازنده‌های گرافیکی و موارد دیگر. ما از مقادیر پیش‌فرض برای منطقه و محیط استفاده خواهیم کرد. برای پیکربندی دستگاه، از یک دستگاه n1-standard-8 استفاده خواهیم کرد:

27101d232f765a17.png

ما هیچ پردازنده گرافیکی (GPU) اضافه نخواهیم کرد و از پیش‌فرض‌ها برای دیسک بوت، شبکه و مجوزها استفاده خواهیم کرد. برای ایجاد نمونه خود، گزینه Create را انتخاب کنید. تکمیل این کار چند دقیقه طول خواهد کشید.

پس از ایجاد نمونه، یک علامت تیک سبز در کنار آن در رابط کاربری Notebooks مشاهده خواهید کرد. برای باز کردن نمونه خود و شروع نمونه‌سازی اولیه، گزینه Open JupyterLab را انتخاب کنید:

3598f414887ea9a8.png

وقتی نمونه را باز می‌کنید، یک دایرکتوری جدید به نام codelab ایجاد کنید. این دایرکتوری‌ای است که ما در طول این تمرین از آن استفاده خواهیم کرد:

c16a821546acd92.png

با دوبار کلیک کردن روی دایرکتوری codelab که به تازگی ایجاد کرده‌اید، وارد آن شوید و سپس از لانچر، Python 3 notebook را انتخاب کنید:

4390b1614ae8eae4.png

نام دفترچه یادداشت را به demo.ipynb یا هر نام دیگری که می‌خواهید به آن بدهید، تغییر دهید.

مرحله ۴: وارد کردن بسته‌های پایتون

یک سلول جدید در دفترچه یادداشت ایجاد کنید و کتابخانه‌هایی را که در این آزمایشگاه کد استفاده خواهیم کرد، وارد کنید:

import pandas as pd
import tensorflow as tf
from tensorflow.keras import Sequential
from tensorflow.keras.layers import Dense

import numpy as np
import json

from sklearn.model_selection import train_test_split
from sklearn.utils import shuffle
from google.cloud import bigquery
from witwidget.notebook.visualization import WitWidget, WitConfigBuilder

۳. داده‌های BigQuery را به نوت‌بوک خود متصل کنید

بیگ‌کوئری، انبار داده بزرگ گوگل کلود، مجموعه داده‌های زیادی را برای کاوش شما در دسترس عموم قرار داده است. نوت‌بوک‌های پلتفرم هوش مصنوعی از ادغام مستقیم با بیگ‌کوئری بدون نیاز به احراز هویت پشتیبانی می‌کنند.

برای این آزمایش، ما از مجموعه داده‌های مربوط به تولد استفاده خواهیم کرد. این مجموعه شامل داده‌های تقریباً هر تولد در ایالات متحده در یک دوره زمانی ۴۰ ساله، از جمله وزن کودک هنگام تولد و اطلاعات جمعیت‌شناختی والدین نوزاد است. ما از زیرمجموعه‌ای از ویژگی‌ها برای پیش‌بینی وزن هنگام تولد نوزاد استفاده خواهیم کرد.

مرحله ۱: دانلود داده‌های BigQuery در نوت‌بوک ما

ما از کتابخانه کلاینت پایتون برای BigQuery برای دانلود داده‌ها در یک قاب داده Pandas استفاده خواهیم کرد. مجموعه داده اصلی ۲۱ گیگابایت حجم دارد و شامل ۱۲۳ میلیون ردیف است. برای ساده نگه داشتن همه چیز، ما فقط از ۱۰۰۰۰ ردیف از مجموعه داده استفاده خواهیم کرد.

کوئری را بسازید و با کد زیر، پیش‌نمایشی از DataFrame حاصل ارائه دهید. در اینجا ما ۴ ویژگی را از مجموعه داده اصلی به همراه وزن نوزاد (چیزی که مدل ما پیش‌بینی خواهد کرد) دریافت می‌کنیم. مجموعه داده مربوط به سال‌های بسیار گذشته است، اما برای این مدل، ما فقط از داده‌های پس از سال ۲۰۰۰ استفاده خواهیم کرد:

query="""
SELECT
  weight_pounds,
  is_male,
  mother_age,
  plurality,
  gestation_weeks
FROM
  publicdata.samples.natality
WHERE year > 2000
LIMIT 10000
"""
df = bigquery.Client().query(query).to_dataframe()
df.head()

برای دریافت خلاصه‌ای از ویژگی‌های عددی در مجموعه داده خود، دستور زیر را اجرا کنید:

df.describe()

این میانگین، انحراف معیار، حداقل و سایر معیارهای ستون‌های عددی ما را نشان می‌دهد. در نهایت، بیایید مقداری داده در ستون بولی خود که جنسیت نوزاد را نشان می‌دهد، دریافت کنیم. می‌توانیم این کار را با متد value_counts در Pandas انجام دهیم:

df['is_male'].value_counts()

به نظر می‌رسد که مجموعه داده‌ها تقریباً به صورت ۵۰/۵۰ بر اساس جنسیت متعادل شده است.

مرحله ۲: آماده‌سازی مجموعه داده‌ها برای آموزش

اکنون که مجموعه داده‌ها را به عنوان یک قاب داده Pandas در نوت‌بوک خود دانلود کرده‌ایم، می‌توانیم پیش‌پردازش‌هایی انجام دهیم و آن‌ها را به مجموعه‌های آموزشی و آزمایشی تقسیم کنیم.

ابتدا، ردیف‌هایی با مقادیر تهی را از مجموعه داده‌ها حذف می‌کنیم و داده‌ها را به هم می‌ریزیم:

df = df.dropna()
df = shuffle(df, random_state=2)

در مرحله بعد، ستون برچسب را در یک متغیر جداگانه استخراج کرده و یک DataFrame فقط با ویژگی‌های خودمان ایجاد می‌کنیم. از آنجایی که is_male یک مقدار بولی است، آن را به یک عدد صحیح تبدیل می‌کنیم تا تمام ورودی‌های مدل ما عددی باشند:

labels = df['weight_pounds']
data = df.drop(columns=['weight_pounds'])
data['is_male'] = data['is_male'].astype(int)

حال اگر با اجرای data.head() پیش‌نمایشی از مجموعه داده‌های ما را مشاهده کنید، باید چهار ویژگی مورد استفاده برای آموزش را مشاهده کنید.

۴. مقداردهی اولیه گیت

نوت‌بوک‌های پلتفرم هوش مصنوعی مستقیماً با گیت ادغام می‌شوند، به طوری که می‌توانید کنترل نسخه را مستقیماً در محیط نوت‌بوک خود انجام دهید. این قابلیت از ارسال کد مستقیماً در رابط کاربری نوت‌بوک یا از طریق ترمینال موجود در JupyterLab پشتیبانی می‌کند. در این بخش، یک مخزن گیت را در نوت‌بوک خود راه‌اندازی اولیه می‌کنیم و اولین ارسال خود را از طریق رابط کاربری انجام می‌دهیم.

مرحله ۱: مقداردهی اولیه مخزن گیت

از فهرست codelab خود، Git و سپس Init را از نوار منوی بالای JupyterLab انتخاب کنید:

d9f1729358f18e58.png

وقتی از شما پرسیده می‌شود که آیا می‌خواهید این دایرکتوری را به یک مخزن گیت تبدیل کنید، بله را انتخاب کنید. سپس آیکون گیت را در نوار کناری سمت چپ انتخاب کنید تا وضعیت فایل‌ها و کامیت‌های خود را ببینید:

۱۶۴۸d6828f11a6db.png

مرحله ۲: اولین کامیت خود را انجام دهید

در این رابط کاربری، می‌توانید فایل‌ها را به یک کامیت اضافه کنید، تفاوت‌های فایل را ببینید (بعداً به آن خواهیم پرداخت) و تغییرات خود را کامیت کنید. بیایید با کامیت کردن فایل نوت‌بوکی که اضافه کردیم شروع کنیم.

کادر کنار فایل نوت‌بوک demo.ipynb خود را علامت بزنید تا آن را برای کامیت آماده کنید (می‌توانید پوشه .ipynb_checkpoints/ را نادیده بگیرید). یک پیام کامیت در کادر متن وارد کنید و سپس روی علامت تیک کلیک کنید تا تغییرات شما کامیت شوند:

fe7366522a3a268f.png

نام و ایمیل خود را در صورت درخواست وارد کنید. سپس به برگه History برگردید تا اولین کامیت خود را ببینید:

d03567c3592afb77.png

توجه داشته باشید که به دلیل به‌روزرسانی‌ها از زمان انتشار این آزمایشگاه، ممکن است تصاویر دقیقاً با رابط کاربری شما مطابقت نداشته باشند.

۵. ساخت و آموزش یک مدل TensorFlow

ما از مجموعه داده‌های مربوط به تولد در BigQuery که در دفترچه یادداشت خود دانلود کرده‌ایم، برای ساخت مدلی که وزن نوزاد را پیش‌بینی می‌کند، استفاده خواهیم کرد. در این آزمایش، به جای دقت خود مدل، بر روی ابزار دفترچه یادداشت تمرکز خواهیم کرد.

مرحله ۱: داده‌های خود را به مجموعه‌های آموزش و آزمایش تقسیم کنید

ما از ابزار Scikit Learn train_test_split برای تقسیم داده‌ها قبل از ساخت مدل خود استفاده خواهیم کرد:

x,y = data,labels
x_train,x_test,y_train,y_test = train_test_split(x,y)

حالا ما آماده‌ایم تا مدل TensorFlow خود را بسازیم!

مرحله ۲: ساخت و آموزش مدل TensorFlow

ما این مدل را با استفاده از API مدل Sequential tf.keras خواهیم ساخت، که به ما امکان می‌دهد مدل خود را به عنوان مجموعه‌ای از لایه‌ها تعریف کنیم. تمام کدی که برای ساخت مدل خود نیاز داریم در اینجا آمده است:

model = Sequential([
    Dense(64, activation='relu', input_shape=(len(x_train.iloc[0]),)),
    Dense(32, activation='relu'),
    Dense(1)]
)

سپس مدل خود را کامپایل می‌کنیم تا بتوانیم آن را آموزش دهیم. در اینجا بهینه‌ساز مدل، تابع زیان و معیارهایی را که می‌خواهیم مدل در طول آموزش ثبت کند، انتخاب می‌کنیم. از آنجایی که این یک مدل رگرسیون (پیش‌بینی یک مقدار عددی) است، ما به جای دقت، از میانگین مربعات خطا به عنوان معیار خود استفاده می‌کنیم:

model.compile(optimizer=tf.keras.optimizers.RMSprop(),
              loss=tf.keras.losses.MeanSquaredError(),
              metrics=['mae', 'mse'])

شما می‌توانید از تابع مفید model.summary() در Keras برای مشاهده شکل و تعداد پارامترهای قابل آموزش مدل خود در هر لایه استفاده کنید.

اکنون آماده آموزش مدل خود هستیم. تنها کاری که باید انجام دهیم فراخوانی متد fit() و ارسال داده‌های آموزشی و برچسب‌هایمان به آن است. در اینجا از پارامتر اختیاری validation_split استفاده خواهیم کرد که بخشی از داده‌های آموزشی ما را برای اعتبارسنجی مدل در هر مرحله نگه می‌دارد. در حالت ایده‌آل، می‌خواهید شاهد کاهش تلفات آموزش و اعتبارسنجی باشید. اما به یاد داشته باشید که در این مثال، ما بیشتر بر ابزار مدل و دفترچه یادداشت تمرکز داریم تا کیفیت مدل:

model.fit(x_train, y_train, epochs=10, validation_split=0.1)

مرحله ۳: ایجاد پیش‌بینی‌ها روی نمونه‌های آزمایشی

برای دیدن عملکرد مدلمان، بیایید چند پیش‌بینی آزمایشی روی ۱۰ مثال اول از مجموعه داده‌های آزمایشی‌مان ایجاد کنیم.

num_examples = 10
predictions = model.predict(x_test[:num_examples])

و سپس پیش‌بینی‌های مدل خود را تکرار می‌کنیم و آنها را با مقدار واقعی مقایسه می‌کنیم:

for i in range(num_examples):
    print('Predicted val: ', predictions[i][0])
    print('Actual val: ',y_test.iloc[i])
    print()

مرحله ۴: از git diff استفاده کنید و تغییرات خود را ثبت کنید

حالا که تغییراتی در دفترچه یادداشت ایجاد کرده‌اید، می‌توانید ویژگی git diff موجود در رابط کاربری git دفترچه یادداشت‌ها را امتحان کنید. دفترچه یادداشت demo.ipynb اکنون باید در بخش "تغییر یافته" در رابط کاربری باشد. ماوس را روی نام فایل نگه دارید و روی نماد diff کلیک کنید:

a370facb3632fb32.png

با این کار، باید بتوانید تغییرات خود را به صورت زیر مشاهده کنید:

461c502bd3ab910e.png

این بار تغییرات خود را از طریق خط فرمان با استفاده از ترمینال اعمال خواهیم کرد. از منوی Git در نوار منوی بالای JupyterLab، گزینه Git Command in Terminal را انتخاب کنید. اگر هنگام اجرای دستورات زیر، تب git در نوار کناری سمت چپ خود را باز نگه دارید، می‌توانید تغییرات خود را که در رابط کاربری git منعکس شده است، مشاهده کنید.

در نمونه ترمینال جدید خود، دستور زیر را برای استیج کردن فایل notebook جهت کامیت اجرا کنید:

git add demo.ipynb

و سپس دستور زیر را برای ثبت تغییرات خود اجرا کنید (می‌توانید از هر پیام ثبتی که دوست دارید استفاده کنید):

git commit -m "Build and train TF model"

سپس باید آخرین کامیت خود را در تاریخچه ببینید:

a4b44045e97cb7a7.png

۶. مستقیماً از دفترچه یادداشت خود از ابزار What-If استفاده کنید

ابزار What-If یک رابط بصری تعاملی است که برای کمک به شما در تجسم مجموعه داده‌هایتان و درک بهتر خروجی مدل‌های یادگیری ماشینی‌تان طراحی شده است. این ابزار متن‌باز است که توسط تیم PAIR در گوگل ایجاد شده است. اگرچه با هر نوع مدلی کار می‌کند، اما برخی از ویژگی‌های آن منحصراً برای پلتفرم هوش مصنوعی ابری ساخته شده است.

ابزار «چه می‌شود اگر» (What-If Tool) به صورت پیش‌فرض در نمونه‌های Cloud AI Platform Notebooks با TensorFlow نصب شده است. در اینجا ما از آن برای مشاهده عملکرد کلی مدل خود و بررسی رفتار آن روی نقاط داده از مجموعه داده‌های تست خود استفاده خواهیم کرد.

مرحله ۱: آماده‌سازی داده‌ها برای ابزار «چه می‌شود اگر»

برای بهره‌برداری هرچه بیشتر از ابزار What-If، نمونه‌هایی از مجموعه تست خود را به همراه برچسب‌های حقیقت پایه برای آن مثال‌ها ( y_test ) ارسال می‌کنیم. به این ترتیب می‌توانیم آنچه مدل ما پیش‌بینی کرده است را با حقیقت پایه مقایسه کنیم. خط کد زیر را اجرا کنید تا یک DataFrame جدید با نمونه‌های تست و برچسب‌های آنها ایجاد شود:

wit_data = pd.concat([x_test, y_test], axis=1)

در این آزمایش، ما ابزار What-If را به مدلی که در دفترچه یادداشت خود آموزش داده‌ایم، متصل خواهیم کرد. برای انجام این کار، باید تابعی بنویسیم که ابزار از آن برای اجرای این نقاط داده آزمایشی روی مدل ما استفاده کند:

def custom_predict(examples_to_infer):
    preds = model.predict(examples_to_infer)
    return preds

مرحله ۲: نمونه‌سازی ابزار What-If

ما ابزار What-If را با ارسال ۵۰۰ مثال از مجموعه داده‌های آزمایشی به هم پیوسته + برچسب‌های حقیقت پایه که اخیراً ایجاد کرده‌ایم، نمونه‌سازی می‌کنیم. ما یک نمونه از WitConfigBuilder برای راه‌اندازی ابزار ایجاد می‌کنیم و داده‌های خود، تابع پیش‌بینی سفارشی که در بالا تعریف کردیم، به همراه هدف خود (چیزی که پیش‌بینی می‌کنیم) و نوع مدل را به آن ارسال می‌کنیم:

config_builder = (WitConfigBuilder(wit_data[:500].values.tolist(), data.columns.tolist() + ['weight_pounds'])
  .set_custom_predict_fn(custom_predict)
  .set_target_feature('weight_pounds')
  .set_model_type('regression'))
WitWidget(config_builder, height=800)

وقتی ابزار What-If بارگذاری می‌شود، باید چیزی شبیه به این را ببینید:

fcdc1cb7ed8e364e.png

روی محور x، می‌توانید نقاط داده‌های آزمایشی خود را که بر اساس مقدار وزن پیش‌بینی‌شده مدل، weight_pounds پراکنده شده‌اند، مشاهده کنید.

مرحله ۳: بررسی رفتار مدل با ابزار What-If

کارهای جالب زیادی وجود دارد که می‌توانید با ابزار What-If انجام دهید. ما در اینجا فقط چند مورد از آنها را بررسی خواهیم کرد. ابتدا، بیایید به ویرایشگر نقطه داده نگاهی بیندازیم. می‌توانید هر نقطه داده را برای دیدن ویژگی‌های آن انتخاب کنید و مقادیر ویژگی‌ها را تغییر دهید. با کلیک کردن روی هر نقطه داده شروع کنید:

2ba944f16240ff4b.png

در سمت چپ، مقادیر ویژگی‌ها را برای نقطه داده‌ای که انتخاب کرده‌اید، مشاهده خواهید کرد. همچنین می‌توانید برچسب حقیقت پایه آن نقطه داده را با مقدار پیش‌بینی‌شده توسط مدل مقایسه کنید. در نوار کناری سمت چپ، می‌توانید مقادیر ویژگی‌ها را نیز تغییر دهید و پیش‌بینی مدل را دوباره اجرا کنید تا تأثیر این تغییر بر مدل خود را ببینید. به عنوان مثال، می‌توانیم با دوبار کلیک کردن روی پیش‌بینی، gestation_weeks را برای این نقطه داده به 30 تغییر دهیم:

aaa6a937c66758cf.png

با استفاده از منوهای کشویی در بخش نمودار ابزار What-If، می‌توانید انواع تجسم‌های سفارشی را ایجاد کنید. برای مثال، در اینجا نموداری با وزن پیش‌بینی‌شده مدل‌ها در محور x، سن مادر در محور y و نقاط رنگ‌آمیزی‌شده با خطای استنتاج آنها (تیره‌تر به معنای تفاوت بیشتر بین وزن پیش‌بینی‌شده و واقعی است) آمده است. در اینجا به نظر می‌رسد که با کاهش وزن، خطای مدل کمی افزایش می‌یابد:

cd2ce527a9044e7b.png

سپس، دکمه‌ی نمودارهای وابستگی جزئی (Partial dependency plots) در سمت چپ را بررسی کنید. این نشان می‌دهد که چگونه هر ویژگی بر پیش‌بینی مدل تأثیر می‌گذارد. برای مثال، با افزایش زمان بارداری، وزن پیش‌بینی‌شده‌ی نوزاد توسط مدل ما نیز افزایش می‌یابد:

۱fec2a64fb03f432.png

برای ایده‌های بیشتر برای کاوش با ابزار «چه می‌شود اگر»، لینک‌های ابتدای این بخش را بررسی کنید.

۷. اختیاری: مخزن گیت محلی خود را به گیت‌هاب متصل کنید

در نهایت، یاد خواهیم گرفت که چگونه مخزن git را در نمونه notebook خود به یک مخزن در حساب GitHub خود متصل کنیم. اگر می‌خواهید این مرحله را انجام دهید، به یک حساب GitHub نیاز دارید.

مرحله ۱: ایجاد یک مخزن جدید در گیت‌هاب

در حساب گیت‌هاب خود، یک مخزن جدید ایجاد کنید. برای آن نام و توضیحی بنویسید، تصمیم بگیرید که آیا می‌خواهید عمومی باشد یا خیر، و گزینه ایجاد مخزن را انتخاب کنید (نیازی به مقداردهی اولیه با README نیست). در صفحه بعد، دستورالعمل‌های مربوط به ارسال یک مخزن موجود از خط فرمان را دنبال خواهید کرد.

یک پنجره ترمینال باز کنید و مخزن جدید خود را به عنوان یک مخزن راه دور اضافه کنید. در آدرس URL مخزن زیر، به جای username ، نام کاربری گیت‌هاب خود را قرار دهید و به جای your-repo ، نام مخزنی را که ایجاد کرده‌اید، بنویسید:

git remote add origin git@github.com:username/your-repo.git

مرحله ۲: احراز هویت در گیت‌هاب در نمونه نوت‌بوک‌های شما

در مرحله بعد، باید از داخل نوت‌بوک خود برای ورود به گیت‌هاب احراز هویت کنید. این فرآیند بسته به اینکه آیا احراز هویت دو مرحله‌ای را در گیت‌هاب فعال کرده‌اید یا خیر، متفاوت است.

اگر مطمئن نیستید از کجا شروع کنید، مراحل موجود در مستندات GitHub را برای ایجاد کلید SSH دنبال کنید و سپس کلید جدید را به GitHub اضافه کنید .

مرحله ۳: مطمئن شوید که مخزن گیت‌هاب خود را به درستی لینک کرده‌اید

برای اطمینان از اینکه همه چیز را به درستی تنظیم کرده‌اید، git remote -v در ترمینال خود اجرا کنید. باید مخزن جدید خود را به عنوان یک مخزن ریموت مشاهده کنید. هنگامی که URL مخزن GitHub خود را مشاهده کردید و از طریق نوت‌بوک خود به GitHub احراز هویت شدید، آماده هستید تا مستقیماً از نمونه نوت‌بوک خود به GitHub ارسال کنید.

برای همگام‌سازی مخزن گیت نوت‌بوک محلی خود با مخزن گیت‌هاب تازه ایجاد شده، روی دکمه آپلود ابری در بالای نوار کناری گیت کلیک کنید:

eec001587bb9cfb1.png

مخزن گیت‌هاب خود را به‌روزرسانی کنید، و باید کد نوت‌بوک خود را با کامیت‌های قبلی‌تان ببینید! اگر دیگران به مخزن گیت‌هاب شما دسترسی دارند و می‌خواهید آخرین تغییرات را در نوت‌بوک خود مشاهده کنید، برای همگام‌سازی آن تغییرات، روی نماد دانلود ابری کلیک کنید.

در تب History در رابط کاربری git در Notebooks، می‌توانید ببینید که آیا commitهای محلی شما با GitHub همگام‌سازی شده‌اند یا خیر. در این مثال، origin/master با مخزن ما در GitHub مطابقت دارد:

2c3d1eb7cf95c24e.png

هر زمان که کامیت‌های جدیدی ایجاد می‌کنید، کافیست دوباره روی دکمه آپلود ابری کلیک کنید تا آن تغییرات به مخزن گیت‌هاب شما ارسال شود.

۸. تبریک!

تو توی این آزمایشگاه خیلی کار کردی 👏👏👏

برای خلاصه، شما یاد گرفتید که چگونه:

  • یک نمونه نوت‌بوک پلتفرم هوش مصنوعی سفارشی ایجاد کنید
  • در آن مورد، یک مخزن محلی گیت را مقداردهی اولیه کنید، کامیت‌ها را از طریق رابط کاربری گیت یا خط فرمان اضافه کنید، تفاوت‌های گیت را در رابط کاربری گیت نوت‌بوک مشاهده کنید
  • ساخت و آموزش یک مدل ساده TensorFlow 2
  • از ابزار What-If در نمونه Notebook خود استفاده کنید
  • مخزن گیت نوت‌بوک خود را به یک مخزن خارجی در گیت‌هاب متصل کنید

۹. پاکسازی

اگر می‌خواهید به استفاده از این دفترچه یادداشت ادامه دهید، توصیه می‌شود وقتی از آن استفاده نمی‌کنید، آن را خاموش کنید. از رابط کاربری دفترچه یادداشت‌ها در کنسول ابری خود، دفترچه یادداشت را انتخاب کرده و سپس توقف را انتخاب کنید:

ba727f9a0aefbc30.png

اگر می‌خواهید تمام منابعی را که در این آزمایشگاه ایجاد کرده‌اید حذف کنید، به جای متوقف کردن آن، کافیست نمونه نوت‌بوک را حذف کنید.

با استفاده از منوی ناوبری در کنسول ابری خود، به بخش ذخیره‌سازی (Storage) بروید و هر دو باکتی را که برای ذخیره دارایی‌های مدل خود ایجاد کرده‌اید، حذف کنید.