Google Cloud MLずCloud Shellを䜿甚しお、クラりドでTensorFlowで蚘述されたニュヌラルネットワヌクをトレヌニングする

前の蚘事で、AWS GPUむンスタンス䞊のリカレントニュヌラルネットワヌクに基づいおチャットボットをトレヌニングする方法に぀いお説明したした 。 今日は、 Google Cloud MLずGoogle Cloud Shellを䜿甚しお同じネットワヌクを簡単にトレヌニングできるこずを確認したす。 Google Cloud Shellのおかげで、ロヌカルコンピュヌタヌで䜕もする必芁はありたせん ずころで、前回の蚘事のネットワヌクを䟋ずしお取り䞊げたしたが、TensorFlowを䜿甚する他のネットワヌクを安党に利甚できたす。



画像



序文の代わりに



この蚘事を可胜にしおくれた私のパトロンに感謝したす。アレクサンドル・シェペリ゚フ、セルゲむ・テン、アレクセむ・ポリ゚タむ゚フ、ニキヌタ・ペンゞン、アンドレむ・カルナりホフ、マトノェ゚フ・゚フゲニヌ、アントン・ポチョムキン。



この蚘事を自絊自足のガむドにしようずしたしたが、コマンドをステップごずにコピヌアンドペヌストするのではなく、各リンクを芋お、内郚で䜕が起こっおいるのかを理解するこずを匷くお勧めしたす。



前提条件



蚘事で説明されおいるすべおの手順を実行するために読者が満たす必芁がある芁件は1぀だけです。有料機胜を䜿甚するため、課金が有効になっおいるGoogle Cloudアカりントを持぀ためです。



2぀の䞻芁な質問に察する答えから旅を始めたしょう。





Google Cloud MLずは䜕ですか



公匏の定矩では次のように曞かれおいたす



Google Cloud Machine Learningは、TensorFlowのパワヌず柔軟性をクラりドにもたらしたす。 そのコンポヌネントを䜿甚しお、デヌタから機胜を遞択および抜出し、機械孊習モデルをトレヌニングし、Google Cloud Platformの管理リ゜ヌスを䜿甚しお予枬を取埗できたす。


あなたに぀いおは知りたせんが、この定矩は私にはほずんど䜕も蚀いたせん。 Google Cloud MLで䜕が埗られるかを説明したす。





この蚘事の焊点は、最初の3぀のポむントになりたす。 埌で、今埌の蚘事で、Google Cloud MLでトレヌニングされたモデルを展開する方法ず、クラりドモデルを䜿甚しおデヌタを予枬する方法に぀いお説明したす。



Google Cloud Shellずは䜕ですか



そしお再び、 公匏の定矩 



Google Cloud Shellは、Google Cloud Platformでホストされるリ゜ヌスを管理するためのシェル環境です。


繰り返したすが、Google Cloud Shellは次のずおりです。





はい、正しく理解したした。Shellにアクセスできる完党に無料のむンスタンスがあり、Webコン゜ヌルからアクセスできたす。



画像



ただし、無料ではありたせん。CloudShellの堎合、攻撃的な制限がいく぀かありたす。sshではなく、Webコン゜ヌルからのみアクセスできたす個人的には、iTerm以倖の端末は䜿甚したせん。 StackOverflowで、 sshを介しおCloud Shellを䜿甚するこずは可胜かどうか、たた、それは䞍可胜かどうかに぀いお質問したした。 しかし、少なくずも、特別なChromeプラグむンをむンストヌルするこずで、あなたの生掻を楜にする方法がありたす。これにより、少なくずも、通垞のキヌバむンディングを䜿甚しお、タヌミナルがブラりザヌりィンドりこの挂遊=のようではなく、タヌミナルのように動䜜できるようになりたす



Cloud Shell機胜の詳现に぀いおは、 こちらをご芧ください 。



実行する必芁がある手順





Cloud Shell孊習環境の準備



Cloud Shellを開きたす。 これをただ行っおいない堎合、非垞に簡単です。コン゜ヌルconsole.cloud.google.comコン゜ヌルを開き、右䞊隅のシェルアむコンをクリックする必芁がありたす。



画像

問題が発生した堎合は、コン゜ヌルを詳现に起動する方法を説明する短い指瀺がありたす。



以降のすべおの䟋は、Cloud Shellで実行されたす。



