Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Cloud AI Platform Ardışık Düzenlerinde TFX

Giriş

Bu eğitici, TensorFlow Extended (TFX) ve Cloud AI Platform Pipelines'ı tanıtmak ve Google Cloud'da kendi makine öğrenimi ardışık düzenlerinizi oluşturmayı öğrenmenize yardımcı olmak için tasarlanmıştır. TFX, AI Platform Pipelines ve Kubeflow ile entegrasyonun yanı sıra Jupyter dizüstü bilgisayarlarda TFX ile etkileşimi gösterir.

Bu eğiticinin sonunda, Google Cloud'da barındırılan bir ML Pipeline oluşturmuş ve çalıştırmış olacaksınız. Her bir çalışmanın sonuçlarını görselleştirebilecek ve oluşturulan eserlerin soyunu görüntüleyebileceksiniz.

Veri kümesini inceleyerek başlayıp eksiksiz bir çalışan ardışık düzen ile biten tipik bir ML geliştirme sürecini takip edeceksiniz. Yol boyunca ardışık düzeninizde hata ayıklama ve güncelleme yollarını keşfedecek ve performansı ölçeceksiniz.

Chicago Taksi Veri Kümesi

TaksiChicago taksi

Chicago Şehri tarafından yayınlanan Taxi Trips veri kümesini kullanıyorsunuz.

Google BigQuery'deki veri kümesi hakkında daha fazla bilgi edinebilirsiniz. BigQuery kullanıcı arayüzündeki tüm veri kümesini keşfedin.

Model Hedef - İkili sınıflandırma

Müşteri% 20'den fazla mı yoksa az mı bahşiş verecek?

1. Bir Google Cloud projesi oluşturun

1.a Ortamınızı Google Cloud'da ayarlayın

Başlamak için bir Google Cloud Hesabına ihtiyacınız var. Zaten bir projeniz varsa, Yeni Proje Oluşturma adımına geçin.

  1. Google Cloud Console'a gidin .

  2. Google Cloud şartlar ve koşullarını kabul edin

  3. Ücretsiz bir deneme hesabıyla başlamak istiyorsanız, Ücretsiz Deneyin (veya Ücretsiz Başlayın ) seçeneğine tıklayın.

    1. Ülkeni seç.

    2. Hizmet şartlarını kabul edin.

    3. Fatura ayrıntılarını girin.

      Bu noktada ücretlendirilmeyeceksiniz. Başka Google Cloud projeniz yoksa bu eğiticiyi, aynı anda çalışan maksimum 8 çekirdek içeren Google Cloud Ücretsiz Katman sınırlarını aşmadan tamamlayabilirsiniz.

1.b Yeni bir proje oluşturun.

  1. Ana Google Cloud kontrol panelinden , Google Cloud Platform başlığının yanındaki proje açılır menüsünü tıklayın ve Yeni Proje'yi seçin.
  2. Projenize bir isim verin ve diğer proje detaylarını girin
  3. Bir proje oluşturduktan sonra, proje açılır menüsünden onu seçin.

2. Yeni bir Kubernetes kümesinde bir AI Platform Pipeline kurun ve dağıtın

  1. AI Platform Ardışık Düzen Kümeleri sayfasına gidin.

    Ana Gezinme Menüsü altında: ≡> AI Platformu> Boru Hatları

  2. Yeni bir küme oluşturmak için + Yeni Örnek'i tıklayın.

  3. Kubeflow Ardışık Düzenlerine genel bakış sayfasında Yapılandır'ı tıklayın.

    Kubernetes Engine API'leri sizin için etkinleştirilirken devam etmeden önce birkaç dakika beklemeniz gerekebilir.

  4. Kubeflow Ardışık Düzenlerini Dağıt sayfasında:

    1. Kümeniz için bir bölge (veya "bölge") seçin.

    2. ÖNEMLİ Aşağıdaki bulut API'lerine erişime izin ver etiketli kutuyu işaretleyin. (Bu, bu kümenin projenizin diğer parçalarına erişmesi için gereklidir. Bu adımı kaçırırsanız, daha sonra düzeltmek biraz zordur.)

    3. Oluştur'a tıklayın ve küme oluşturulana kadar birkaç dakika bekleyin.

    4. Bir ad alanı ve örnek adı seçin (varsayılanları kullanmak iyidir). Yönetilen depolamayı kullan seçeneğini işaretlemeniz gerekmez.

    5. Dağıt'a tıklayın ve ardışık düzen dağıtılıncaya kadar birkaç dakika bekleyin. Kubeflow Ardışık Düzenlerini dağıtarak Hizmet Şartları'nı kabul etmiş olursunuz.

