製造品の品質におけるコンピュータビジョンの欠陥検出を、Amazon SageMaker Canvasを使用したノーコード機械学習で民主化する
Democratizing defect detection in manufacturing product quality using no-code machine learning with Amazon SageMaker Canvas.
品質の低下にかかるコストは、製造業者にとって重要な課題です。品質の欠陥は廃棄物や再処理のコストを増加させ、スループットを減少させ、顧客や企業の評判に影響を与える可能性があります。生産ラインでの品質検査は品質基準を維持するために重要です。多くの場合、人間の視覚検査が品質を評価し、欠陥を検出するために使用されますが、これには人間の検査員の制約があり、ラインのスループットを制限する可能性があります。
機械学習(ML)と人工知能(AI)の登場により、コンピュータビジョン(CV)MLモデルを使用した追加の視覚検査機能が提供されるようになりました。CVベースのMLを人間の検査と組み合わせることで、検出エラーを減らし、生産を加速し、品質コストを削減し、顧客にポジティブな影響を与えることができます。CV MLモデルの構築には、通常、製造業組織では希少なリソースであるデータサイエンスとコーディングの専門知識が必要です。しかし、品質エンジニアや他の作業現場の人々は、ノーコードのMLサービスを使用してこれらのモデルを構築して評価することができるため、製造業のオペレーション全体でこれらのモデルの探索と採用を加速させることができます。
Amazon SageMaker Canvasは、品質、プロセス、および生産エンジニアが自分自身で正確なML予測を生成できるビジュアルインターフェースです。MLの経験を必要とせず、1行のコードも書く必要がありません。SageMaker Canvasを使用して、自分自身の画像データセットを使用して一つのラベルの画像分類モデルを作成し、製造業の欠陥を識別することができます。
この記事では、SageMaker Canvasを使用して、製造された磁気タイルの画像に基づいて欠陥を識別する一つのラベルの画像分類モデルを作成する方法について説明します。
- エンタープライズAIとは何ですか?
- DORSalとは 3Dシーンの生成とオブジェクトレベルの編集のための3D構造拡散モデル
- Hugging FaceとGradioを使用して、5分でAIチャットボットを構築する
ソリューションの概要
この記事では、品質エンジニアがCV ML検査を探求する視点を前提としており、品質チェックのための磁気タイルの画像を使用した欠陥の予測モデルの構築にサンプルデータを使用します。データセットには、ブローホール、破損、ひび割れ、ほつれ、表面のムラなどの欠陥がある磁気タイルの1,200以上の画像が含まれています。以下の画像は、左側にひび割れたタイル、右側に欠陥のないタイルの一つのラベルの欠陥分類の例を示しています。
実際の例では、製品ラインの完成品からこのような画像を収集することができます。この記事では、SageMaker Canvasを使用して、与えられた磁気タイルの画像に対して欠陥を予測し分類する一つのラベルの画像分類モデルを構築します。
SageMaker Canvasは、ローカルディスクファイルまたはAmazon Simple Storage Service(Amazon S3)から画像データをインポートすることができます。この記事では、S3バケットに欠陥タイプ(ブローホール、破損、ひび割れなど)ごとに作成された複数のフォルダがあり、磁気タイルの画像がそれぞれのフォルダにアップロードされています。フォルダの中にFree
という名前のフォルダがあり、欠陥のない画像が含まれています。
SageMaker Canvasを使用してMLモデルを構築するには、以下の4つのステップが必要です:
- 画像データセットをインポートする。
- モデルを構築してトレーニングする。
- 精度などのモデルのインサイトを分析する。
- 予測を行う。
事前準備
開始する前に、SageMaker Canvasの設定と起動が必要です。この設定はIT管理者によって実行され、以下の3つのステップが含まれます:
- Amazon SageMakerドメインのセットアップ。
- ユーザーのセットアップ。
- SageMaker Canvasの特定の機能を使用するための権限のセットアップ。
組織のためにSageMaker Canvasを構成するには、「Amazon SageMaker Canvasの使用の始め方」と「Amazon SageMaker Canvasのセットアップと管理」を参照してください。
SageMaker Canvasが設定されると、ユーザーはSageMakerコンソールに移動し、ナビゲーションペインでCanvasを選択し、Open Canvasを選択してSageMaker Canvasを起動することができます。
SageMakerキャンバスアプリケーションは新しいブラウザウィンドウで起動されます。
SageMakerキャンバスアプリケーションが起動した後、MLモデルの構築手順を開始します。
データセットのインポート
SageMakerキャンバスを使用してMLモデルを構築する際の最初のステップは、データセットのインポートです。
- SageMakerキャンバスアプリケーションで、ナビゲーションペインでデータセットを選択します。
- 作成メニューで画像を選択します。
- データセット名に、
Magnetic-Tiles-Dataset
などの名前を入力します。 - データセットを作成するために作成を選択します。
データセットが作成された後、データセットに画像をインポートする必要があります。
- インポートページで、Amazon S3(磁石タイルの画像はS3バケットにあります)を選択します。
ローカルコンピュータから画像をアップロードすることも選択できます。
- 磁石タイルの画像が保存されているS3バケット内のフォルダを選択し、データのインポートを選択します。
SageMakerキャンバスは画像をデータセットにインポートし始めます。インポートが完了すると、1,266枚の画像を含む画像データセットが作成されます。
詳細を確認するためにデータセットを選択できます。画像のプレビューや欠陥タイプのラベルなどの詳細を確認できます。画像はフォルダに整理され、各フォルダは欠陥タイプで名前が付けられていたため、SageMakerキャンバスはフォルダの名前に基づいて画像のラベリングを自動的に完了しました。代わりに、ラベルが付いていない画像をインポートし、後で個々の画像のラベリングを行うこともできます。また、既存のラベル付き画像のラベルを変更することもできます。
画像のインポートが完了し、SageMakerキャンバスに画像データセットが作成されました。次のステップに進んで、磁石タイルの欠陥を予測するためのMLモデルを構築することができます。
モデルの構築とトレーニング
インポートしたデータセットを使用してモデルをトレーニングします。
- データセット(
Magnetic-tiles-Dataset
)を選択し、モデルの作成を選択します。 - モデル名に、
Magnetic-Tiles-Defect-Model
などの名前を入力します。 - 問題の種類として画像解析を選択し、作成を選択してモデルの構築を設定します。
モデルの構築タブでは、データセットに関するさまざまな詳細情報(ラベルの分布、ラベル付きと未ラベルの画像の数など)およびモデルのタイプ(この場合はシングルラベルの画像予測)を確認することができます。未ラベルの画像をインポートしたり、特定の画像のラベルを修正したりする場合は、データセットの編集を選択してラベルを修正することができます。
モデルは2つの方法で構築することができます:クイック構築と標準構築です。クイック構築オプションは速度を優先し、モデルのトレーニングに15〜30分かかります。モデルは予測に使用できますが、共有することはできません。与えられたデータセットでモデルのトレーニングの実行可能性と正確性を素早くチェックするための良いオプションです。標準構築は速度よりも正確性を重視し、モデルのトレーニングに2〜4時間かかる場合があります。
この投稿では、標準構築オプションを使用してモデルをトレーニングします。
- 構築タブで標準構築を選択してモデルのトレーニングを開始します。
モデルのトレーニングは即座に開始されます。予想される構築時間とトレーニングの進行状況を解析タブで確認することができます。
モデルのトレーニングが完了するまで待ち、その後、正確性のためにモデルのパフォーマンスを分析することができます。
モデルの分析
この場合、モデルのトレーニングは1時間未満で完了しました。モデルのトレーニングが完了したら、解析タブでモデルの正確性をチェックして、欠陥を正確に予測できるかどうかを判断することができます。この場合、全体的なモデルの正確性は97.7%です。また、各個別のラベルまたは欠陥タイプのモデルの正確性もチェックできます。例えば、FrayとUnevenの場合は100%ですが、Blowhole
の場合は約95%です。このレベルの正確性は励みになりますので、評価を続けることができます。
モデルをより理解し信頼するために、ヒートマップを有効にして、モデルがラベルを区別するために使用する画像の興味深い領域を確認することができます。これはクラス活性化マップ(CAM)技術に基づいています。不正確に予測された画像からパターンを特定するためにヒートマップを使用することで、モデルの品質を向上させるのに役立つことがあります。
スコアリングタブでは、モデルの各ラベル(またはクラスまたは欠陥タイプ)に対する精度と再現率を確認することができます。精度と再現率は、バイナリおよびマルチクラス分類モデルのパフォーマンスを測るための評価指標です。精度は特定のクラス(この例では欠陥タイプ)を予測するモデルの優れた性能を示し、再現率は特定のクラスを検出できた回数を示します。
モデルの分析を行うことで、予測に使用する前にモデルの精度を理解することができます。
予測を行う
モデルの分析が終わったら、このモデルを使用して磁気タイルの欠陥を特定するために予測を行うことができます。
予測 タブでは、単一の予測 と バッチ予測 のいずれかを選択することができます。単一の予測では、ローカルのコンピュータまたはS3バケットから単一の画像をインポートして欠陥に関する予測を行います。バッチ予測では、SageMaker Canvasデータセットに保存されている複数の画像に対して予測を行うことができます。バッチ予測用にSageMaker Canvasでテストまたは推論用の画像を含む別のデータセットを作成することができます。この投稿では、単一の予測とバッチ予測の両方を使用します。
単一の予測では、予測 タブで 単一の予測 を選択し、画像をインポート を選択してテストまたは推論用の画像をローカルのコンピュータからアップロードします。
画像がインポートされると、モデルは欠陥に関する予測を行います。最初の推論では、モデルの読み込みに数分かかる場合があります。しかし、モデルが読み込まれると、画像に対して瞬時に予測を行います。各ラベルタイプごとに予測の画像と信頼度レベルが表示されます。例えば、この場合、磁気タイルの画像は表面のムラ(ラベル Uneven
)があり、モデルはそれに対して94%の確信度を持って予測しています。
同様に、他の画像または画像のデータセットを使用して欠陥に関する予測を行うこともできます。
バッチ予測では、Magnetic-Tiles-Test-Dataset
と呼ばれるラベルのない画像のデータセットを使用し、ローカルのコンピュータから12枚のテスト画像をデータセットにアップロードします。
予測 タブで バッチ予測 を選択し、データセットを選択 を選択します。
Magnetic-Tiles-Test-Dataset
データセットを選択し、予測を生成 を選択します。
全ての画像に対して予測を生成するのに少し時間がかかります。ステータスが Ready になったら、データセットのリンクを選択して予測を確認できます。
信頼度レベル付きで全ての画像に対する予測を確認できます。個々の画像の予測詳細を確認するために、任意の画像を選択することができます。
予測結果をCSV形式または.zipファイル形式でダウンロードしてオフラインで作業することができます。予測されたラベルを確認し、トレーニングデータセットに追加することもできます。予測されたラベルを確認するには、「予測を確認」を選択します。
予測データセットでは、個々の画像のラベルを更新することができます。予測されたラベルが正しくない場合は、必要に応じてラベルを更新し、「トレーニングデータセットに追加」を選択して画像をトレーニングデータセットに統合します(この例では、Magnetic-Tiles-Dataset
)。
これにより、既存のトレーニング画像と予測ラベルを持つ新しい画像が含まれるトレーニングデータセットが更新されます。更新されたデータセットで新しいモデルバージョンをトレーニングし、モデルのパフォーマンスを改善することができます。新しいモデルバージョンは、インクリメンタルトレーニングではなく、更新されたデータセットからの新しいトレーニングです。これにより、モデルは新しいデータソースでリフレッシュされます。
クリーンアップ
SageMaker Canvasで作業を完了した後は、「ログアウト」を選択してセッションを閉じ、追加のコストを回避してください。
ログアウトすると、データセットやモデルなどの作業内容は保存され、後でSageMaker Canvasセッションを再起動して作業を続けることができます。
SageMaker Canvasは、予測を生成するための非同期のSageMakerエンドポイントを作成します。SageMaker Canvasによって作成されたエンドポイント、エンドポイント構成、およびモデルを削除するには、「エンドポイントおよびリソースの削除」を参照してください。
結論
この記事では、SageMaker Canvasを使用して、製造品の欠陥を予測するための画像分類モデルを構築する方法について学びました。ビジュアル検査の品質プロセスを補完し改善するためのものです。製造環境からの異なる画像データセットを使用して、予測保全、パッケージ検査、労働者の安全、商品追跡などのユースケースに対応するモデルを構築することができます。SageMaker Canvasを使用すると、コードを書かずにMLを使用して予測を生成することができるため、CV MLの機能の評価と採用を加速することができます。
SageMaker Canvasの使用方法や詳細については、次のリソースを参照してください:
- Amazon SageMaker Canvas 開発者ガイド
- Amazon SageMaker Canvas の発表 – ビジネスアナリスト向けのビジュアルでコードを書かない機械学習機能
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- LOMO(LOw-Memory Optimization)をご紹介します:メモリ使用量を削減するために、勾配計算とパラメータの更新を1つのステップで融合する新しいAIオプティマイザです
- デバイス上での条件付きテキストから画像生成のための拡散プラグイン
- 複雑なタスクの実行におけるロボットの強化:Meta AIが人間の行動のインターネット動画を使用して視覚的な手がかりモデルを開発する
- Google DeepMindは、ChatGPTを超えるアルゴリズムの開発に取り組んでいます
- QLoRAを使用して、Amazon SageMaker StudioノートブックでFalcon-40Bと他のLLMsをインタラクティブにチューニングしてください
- 安定した拡散:生成AIの基本的な直感
- 言語モデルの構築:ステップバイステップのBERTの実装ガイド