7つのステップで機械学習モデルを構築する方法

7つのステップで機械学習モデルを構築する方法

組織が業務を効率化し、ビジネスイニシアチブをサポートするために、実行可能で信頼性が高く、俊敏な機械学習モデルを構築するには、忍耐、準備、粘り強さが必要です。

[[353019]]

あらゆる種類の組織が、さまざまな業界の多数のアプリケーション向けに AI プロジェクトを実装しています。これらのアプリケーションには、予測分析、パターン認識システム、自律システム、会話システム、ハイパーパーソナライズされたキャンペーン、目標主導型システムが含まれます。これらのプロジェクトには共通点が 1 つあります。それは、すべてがビジネス上の問題を理解することに基づいており、問題を解決するにはデータと機械学習アルゴリズムを適用して、プロジェクトのニーズを満たす機械学習モデルを構築する必要があるということです。

機械学習プロジェクトの展開と管理は、一般的に同じパターンに従います。ただし、AI プロジェクトはプログラミング コードではなくデータによって駆動されるため、既存のアプリケーション開発方法は適用できません。学習はデータから行われるため、適切な機械学習アプローチはデータ中心のニーズから生まれ、データの検出、クリーニング、トレーニング、モデル構築、反復の各フェーズに重点を置いたプロジェクトを生み出します。

多くの組織にとって、機械学習モデルの開発は新しい活動ですが、プロジェクトを構築するためのデータ中心のアプローチはすでにある程度確立されています。

約 25 年前、5 つのベンダーのコンソーシアムが、データ マイニング プロジェクトにおけるさまざまなデータ集約型ステップに対する継続的な反復アプローチに重点を置いた、業界横断型データ マイニング標準プロセス (CRISP-DM) を開発しました。このアプローチは、ビジネスの理解とデータの理解の間の反復的なサイクルから始まります。次に、データ準備とデータ モデリングの間の反復サイクルの切り替えが行われ、その後に評価フェーズが続き、結果が展開とビジネス理解に細分化されます。この周期的な反復サイクルにより、継続的なデータ モデリング、準備、評価が実現します。

しかし、データマイニングのための業界標準プロセス (CRISP-DM) のさらなる開発は、ほぼ 20 年前に完全に作成されたバージョン 1.0 と、15 年前にリリースされた第 2 バージョンで行き詰まっているようです。 IBM と Microsoft は、このアプローチを更新および反復して、データ処理とモデリング間の反復サイクルに詳細を追加し、プロセス中に生成される成果物と成果物に関する詳細を提供する独自のバリエーションを作成しました。

さらに、このアプローチは俊敏性に欠け、AI や機械学習のプロジェクトには適していないという疑問も生じています。 AI の認知プロジェクト管理などの方法は、AI 固有の要件を満たすように強化する必要があり、既存のアジャイル開発チームとデータ組織を持つ組織に実装できます。

これらの方法論と大企業およびそのデータ サイエンス チームからの学習により、認知プロジェクトの特定のニーズに合わせて調整された機械学習モデル開発に対する、より強力で柔軟な段階的なアプローチが実現しました。

ステップ 1. ビジネス上の問題を理解して特定する (そして成功を定義する)

あらゆる機械学習プロジェクトの第一段階は、ビジネスニーズを理解することです。問題を解決する前に、組織は解決すべき問題を把握する必要があります。

まず、プロジェクト オーナーと協力して、組織がプロジェクトの目標と要件を理解していることを確認します。目標は、この知識を機械学習プロジェクトに適した定義に変換し、そのプロジェクトの目標を達成するための予備計画を策定することです。回答すべき重要な質問は次のとおりです。

  • 認知ソリューションを必要とするビジネス目標は何ですか?
  • ソリューションのどの部分が認知的であり、どの部分がそうではないのでしょうか?
  • 必要な技術、ビジネス、展開の問題はすべて解決されていますか?
  • プロジェクト定義における「成功」の基準は何ですか?
  • プロジェクトは反復スプリントでどのように進行しますか?
  • 透明性、説明可能性、または偏見の緩和に関して特別な要件はありますか?
  • 倫理的な考慮事項は何ですか?
  • 精度と混同行列の値に許容されるパラメータは何ですか?
  • モデルへの予想される入力と予想される出力は何ですか?
  • 解決すべき問題の特徴は何ですか? 分類、回帰、またはクラスタリングの問題ですか?
  • 「ヒューリスティック」とは何でしょうか。機械学習を必要としない問題を素早く解決する方法です。モデルはヒューリスティックよりもどの程度優れている必要がありますか。
  • モデルのメリットをどのように測定するのでしょうか?

