SIG TFX-Addons topluluğuna katılın ve TFX'in daha da iyi olmasına yardımcı olun! SIG TFX Eklentilerine Katılın

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. Jupyter dizüstü bilgisayarlarda TFX, AI Platform Pipelines ve Kubeflow ile entegrasyonun yanı sıra 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 çalıştırmanın sonuçlarını görselleştirebilecek ve oluşturulan eserlerin kökenini görüntüleyebileceksiniz.

Veri kümesini inceleyerek ve eksiksiz bir çalışma hattı ile biten tipik bir makine öğrenimi geliştirme sürecini izleyeceksiniz. Yol boyunca, ardışık düzeninizde hata ayıklamanın ve güncellemenin yollarını keşfedecek ve performansı ölçeceksiniz.

Chicago Taksi Veri Kümesi

TaksiChicago taksi

Kullandığınız Taksi kümesi Gezileri Chicago City yayınladı.

Şunları yapabilirsiniz devamı halinde veri kümesi hakkında Google BigQuery'ye . Tam veri kümesini keşfedin BigQuery UI .

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

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

1. Bir Google Cloud projesi oluşturun

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

Başlamak için bir Google Bulut Hesabına ihtiyacınız var. Eğer zaten mevcut ise, atlayın Yeni Proje Oluşturma .

  1. Git Google Cloud Console .

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

  3. Eğer ücretsiz deneme hesabı ile başlamak istiyorsanız, tıklayın ücretsiz olarak deneyin (veya Ücretsiz olarak başlayın ).

    1. Ülkeni seç.

    2. Hizmet şartlarını kabul edin.

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

      Bu noktada sizden ücret alınmaz. Eğer başka Google Cloud projelerini varsa, aşmadan bu öğretici tamamlayabilirsiniz Google Cloud Ücretsiz Tier aynı anda çalışan 8 çekirdekli bir max içerir sınırları.

1.b Yeni bir proje oluşturun.

  1. Gönderen ana Google Bulut pano , Google Bulut Platformu başlığının yanındaki proje açılır menüsünü tıklayın, Yeni bir proje seçin.
  2. Projenize bir ad verin ve diğer proje ayrıntılarını girin
  3. Bir proje oluşturduktan sonra, proje açılır menüsünden seçin.

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

  1. Git AI Platformu Boru hatları Kümeleri sayfasında.

    Ana Gezinme Menüsü altında: ≡ > AI Platform > Pipelines

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

  3. Kubeflow Boru hatları 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. Dağıtma Kubeflow Boru hatları sayfasında:

    1. Bir seçiniz dilimini sizin küme için (veya "bölge").

    2. ÖNEMLİ Onaykutusu aşağıdaki bulut API'lara erişim sağla etiketli. (Bu kümenin projenizin diğer parçalarına erişmesi için bu gereklidir. Bu adımı kaçırırsanız, daha sonra düzeltmek biraz zor olabilir.)

    3. Tıklayın oluşturun ve küme oluşturuldu kadar birkaç dakika bekleyin.

    4. Bir ad alanı ve örnek adı seçin (varsayılanları kullanmak iyidir). Sen kullan yönetilen depolama alanını kontrol etmek gerekmez.

    5. Dağıt tıklatın ve boru hattı devreye girene dek birkaç dakika bekleyin. Kubeflow Pipelines'ı dağıtarak Hizmet Şartları'nı kabul etmiş olursunuz.

3. Cloud AI Platform Notebook örneğini ayarlayın.

  1. Git AI Platformu Defterler sayfa.

    Ana Gezinme Menüsü altında: ≡ -> AI Platformu -> Dizüstü Bilgisayarlar

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

  3. Yüklü TensorFlow 2.1 (veya üstü) ile yeni bir örnek oluşturun.

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

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

    1. Yeni defter örneği formun alt kısmında Özelleştir seçin.
    2. 1 veya 2 vCPUs ile Makine yapılandırması seçin.

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

  1. Git AI Platformu Boru hatları Kümeleri sayfasında.

    Ana Gezinme Menüsü altında: ≡ -> AI Platformu -> İşlem Hatları

  2. Eğer bu eğitimde kullandığınız küme için satırında, Açık Boru hatları Dashboard tıklayın.

    açık pano

  3. Başlarken sayfasında, Açık TF 2.1 Notebook tıklayın.

  4. Bu eğitim için kullandığınız Notebook örneğini seçin ve devam edin.

    not defterini seç