3. Cloud AI Platform Notebook örneğini kurun.

  1. AI Platform Not Defterleri sayfasına gidin.

    Ana Gezinme Menüsü altında: ≡ -> AI Platformu -> Not Defterleri

  2. İstenirse Compute Engine API'yi etkinleştirin.

  3. TensorFlow 2.1 (veya üzeri) kurulu olan Yeni Bir Örnek Oluşturun.

    Yeni Örnek -> TensorFlow 2.1 -> GPU'suz

    Ücretsiz Kullanım sınırları içinde kalmak için, burada varsayılan ayarları kabul etmeyin. Bu örnek için kullanılabilen vCPU sayısını 4'ten 2'ye düşürmeniz gerekiyor:

    1. Yeni not defteri örneği formunun altındaki Özelleştir'i seçin.
    2. 1 veya 2 vCPU'lu bir Makine yapılandırması seçin.

4. Başlangıç ​​Defterini Başlatın

  1. AI Platform Ardışık Düzen Kümeleri sayfasına gidin.

    Ana Gezinme Menüsü altında: ≡ -> AI Platformu -> Boru Hatları

  2. Bu eğiticide kullandığınız küme satırında, Ardışık Düzen Panosunu Aç'ı tıklayın.

    açık gösterge tablosu

  3. Başlarken sayfasında, TF 2.1 Not Defterini Aç'ı tıklayın.

  4. Bu eğitim için kullandığınız Not Defteri örneğini seçin ve Devam edin .

    not defteri seç

5. Dizüstü bilgisayarda çalışmaya devam edin

Yüklemek

Başlarken Not Defteri, Jupyter Lab'ın çalıştığı VM'ye , Skaffold modülüyle birlikte TFX ve Kubeflow Pipelines (KFP) kurarak başlar:

Tf ve kfp'yi yükleyin

Daha sonra ayarlar PATH kullanıcı Python ikili dizin ve bir dizin içeren eklemeyi skaffold :

yolu ayarla

Daha sonra hangi TFX sürümünün kurulu olduğunu kontrol eder, içe aktarır ve Proje Kimliğini ayarlar ve yazdırır:

python sürümünü kontrol edin ve içe aktarın

Google Cloud hizmetlerinize bağlanın

Boru hattı yapılandırması, dizüstü bilgisayardan edinebileceğiniz ve çevresel değişken olarak ayarlayabileceğiniz proje kimliğinize ihtiyaç duyar.

# Read GCP project id from env.
shell_output=!gcloud config list --format 'value(core.project)' 2>/dev/null
GCP_PROJECT_ID=shell_output[0]
print("GCP project ID:" + GCP_PROJECT_ID)

Şimdi KFP küme uç noktanızı ayarlayın.

Bu, Ardışık Düzen kontrol panelinin URL'sinde bulunabilir. Kubeflow Pipeline panosuna gidin ve URL'ye bakın. Uç nokta, googleusercontent.com kadar ve dahil olmak üzere https:// sonra URL'de bulunan her şeydir.

ENDPOINT='' # Enter YOUR ENDPOINT here.

Daha sonra not defteri, özel Docker görüntüsü için benzersiz bir ad belirler:

# Docker image name for the pipeline image
CUSTOM_TFX_IMAGE='gcr.io/' + GCP_PROJECT_ID + '/tfx-pipeline'

6. Bir şablonu proje dizininize kopyalayın

Ardışık düzeniniz için bir ad ayarlamak için sonraki not defteri hücresini düzenleyin. Bu eğitimde my_pipeline .

PIPELINE_NAME="my_pipeline"
PROJECT_DIR=os.path.join(os.path.expanduser("~"),"imported",PIPELINE_NAME)