この最初のステップでは答えるべき質問がたくさんありますが、それらの質問に答えたり、答えようと試みたりすることで、プロジェクト全体が成功する可能性が大幅に高まります。

具体的で定量化可能な目標を設定すると、単に概念実証として実装して後で放置するのではなく、機械学習プロジェクトから測定可能な ROI を達成するのに役立ちます。その目標は、機械学習だけでなく、組織のビジネス目標に関連している必要があります。精度、正確性、再現率、平均二乗誤差などの機械学習固有のメトリックをメトリックに含めることもできますが、より具体的なビジネス関連の主要業績評価指標 (KPI) の方が適しています。

ステップ2. データを理解して識別する

ビジネス要件をしっかりと理解し、計画が承認されたら、機械学習モデルの構築を開始できますよね? これは間違った考えです。ビジネスケースを構築するということは、組織が機械学習モデルを作成するために必要なデータを保有していることを意味するものではありません。

機械学習モデルは、トレーニング データから学習して一般化し、獲得した知識を新しい、これまでにないデータに適用して予測を行い、目的を達成することによって構築されます。データが不十分だと組織はモデルを構築できなくなりますが、単にデータにアクセスできるだけでは十分ではありません。データが有用であるためには、クリーンで良好な状態である必要があります。

組織のデータニーズを特定し、データが機械学習プロジェクトに適しているかどうかを判断します。組織は、データの識別、初期収集、要件、品質の識別、洞察、およびさらなる調査に値する潜在的な領域に重点を置く必要があります。検討すべき重要な質問をいくつか挙げます。

  • モデルをトレーニングするために必要なデータ ソースはどこにありますか?
  • 機械学習プロジェクトにはどれくらいのデータが必要ですか?
  • 現在のトレーニングデータの量はどれくらいですか? その品質はどのようなものですか?
  • テスト セット データとトレーニング セット データをどのように分割しますか?
  • 教師あり学習タスクの場合、このデータにラベルを付けることは可能ですか?
  • 事前トレーニング済みのモデルを使用できますか?
  • 運用データとトレーニングデータはどこにありますか?
  • エッジデバイス上やアクセスが困難な場所にあるリアルタイムデータにアクセスする特別なニーズはありますか?

これらの重要な質問に答えることで、組織はデータの量と質に対処し、モデルをうまく機能させるために必要なデータの種類を理解するのに役立ちます。

さらに、組織はモデルが実際のデータに対してどのように機能するかを理解する必要があります。たとえば、モデルはオフラインで使用して、非同期で入力および処理されるデータに対してバッチ モードで操作できますか。それとも、リアルタイムで使用して、高いパフォーマンス要件の下で実行し、すぐに結果を提供できるでしょうか。この情報によって、必要なデータの種類とデータ アクセス要件も決まります。

組織は、モデルを反復的にトレーニングし、バージョンを定期的に展開するか、リアルタイムで展開するかも決定します。リアルタイム トレーニングでは、データに対して多くの要求が課せられますが、設定によっては実現できない場合もあります。

AI プロジェクトのこの段階では、実世界のデータとトレーニング データ、テスト データとトレーニング データの間に違いがあるかどうか、また組織がモデルのパフォーマンスを検証および評価するためにどのような方法を採用するかを理解することも重要です。

ステップ3. データの収集と準備

