問題を理解する

この問題を把握するには、次の操作を行います。

  • 開発またはリファクタリングするプロダクトの目標を明記します。
  • 予測 ML、ジェネレーティブ AI、ML 以外のソリューションを使用して目標が最適に解決されるかどうかを判断します。
  • 予測 ML アプローチを使用している場合は、モデルのトレーニングに必要なデータがあることを確認します。

目標を明示する

ML 以外の言葉で目標を述べることから始めます。目標は、「何を成し遂げようとしているのか」という問いに対する答えです。

次の表に、架空のアプリの目標を明示します。

アプリケーション 目標
天気アプリ 特定の地域における降水量を 6 時間単位で計算します。
ファッション アプリ さまざまなデザインのシャツを生成する。
動画アプリ 役に立つ動画をおすすめします。
メールアプリ スパムを検出する。
金融アプリ 複数のニュース提供元の財務情報を要約します。
地図アプリ 移動時間を計算する。
バンキング アプリ 不正な取引を特定する。
食事アプリ レストランのメニューで料理を識別する。
e コマースアプリ クチコミに返信して有益な回答をしましょう。

ML の明確なユースケース

ML をすべての問題に適用できる普遍的なツールと考える人もいます。実際には、ML は特定の問題にのみ適した専用ツールです。ML 以外のよりシンプルなソリューションで機能するのであれば、複雑な ML ソリューションを実装する必要はないでしょう。

ML システムは、予測 MLジェネレーティブ AI の 2 つの大きなカテゴリに分類できます。次の表に、定義する特性を示します。

入力 出力 トレーニング手法
予測 ML テキスト
画像
音声
動画
数値
予測を行います(メールを迷惑メールまたは迷惑メールではないものとして分類する、明日の降水量を推測する、株価を予測するなど)。通常、出力は現実に照らして検証できます。 通常、大量のデータを使用して、教師あり学習、教師なし学習、強化学習のモデルをトレーニングし、特定のタスクを実行するようにします。
生成 AI テキスト
画像
音声
動画
数値
ユーザーの意図に基づいて出力を生成します(記事の要約、音声クリップや短い動画の作成など)。 通常、大量のデータを使用して大規模言語モデルや画像生成ツールに学習させ、欠損データを埋めます。このモデルは、穴埋めタスクとしてフレーム化できるタスクに使用できます。また、分類などの特定のタスク用にラベル付けされたデータでトレーニングして微調整することもできます。

ML が正しいアプローチであることを確認するには、まず、現在の ML 以外のソリューションが最適化されていることを確認します。ML 以外のソリューションを実装していない場合は、ヒューリスティックを使用して手動で問題の解決を試みてください。

非 ML ソリューションは、問題に適したユースケースが ML かどうか判断するためのベンチマークです。ML 以外のアプローチと ML 以外のアプローチを比較する場合は、次の点を考慮してください。

  • 画質。ML ソリューションはどの程度向上すると思いますか?ML ソリューションが小さな改善にすぎないと考える場合は、現在のソリューションが最適なソリューションであることを示している可能性があります。

  • 費用と維持。ML ソリューションにかかる費用は、短期と長期の両方でどれくらいですか。場合によっては、ML の実装にコンピューティング リソースと時間の面で非常に多くの費用がかかることもあります。次のことを検討してください。

    • ML ソリューションは費用の増加を正当化できるか。大規模なシステムの小さな改善でも、ML ソリューションの実装の費用とメンテナンスの正当性を簡単に説明できます。
    • ソリューションのメンテナンスはどの程度必要ですか。多くの場合、ML の実装には専用の長期メンテナンスが必要です。
    • ML の専門知識を持つ人材のトレーニングや採用をサポートするリソースがプロダクトにあるか。

理解度チェック

ML ソリューションを分析する前に、ML 以外のソリューションまたはヒューリスティックを導入することが重要なのはなぜですか?
ML 以外のソリューションは、ML ソリューションを測定するためのベンチマークです。
ML 以外のソリューションは、ML ソリューションの料金を判断するのに役立ちます。

予測 ML とデータ