Defter daha sonra tfx şablonunu kopyalamak için tfx CLI'yi kullanır. Bu eğitici, ikili sınıflandırma gerçekleştirmek için Chicago Taxi veri kümesini kullanır, bu nedenle şablon modeli taxi ayarlar:

!tfx template copy \
  --pipeline-name={PIPELINE_NAME} \
  --destination-path={PROJECT_DIR} \
  --model=taxi

Ardından not defteri, CWD bağlamını proje dizinine değiştirir:

%cd {PROJECT_DIR}

Ardışık düzen dosyalarına göz atın

Cloud AI Platform Not Defterinin sol tarafında bir dosya tarayıcısı görmelisiniz. my_pipeline hattı adınızı ( my_pipeline ) içeren bir dizin olmalıdır. Açın ve dosyaları görüntüleyin. (Bunları not defteri ortamından da açıp düzenleyebileceksiniz.)

# You can also list the files from the shell
 ls

Yukarıdaki tfx template copy komutu, bir ardışık tfx template copy temel bir dosya iskelesi oluşturdu. Bunlar Python kaynak kodlarını, örnek verileri ve Jupyter not defterlerini içerir. Bunlar, bu özel örnek içindir. Kendi ardışık düzenleriniz için bunlar, ardışık düzeninizin gerektirdiği destekleyici dosyalar olacaktır.

Python dosyalarının kısa açıklaması burada.

  • pipeline - Bu dizin, ardışık düzen tanımını içerir
    • configs.py - configs.py koşucuları için ortak sabitleri tanımlar
    • pipeline.py - TFX bileşenlerini ve bir ardışık düzeni tanımlar
  • models - Bu dizin ML model tanımlarını içerir.
    • features.py features_test.py - modelin özelliklerini tanımlar
    • preprocessing.py / preprocessing_test.py - tf::Transform kullanarak önişleme işlerini tanımlar
    • estimator - Bu dizin Tahminciye dayalı bir model içerir.
      • constants.py - modelin sabitlerini tanımlar
      • model.py / model_test.py - TF tahmincisini kullanarak DNN modelini tanımlar
    • keras - Bu dizin keras tabanlı bir model içerir.
      • constants.py - modelin sabitlerini tanımlar
      • model.py / model_test.py - model_test.py kullanarak DNN modelini tanımlar
  • beam_dag_runner.py / kubeflow_dag_runner.py - her düzenleme motoru için koşucuları tanımlar

7. İlk TFX ardışık düzeninizi Kubeflow'da çalıştırın

Dizüstü bilgisayar, tfx run CLI komutunu kullanarak ardışık tfx run .

Depoya bağlan

Çalışan ardışık düzenler, ML-Metadata'da depolanması gereken yapılar oluşturur . Yapılar, bir dosya sisteminde veya blok depolamada depolanması gereken dosyalar olan yükleri ifade eder. Bu eğiticide, kurulum sırasında otomatik olarak oluşturulan paketi kullanarak meta veri yüklerimizi depolamak için GCS'yi kullanacağız. Adı <your-project-id>-kubeflowpipelines-default .

İşlem hattını oluşturun

Not defteri, örnek verilerimizi daha sonra ardışık düzenimizde kullanabilmemiz için GCS paketine yükleyecektir.

gsutil cp data/data.csv gs://{GOOGLE_CLOUD_PROJECT}-kubeflowpipelines-default/tfx-template/data/data.csv

Defter daha sonra tfx pipeline create için tfx pipeline create komutunu kullanır.

!tfx pipeline create  \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT} \
--build-target-image={CUSTOM_TFX_IMAGE}

Bir işlem hattı oluştururken Dockerfile ve build.yaml , bir Docker görüntüsü oluşturmak için oluşturulacaktır. Bu dosyaları diğer kaynak dosyalarla birlikte kaynak kontrol sisteminize (örneğin git) eklemeyi unutmayın.

Boru hattını çalıştırın

Dizüstü bilgisayar daha sonra tfx run create yürütme çalışmasını başlatmak için tfx run create komutunu kullanır. Bu çalıştırmanın Kubeflow Pipelines Dashboard'daki Experiments altında da listelendiğini göreceksiniz.

tfx run create --pipeline-name={PIPELINE_NAME} --endpoint={ENDPOINT}

