الإعداد والاتصال بحسابك على Google Cloud

عرض على TensorFlow.org تشغيل في جوجل كولاب عرض على جيثب تحميل دفتر شعار كاجلتشغيل في Kaggle

يهدف هذا الدليل إلى مساعدة المستخدمين لأول مرة على إعداد حساب Google Cloud Platform على وجه التحديد بهدف استخدام Tensorflow_cloud لتشغيل التدريب بسهولة على نطاق واسع على Google Cloud AI Platform. توفر TensorFlow Cloud واجهات برمجة التطبيقات التي تتيح للمستخدمين الانتقال بسهولة من تصحيح الأخطاء والتدريب وضبط تعليمات Keras وTensorFlow البرمجية في بيئة محلية أو kaggle إلى التدريب/الضبط الموزع على السحابة.

1. قم بالتسجيل في Google Cloud Platform

للبدء، انتقل إلى https://cloud.google.com/ وانقر على "ابدأ مجانًا". هذه عملية تسجيل مكونة من خطوتين حيث ستحتاج إلى تقديم اسمك وعنوانك وبطاقة الائتمان. الحساب المبدئي مجاني ويأتي مع رصيد بقيمة 300 دولار يمكنك استخدامه لهذه الخطوة، ستحتاج إلى توفير حساب Google (أي حساب Gmail الخاص بك) لتسجيل الدخول.

بعد الانتهاء من عملية التسجيل، ستتم إعادة توجيهك إلى صفحة الترحيب الخاصة بـ Google Cloud Platform . انقر فوق علامة التبويب "الصفحة الرئيسية" وقم بتدوين معرف المشروع الخاص بك ورقم المشروع. (انظر تحديد المشاريع )

GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'

2. قم بتمكين Google Cloud SDK وقم بالمصادقة على الكمبيوتر الدفتري الخاص بك

الآن وبعد أن قمت بإعداد مشروعك، يمكننا متابعة بقية خطوات التكوين مباشرةً من هذا الكمبيوتر الدفتري. هناك ثلاثة أنواع من دفاتر الملاحظات، هذه الخطوة (الخطوة رقم 2) تختلف قليلاً لكل دفتر ملاحظات، وبقية الخطوات (الخطوة رقم 3 إلى رقم 6) هي نفسها لجميع دفاتر الملاحظات.

  • 2.1. مصادقة لأجهزة الكمبيوتر المحمولة Kaggle
  • 2.2. مصادقة لدفتر Colab
  • 2.3. مصادقة لأجهزة الكمبيوتر المحمولة Cloud AI - غير مدعومة.

2.1 مصادقة الإعداد لدفتر ملاحظات Kaggle

إذا كنت تستخدم دفتر ملاحظات Kaggle، فستحتاج إلى تكرار هذه الخطوة لأي دفتر ملاحظات جديد تستخدمه مع هذا المشروع. في دفتر ملاحظاتك، انقر على الوظائف الإضافية -> Google Cloud SDK واتبع الإرشادات التي تظهر على المطالبة. ثم قم بتشغيل الأمر التالي لإضافة بيانات اعتماد المصادقة الخاصة بك إلى دفتر الملاحظات هذا.

import sys
if "kaggle_secrets" in sys.modules:
    from kaggle_secrets import UserSecretsClient
    UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)

2.2 مصادقة الإعداد لدفتر ملاحظات Colab

إذا كنت تستخدم دفتر ملاحظات Colab، فستحتاج إلى تكرار هذه الخطوة لأي دفتر ملاحظات جديد تستخدمه مع هذا المشروع. قم بتشغيل الأمر التالي لإضافة بيانات اعتماد المصادقة الخاصة بك إلى دفتر الملاحظات هذا.

import sys
if "google.colab" in sys.modules:
    from google.colab import auth
    auth.authenticate_user()

الخطوة التالية هي إعداد حساب الفواتير لهذا المشروع. يقوم Google Cloud بإنشاء مشروع لك بشكل افتراضي يسمى "مشروعي الأول". سوف نستخدم هذا المشروع الافتراضي. استخدم معرف المشروع الخاص بك (من الخطوة 1) لتشغيل الأوامر التالية. سيُظهر لك هذا Account_ID الخاص بالفوترة، قم بتدوين ذلك للخطوة التالية.

