サービス指向AIモデルの開発EP.2 AIモデル開発のためのトレーニングデータセットの準備
2022/03/04
⏱ 15分
EP.2 入力
こんにちは。「サービス指向AIモデルの開発」 EP. 1では、AIモデル開発環境が異なる場合にどのような条件が変化するかを調べました。研究環境は、トレーニングデータセットやテストデータセットなどが与えられる制御された環境であるのに対し、現実の世界では、お客様のサービス要件のみが存在し、トレーニングデータセットやテストデータセットがない可能性があることがわかりました。これらの違いは、現実世界でのAIモデリングをより困難にする大きな要因です。
EP.2では、AIモデル開発に必要な💡「トレーニングデータセット」を準備する方法を紹介します。研究環境のように特定のトレーニングデータセットがない場合、データを取得するためにどのようなパスとヒントを使用できますか?その答えは 、お客様のサービス要件です。それでは、サービス要件がトレーニング データセットを構築するためのヒントとなる方法と、トレーニング データセットの構築方法を見てみましょう。
サービス要件から学習データセットを構築する
サービス指向 AI モデルを開発するための最初のステップは、「トレーニング データセットの準備」です。
より正確には、トレーニングデータセットの種類、量、✔️✔️および正解✔️を定義することです。これら3つを定義するための手がかりが1つ与えられます。それがあなたのサービス要件です。
AI テクノロジ チームは、AI モデルが導入されるサービスをサービス要件から理解する必要があります。AI テクノロジ チームは、クライアントの要件と制約を考慮に入れ、サービス計画チームと AI モデルの要件を絞り込みます。その要件の最初の要素で、絞り込む必要があるのは「トレーニング データセット」です。トレーニング データセットには、デプロイのいくつかのステージが含まれますが、これについては今後 1 つずつ説明します。それでは、まず、トレーニングデータセットの種類と✔️量✔️を定義する方法を見てみましょう。
トレーニングデータセットの種類と量
1. トレーニングデータセットの種類を絞り込む
クライアントの要件が「写真を撮って数式を認識する技術を開発すること」だとしましょう。サービス計画チームは、これらの要件を AI テクノロジ チームに伝達します。次に、2 つのチームがサービス要件からどのトレーニング データセットを収集するかについて話し合います。このプロセスをより理解しやすくするために、以下のクエリの例を見てみましょう。
サービス企画チームとAI技術チーム間のコミュニケーションを通じて特定される要件は、以下のとおりです。
「初級・中古の数学レベルの数式を手書きしたり、紙に印刷したりする場合、AIが生徒に代わって数式の値をコンピューターに入力するサービスを開発する必要があります。
2. トレーニングデータセットの種類と量を絞り込む
以上の問い合わせプロセスを通じて、「学生ではなくAIで数式を入力できるサービスを開発する」という具体的な目標を設定しました。
この目標を達成するために、AIテクノロジーチームは収集する必要があるデータ✔️の種類と✔️量を決定する必要がありますよね?AI テクノロジ チームは、下の図 3 に示す第 1 のガイドラインに基づいて適切なデータを収集する必要があります。
✔️ タイプ : レベル (初級) X ソース (印刷、手書き)
✔️ 数量: 各n枚
📍 ガイドラインを設定する際には、どのような状況を考慮する必要がありますか?
👉 データの「種類」を明確に定義する必要があります。上記のガイドラインの例のように、レベル、ソースなどのタイプを分割する方法を検討してください。その後、データセットごとに収集する必要があるデータの「量」は、モデルのサイズ、予算、作業期間を総合的に考慮して決定する必要があります。さらに、AI式検出モデルを作成するという前提で、さまざまな「タイプ」を考慮に入れることができます。ノイズのないクリーンな画像、影、数式の回転、および数式が切り捨てられた場合を想定すると、実際のサービスに適用したときにより良い結果が得られます。この種の分類に基づいて、数量を決定することもできます。
📍データ収集プロセスに変数はありますか?
👉 データ収集プロセス中に、既存のガイドラインを設定すると、予期しない変数が頻繁に発生します。たとえば、1 つの画像に複数の数式があるとします。この場合、AI 技術チームとサービス計画チームが一緒に話し合い、データセットを収集するための基準を修正する必要があります。
これは、画像取得の効率とシナリオの点で、1 つの画像から複数の数式を抽出できるようにする方が、画像に 1 つの数式のみを許可するよりも効率的であるためです。もちろん、画像内の複数の数式を同時に捉えるには、「数式領域」を検出する技術モデルをさらに開発する必要があります。したがって、サービスエクスペリエンスの観点、データ作成における総リソース、追加の技術モジュールの開発など、さまざまな要因を考慮したデータ収集範囲を確立することが不可欠です。
トレーニングデータセットで正しい答えとスキルのトリックを設計する
1. 技術モジュールの設計
トレーニング データセットの種類と数量を決定したら、それを✔️テクニカル モジュールの設計 フェーズに導入します。テクニカル モジュールの設計は、モジュールごとに必要なトレーニング データセットに対する正しい答えを正確に定義するための✔️有用で重要な手がかりです。
数式認識の例に戻りましょう。1 つの数式を扱うシナリオでは、1 つの数式に対応する画像のみが説明モジュールに入力されます。別の数式領域を検出することなく、数式画像の内容を正解(ラテックス文字列)として出力できます。そうすれば、[図5]のような入出力の形で技術的な墓地を設計することができます。
では、複数の数式を扱うシナリオの場合はどうでしょうか。画像全体のさまざまな式領域の位置がすべて「数式領域検出」であるさらなる技術モジュールを開発する必要があります。
2. トレーニングデータセットの正解
トレーニング データセットでは、正しい答えは各スキル シードリングの出力です✔️。図 5 の "数式領域の検出" 手法では、トレーニング データセットの "正解" は数式領域の位置です。数式領域の値は、「数式領域」の定義方法によって異なります。たとえば、数式を長方形で表示する場合、数式領域の位置を左上と右下の 2 つのポイントで表示できます。これがフォーミュラエリア検出技術モジュールの「正解」です。
(1)図6の矩形:2点参照。
別の例として、エリア情報をポイントではなくピクセルで表現することもできます。数式領域に対応する部分を値1で表示し、値0に対応しない部分を表示してみましょう。この時点で、式領域検出モジュールは何らかのセグメンテーションタスクを実行し、画像セグメンテーションの結果が「正解」になります。
図 6 の (4) ピクセルごとの領域を参照してください。
また、(1)(2)(3)(4).そして、あなたはそれを定義する無数の異なる方法を見つけることができます。この「正解」の定義は、各AIモデルに対して最良の結果を得るための最良の方法を考慮して決定する必要があります。
3. AIモデル構造の設計に対するトレーニングデータセットの構築の関連性
長い道のりを歩んできたトレーニングデータセットを構築するプロセスは、「 AIモデル構造の設計領域」になりがちです。この理由は、AI モデルの設計を検証するには、一定レベルのトレーニング データセットが必要であるためです。データをトレーニングしたモデルを検証して、モデル設計が顧客のサービス要件と制限を満たすように設計されているかどうかを確認する必要があります。
そのため、現在のビジネスでは「トレーニングデータセットの収集」や「AIモデルの設計」と組み合わされています。トレーニングデータセットやモデル設計から独立しているのではなく、関連部門(サービス計画チーム、モデラー、トレーニングデータオフィサーなど)間のディスカッションとコラボレーションを通じて行われます。
トレーニングデータセットの作成
サービス プランナーと AI モデル開発者は、どのトレーニング データセット✔️が種類、数量、✔️✔️および正解であるかを判断しました。その後、トレーニング データセット作成者は、ディスカッションに基づいてトレーニングデータの生成の準備を本格的に開始します。誰がトレーニングデータを作成するのか疑問に思いますか?場合によっては、データはそれ自身の人々によって直接生成されます。しかし、最近では、大多数の企業がこのプロセスを下請け業者に委ねています。
トレーニングデータセットの種類、量、および正解に関する情報を含む注釈ガイドライン を準備する必要があります。下請け業者がガイドラインに基づいてデータ制作に組み込めるように、具体的かつ明確なガイドラインを提示する必要があります。
下請け業者を決定するときは、データを一緒に作成するために必要な時間と単価の長さを考慮してください。これらのことは、トレーニング データセットで正解が定義されている種類、量、および程度に影響します。たとえば、数式領域を四角形にすると、2 つのポイントに対して正しい答えが得られる可能性がありますが、ランダムな正方形の場合は、4 つのポイントを操作する必要があります。これにより、必然的に生産期間と単価が増加します。
EP.2 外出
ここまでは、サービス指向の AI モデル開発用のトレーニング データセットを準備して構築するプロセスを見てきました。顧客のサービス要件から、トレーニング データセットの種類、数量、および正解をそれぞれ定義し、それに基づいてトレーニング データを構築しました。このエピソードが、AI モデルの開発プロセスをよりよく理解するのに役立つことを願っています。
次の EP.3 では、顧客のサービス要件から AI モデルをテストする方法、テスト データセットを定義する方法、AI モデルの要件を導き出す方法について説明します。どうもありがとうございます。