Pelatihan menggunakan algoritma NCF bawaan

Pelatihan dengan algoritma bawaan di AI Platform Training memungkinkan Anda mengirimkan set data dan melatih model tanpa menulis kode pelatihan apa pun. Halaman ini menjelaskan cara kerja algoritma NCF bawaan, dan cara menggunakannya.

Ringkasan

Algoritma bawaan ini hanya melakukan pelatihan:

  1. Pelatihan: Dengan menggunakan set data dan parameter model yang Anda berikan, AI Platform Training menjalankan pelatihan menggunakan penerapan NCF TensorFlow.

Batasan

Fitur berikut tidak didukung untuk pelatihan dengan algoritma NCF bawaan:

  • Pra-Pemrosesan Data Otomatis Versi NCF ini mengharuskan data input dalam bentuk TFRecords untuk pelatihan dan output. Aplikasi pelatihan harus dibuat untuk menangani input yang tidak diformat secara otomatis.

Jenis mesin yang didukung

Tingkat skala dan jenis mesin AI Platform Training berikut didukung:

  • Tingkat skala BASIC
  • Tingkat skala BASIC_GPU
  • Tingkat skala BASIC_TPU
  • Tingkat skala CUSTOM dengan salah satu jenis mesin Compute Engine yang didukung oleh AI Platform Training.
  • Tingkat skala CUSTOM dengan salah satu jenis mesin lama berikut:
    • standard
    • large_model
    • complex_model_s
    • complex_model_m
    • complex_model_l
    • standard_gpu
    • standard_p100
    • standard_v100
    • large_model_v100
    • complex_model_m_gpu
    • complex_model_l_gpu
    • complex_model_m_p100
    • complex_model_m_v100
    • complex_model_l_v100
    • TPU_V2 (8 core)

Sebaiknya gunakan jenis mesin dengan akses ke TPU atau GPU.

Memformat data input

Pastikan data input dan evaluasi dalam bentuk TFRecords sebelum melatih model.

Memeriksa izin bucket Cloud Storage

Untuk menyimpan data, gunakan bucket Cloud Storage dalam project Google Cloud yang sama dengan yang Anda gunakan untuk menjalankan tugas AI Platform Training. Jika tidak, berikan akses Pelatihan AI Platform ke bucket Cloud Storage tempat data Anda disimpan.

Mengirim tugas pelatihan NCF

Bagian ini menjelaskan cara mengirimkan tugas pelatihan menggunakan algoritma NCF bawaan.

Anda dapat menemukan penjelasan singkat tentang setiap hyperparameter dalam konsol Google Cloud, dan penjelasan yang lebih komprehensif di referensi untuk algoritma NCF bawaan.

Konsol

  1. Buka halaman AI Platform Training Jobs di konsol Google Cloud:

    Halaman Lowongan AI Platform Training

  2. Klik tombol Tugas pelatihan baru. Dari opsi yang ditampilkan di bawah, klik Pelatihan algoritma bawaan.

  3. Di halaman Create a new training job, pilih NCF, lalu klik Next.

  4. Untuk mempelajari lebih lanjut semua parameter yang tersedia, ikuti link di konsol Google Cloud dan lihat referensi NCF bawaan untuk mengetahui detail selengkapnya.

gcloud

  1. Tetapkan variabel lingkungan untuk tugas Anda:

       # Specify the name of the Cloud Storage bucket where you want your
       # training outputs to be stored, and the Docker container for
       # your built-in algorithm selection.
       BUCKET_NAME='BUCKET_NAME'
       IMAGE_URI='gcr.io/cloud-ml-algos/ncf:latest'
    
       # Specify the Cloud Storage path to your training input data.
       DATA_DIR='gs://$BUCKET_NAME/ncf_data'
    
       DATE="$(date '+%Y%m%d_%H%M%S')"
       MODEL_NAME='MODEL_NAME'
       JOB_ID="${MODEL_NAME}_${DATE}"
    
       JOB_DIR="gs://${BUCKET_NAME}/algorithm_training/${MODEL_NAME}/${DATE}"
    

    Ganti kode berikut:

    • BUCKET_NAME: Nama bucket Cloud Storage tempat Anda ingin menyimpan output pelatihan.
    • MODEL_NAME: Nama untuk model Anda, untuk mengidentifikasi tempat artefak model disimpan di bucket Cloud Storage Anda.
  2. Kirim tugas pelatihan menggunakan gcloud ai-platform jobs training submit. Sesuaikan contoh umum ini agar berfungsi dengan set data Anda:

       gcloud ai-platform jobs submit training $JOB_ID \
          --master-image-uri=$IMAGE_URI --scale-tier=BASIC_TPU --job-dir=$JOB_DIR \
          -- \
          --train_dataset_path=${DATA_DIR}/training_cycle_*/* \
          --eval_dataset_path=${DATA_DIR}/eval_data/* \
          --input_meta_data_path=${DATA_DIR}/metadata \
          --learning_rate=3e-5 \
          --train_epochs=3 \
          --eval_batch_size=160000 \
          --learning_rate=0.00382059 \
          --beta1=0.783529 \
          --beta2=0.909003 \
          --epsilon=1.45439e-07 \
          --num_factors=64 \
          --hr_threshold=0.635 \
          --keras_use_ctl=true \
          --layers=256,256,128,64 \
    
  3. Pantau status tugas pelatihan Anda dengan melihat log dengan gcloud. Lihat gcloud ai-platform jobs describe dan gcloud ai-platform jobs stream-logs.

       gcloud ai-platform jobs describe ${JOB_ID}
       gcloud ai-platform jobs stream-logs ${JOB_ID}
    

Referensi pembelajaran lebih lanjut