- API ドキュメント
- CLI
- 連携ガイド
- ブログ
- 機械が単語を理解する方法:NLPに埋め込むためのガイド
- トランスフォーマーによるプロンプトベースの学習
- 効率的な変圧器II:知識蒸留と微調整
- 効率的な変圧器I:注意メカニズム
- 階層的な教師なしインテントモデリング:トレーニングデータなしで価値を得る
- Communications Mining による注釈バイアスの修正
- アクティブ ラーニング: より優れた ML モデルを短時間で実現
- それはすべて数字にあります-メトリックを使用してモデルのパフォーマンスを評価します
- モデルの検証が重要な理由
- 会話型データ インテリジェンスのための Communications Mining と Google AutoML の比較
モデルの検証が重要な理由
Communications Mining は、ユーザーが自身の通信チャネルに隠されたプロセスを検出、測定、自動化できる会話型データ インテリジェンス プラットフォームです。
一般的なチャネルには、電子メール、チケット、チャット、通話が含まれます。 これらのドメインでの会話は複雑で微妙です。 その結果、汎用機械学習モデルのパフォーマンスが低下します。 代わりに、Communications Mining を使用すると、誰でも少ない労力でカスタム モデルを作成できます。 技術的な知識は必要ありません。
これは非常に強力なアプローチです。 モデルは、人間と同じように、複雑なパターンを学習し、目に見えないデータに対して予測を行うことができます。 機械学習モデルは、一部の 自然言語タスクでも人間を上回っています。
しかし、人間のように、機械学習モデルも間違いを犯す可能性があります。 モデルが間違っている頻度を見積もることは、機械学習の実際のアプリケーションにとって非常に重要です。 同様に重要なのは、これを直感的に提示し、モデルを改善するための最良のアクションを強調することです。 Communications Mining では、モデルの検証を使用してこれらすべてのタスクを実行します。
モデルの構築中に、ユーザーは関心のあるトピックのラベルを作成し、適用するトピックで例にタグを付けます。その後、プラットフォームは機械学習モデルをトレーニングして、これらの例の正しいラベルを予測します。
このモデルを検証するために、その予測を人間の注釈と比較し、間違いを探します。 多くの例で予測を手作業で比較することは困難です。 代わりに、モデルがどの程度うまく機能しているかを要約した検証スコアを計算します。 トレーニング済みのモデルでこれを行うには、注釈とスコアの 2 つが必要です。
注釈
予測が正しいかどうかを確認するには、各例に適切な注釈を知る必要があります。 つまり、ユーザーが注釈を付けたデータポイントが必要です。
モデルのトレーニングには既に注釈を使用しており、検証中に再利用できます。 ただし、テストを受ける人間のように、機械学習モデルは、以前に「見た」例でより優れたパフォーマンスを発揮します。
トレーニングされたデータを使用してモデルをスコアリングすると、モデルの品質が過大評価される可能性があります。 これにより、モデルがどの程度うまく機能するかについて誤解を招く可能性があります (オーバーフィットと呼ばれます)。 このため、モデルのトレーニングと検証にはさまざまなデータ ポイントを使用します。
標準的なアプローチは、注釈のセットをランダムに2つの等しくない部分に分割することです
-
トレーニング セット。 モデルのトレーニングに使用する一連の例。 これは通常、より大きな割合、たとえば注釈付きデータ全体の80%です
-
テスト セット。 モデルのパフォーマンスを測定するために使用される例の残りの割合 (20%) 。
機械学習の資料では、データがトレーニング、検証、テストの 3 つのセクションに分割されているのを見たことがあるかもしれません。 検証セットはモデルのチューニングに使用され、テスト セットはパフォーマンスを測定するために最終モデルで一度評価されます。 Communications Mining では、列車セットに対して k 分割交差検証 を使用してモデルを調整し、"検証" スコアは最終モデルのテスト セットで計算されます。 これにより、ML に関する文献でのテスト パフォーマンスと同等になります。
テスト セットは同じソースから取得されるため、トレーニング セットと似ています。 テスト セットのパフォーマンスを確認するときは、新しいメールが表示されるモデルをシミュレートしますが、実際のラベルと比較してモデルの品質を把握できます。
スコア
モデルのパフォーマンスを数値として要約するには、スコアリング関数が必要です。 この関数は、モデルの予測と人間の注釈を比較し、数値を出力します。
スコアリング関数の選択は難しいプロセスです。 関数は、優れたモデルのアイデアと一致する必要があり、スコアを不正確にする可能性のある一般的な落とし穴を考慮する必要があります。
Communications Mining では、スコアリング関数に平均平均精度を使用しています。 これは、複数のラベルやユースケースにわたってモデルのパフォーマンスを測定する堅牢な方法です。 詳細を知りたい場合は、 指標に関するブログ投稿をお読みください。
これら 2 つのコンポーネントを使用すると、検証が簡単になります。 必要なのは、テスト セットのモデル予測を取得し、スコアを使用してモデルのパフォーマンスを測定することだけです。 Communications Mining で新しいモデルをトレーニングするたびに、検証プロセスが自動的にバックグラウンドで実行され、結果が [検証] ページに報告されます。
実際、新しいモデルをトレーニングするたびに、実際には舞台裏で 2 つのモデルをトレーニングしています
-
検証モデル。 これは、パフォーマンスを測定するためにトレーニング セットでトレーニングされ、テスト セットでテストされます。
-
生産モデル。 これは、注釈付きのすべての例 (トレーニング セットとテスト セット) でトレーニングされ、ライブ データの予測に使用されます。 このモデルは、より多くのデータでトレーニングされるため、検証モデルとは異なる場合がありますが、どちらのモデルも多くのトレーニング例を共有しているため、違いは小さくなります。 その結果、検証モデルのパフォーマンスは、運用モデルのパフォーマンスの適切な推定値になります。
既知の未知数
検証は、モデルのパフォーマンスを示しますが、モデルが苦労する可能性のある状況も強調表示します。 これらの状況は、さまざまな理由で表面化する可能性があります。ライブデータの傾向の変化から、ユーザーやチーム間で一貫性のない注釈付けまで。 モデルの検証は、問題が発生したときに把握し、迅速に修正できるように解釈可能であることが重要です。
検証を使用すると、モデルが不明なデータ ポイントを検査できます。 その後、この領域でモデルを改善したり、下流工程にロバスト性を組み込んだりすることができます。 これは、モデルが望むとおりに実行していることを確信でき、厄介な驚きがないことを意味します。
経験は必要ありません
モデルをトレーニングする場合、診断が困難な場合が多い危険があります。 ありがたいことに、私たちの検証プロセスは、優れたモデルを構築するためにデータサイエンティストである必要がないことを意味します。
モデルを検証するとき、単一のスコアを返すだけではありません。 代わりに、 モデル評価を計算します。 これには、モデルの検証スコアのほか、未レビューのデータのパターンや注釈付き例のスキューなどの他の要因が含まれます。
モデル評価は、パフォーマンスに関する詳細なフィードバックと、改善方法に関する明確な指示を提供します。 ユーザーは、開発チームやAIの専門家と協力することなく、ドメイン知識を活用して問題を解決することに集中できます。 Communications Mining は、モデル開発のすべてのステップを順を追って説明します。
より迅速なフィードバック、より良いモデル
ほとんどの機械学習モデルは更新頻度が低く、デプロイ前に一度検証されます。 コミュニケーションズマイニングでは、異なるアプローチを採用しています。
更新の間に長い時間待つ代わりに、新しいモデルを継続的にトレーニングして検証します。 つまり、モデルは常にデータの現在のステートに適用可能であり、検証結果は最新の状態です。
迅速なフィードバックにより、モデルの反復時間が最小限に抑えられます。 パフォーマンスの低下はできるだけ早く修正でき、ユーザーは古いフィードバックに対処するために時間を無駄にすることはありません。 Communications Miningのアジャイル検証プロセスにより、ユーザーは高品質のモデルを短時間で構築できます。