5. Defterde çalışmaya devam edin

Yüklemek

Yükleyerek Notebook başlar Başlangıç Tfx ve Kubeflow Boru hatları (KFP) Jupyter Lab çalışan VM.

Ardından, hangi TFX sürümünün kurulu olduğunu kontrol eder, içe aktarma yapar ve Proje Kimliğini ayarlar ve yazdırır:

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

Google Cloud hizmetlerinizle bağlantı kurun

İşlem hattı yapılandırması, not defterinden alıp ç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, Pipelines panosunun URL'sinden bulunabilir. Kubeflow Pipeline panosuna gidin ve URL'ye bakın. Bitiş noktası URL içinde her şey ile başlayan bir https:// kadar, ve dahil googleusercontent.com .

ENDPOINT='' # Enter YOUR ENDPOINT here.

Dizüstü bilgisayar daha sonra ö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

İşlem hattınız için bir ad belirlemek üzere sonraki not defteri hücresini düzenleyin. Bu dersimizde kullanacağız my_pipeline .

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

Notebook sonra kullandığı tfx boru hattı şablonu kopyalamak için CLI. Şablon için bir model oluşturuyor böylece Bu eğitimde, ikili sınıflandırma gerçekleştirmek için Chicago Taksi veri kümesi kullanır taxi :

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

Dizüstü bilgisayar daha sonra CWD içeriğini proje dizinine değiştirir:

%cd {PROJECT_DIR}

İşlem hattı dosyalarına göz atın

Cloud AI Platform Notebook'un sol tarafında bir dosya tarayıcısı görmelisiniz. Senin boru hattı adıyla (bir dizin olmalıdır my_pipeline ). Açın ve dosyaları görüntüleyin. (Onları açıp not defteri ortamından da düzenleyebilirsiniz.)

# You can also list the files from the shell
 ls

tfx template copy komutu üstünde bir boru hattı inşa dosyalar temel bir iskeleyi oluşturdu. Bunlara Python kaynak kodları, örnek veriler ve Jupyter not defterleri dahildir. Bunlar bu özel örnek içindir. Kendi boru hatlarınız için bunlar, boru hattınızın gerektirdiği destekleyici dosyalar olacaktır.

İşte Python dosyalarının kısa açıklaması.

  • pipeline - Bu dizin boru hattının tanımını içerir
    • configs.py - Boru hattı koşucular için ortak sabitleri tanımlar
    • pipeline.py - tanımlar TFX bileşenleri ve bir boru hattı
  • models - Bu dizin ML modeli tanımları içerir.
    • features.py features_test.py - tanımlar model özellikleri
    • preprocessing.py / preprocessing_test.py - kullanarak işlerini önişleme tanımlar tf::Transform
    • estimator - Bu dizin bir Tahmincisi tabanlı modeli içeriyor.
      • constants.py - model tanımlar sabitleri
      • model.py / model_test.py - tanımlar DNN modeli TF tahmincisi kullanılarak
    • keras - Bu dizin bir Keras tabanlı modeli içeriyor.
      • constants.py - model tanımlar sabitleri
      • model.py / model_test.py - tanımlar keras kullanılarak DNN modeli
  • beam_runner.py / kubeflow_runner.py - Her bir düzenleme motor için rayları tanımlar

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

Dizüstü kullanarak boru hattını çalışacak tfx run CLI komutu.

Depolamaya bağlan

Koşu boru hatları saklanabilir gereken eserler oluşturmak ML-Meta . Yapıtlar, bir dosya sisteminde veya blok depolamada saklanması gereken dosyalar olan yükleri ifade eder. Bu eğitimde, kurulum sırasında otomatik olarak oluşturulan paketi kullanarak meta veri yüklerimizi depolamak için GCS'yi kullanacağız. Adını olacak <your-project-id>-kubeflowpipelines-default .

İşlem hattını oluşturun

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

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

Notebook sonra kullandığı tfx pipeline create boru hattını oluşturmak için komut.

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

Bir boru hattı oluştururken, Dockerfile bir Docker imaj yaratmak için oluşturulur. Bu dosyaları diğer kaynak dosyalarla birlikte kaynak kontrol sisteminize (örneğin git) eklemeyi unutmayın.

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

Notebook sonra kullandığı tfx run create için boru hattının bir yürütme çalışmasını başlatmak için komut. Bu çalıştırmanın Kubeflow Pipelines Dashboard'daki Denemeler altında listelendiğini de göreceksiniz.

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