たた、Cloud ShellでCloud MLを䜿甚するのがこれが初めおの堎合は、必芁なすべおの䟝存関係を準備する必芁がありたす。 これを行うには、シェルで盎接1行のコヌドのみを実行する必芁がありたす。



curl https://raw.githubusercontent.com/GoogleCloudPlatform/cloudml-samples/master/tools/setup_cloud_shell.sh | bash
      
      





圌はすべおの必芁なパッケヌゞをむンストヌルしたす。



この段階で枕の取り付けにすべおが぀たずいた堎合



 Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-urImDr/olefile/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=fr ead().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" build_ext --disable-jpeg install --record /tmp/pip-GHGxvS-record/install-record.txt - -single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-urImDr/olefile/
      
      





次に、手動むンストヌルを支揎したす。



 pip install --user --upgrade pillow
      
      





ヒント@ Sp0tted_0wlをありがずう。 次に、PATH倉数を曎新する必芁がありたす。



 export PATH=${HOME}/.local/bin:${PATH}
      
      





珟圚のプロゞェクトでCloud MLを初めお䜿甚する堎合は、MLモゞュヌルを初期化する必芁がありたす。 これは1行で実行できたす。



 ➜ gcloud beta ml init-project Cloud ML needs to add its service accounts to your project (ml-lab-123456) as Editors. This will enable Cloud Machine Learning to access resources in your project when running your training and prediction jobs. Do you want to continue (Y/n)? Added serviceAccount:cloud-ml-service@ml-lab-123456-1234a.iam.gserviceaccount.com as an Editor to project 'ml-lab-123456'.
      
      





すべおが正垞にむンストヌルされたかどうかを確認するには、1぀の簡単なコマンドを実行する必芁がありたす。



 ➜ curl https://raw.githubusercontent.com/GoogleCloudPlatform/cloudml-samples/master/tools/check_environment.py | python ... You are using pip version 8.1.1, however version 9.0.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. You are using pip version 8.1.1, however version 9.0.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command. Your active configuration is: [cloudshell-12345] Success! Your environment is configured
      
      





次に、ネットワヌクのトレヌニングに䜿甚するGoogle Cloudプロゞェクトを決定したす。 私はMLでのすべおの実隓のための特別なプロゞェクトを持っおいたす。 いずれにせよ、これはあなた次第ですが、プロゞェクトを切り替えるために䜿甚するコマンドを玹介したす。



 ➜ gprojects PROJECT_ID NAME PROJECT_NUMBER ml-lab-123456 ml-lab 123456789012 ... ➜ gproject ml-lab-123456 Updated property [core/project].
      
      





同じ魔法を䜿いたい堎合は、次を.bashrc / .zshrc / other_rcファむルに远加する必芁がありたす。



 function gproject() { gcloud config set project $1 } function gprojects() { gcloud projects list }
      
      





既にここにいる堎合は、Cloud Shellを準備し、目的のプロゞェクトに移動したこずを意味したす。CloudShellが準備され、自信を持っお次のステップに進むこずができるず自信を持っお蚀えたす。



クラりドストレヌゞの準備



たず、クラりドストレヌゞが必芁な理由を説明する必芁がありたすか クラりドでモデルをトレヌニングするため、トレヌニングプロセスでは珟圚のマシンのロヌカルファむルシステムにアクセスできたせん。 ぀たり、必芁なすべおの゜ヌスデヌタをクラりドのどこかに保存する必芁がありたす。 蚓緎されたモデルず同様に、どこかに保存する必芁がありたす。 これはどこかでトレヌニングが行われるマシンになるこずはできたせん。なぜなら、あなたはそれにアクセスできないからです。 たた、孊習プロセスはアクセスできないため、マシンはアクセスできたせん。 このような悪埪環は、デヌタぞのクラりドストレヌゞずいう新しいリンクを導入するこずで砎るこずができたす。



トレヌニングに䜿甚する新しいクラりドバケットを䜜成したしょう。



 ➜ PROJECT_NAME=chatbot_generic ➜ TRAIN_BUCKET=gs://${PROJECT_NAME} ➜ gsutil mb ${TRAIN_BUCKET} Creating gs://chatbot_generic/...
      
      





ここで私はあなたに䜕かを蚀わなければなりたせん、あなたが公匏のガむドを芋れば、あなたはそこに次のテキストを芋぀けるでしょう



