Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Lookout for Visionで 筆跡鑑定してみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nakamura.shogo
August 05, 2022
Programming
15k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon Lookout for Visionで 筆跡鑑定してみた
nakamura.shogo
August 05, 2022
More Decks by nakamura.shogo
See All by nakamura.shogo
AIF勉強会
cmnakamurashogo
2
10k
生成AI時代に必要な検索とレコメンドをざっくり抑える
cmnakamurashogo
0
1.4k
実践AI/ML ~よくあるユースケースとレコメンデーションの効果的な活用戦略~
cmnakamurashogo
0
1.7k
re:Invent 2023 機械学習、アナリティクス系 "推し" アップデート紹介
cmnakamurashogo
0
4.6k
脱ブラックボックス化!LLMと一緒に使われるLangChainやLlamaIndexを徹底解説
cmnakamurashogo
10
15k
Other Decks in Programming
See All in Programming
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.3k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
150
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
190
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
260
RTSPクライアントを自作してみた話
simotin13
0
630
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
740
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
210
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.4k
A2UI という光を覗いてみる
satohjohn
1
150
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.5k
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
170
ふつうのFeature Flag実践入門
irof
8
4.2k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Practical Orchestrator
shlominoach
191
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
200
For a Future-Friendly Web
brad_frost
183
10k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
280
Git: the NoSQL Database
bkeepers
PRO
432
67k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
Transcript
Amazon Lookout for Visionで 筆跡鑑定してみた 2022-08-04(木) データアナリティクス事業本部 中村 1
◆nakamura.shogo ◆2022年2月入社 ◆データアナリティクス事業本部機械学習チーム所属 ◆やっていること: 機械学習案件の分析・環境構築、論文読み 最近読んだ論文はYOLOv7で、ブログにもしてます https://dev.classmethod.jp/articles/yolov7-train-with-customize-dataset/ https://dev.classmethod.jp/articles/yolov7-architecture-overall/ 2 自己紹介
◆Amazon Lookout for Visionとは ・概要と主なフロー ◆自作データセットでの検証 ・署名を私自身かそれ以外かを判定するタスク ◆その他補足情報 ・検証を進める中で気づいた点などなど 3
今日のお話
4 Amazon Lookout for Visionとは
◆Amazon Lookoutシリーズの一つ ◆どんなものか? ・画像の異常検知ができるマネージドサービス ・一連の作業がマネジメントコンソール上で可能 ・データ準備(ラベル付け)⇒学習⇒推論⇒再学習 ◆対応リージョン ・us-east-1, us-east-2, us-west-2
・ap-northeast-1, ap-northeast-2 ・eu-central-1, eu-west-1 5 Amazon Lookout for Visionとは
◆フロー ・リージョンで初回使用時のみコンソールバケットを作成 ・プロジェクト作成 ・プロジェクトにデータセットを作成し、画像をアップロード ・データはコンソールバケットに保存 projects/<project-name>/assets/images/<unixtime>/*.jpg ・ラベル付けを実行(GUIで作業可能) ・この時点では、ラベル付け結果は保存されない ・トレーニング実行 ・結果がコンソールバケットに保存(結果ログのみ)
projects/<project-name>/models/EvaluationManifest-<project-name>-<version>.json projects/<project-name>/models/EvaluationResult-<project-name>-<version>.json 6 Amazon Lookout for Visionとは コンソールバケット作成 プロジェクト作成 データセット作成 画像データのアップロード ラベル付け トレーニング実行 トライアル推論 推論結果の検証(ラベル付け)
◆フロー ・トライアル推論(バッチ推論) ・結果はコンソールバケットに保存 projects/<project-name>/assets/images/<unixtime>/*.jpg projects/<project-name>/trial-detections/TrialDetectionInputManifest-<project-name>-<task-name>.manifest projects/<project-name>/trial-detections/TrialDetectionManifest-<task-name>.json ・推論結果の検証(ラベル付け) ・チェック結果はコンソールバケットに保存 projects/<project-name>/trial-detections/patches/<unixtime>/patch.manifest
・チェック済のデータは次回のトレーニングに 自動的に使用される 7 Amazon Lookout for Visionとは コンソールバケット作成 プロジェクト作成 データセット作成 画像データのアップロード ラベル付け トレーニング実行 トライアル推論 推論結果の検証(ラベル付け)
◆その他の機能 ・推論エンドポイント ・エッジ推論 AWS IoT Greengrassによりエッジへのデプロイが可能(今回は使用しないため詳細略) ◆費用(S3の費用を除く) ・トレーニング計算時間 ・推論エンドポイント ・エッジ推論ユニット
◆手っ取り早くやってみたい場合 ・公式で回路基盤のデータセットがある ・train, testともに40枚(正常:20, 異常:20)のデータ https://github.com/aws-samples/amazon-lookout-for-vision/tree/main/circuitboard 8 Amazon Lookout for Visionとは コンソールバケット作成 プロジェクト作成 データセット作成 画像データのアップロード ラベル付け トレーニング実行 トライアル推論 推論結果の検証(ラベル付け)
9 自作データセットで検証
◆必要な最低限データ数の把握 ・データセット構成により必要数が異なる ・全てのデータはの同一解像度である必要がある ・最小解像度は64x64、最大解像度は4096x4096。 10 自作データセットでの検証 データセットの構成 正例 負例 単一データセット
train ≧20 ≧10 複数データセット train ≧10 条件なし test ≧10 ≧10
◆「中村」を書いたデータを収集 ・1枚の紙に中村を何回か書いてもらった ・所感 ・本人が書いても結構ばらつきがある ・撮影データを切り出す場合の位置が悩み ・位置やサイズ調整、色調整などの前処理が必要な印象 11 自作データセットでの検証
◆前処理の実施 ・文字位置の検出(OpenCVでの輪郭検出) ・輪郭が同じサイズとなるようにリサイズ ・グレースケール化 ・コントラスト調整(Min-max正規化) 12 自作データセットでの検証 【詳細は弊社ブログに公開】 【機械学習の前処理】 OpenCVを使って文字位置を切り
出して色調整してみた https://dev.classmethod.jp/articles/opencv-preprocess- for-ml-training/
◆今回のデータセットの集計結果 ・複数データセット(train/test)の構成を使用 ・推論テスト用に未使用データを一部残す(test2と呼ぶ) 13 自作データセットでの検証 正例 負例 train 20 24
test 10 14 test2(未使用データ) 10 13 合計 40 51
14 さて、結果は…?
◆学習結果 ⇒test2の結果を見る限りある程度分類できていそう ・評価指標はいつものprecision/recall recall:「全部拾えたんだっけ?」 precision:「テキトーなこと言ってないよね?」 ・正規化ありなしで比較してみた ・testは100%の性能になるため、学習時に多少参照されていそう(完全なOPENではない) ・test2を見ると正規化ありのほうがバランスが良い(ただし試行毎に結果が変わる) 15 自作データセットでの検証 使用したデータ⇒ test
precision test recall test2 precision test2 recall 正規化なし 100%(14/14) 100%(14/14) 100%(7/7) 53.8%(7/13) 正規化あり(Minmax) 100%(14/14) 100%(14/14) 81.8%(9/11) 69.2%(9/13)
16 その他補足情報
◆学習時間について ・今回のデータセット規模では、学習時間は1時間以内に収まる傾向 ・データセット規模に依存するかどうかは未検証 ・数十オーダーでデータ規模を増やしても学習時間に変化なし ◆トライアル推論(バッチ推論)の検証 ・マネコンで推論結果を検証可能 ・検証済みのサンプルが自動でデータセットに組み込まれるため注意が必要 ・検証済みデータは推論結果も上書きされる 17 その他補足情報
◆再現性について ・同じデータセットでもトレーニング結果は異なる ・正確な性能比較を実施するには試行が必要 ◆位置ずれへの頑健性 ・画像の異常検知モデルは一般的に位置ずれに弱い可能性 (PaDiMなども位置ずれに弱い) ・前処理やデータ取得時にある程度先読みして考慮が必要 18 その他補足情報
◆AWS CLIでの構築 ・AWS CLIのAPIはとてもシンプル ・Manifestファイル(JSON)等を手動で作成が必要 ◆Lookout for Vision専用のSDKについて ・「pip install
lookoutvision」でインストール可能 ・コードはAWS CLIで構築する際の参考の実装にすることも可能 19 その他補足情報
◆Amazon Lookout for Visionの新機能 ・2022-07-29頃のアップデートでセグメンテーションモデルに対応 ・セグメンテーションモデルの場合、異常の種類にも対応 ・マネコン上でも、上記のアノテーションが可能となっている ・新しいデータセットとして「toy aliens dataset」が公開されている
20 その他補足情報 【アップデート】 https://aws.amazon.com/jp/about-aws/whats-new/2 022/07/amazon-lookout-vision-anomaly-localization- cpu-inference-edge/ 【上記に関するAWSブログ】 https://aws.amazon.com/jp/blogs/machine-learning/i dentify-the-location-of-anomalies-using-amazon-loo kout-for-vision-at-the-edge-without-using-a-gpu/
21 ぜひお試しください! おしまい