İşlem hattınızı Kubeflow Pipelines Dashboard'dan görüntüleyebilirsiniz.

8. Verilerinizi doğrulayın

Herhangi bir veri bilimi veya ML projesinde ilk görev, verileri anlamak ve temizlemektir.

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

Bileşenler

Veri BileşenleriVeri Bileşenleri

  • ExampleGen besler ve giriş veri kümesi böler.
  • StatisticsGen veri kümesi için istatistikler hesaplanır.
  • SchemaGen SchemaGen istatistiklerini inceler ve bir veri şemasını oluşturur.
  • ExampleValidator veri kümesindeki anomaliler ve eksik değerleri arar.

Jupyter lab dosya düzenleyicisinde:

In pipeline / pipeline.py , sizin boru hattına bu bileşenleri eklemek yorumsuz hatları:

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

( ExampleGen şablon dosyalarının kopyalandığı zaman zaten etkinleştirildi.)

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

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

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

Boru hattını kontrol edin

Kubeflow Orchestrator için, KFP panosunu ziyaret edin ve işlem hattı çalıştırmanız için sayfada işlem hattı çıktılarını bulun. Soldaki "Deneyler" sekmesini ve Deneyler sayfasında "Tüm çalıştırmalar"ı tıklayın. İşlem hattınızın adıyla çalıştırmayı bulabilmeniz gerekir.

Daha gelişmiş örnek

Burada sunulan örnek, gerçekten yalnızca başlamanıza yöneliktir. Daha gelişmiş bir örnek için bkz TensorFlow Veri Doğrulama CoLab .

Keşfetmek ve veri kümesi doğrulamak için TFDV kullanma hakkında daha fazla bilgi için, tensorflow.org üzerinde örneklere bakın .

9. Özellik mühendisliği

Özellik mühendisliği ile verilerinizin tahmine dayalı kalitesini artırabilir ve/veya boyutluluğu azaltabilirsiniz.

  • Özellik çaprazları
  • kelime dağarcığı
  • Gömmeler
  • 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 ile hizmet arasında tutarlı olmasıdır.

Bileşenler

dönüştürmek

  • Transform veri kümesi üzerinde gerçekleştirdiği özellik mühendislik.

Jupyter lab dosya düzenleyicisinde:

In pipeline / pipeline.py bulup ekler satırın başındaki Transform boru hattına.

# components.append(transform)

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

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

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

Boru hattı çıkışlarını kontrol edin

Kubeflow Orchestrator için, KFP panosunu ziyaret edin ve işlem hattı çalıştırmanız için sayfada işlem hattı çıktılarını bulun. Soldaki "Deneyler" sekmesini ve Deneyler sayfasında "Tüm çalıştırmalar"ı tıklayın. İşlem hattınızın adıyla çalıştırmayı bulabilmeniz gerekir.

Daha gelişmiş örnek

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

10. Eğitim

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

  • Tutarlı bir şekilde uygulanmaları 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ğitici bir TensorFlow modeli eğitir.

Jupyter lab dosya düzenleyicisinde:

In pipeline / pipeline.py boru hattına Trainer ekler, bul ve yorumsuz:

# components.append(trainer)

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

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

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

Boru hattı çıkışlarını kontrol edin

Kubeflow Orchestrator için, KFP panosunu ziyaret edin ve işlem hattı çalıştırmanız için sayfada işlem hattı çıktılarını bulun. Soldaki "Deneyler" sekmesini ve Deneyler sayfasında "Tüm çalıştırmalar"ı tıklayın. İşlem hattınızın adıyla çalıştırmayı bulabilmeniz gerekir.

Daha gelişmiş örnek

Burada sunulan örnek, gerçekten yalnızca başlamanıza yöneliktir. Daha gelişmiş bir örnek için bkz TensorBoard Eğitimi .

11. Model performansını analiz etme

En üst düzey metriklerden daha fazlasını anlama.

  • Kullanıcılar yalnızca sorguları için model performansını deneyimler
  • Veri dilimlerindeki düşük performans, üst düzey metrikler tarafından gizlenebilir
  • Model adaleti önemlidir
  • Kullanıcıların veya verilerin temel alt kümeleri genellikle çok önemlidir ve küçük olabilir
    • Kritik ancak olağandışı koşullarda performans
    • Etkileyenler gibi önemli kitleler için performans
  • Halihazırda üretimde olan bir modeli değiştiriyorsanız, öncelikle yenisinin daha iyi olduğundan emin olun.