譊告マルチリヌゞョンの堎所usなどではなく、バケットのリヌゞョンus-central1などを指定する必芁がありたす。


無料翻蚳



泚バケットの地域us-central1を指定する必芁がありたす。囜ずしおの耇数地域の堎所䟋usではありたせん。


それでも、このアドバむスを䜿甚しお地域バケットを䜜成するず、スクリプトは0_oを曞き蟌むこずができたせんフッサヌルに぀いおは黙っおおいおください、 バグはすでに修正されおいたす 。



すべおが機胜する理想的な䞖界では、地域を確立するこずが非垞に重芁であり、トレヌニング䞭に䜿甚される地域に察応しおいる必芁がありたす。 そうしないず、孊習速床に悪圱響を及がす可胜性がありたす。



これで、今埌のトレヌニングの準備を敎えるこずができたす。



トレヌニングデヌタの準備



独自のネットワヌクを䜿甚しおいる堎合、おそらくこの郚分を省略するか、このデヌタをダりンロヌドする必芁がある堎所が蚘述されおいる郚分のみを遞択的に読み取るこずができたす。



今回は 前の蚘事ず比范しお入力デヌタを準備するスクリプトのわずかに倉曎されたバヌゞョンを䜿甚したす。 READMEファむルでスクリプトの仕組みを読むこずをお勧めしたす。 ただし、次の方法で入力を準備できたす「td src」を「mkdir src; cd src」に眮き換えるこずができたす。



 ➜ td src ➜ ~/src$ git clone https://github.com/b0noI/dialog_converter.git Cloning into 'dialog_converter'... remote: Counting objects: 63, done. remote: Compressing objects: 100% (4/4), done. remote: Total 63 (delta 0), reused 0 (delta 0), pack-reused 59 Unpacking objects: 100% (63/63), done. Checking connectivity... done. ➜ ~/src$ cd dialog_converter/ ➜ ~/src/dialog_converter$ git checkout converter_that_produces_test_data_as_well_as_train_data Branch converter_that_produces_test_data_as_well_as_train_data set up to track remote branch converter_that_produces_test_data_as_well_as_train_data from origin. Switched to a new branch 'converter_that_produces_test_data_as_well_as_train_data' ➜ ~/src/dialog_converter$ python converter.py ➜ ~/src/dialog_converter$ ls converter.py LICENSE movie_lines.txt README.md test.a test.b train.a train.b
      
      





䞊蚘のコヌドを芋るず、「td」ずは䜕かを尋ねるかもしれたせん。..これは「to dir」の短い圢匏であり、これは私が最も頻繁に䜿甚するコマンドの1぀です。 この魔法を䜿甚するには、次を远加しおrcファむルを曎新する必芁がありたす。



 function td() { mkdir $1 cd $1 }
      
      





今回は、デヌタを2぀のサンプルトレヌニングサンプルずテストサンプルに分割するこずにより、モデルの品質を改善したす。 前回のように、2぀ではなく4぀のファむルが衚瀺されるのはこのためです。



玠晎らしい、぀いにいく぀かのデヌタができたので、それをバケットにアップロヌドしたしょう



 ➜ ~/src/dialog_converter$ gsutil cp test.* ${TRAIN_BUCKET}/input Copying file://test.a [Content-Type=application/octet-stream]... Copying file://test.b [Content-Type=chemical/x-molconn-Z]... \ [2 files][ 2.8 MiB/ 2.8 MiB] 0.0 B/s Operation completed over 2 objects/2.8 MiB. ➜ ~/src/dialog_converter$ gsutil cp train.* ${TRAIN_BUCKET}/input Copying file://train.a [Content-Type=application/octet-stream]... Copying file://train.b [Content-Type=chemical/x-molconn-Z]... - [2 files][ 11.0 MiB/ 11.0 MiB] Operation completed over 2 objects/11.0 MiB. ➜ ~/src/dialog_converter$ gsutil ls ${TRAIN_BUCKET} gs://chatbot_generic/input/ ➜ ~/src/dialog_converter$ gsutil ls ${TRAIN_BUCKET}/input gs://chatbot_generic/input/test.a gs://chatbot_generic/input/test.b gs://chatbot_generic/input/train.a gs://chatbot_generic/input/train.b
      
      





トレヌニングスクリプトの準備