Ardışık düzeninizi Kubeflow Pipelines Dashboard'dan görüntüleyebilirsiniz.

8. Verilerinizi doğrulayın

Herhangi bir veri bilimi veya makine öğrenimi projesindeki ilk görev, verileri anlamak ve temizlemektir.

  • Her özelliğin veri türlerini anlayın
  • Anormallikleri ve eksik değerleri arayın
  • Her özelliğin dağılımlarını anlayın

Bileşenler

Veri BileşenleriVeri Bileşenleri

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline / pipeline.py , bu bileşenleri pipeline.py düzeninize ekleyen satırları kaldırın:

# components.append(statistics_gen)
# components.append(schema_gen)
# components.append(example_validator)

(Şablon dosyaları kopyalandığında ExampleGen zaten etkinleştirildi.)

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

Boru hattını kontrol edin

Kubeflow Orchestrator için, KFP kontrol panelini ziyaret edin ve ardışık düzen çalıştırmanız için sayfada ardışık düzen çıktılarını bulun. Soldaki "Denemeler" sekmesini ve Denemeler sayfasında "Tüm çalıştırmalar" ı tıklayın. İşlemi ardışık düzeninizin adıyla bulabilmelisiniz.

Daha gelişmiş örnek

Burada sunulan örnek gerçekten sadece başlamanıza yöneliktir. Daha gelişmiş bir örnek için TensorFlow Data Validation Colab'e bakın.

Bir veri kümesini keşfetmek ve doğrulamak için TFDV'yi kullanma hakkında daha fazla bilgi için tensorflow.org'daki örneklere bakın .

9. Özellik mühendisliği

Özellik mühendisliği ile verilerinizin tahmin kalitesini artırabilir ve / veya boyutsallığı azaltabilirsiniz.

  • Özellik geçişleri
  • Kelime dağarcığı
  • Gömme
  • PCA
  • Kategorik kodlama

TFX kullanmanın faydalarından biri, dönüşüm kodunuzu bir kez yazmanız ve sonuçta ortaya çıkan dönüşümlerin eğitim ve sunum arasında tutarlı olmasıdır.

Bileşenler

Dönüştürme

  • Dönüşüm , veri kümesinde özellik mühendisliği gerçekleştirir.

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline / pipeline.py , Dönüşüm'ü ardışık düzene ekleyen satırı bulun ve açıklamasını kaldırın.

# components.append(transform)

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

Boru hattı çıktılarını kontrol edin

Kubeflow Orchestrator için, KFP kontrol panelini ziyaret edin ve ardışık düzen çalıştırmanız için sayfada ardışık düzen çıktılarını bulun. Soldaki "Denemeler" sekmesini ve Denemeler sayfasında "Tüm çalıştırmalar" ı tıklayın. İşlemi ardışık düzeninizin adıyla bulabilmelisiniz.

Daha gelişmiş örnek

Burada sunulan örnek gerçekten sadece başlamanıza yöneliktir. Daha gelişmiş bir örnek için bkz. TensorFlow Transform Colab .

10. Eğitim

Güzel, temiz, dönüştürülmüş verilerinizle bir TensorFlow modeli eğitin.

  • Tutarlı bir şekilde uygulanabilmeleri için önceki adımdaki dönüşümleri dahil edin
  • Sonuçları üretim için SavedModel olarak kaydedin
  • TensorBoard kullanarak eğitim sürecini görselleştirin ve keşfedin
  • Ayrıca model performansının analizi için bir EvalSavedModel kaydedin

Bileşenler

  • Eğitmen bir TensorFlow modelini eğitir.

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline / pipeline.py , Trainer'ı ardışık düzene ekleyen öğeyi bulun ve açıklamasını kaldırın:

# components.append(trainer)

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

Boru hattı çıktılarını kontrol edin

Kubeflow Orchestrator için, KFP kontrol panelini ziyaret edin ve ardışık düzen çalıştırmanız için sayfada ardışık düzen çıktılarını bulun. Soldaki "Denemeler" sekmesini ve Denemeler sayfasında "Tüm çalıştırmalar" ı tıklayın. İşlemi ardışık düzeninizin adıyla bulabilmelisiniz.