Bileşenler

  • Değerlendirici gerçekleştirdiği antrenman sonuçlarının derin analizi.

Jupyter lab dosya düzenleyicisinde:

In pipeline / pipeline.py bulmak ve boru hattına Değerlendiricisi ekler satırı:

components.append(evaluator)

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

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

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

Boru hattı çıkışlarını kontrol edin

Kubeflow Orchestrator için, KFP panosunu ziyaret edin ve işlem hattı çalıştırmanız için sayfada işlem hattı çıktılarını bulun. Soldaki "Deneyler" sekmesini ve Deneyler sayfasında "Tüm çalıştırmalar"ı tıklayın. İşlem hattınızın adıyla çalıştırmayı bulabilmeniz gerekir.

12. Modele hizmet etmek

Yeni model hazırsa, öyle yapın.

  • Pusher, SavedModel'leri iyi bilinen konumlara dağıtır

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

  • TensorFlow Sunumu
  • TensorFlow Lite
  • TensorFlow JS
  • TensorFlow Merkezi

Bileşenler

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

Jupyter lab dosya düzenleyicisinde:

In pipeline / pipeline.py bulmak ve boru hattına Pusher ekler satırı:

# components.append(pusher)

Boru hattı çıkışlarını kontrol edin

Kubeflow Orchestrator için, KFP panosunu ziyaret edin ve işlem hattı çalıştırmanız için sayfada işlem hattı çıktılarını bulun. Soldaki "Deneyler" sekmesini ve Deneyler sayfasında "Tüm çalıştırmalar"ı tıklayın. İşlem hattınızın adıyla çalıştırmayı bulabilmeniz gerekir.

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 de dahil olmak üzere TensorFlow dağıtım hedeflerinden herhangi birine dağıtabilirsiniz:

  • TensorFlow Porsiyon DİNLENME ve / veya gRPC çıkarım isteklerini bir sunucu veya sunucu çiftlikte modelinizi hizmet veren ve işlenmesi için.
  • TensorFlow Lite , sizin bir Android veya iOS yerel mobil uygulamasında modeli veya Ahududu Pi IOT veya mikrodenetleyici uygulamayı da dahil olmak üzere.
  • TensorFlow.js , bir web tarayıcısı veya node.js uygulamasında modelinizi çalıştırmak için.

Daha gelişmiş örnekler

Yukarıda sunulan örnek gerçekten sadece başlamanız içindir. Aşağıda, diğer Bulut hizmetleriyle entegrasyona ilişkin bazı örnekler verilmiştir.

Kubeflow Pipelines kaynak konuları

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

pipeline_operator_funcs listesidir OpFunc tüm oluşturulan dönüştüren öğeler, ContainerOp derlenmiş KFP boru hattı spesifikasyonundaki örneklerini KubeflowDagRunner .

Örneğin, configure hafızasına kullanabileceğimiz set_memory_request gereken bellek miktarını beyan etmek. Bunu yapmanın tipik bir yolu için bir sarıcı yaratmaktır set_memory_request ve boru hattı listesine eklemek için kullanabilirsiniz OpFunc s:

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

deneyin BigQueryExampleGen

BigQuery bir sunucusuz, yüksek ölçekli, ve düşük maliyetli bir bulut veri deposudur. BigQuery, TFX'te eğitim örnekleri için bir kaynak olarak kullanılabilir. Bu adımda, biz katacak BigQueryExampleGen boru hattına.

Jupyter lab dosya düzenleyicisinde:

Açık için çift tıklama pipeline.py . Dışında açıklama CsvExampleGen ve bir örneğini oluşturur hat yorumsuz BigQueryExampleGen . Ayrıca yorumsuz gereken query savını create_pipeline fonksiyonu.

Biz BigQuery'e için hangi GSO projesi belirtmek gerekir ve bu ayar yapılır --project içinde beam_pipeline_args bir boru hattı oluştururken.

Açık için çift tıklama configs.py . Arasında ni tanımı BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGS ve 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 üstündeki dizinin adına tıklayın. Dizinin adıdır boru hattının adıdır my_pipeline Eğer boru hattı adını değiştirmek olmasaydı.

Açık için çift tıklama kubeflow_runner.py . 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ımda yaptığımız gibi yeni bir yürütme çalıştırması oluşturun.

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

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

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