データは予測 ML の原動力適切な予測を行うには、予測能力のある特徴を含むデータが必要です。データには次の特性が必要です。

  • 豊富データセット内の例が有用で関連性が高いほど、モデルは優れたものになります。

  • 一貫性と信頼性。一貫して確実に収集されるデータがあると、より優れたモデルが生成されます。たとえば、ML ベースの気象モデルでは、同じ信頼性の高い機器から長年にわたって収集されたデータが有益です。

  • 信頼できる。データの収集元を把握します。データは、自社のプロダクトのログなど、お客様が管理している信頼できるソースからのものか、別の ML システムからの出力など、あまり詳しくないソースからのものか。

  • 対応可能。予測時にすべての入力が正しい形式で使用可能であることを確認してください。予測時に特定の特徴値を取得するのが難しい場合は、データセットからそれらの特徴を除外します。

  • 正解です。大規模なデータセットでは、一部のラベルに誤った値が含まれることは避けられません。ただし、少数のラベルが正しくない場合、モデルの予測の精度が低下します。

  • 代表。データセットは、可能な限り実際の世界を反映したものである必要があります。つまり、データセットは、モデル化されるイベント、ユーザー行動、現実世界の現象を正確に反映している必要があります。実例のないデータセットでトレーニングを行うと、モデルが実際の予測を行うように求められた場合に、パフォーマンスが低下する可能性があります。

必要なデータを必要な形式で取得できない場合、モデルの予測の精度が低下します。

予測力

モデルで適切な予測を行うには、データセット内の特徴に予測力が必要です。特徴とラベルの相関関係が強いほど、それが予測される可能性が高くなります。

一部の機能は他の機能よりも予測力が高くなります。たとえば、気象データセットでは、cloud_coveragetemperaturedew_point などの特徴は、moon_phaseday_of_week よりも雨の予測子として優れています。動画アプリの例では、video_descriptionlengthviews などの機能が、ユーザーが視聴する動画を予測するうえで優れた要素になる可能性があると仮定できます。

コンテキストやドメインが変わることで、特徴の予測力も変わる場合があるので注意してください。たとえば動画アプリでは、upload_date のような機能は一般的にラベルと弱い相関関係があります。ただし、ゲーム動画のサブドメインでは、upload_date とラベルが強く関連している可能性があります。

どの特徴が予測力を持つかを判断するには、時間がかかる場合があります。モデルのトレーニング中に特徴の予測力を削除して追加することで、手動で特徴の予測力を調べることができます。ピアソン相関調整相互情報(AMI)シャープレイ値などのアルゴリズムを使用して、特徴の予測力を自動的に検出できます。これらのアルゴリズムでは、特徴の予測性能を分析する数値評価が提供されます。

理解度チェック

データセットを分析する際に確認すべき 3 つの主な属性は何ですか。
現実世界を代表するもの。
正しい値が含まれている。
特徴量にはラベルの予測力があります。
ローカルマシンに読み込むのに十分なサイズ。
予測不可能なさまざまなソースから収集される。

データセットの分析と準備の詳細については、機械学習のためのデータ準備と特徴量エンジニアリングをご覧ください。

予測とアクション

ユーザーの役に立つアクションに変えることができなければ、予測に意味はありません。つまり、プロダクトはモデルの出力に基づいてアクションを実行する必要があります。

たとえば、ユーザーが役に立つ動画を見つけるかどうかを予測するモデルは、有用な動画をおすすめするアプリにフィードする必要があります。雨が降るかどうかを天気アプリにフィードするモデルです。

理解度チェック

次のシナリオに基づいて、ML の使用が問題への最適なアプローチかどうかを判断してください。

大規模な組織のエンジニアリング チームは、着信した通話の管理を担当しています。

目標: 現在の通話音量から判断して保留待ちを待つ時間を発信者に通知する。

解決方法はありませんが、ヒューリスティックとして、現在の保留顧客数を電話応対中の従業員の数で割り、10 分を掛ける方法が考えられます。ただし、2 分で問題が解決するお客様もいれば、45 分以上かかるお客様もいます。

このヒューリスティックでは、十分な正確な数値が得られない可能性があります。次の列を含むデータセットを作成できます: number_of_callcenter_phonesuser_issuetime_to_resolvecall_timetime_on_hold

ML を使用する。エンジニアリング チームには明確に定義された目標があります。このヒューリスティックでは、ユースケースには不十分です。データセットにはラベル time_on_hold の予測特徴が含まれているようです。
ML を使用しない。明確な目標がありますが、最初に ML 以外のソリューションを実装し、最適化する必要があります。また、そのデータセットには、予測能力のある十分な特徴が含まれていないようです。