Daha gelişmiş örnek

Burada sunulan örnek gerçekten sadece başlamanıza yöneliktir. Daha gelişmiş bir örnek için TensorBoard Eğitimine bakın.

11. Model performansını analiz etme

Üst düzey ölçümlerden daha fazlasını anlamak.

  • Kullanıcılar yalnızca sorguları için model performansı yaşarlar
  • Veri dilimlerinde düşük performans, üst düzey ölçümlerle gizlenebilir
  • Model adaleti önemlidir
  • Genellikle kullanıcı veya verilerin temel alt kümeleri çok önemlidir ve küçük olabilir
    • Kritik ancak olağandışı koşullarda performans
    • Etkileyenler gibi kilit kitleler için performans
  • Şu anda üretimde olan bir modeli değiştiriyorsanız, önce yenisinin daha iyi olduğundan emin olun

Bileşenler

  • Değerlendirici , eğitim sonuçlarının derinlemesine analizini gerçekleştirir.

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline / pipeline.py , Evaluator'ı pipeline'a ekleyen satırı bulun ve uncomment:

components.append(evaluator)

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_dag_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

Boru hattı çıktılarını kontrol edin

Kubeflow Orchestrator için, KFP kontrol panelini ziyaret edin ve ardışık düzen çalıştırmanız için sayfada ardışık düzen çıktılarını bulun. Soldaki "Denemeler" sekmesini ve Denemeler sayfasında "Tüm çalıştırmalar" ı tıklayın. İşlemi ardışık düzeninizin adıyla bulabilmelisiniz.

12. Modeli sunmak

Yeni model hazırsa, hazırlayın.

  • Pusher, SavedModels'i iyi bilinen konumlara dağıtır

Dağıtım hedefleri, iyi bilinen konumlardan yeni modeller alır

  • TensorFlow Sunumu
  • TensorFlow Lite
  • TensorFlow JS
  • TensorFlow Hub

Bileşenler

  • İtici , modeli bir hizmet altyapısına dağıtır.

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline / pipeline.py , Pusher'ı pipeline.py düzene ekleyen satırı bulun ve açıklamasını kaldırın:

# components.append(pusher)

Boru hattı çıktılarını kontrol edin

Kubeflow Orchestrator için, KFP kontrol panelini ziyaret edin ve ardışık düzen çalıştırmanız için sayfada ardışık düzen çıktılarını bulun. Soldaki "Denemeler" sekmesini ve Denemeler sayfasında "Tüm çalıştırmalar" ı tıklayın. İşlemi ardışık düzeninizin adıyla bulabilmelisiniz.

Kullanılabilir dağıtım hedefleri

Artık modelinizi eğitip doğruladınız ve modeliniz artık üretime hazır. Artık modelinizi aşağıdakiler dahil TensorFlow dağıtım hedeflerinden herhangi birine dağıtabilirsiniz:

  • Modelinize bir sunucu veya sunucu çiftliğinde hizmet vermek ve REST ve / veya gRPC çıkarım isteklerini işlemek için TensorFlow Sunumu.
  • TensorFlow Lite , modelinizi bir Android veya iOS yerel mobil uygulamasına veya bir Raspberry Pi, IoT veya mikrodenetleyici uygulamasına dahil etmek için.
  • Modelinizi bir web tarayıcısında veya Node.JS uygulamasında çalıştırmak için TensorFlow.js.

Daha gelişmiş örnekler

Yukarıda sunulan örnek gerçekten sadece başlamanıza yardımcı olmak içindir. Aşağıda, diğer Bulut hizmetleriyle bazı entegrasyon örnekleri verilmiştir.

Kubeflow Pipelines kaynak konuları

İş yükünüzün gereksinimlerine bağlı olarak, Kubeflow Pipelines dağıtımınız için varsayılan yapılandırma ihtiyaçlarınızı karşılayabilir veya karşılamayabilir. Kaynak yapılandırmalarınızı KubeflowDagRunnerConfig çağrınızda pipeline_operator_funcs kullanarak özelleştirebilirsiniz.

pipeline_operator_funcs , OpFunc derlenen KFP ardışık KubeflowDagRunner spesifikasyonunda oluşturulan tüm ContainerOp örneklerini dönüştüren OpFunc öğelerinin bir listesidir.