データが適切に識別されたら、組織はそのデータをモデルのトレーニングに使用できるようにフォーマットする必要があります。モデリング操作用のデータ セットを構築するために必要なデータ中心のアクティビティに重点が置かれています。データ準備タスクには、データの収集、クレンジング、集約、拡充、ラベル付け、正規化、変換のほか、構造化データ、非構造化データ、半構造化データに対するその他のアクティビティが含まれます。

  • データの準備、収集、クリーニングのためのパッケージ
  • さまざまなソースからデータを収集します。
  • さまざまなデータ ソース間で形式を標準化します。
  • 誤ったデータを置き換えます。
  • データを拡張し、充実させます。
  • 事前に計算された数量を持つディメンションをさらに追加し、必要に応じて情報を要約します。
  • サードパーティのデータを使用してデータを強化します。
  • 画像ベースのデータセットがトレーニングに不十分な場合は、そのデータセットを「アップスケーリング」します。
  • 無関係な情報や重複データを削除します。
  • 結果を改善するために、トレーニングから無関係なデータを削除します。
  • ノイズを減らし、曖昧さを排除します。
  • データの匿名化を検討してください。
  • データを正規化して、フォーマットされた範囲内に収めます。
  • 大規模なデータセットからのサンプルデータ。
  • 最も重要な次元を識別する機能を選択し、必要に応じてさまざまな手法を使用して次元を削減します。
  • データをトレーニング セット、テスト セット、検証セットに分割します。

データの準備とクリーニングのタスクには多くの時間がかかります。機械学習開発者とデータ サイエンティストの調査によると、機械学習プロジェクトでは、データの収集と準備の手順に最大 80% の時間がかかる可能性があります。諺にもあるように、「ゴミを入れればゴミが出る」。機械学習モデルはデータから学習する必要があるため、準備とクリーンアップに費やす時間は価値があります。

ステップ4. モデルの特性を決定し、モデルをトレーニングする

データが利用可能になり、組織が解決すべき問題を把握したら、組織が次のステップに進む時です。つまり、さまざまなアプリケーション技術とアルゴリズムを通じて、準備された高品質のデータから学習するようにモデルをトレーニングすることです。

この段階では、モデル技術の選択と適用、モデルのトレーニング、モデルのハイパーパラメータの設定と調整、モデルの検証、統合モデルの開発とテスト、アルゴリズムの選択、およびモデルの最適化が必要です。これを行うには、次の手順を実行する必要があります。

  • 学習目標とデータ要件に基づいて適切なアルゴリズムを選択します。
  • 最高のパフォーマンスを得るためにハイパーパラメータを構成および調整し、最適なハイパーパラメータを取得するための反復的な方法を特定します。
  • 最良の結果をもたらす機能を特定します。
  • モデルの解釈可能性が必要かどうかを判断します。
  • パフォーマンスを向上させるためにアンサンブル モデルを開発します。
  • さまざまなモデルのパフォーマンスをテストします。
  • モデルを実行および展開するための要件を決定します。

結果として得られたモデルを評価して、ビジネス要件と運用要件を満たしているかどうかを判断できます。

ステップ5. モデルのパフォーマンスを評価し、ベースラインを確立する

AI の観点から見ると、評価にはモデル メトリックの評価、混同行列の計算、KPI、モデル パフォーマンス メトリック、モデル品質メトリック、およびモデルが確立されたビジネス目標を満たすことができるかどうかの最終的な判断が含まれます。モデル評価中は、次のアクションを実行する必要があります。

  • 検証方法と検証データセットを使用してモデルを評価します。
  • 分類問題の混同行列の値を決定します。
  • 使用される場合、k 分割クロス検証方法を決定します。
  • 最高のパフォーマンスを得るためにハイパーパラメータがさらに調整されます。
  • 機械学習モデルをベースライン モデルまたはヒューリスティック モデルと比較します。

モデル評価は機械学習の「品質保証」と考えることができます。メトリックと要件に対するモデルのパフォーマンスを適切に評価することで、モデルが現実世界でどのように機能するかを判断できます。

ステップ6. 実行中のモデルを試して調整する

組織が機械学習モデルが現実世界で機能すると確信したら、次はそれが現実世界で実際に機能することを確認する段階です。これは、モデルの「運用化」とも呼ばれます。

  • モデルをデプロイして、そのパフォーマンスを継続的に測定および監視します。
  • モデルの将来の反復を測定するためのベースラインを開発します。
  • モデルのさまざまな側面を繰り返して、全体的なパフォーマンスを向上させます。

