![見出し画像](https://assets.st-note.com/production/uploads/images/115451633/rectangle_large_type_2_6e05966e9d5e5b58a8820f03fec1da25.jpeg?width=1200)
娘とVertex AIで作る「おりがみ折り筋分類モデル」 モデル作成編
データ作成編からの続きです。
これ以降の作業はお金かかります!
モデル作成以降の作業に対してお金がかかります。試してみる方、ご注意ください。
トレーニング: 8ノード時間(実時間1時間48分) - 3900円(税別)
デプロイ: 10時間ぐらい - 1865円(税別)
デプロイはできたモデルを実際に使える状態にすることです。モデルを試したあとデプロイはいつでも解除、再実行できます。今回、解除を忘れてしまって費用がかさんでしまいました。
データセットを作る
学習に使う画像データのアップロードとラベル付けを行います。
[画像分類(単一ラベル)]のデータセットを作ります。
手順は以下のドキュメントを見てください。
引っかかったポイントを解説します。
データはCloud Strage 上に置く
学習データはCloud Strage 上に置かれたものが利用されます。まずCloud Strage のコンソールから画像データをアップロードしてしまいましょう。
画像パスとラベルを対応させたcsvファイルを生成
[Cloud Storage 上のパス],[ラベル] を1行としたcsvファイルを生成して、これもCloud Strageにアップロードします。
gs://xxx/000_airplane_1.jpg,airplane
gs://xxx/090_airplane_1.jpg,airplane
gs://xxx/180_airplane_1.jpg,airplane
gs://xxx/270_airplane_1.jpg,airplane
csvファイルの生成のときに、画像ファイル名にラベルを含めたことが生きてきます。
import os
import csv
def create_csv(data, output_path):
with open(output_path, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerows(data)
if __name__ == "__main__":
# 処理した画像ファイルが保存されているフォルダ
output_folder = "/content/drive/MyDrive/origamiDB/output"
# ラベルファイル
csv_output_path = "/content/drive/MyDrive/origamiDB/labels.csv"
#Cloud Storage パス
gs_upload_path = "gs://xxx/"
data = []
for filename in os.listdir(output_folder):
parts = filename.split("_") # ファイル名を "_" で分割
label = parts[-2]
upload_path = gs_upload_path + filename
data.append([upload_path, label])
create_csv(data, csv_output_path)
最終的に Cloud Strage コンソール上では以下のような感じになります。赤丸は上から[Cloud Storage 上のパス][画像ファイル][ラベルファイル]です。
![](https://assets.st-note.com/img/1693980731827-BCU8eE93Py.png)
ここまでできたらVertex AI のコンソールに戻ってデータセットへラベルファイルをつかって画像を追加します。インポート完了まで5分程度かかりました。完了後、メールが届きました。
![](https://assets.st-note.com/img/1693969024009-UD44q2GS3k.png)
これでラベル付けの終わったデータセットが完成します。
![](https://assets.st-note.com/img/1693969557797-o04b8KOKRX.png?width=1200)
モデルのトレーニング
いよいよトレーニングです。手順は以下を見てください。
トレーニング方法としてAutoMLを指定、その他のオプションもデフォルトのままでOKです。予算の項目で8ノード時間としますが、処理に実際1時間48分かかりました。トレーニング終了はメールで知らせが届きます。
これでモデルの完成です。
エンドポイントのデプロイ
モデルが完成したので実際に使えるようにします。
詳しくは以下を見てください。
オプションはデフォルトで問題ないですが、[コンピューティング ノードの数] は最小の1でOKです。ノード数に応じて課金されます。
デプロイは時間課金されます。利用する直前にデプロイし、終われば解除するようにしてください。デプロイ完了まで15分ぐらいかかりました。完了はメールで通知が来ます。
これでモデルは完成し使えるようになりました。
次回、実際に使ってみましょう!
この記事が気に入ったらサポートをしてみませんか?