Örneğin, belleği yapılandırmak için gerekli bellek miktarını bildirmek için set_memory_request kullanabiliriz. Bunu yapmanın tipik bir yolu, set_memory_request için bir sarmalayıcı oluşturmak ve bunu ardışık OpFunc s listesine eklemek için kullanmaktır:

def request_more_memory():
  def _set_memory_spec(container_op):
    container_op.set_memory_request('32G')
  return _set_memory_spec

# Then use this opfunc in KubeflowDagRunner
pipeline_op_funcs = kubeflow_dag_runner.get_default_pipeline_operator_funcs()
pipeline_op_funcs.append(request_more_memory())
config = KubeflowDagRunnerConfig(
    pipeline_operator_funcs=pipeline_op_funcs,
    ...
)
kubeflow_dag_runner.KubeflowDagRunner(config=config).run(pipeline)

Benzer kaynak yapılandırma işlevleri şunları içerir:

  • set_memory_limit
  • set_cpu_request
  • set_cpu_limit
  • set_gpu_limit

BigQueryExampleGen deneyin

BigQuery , sunucusuz, yüksek oranda ölçeklenebilir ve uygun maliyetli bir bulut veri ambarıdır. BigQuery, TFX'teki eğitim örnekleri için bir kaynak olarak kullanılabilir. Bu adımda, ardışık BigQueryExampleGen ekleyeceğiz.

Jupyter laboratuar dosyası düzenleyicisinde:

pipeline.py açmak için çift tıklayın . CsvExampleGen ve BigQueryExampleGen örneğini oluşturan satırın açıklamasını CsvExampleGen . Ayrıca create_pipeline işlevinin query bağımsız değişkeninin açıklamasını kaldırmanız gerekir.

BigQuery için hangi GCP projesinin kullanılacağını belirtmemiz gerekiyor ve bu, bir ardışık beam_pipeline_args oluştururken --project içinde beam_pipeline_args ayarlanarak yapılır.

configs.py açmak için çift tıklayın . BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGS ve BIG_QUERY_QUERY tanımlarının BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGS BIG_QUERY_QUERY . Bu dosyadaki proje kimliğini ve bölge değerini GCP projeniz için doğru değerlerle değiştirmelisiniz.

Dizini bir seviye yukarı değiştirin. Dosya listesinin yukarısındaki dizinin adını tıklayın. Dizinin adı, ardışık my_pipeline adını değiştirmediyseniz, my_pipeline olan my_pipeline adıdır.

kubeflow_dag_runner.py açmak için çift tıklayın . Uncomment iki argüman, query ve beam_pipeline_args için, create_pipeline fonksiyonu.

Artık ardışık düzen, örnek kaynak olarak BigQuery'yi kullanmaya hazırdır. İşlem hattını önceki gibi güncelleyin ve 5. ve 6. adımlarda yaptığımız gibi yeni bir yürütme çalışması oluşturun.

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Dataflow'u deneyin

Çeşitli TFX Bileşenleri , paralel veri ardışık düzenlerini uygulamak için Apache Beam kullanır ve bu, veri işleme iş yüklerini Google Cloud Dataflow kullanarak dağıtabileceğiniz anlamına gelir. Bu adımda, Kubeflow orkestratörünü Apache Beam için veri işleme arka ucu olarak Dataflow'u kullanacak şekilde ayarlayacağız.

# Select your project:
gcloud config set project YOUR_PROJECT_ID

# Get a list of services that you can enable in your project:
gcloud services list --available | grep Dataflow

# If you don't see dataflow.googleapis.com listed, that means you haven't been
# granted access to enable the Dataflow API.  See your account adminstrator.

# Enable the Dataflow service:

gcloud services enable dataflow.googleapis.com

Çift tıklayın pipeline değişim dizinine ve açık çift tıklama configs.py . GOOGLE_CLOUD_REGION ve DATAFLOW_BEAM_PIPELINE_ARGS tanımlarının açıklamasını DATAFLOW_BEAM_PIPELINE_ARGS .