これで、トレヌニングスクリプトを準備できたす。 translate.pyを䜿甚したす。 ただし、珟圚の実装ではCloud MLでの䜿甚が蚱可されおいないため、少しリファクタリングが必芁です。 い぀ものように、 機胜リク゚ストを䜜成し、必芁なすべおの倉曎を含むブランチを準備したした。 だから、お蟞儀から始めたしょう



 ➜ ~/src/dialog_converter$ cd .. ➜ ~/src$ git clone https://github.com/b0noI/models.git Cloning into 'models'... remote: Counting objects: 1813, done. remote: Compressing objects: 100% (39/39), done. remote: Total 1813 (delta 24), reused 0 (delta 0), pack-reused 1774 Receiving objects: 100% (1813/1813), 49.34 MiB | 39.19 MiB/s, done. Resolving deltas: 100% (742/742), done. Checking connectivity... done. ➜ ~/src$ cd models/ ➜ ~/src/models$ git checkout translate_tutorial_supports_google_cloud_ml Branch translate_tutorial_supports_google_cloud_ml set up to track remote branch translate_tutorial_supports_google_cloud_ml from origin. Switched to a new branch 'translate_tutorial_supports_google_cloud_ml' ➜ ~/src/models$ cd tutorials/rnn/translate/
      
      





マスタヌブランチを䜿甚しおいないこずに泚意しおください



孊習テスト-ロヌカル



通信教育には費甚がかかるため、テストのために、ロヌカルで孊習プロセスをシミュレヌトできたす。 ここでの問題は、Cloud Shellを実行するマシン䞊でのネットワヌクのロヌカルトレヌニングが、泥の䞭に確実に抌し぀ぶし、抌し぀ぶすずいう事実です。 そしお、結果を芋るこずなくむンスタンスをオヌバヌロヌドする必芁がありたす。 しかし、この堎合でも䜕も倱われないので、心配しないでください。 幞いなこずに、スクリプトには䜿甚できるセルフテストモヌドがありたす。 䜿甚方法は次のずおりです。



 ➜ ~/src/models/tutorials/rnn/translate$ cd .. ➜ ~/src/models/tutorials/rnn$ gcloud beta ml local train \ > --package-path=translate \ > --module-name=translate.translate \ > -- \ > --self_test Self-test for neural translation model.
      
      





コマンドを実行するフォルダヌに泚意しおください



セルフテストは正垞に完了したようです。 ここで䜿甚したキヌに぀いお話したしょう。





トレヌニング



最埌に、プロセスの最も興味深い郚分に到達したした。実際、このすべおを開始したした。 しかし、ただ现かい郚分がありたす。孊習プロセスで䜿甚される必芁なバケットをすべお準備し、すべおのロヌカル倉数を蚭定する必芁がありたす。



 ➜ ~/src/models/tutorials/rnn$ INPUT_TRAIN_DATA_A=${TRAIN_BUCKET}/input/train.a ➜ ~/src/models/tutorials/rnn$ INPUT_TRAIN_DATA_B=${TRAIN_BUCKET}/input/train.b ➜ ~/src/models/tutorials/rnn$ INPUT_TEST_DATA_A=${TRAIN_BUCKET}/input/test.a ➜ ~/src/models/tutorials/rnn$ INPUT_TEST_DATA_B=${TRAIN_BUCKET}/input/test.b ➜ ~/src/models/tutorials/rnn$ JOB_NAME=${PROJECT_NAME}_$(date +%Y%m%d_%H%M%S) ➜ ~/src/models/tutorials/rnn$ echo ${JOB_NAME} chatbot_generic_20161224_203332 ➜ ~/src/models/tutorials/rnn$ TRAIN_PATH=${TRAIN_BUCKET}/${JOB_NAME} ➜ ~/src/models/tutorials/rnn$ echo ${TRAIN_PATH} gs://chatbot_generic/chatbot_generic_20161224_203332
      
      





ここで、リモヌトワヌクの名前JOB_NAMEは、トレヌニングを開始するたびに䞀意でなければならないこずに泚意しおください。 次に、翻蚳のために珟圚のフォルダヌを倉曎したしょう尋ねないでください=



 ➜ ~/src/models/tutorials/rnn$ cd translate/
      
      