gcloud beta billing accounts list

استخدم Account_ID الخاص بالفوترة من الأعلى وقم بتشغيل ما يلي لربط حساب الفوترة الخاص بك بمشروعك.

لاحظ أنه إذا كنت تستخدم مشروعًا موجودًا، فقد لا ترى Account_ID، وهذا يعني أنه ليس لديك الأذونات المناسبة لتشغيل الأوامر التالية أو الاتصال بالمسؤول أو إنشاء مشروع جديد.

BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'

!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID

4. قم بتمكين واجهات برمجة التطبيقات المطلوبة لـ Tensorflow-cloud في مشروعك

بالنسبة إلى Tensorflow_cloud، نستخدم واجهتي برمجة تطبيقات محددتين: AI Platform Training Jobs API و Cloud builder API . لاحظ أن هذا الإعداد يتم مرة واحدة لهذا المشروع، ولا تحتاج إلى إعادة تشغيل هذا الأمر لكل دفتر ملاحظات.

gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com

5. قم بإنشاء مجموعة تخزين Google Cloud

سوف نستخدم مجموعة التخزين هذه للأصول المؤقتة وكذلك لحفظ نقاط التفتيش النموذجية. قم بتدوين اسم الدلو للرجوع إليه في المستقبل. تعتبر أسماء مجموعة الملاحظات فريدة عالميًا.

BUCKET_NAME = 'YOUR_BUCKET_NAME'

GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET

قم بإنشاء حساب خدمة لمهام HP Tuning

هذه الخطوة مطلوبة لاستخدام HP Tuning على Google Cloud باستخدام CloudTuner. لإنشاء حساب خدمة ومنحه حق الوصول إلى محرر المشروع، قم بتشغيل الأمر التالي وقم بتدوين اسم حساب الخدمة الخاص بك.

SERVICE_ACCOUNT_NAME ='YOUR_SERVICE_ACCOUNT_NAME'

SERVICE_ACCOUNT_EMAIL = f'{SERVICE_ACCOUNT_NAME}@{GCP_PROJECT_ID}.iam.gserviceaccount.com'
!gcloud iam --project $GCP_PROJECT_ID service-accounts create $SERVICE_ACCOUNT_NAME
!gcloud projects add-iam-policy-binding $GCP_PROJECT_ID \
    --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \
    --role=roles/editor

يتم تحديد default AI Platform service account من خلال عنوان بريد إلكتروني بالتنسيق service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . باستخدام رقم مشروعك من الخطوة الأولى، نقوم بإنشاء البريد الإلكتروني لحساب الخدمة ونمنح دور مسؤول default AI Platform service account (roles/iam.serviceAccountAdmin) في حساب الخدمة الجديد الخاص بك.

DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT = f'service-{PROJECT_NUMBER}@cloud-ml.google.com.iam.gserviceaccount.com'

!gcloud iam --project $GCP_PROJECT_ID service-accounts add-iam-policy-binding \
--role=roles/iam.serviceAccountAdmin \
--member=serviceAccount:$DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT \
$SERVICE_ACCOUNT_EMAIL

تهانينا!

أنت الآن جاهز لتشغيل Tensorflow-cloud. لاحظ أن هذه الخطوات تحتاج إلى تشغيلها مرة واحدة فقط. بمجرد الانتهاء من إعداد مشروعك، يمكنك إعادة استخدام نفس تكوين المشروع والحاوية لعمليات التشغيل المستقبلية. بالنسبة لأي دفاتر ملاحظات جديدة، ستحتاج إلى تكرار الخطوة الثانية لإضافة بيانات اعتماد مصادقة Google Cloud الخاصة بك.

قم بتدوين القيم التالية لأنها ضرورية لتشغيل Tensorflow-cloud.

print(f"Your GCP_PROJECT_ID is:       {GCP_PROJECT_ID}")
print(f"Your SERVICE_ACCOUNT_NAME is: {SERVICE_ACCOUNT_NAME}")
print(f"Your BUCKET_NAME is:          {BUCKET_NAME}")
Your GCP_PROJECT_ID is:       YOUR_PROJECT_ID
Your SERVICE_ACCOUNT_NAME is: YOUR_SERVICE_ACCOUNT_NAME
Your BUCKET_NAME is:          YOUR_BUCKET_NAME