モデルの運用化には、クラウド コンピューティング環境、エッジ、オンプレミス、またはクローズド環境やクローズド制御グループでの展開シナリオが含まれる場合があります。運用上の考慮事項には、モデルのバージョン管理と反復、モデルの展開、モデルの監視、開発環境と運用環境にわたるモデルのステージングが含まれます。要件に応じて、モデルの操作は単純なレポート生成からより複雑なマルチエンドポイント展開まで多岐にわたります。

ステップ7. モデルの実験と調整

モデルが運用され、組織がそのパフォーマンスを監視している場合でも、まだ終わりではありません。テクノロジーを実装する際、成功の秘訣は小さく始めて大きく考え、頻繁に繰り返すことだとよく言われます。

常にプロセスを繰り返し、次の反復に間に合うように改善を加えます。ビジネスニーズは常に変化しており、テクノロジーの機能も同様に変化しています。実際のデータは予期せぬ形で変化します。これらすべてにより、モデルを異なるエンドポイントまたは新しいシステムに展開するための新しい要件が生じる可能性があります。そして、終わりは新たな始まりに過ぎないかもしれないので、次のことを決定しておくのが最善です。

  • モデル機能の次の要件。
  • より大きな容量をカバーするためにモデルトレーニングを拡張する。
  • モデルのパフォーマンスと精度を向上します。
  • モデルのパフォーマンスを向上します。
  • さまざまな展開における運用要件。
  • 実際のデータの変化によってパフォーマンスの変化を引き起こす可能性がある「モデル ドリフト」または「データ ドリフト」に対するソリューション。

組織は、自社のモデルで何が機能し、何が進行中の作業であるかを検討する必要があります。機械学習モデルの構築を成功させる最も確実な方法は、組織の進化するビジネスニーズを満たすための改善とより良い方法を継続的に模索することです。

<<:  人工知能の発展は、人間社会が現実から仮想へと向かう傾向を反映している。

>>:  アルゴリズムエンジニアの日常生活において、トレーニングされたモデルが失敗した場合はどうすればよいでしょうか?

ブログ    
ブログ    

推薦する

将来人工知能に置き換えられる可能性が最も低い10の仕事

人工知能(AI)の急速な発展は人々の生活に便利さをもたらしたが、労働市場には大きな変化をもたらすだろ...

AWS が Amazon SageMaker の 9 つの新機能をリリース

12 月 9 日、Amazon Cloud Service (AWS) が開催する年次イベント AW...

...

このロボットはバッテリーなしで「自走」でき、バッテリー寿命は無制限です | ワシントン大学

電池なしで自動運転できる「車」が登場した。走行し続けるためのエネルギーを自動的に収集することもできる...

BLIP-2とInstructBLIPがトップ3にランクイン! 12の主要モデル、16のリスト、「マルチモーダル大規模言語モデル」の総合評価

マルチモーダル大規模言語モデル (MLLM) は、LLM の豊富な知識蓄積と強力な推論および一般化機...

Java プログラミング スキル - データ構造とアルゴリズム「再帰」

[[392763]]コンセプト簡単に言うと、再帰とは、毎回異なる変数を渡しながら、自身を呼び出すメ...

Alibaba iDSTのビジュアルコンピューティング責任者、Hua Xiansheng氏:アルゴリズムの利点は消えつつある

「テクノロジー研究と現実世界の問題を組み合わせ、現実の問題を解決して価値を生み出すことにますます興味...

TensorFlow から Theano まで: 7 つのディープラーニング フレームワークの水平比較

[[183874]]ディープラーニング プロジェクトを開始する前に、適切なフレームワークを選択するこ...

2022 年ソフトウェア エンジニア レポートが公開されました。最も高い年収はサイバーセキュリティ業界、機械学習はNLPに勝てない

2022 年に雇用主の間で最も人気のあるプログラミング言語はどれですか? 地域や職種によってソフトウ...

...

...

家のドアをロックするChuangmi Technologyは、スマートホームセキュリティブランドをリードするスマートドアロックC1を発売しました。

「そう遠くない将来、スマートホームシステムを備えていない家庭は、インターネットにアクセスできない今...

...