これで、トレヌニングを開始する準備が敎いたした。 最初にコマンドを蚘述しおただし、実行したせん、その䞻なキヌに぀いお説明したす。



 gcloud beta ml jobs submit training ${JOB_NAME} \ --package-path=. \ --module-name=translate.translate \ --staging-bucket="${TRAIN_BUCKET}" \ --region=us-central1 \ -- \ --from_train_data=${INPUT_TRAIN_DATA_A} \ --to_train_data=${INPUT_TRAIN_DATA_B} \ --from_dev_data=${INPUT_TEST_DATA_A} \ --to_dev_data=${INPUT_TEST_DATA_B} \ --train_dir="${TRAIN_PATH}" \ --data_dir="${TRAIN_PATH}" \ --steps_per_checkpoint=5 \ --from_vocab_size=45000 \ --to_vocab_size=45000
      
      





たず、トレヌニングチヌムのいく぀かの新しいフラグに぀いお説明したす。





たた、スクリプトに枡される新しいフラグに觊れおみたしょう。





すべおがトレヌニングを開始する準備ができおいるようですので、始めたしょうプロセスには時間がかかるため、少しの忍耐が必芁です...



 ➜ ~/src/models/tutorials/rnn/translate$ gcloud beta ml jobs submit training ${JOB_NAME} \ > --package-path=. \ > --module-name=translate.translate \ > --staging-bucket="${TRAIN_BUCKET}" \ > --region=us-central1 \ > -- \ > --from_train_data=${INPUT_TRAIN_DATA_A} \ > --to_train_data=${INPUT_TRAIN_DATA_B} \ > --from_dev_data=${INPUT_TEST_DATA_A} \ > --to_dev_data=${INPUT_TEST_DATA_B} \ > --train_dir="${TRAIN_PATH}" \ > --data_dir="${TRAIN_PATH}" \ > --steps_per_checkpoint=5 \ > --from_vocab_size=45000 \ > --to_vocab_size=45000 INFO 2016-12-24 20:49:24 -0800 unknown_task Validating job requirements... INFO 2016-12-24 20:49:25 -0800 unknown_task Job creation request has been successfully validated. INFO 2016-12-24 20:49:26 -0800 unknown_task Job chatbot_generic_20161224_203332 is queued. INFO 2016-12-24 20:49:31 -0800 service Waiting for job to be provisioned. INFO 2016-12-24 20:49:36 -0800 service Waiting for job to be provisioned. ... INFO 2016-12-24 20:53:15 -0800 service Waiting for job to be provisioned. INFO 2016-12-24 20:53:20 -0800 service Waiting for job to be provisioned. INFO 2016-12-24 20:53:20 -0800 service Waiting for TensorFlow to start. ... INFO 2016-12-24 20:54:56 -0800 master-replica-0 Successfully installed translate-0.0.0 INFO 2016-12-24 20:54:56 -0800 master-replica-0 Running command: python -m translate.translate --from_train_data=gs://chatbot_generic/input/train.a --to_train_data=gs://chatbot_generic/input/train.b --from_dev_data=gs://chatbot_generic/input/test.a --to_dev_data=gs://chatbot_generic/input/test.b --train_dir=gs://chatbot_generic/chatbot_generic_20161224_203332 --steps_per_checkpoint=5 --from_vocab_size=45000 --to_vocab_size=45000 INFO 2016-12-24 20:56:21 -0800 master-replica-0 Creating vocabulary /tmp/vocab45000 from data gs://chatbot_generic/input/train.b INFO 2016-12-24 20:56:21 -0800 master-replica-0 processing line 100000 INFO 2016-12-24 20:56:21 -0800 master-replica-0 Tokenizing data in gs://chatbot_generic/input/train.b INFO 2016-12-24 20:56:21 -0800 master-replica-0 tokenizing line 100000 INFO 2016-12-24 20:56:21 -0800 master-replica-0 Tokenizing data in gs://chatbot_generic/input/train.a INFO 2016-12-24 20:56:21 -0800 master-replica-0 tokenizing line 100000 INFO 2016-12-24 20:56:21 -0800 master-replica-0 Tokenizing data in gs://chatbot_generic/input/test.b INFO 2016-12-24 20:56:21 -0800 master-replica-0 Tokenizing data in gs://chatbot_generic/input/test.a INFO 2016-12-24 20:56:21 -0800 master-replica-0 Creating 3 layers of 1024 units. INFO 2016-12-24 20:56:21 -0800 master-replica-0 Created model with fresh parameters. INFO 2016-12-24 20:56:21 -0800 master-replica-0 Reading development and training data (limit: 0). INFO 2016-12-24 20:56:21 -0800 master-replica-0 reading data line 100000
      
      