Dizini bir seviye yukarı değiştirin. Dosya listesinin yukarısındaki dizinin adını tıklayın. Dizinin adı, değiştirmediyseniz my_pipeline olan ardışık my_pipeline .

kubeflow_dag_runner.py açmak için çift tıklayın . beam_pipeline_args . (Ayrıca 7. Adımda eklediğiniz mevcut beam_pipeline_args da beam_pipeline_args emin olun.)

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Dataflow işlerinizi Cloud Console'daki Dataflow'da bulabilirsiniz.

KFP ile Cloud AI Platform Eğitimi ve Tahminini Deneyin

TFX, Eğitim ve Tahmin için Cloud AI Platform gibi çeşitli yönetilen GCP hizmetleriyle birlikte çalışır. Trainer bileşeninizi, ML modellerini eğitmek için yönetilen bir hizmet olan Cloud AI Platform Training'i kullanacak şekilde ayarlayabilirsiniz. Modeliniz hizmet için inşa ve hazır olduğunda Üstelik, sen hizmet için Bulut AI Platformu Prediction modelinizi zorlayabilir. Bu adımda, Trainer ve Pusher bileşenimizi Cloud AI Platform hizmetlerini kullanacak şekilde ayarlayacağız.

Dosyaları düzenlemeden önce, önce AI Platform Training & Prediction API'yi etkinleştirmeniz gerekebilir.

Çift tıklayın pipeline değişim dizinine ve açık çift tıklama configs.py . GOOGLE_CLOUD_REGION , GCP_AI_PLATFORM_TRAINING_ARGS ve GCP_AI_PLATFORM_SERVING_ARGS tanımlarının GCP_AI_PLATFORM_TRAINING_ARGS GCP_AI_PLATFORM_SERVING_ARGS . Cloud AI Platform Training'de bir model eğitmek için özel oluşturulmuş kapsayıcı imajımızı kullanacağız, bu nedenle masterConfig.imageUri GCP_AI_PLATFORM_TRAINING_ARGS ile aynı değere CUSTOM_TFX_IMAGE .

Dizini bir seviye yukarı değiştirin ve kubeflow_dag_runner.py açmak için çift tıklayın . ai_platform_training_args ve ai_platform_serving_args .

İşlem hattını güncelleyin ve yeniden çalıştırın

# Update the pipeline
!tfx pipeline update \
--pipeline-path=kubeflow_dag_runner.py \
--endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Eğitim işlerinizi Cloud AI Platform Jobs'ta bulabilirsiniz . Ardışık düzeniniz başarıyla tamamlandıysa modelinizi Cloud AI Platform Modellerinde bulabilirsiniz .

14. Kendi verilerinizi kullanın

Bu eğiticide, Chicago Taxi veri kümesini kullanarak bir model için bir ardışık düzen oluşturdunuz. Şimdi kendi verilerinizi boru hattına eklemeyi deneyin. Verileriniz, Google Cloud Storage, BigQuery veya CSV dosyaları dahil olmak üzere ardışık düzenin erişebileceği her yerde depolanabilir.

Verilerinizi barındırmak için ardışık düzen tanımını değiştirmeniz gerekir.

Verileriniz dosyalarda saklanıyorsa

  1. DATA_PATH içindeki kubeflow_dag_runner.py konumu belirterek değiştirin.

Verileriniz BigQuery'de depolanıyorsa

  1. BIG_QUERY_QUERY içindeki BIG_QUERY_QUERY'yi sorgu ifadenize değiştirin.
  2. models / features.py models özellikler ekleyin.
  3. Eğitim için giriş verilerini dönüştürmek için models / preprocessing.py değiştirin.
  4. keras models tanımlamak için models / keras / model.py ve models / keras / constants.py değiştirin.

Eğitmen hakkında daha fazla bilgi edinin

Eğitim ardışık düzenleri hakkında daha fazla ayrıntı için Eğitmen bileşen kılavuzuna bakın.

Temizlemek

Bu projede kullanılan tüm Google Cloud kaynaklarını temizlemek için eğitici için kullandığınız Google Cloud projesini silebilirsiniz .

Alternatif olarak, her konsolu ziyaret ederek ayrı kaynakları temizleyebilirsiniz: - Google Bulut Depolama - Google Container Registry - Google Kubernetes Engine