Dataflow'u deneyin

Çeşitli TFX Bileşenleri Apache Beam'i kullanmak veri paralel boru hatlarını uygulamaya ve bunu kullanarak iş yüklerini işleme verileri dağıtmak anlamına gelir Google Bulut veri akışı . Bu adımda, Kubeflow düzenleyicisini Dataflow'u Apache Beam için veri işleme arka ucu olarak 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 . Arasında ni tanımı GOOGLE_CLOUD_REGION ve DATAFLOW_BEAM_PIPELINE_ARGS .

Dizini bir seviye yukarı değiştirin. Dosya listesinin üstündeki dizinin adına tıklayın. Dizinin adıdır boru hattının adıdır my_pipeline değiştirmek olmasaydı.

Açık için çift tıklama kubeflow_runner.py . Uncomment beam_pipeline_args . (Ayrıca şimdiki dışarı yorum yapmak emin olun beam_pipeline_args Adım 7. eklediğiniz)

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

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

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

Sen içinde Dataflow iş bulabilmektedirler Bulut Konsolu veri akışı .

KFP ile Cloud AI Platform Eğitimini ve Tahminini Deneyin

Gibi birçok yönetilen GSO hizmetleri ile TFX cıları Eğitim ve Tahmininde Bulut AI Platformu . Eğer ayarlayabilirsiniz Trainer Bulut AI Platformu Eğitim, ML modelleri eğitimi için yönetilen hizmeti kullanmak için bileşeni. 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, bizim ayarlayacaktır Trainer ve Pusher Bulut AI Platformu hizmetlerini kullanmak için bileşeni.

Dosyaları düzenlemeden önce, ilk olarak AI Platformu Eğitim & Tahmin API etkinleştirmeniz gerekebilir.

Çift tıklayın pipeline değişim dizinine ve açık çift tıklama configs.py . Arasında ni tanımı GOOGLE_CLOUD_REGION , GCP_AI_PLATFORM_TRAINING_ARGS ve GCP_AI_PLATFORM_SERVING_ARGS . Biz belirlesin yüzden, Bulut AI Platformu Eğitimde bir model eğitmek için bizim özel inşa konteyner resim kullanacağız masterConfig.imageUri içinde GCP_AI_PLATFORM_TRAINING_ARGS aynı değere CUSTOM_TFX_IMAGE yukarıda.

Değişim dizini bir seviye yukarı ve açık çift tıklama kubeflow_runner.py . Uncomment 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_runner.py \
  --endpoint={ENDPOINT}

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

İçeri eğitim iş bulabilmektedirler Bulut AI Platformu İşler . Senin boru hattı başarıyla tamamlandı varsa, modelinizi bulabilirsiniz Bulut AI Platformu Modelleri .

14. Kendi verilerinizi kullanın

Bu öğreticide, Chicago Taxi veri kümesini kullanarak bir model için bir işlem hattı oluşturdunuz. Şimdi kendi verilerinizi ardışık düzene koymayı deneyin. Verileriniz, Google Cloud Storage, BigQuery veya CSV dosyaları dahil olmak üzere ardışık düzenin erişebildiği her yerde depolanabilir.

Verilerinizi barındırmak için işlem hattı tanımını değiştirmeniz gerekir.

Verileriniz dosyalarda saklanıyorsa

  1. Değiştir DATA_PATH içinde kubeflow_runner.py yerini belirten,.

Verileriniz BigQuery'de depolanıyorsa

  1. Değiştir BIG_QUERY_QUERY sorgu açıklamaya configs.py içinde.
  2. İçinde özellikler ekleyin models / features.py .
  3. Değiştir models / preprocessing.py için eğitim için giriş verileri dönüştürmek .
  4. Değiştir models / keras / model.py ve models / keras / constants.py için tarif sizin ML modelini .

Eğitmen hakkında daha fazla bilgi edinin

Bkz Eğitmen bileşeni rehber Eğitim boru hatları hakkında daha fazla ayrıntı için.

Temizlemek

Bu projede kullanılan tüm Google Bulut kaynakları temizlemek için şunları yapabilirsiniz Google Bulut projeyi silmek Eğer öğretici için de kullanılır.

-: Alternatif olarak, her konsolları ziyaret ederek bireysel kaynakları temizlemek için Google Cloud Storage - Google Konteyner Kayıt - Google Kubernetes Motoru