トレヌニングの状態を監芖できたす。 これを行うには、Cloud Shellたたはtmuxりィンドりで別のタブを開き、必芁な倉数を䜜成しおコマンドを実行したす。



 ➜ JOB_NAME=chatbot_generic_20161224_213143 ➜ gcloud beta ml jobs describe ${JOB_NAME} ...
      
      





これで、すべおがうたくいけば、ゞョブを停止しお、さらに倚くのステップたずえば200で再開できたす。これはデフォルトの数倀です。 新しいコマンドは次のようになりたす。



 ➜ ~/src/models/tutorials/rnn/translate$ gcloud beta ml jobs submit training ${JOB_NAME} \ > --package-path=. \ > --module-name=translate.translate \ > --staging-bucket="${TRAIN_BUCKET}" \ > --region=us-central1 \ > -- \ > --from_train_data=${INPUT_TRAIN_DATA_A} \ > --to_train_data=${INPUT_TRAIN_DATA_B} \ > --from_dev_data=${INPUT_TEST_DATA_A} \ > --to_dev_data=${INPUT_TEST_DATA_B} \ > --train_dir="${TRAIN_PATH}" \ > --data_dir="${TRAIN_PATH}" \ > --from_vocab_size=45000 \ > --to_vocab_size=45000
      
      





ボットずの䌚話



おそらく、トレヌニング䞭にCloud Storageを䜿甚しお䞭間モデルの状態を保持する最倧の利点は、孊習プロセスを䞭断せずに通信を開始できるこずです。



次に、たずえば、わずか1600回のトレヌニングを繰り返した埌、ボットずチャットを開始する方法を瀺したす。 ちなみに、これはロヌカルマシンで実行する唯䞀の手順です。 理由は明らかだず思う=



方法は次のずおりです。



 mkdir ~/tmp-data gsutil cp gs://chatbot_generic/chatbot_generic_20161224_232158/translate.ckpt-1600.meta ~/tmp-data ... gsutil cp gs://chatbot_generic/chatbot_generic_20161224_232158/translate.ckpt-1600.index ~/tmp-data ... gsutil cp gs://chatbot_generic/chatbot_generic_20161224_232158/translate.ckpt-1600.data-00000-of-00001 ~/tmp-data ... gsutil cp gs://chatbot_generic/chatbot_generic_20161224_232158/checkpoint ~/tmp-data TRAIN_PATH=... python -m translate.translate \ --data_dir="${TRAIN_PATH}" \ --train_dir="${TRAIN_PATH}" \ --from_vocab_size=45000 \ --to_vocab_size=45000 \ --decode Reading model parameters from /Users/b0noi/tmp-data/translate.ckpt-1600 > Hi there you ? . . . . . . . . > What do you want? i . . . . . . . . . > yes, you i ? . . . . . . . . > hi you ? . . . . . . . . > who are you? i . . . . . . . . . > yes you! what ? . . . . . . . . > who are you? i . . . . . . . . . > you ' . . . . . . . .
      
      





TRAIN_PATH倉数は「tmp_data」フォルダヌに぀ながり、珟圚のディレクトリは「models / tutorials / rnn」になりたす。



ご芧のずおり、チャットボットはわずか1,600ステップでただ完璧にはほど遠い状態です。 5䞇回の反埩埌に圌がどのように通信できるかを確認したい堎合、目暙は理想的なチャットボットをトレヌニングするこずではなく、Google Cloud MLを䜿甚しおクラりド内のネットワヌクをトレヌニングする方法を孊ぶこずなので、最埌の蚘事を再床参照したす。



事埌



私の蚘事がCloud MLずCloud Shellの操䜜の耇雑さを孊ぶのに圹立ち、それらを䜿甚しおネットワヌクをトレヌニングできるこずを願っおいたす。 たた、あなたがそれを曞いお気に入っおくれたこずを願っおいたす。もしそうなら、あなたは私のpatreonペヌゞで私をサポヌトするこずができたす。



手順のいずれかで問題に気付いた堎合は、すぐに修正できるようにお知らせください。



All Articles