複雑なテキスト分類のユースケースにおいて、Hugging Faceを活用する
In complex text classification use cases, utilize Hugging Face.
Hugging Faceエキスパートアクセラレーションプログラムとのウィティワークスの成功物語
MLソリューションの迅速な構築に興味がある場合は、エキスパートアクセラレーションプログラムのランディングページをご覧いただき、こちらからお問い合わせください!
ビジネスコンテキスト
ITが進化し、世界を変え続ける中、業界内でより多様で包括的な環境を作り上げることが重要です。ウィティワークスは、この課題に取り組むために2018年に設立されました。最初は多様性を高めるための組織へのコンサルティング企業としてスタートし、ウィティワークスはまず、包括的な言語を使用した求人広告の作成において彼らを支援しました。この取り組みを拡大するため、2019年には英語、フランス語、ドイツ語で包括的な求人広告の作成を支援するWebアプリを開発しました。そして、その後、ブラウザ拡張機能として機能するライティングアシスタントを追加し、メール、LinkedInの投稿、求人広告などで潜在的なバイアスを自動的に修正し、説明するようにしました。目的は、ハイライトされた単語やフレーズの潜在的なバイアスを説明するマイクロラーニングの手法を提供することで、内部および外部のコミュニケーションにおける文化的変革を促進することでした。
ライティングアシスタントによる提案の例
最初の実験
ウィティワークスは最初に、アシスタントをゼロから構築するために基本的な機械学習アプローチを選びました。事前学習済みのspaCyモデルを使用した転移学習を行い、アシスタントは次のことができました:
- Diffusersライブラリの開発に関する倫理ガイドライン
- 制御ネット(ControlNet)は、🧨ディフューザー内での使用です
- StackLLaMA:RLHFを使用してLLaMAをトレーニングするための実践ガイド
- テキストを分析し、単語をレンマに変換する
- 言語分析を実行する
- テキストから言語的な特徴を抽出する(複数形と単数形、性別)、品詞タグ(代名詞、動詞、名詞、形容詞など)、単語の依存関係ラベル、名前付きエンティティの認識など
言語的な特徴に基づいて単語を検出・フィルタリングし、アシスタントは非包括的な単語をリアルタイムでハイライトし、代替案を提案することができました。
課題
語彙には約2300の非包括的な単語やイディオムがあり、それに対して基本的なアプローチは語彙の85%に対してうまく機能しましたが、文脈に依存する単語には失敗しました。そのため、課題は文脈に依存した非包括的な単語の分類器を構築することでした。このような課題(言語的な特徴を認識するのではなく、文脈を理解すること)は、Hugging Face transformersの使用につながりました。
文脈に依存した非包括的な単語の例:
化石燃料は再生可能な資源ではありません。Vs 彼は古い化石です。
柔軟なスケジュールを持っています。Vs スケジュールを柔軟に保つ必要があります。
Hugging Faceエキスパートが提供するソリューション
-
適切なMLアプローチを決定するためのガイダンスを受ける。
最初に選択したアプローチはバニラトランスフォーマー(特定の非包括的な単語のトークン埋め込みを抽出するために使用)でした。Hugging Faceエキスパートは、文脈化された単語埋め込みから文脈化された文埋め込みに切り替えることを提案しました。このアプローチでは、文中の各単語の表現はその周囲の文脈に依存します。
Hugging Faceエキスパートは、Sentence Transformersアーキテクチャの使用を提案しました。このアーキテクチャは文全体に対して埋め込みを生成します。意味的に類似した文の間の距離は最小化され、遠い文の間では最大化されます。
このアプローチでは、Sentence TransformersはSiameseネットワークとトリプレットネットワーク構造を使用して、事前学習済みのトランスフォーマーモデルを変更し、「意味のある」文の埋め込みを生成します。
生成された文の埋め込みは、KNNやロジスティック回帰に基づく古典的な分類器の入力として使用され、文脈に依存した非包括的な単語の分類器を構築します。
ウィティワークスのリードデータサイエンティスト、エレナ・ナザレンコ:
「私たちは文に依存したembeddingベクトルを生成します(BERT embedding)。その後、"問題"の単語のトークンに対するembeddingのみを保持し、最小の角度(コサイン類似度)を計算します」
単純なBERTモデルなどのバニラトランスフォーマーベースの分類器を微調整するためには、ウィティワークスは大量の注釈付きデータが必要でした。フラグ付けされた単語の各カテゴリに数百のサンプルが必要でした。ただし、このような注釈付けプロセスは高コストで時間がかかり、ウィティワークスには手が出せませんでした。
-
適切なMLライブラリを選択するためのガイダンスを受ける。
Hugging Faceエキスパートは、Sentence Transformers Fine-tuning library(SetFit)の使用を提案しました。SetFitは、コントラスティブラーニングと意味的な文の類似性を組み合わせた、少量のラベル付きデータで高精度なテキスト分類タスクを実現する効率的なフレームワークです。
Julien Simon, Hugging Faceのチーフエバンジェリスト:
「テキスト分類タスクにおけるSetFitは、MLツールボックスに追加する素晴らしいツールです」
Witty Worksチームは、特定の単語ごとに15〜20のラベル付き文だけでも十分なパフォーマンスを得ることができたと判断しました。
Elena Nazarenko, Witty Worksのリードデータサイエンティスト:
「結局のところ、大規模なデータセットを作成しないことで、時間とお金を節約しました」
文の数を減らすことは、モデルのトレーニング時間を高速に保ち、モデルの実行が効率的であることを確保するために不可欠でした。ただし、別の理由でも必要でした。Wittyは、バイアスを積極的に管理するために、高度に監視された/ルールベースのアプローチを取ることを明示的に行っています。文の数を減らすことは、トレーニング文の手動レビューの手間を削減するために非常に重要です。
適切なMLモデルの選択に関するガイダンスを入手してください。
Witty Worksにとっての主要な課題の1つは、低遅延でモデルを展開することでした。自分のテキストを改善するための提案を得るために3分待つことは誰も期待していません! Hugging FaceとWitty Worksの両社は、いくつかのセンテンストランスフォーマーモデルを試し、mpnet-base-v2をロジスティック回帰とKNNと組み合わせることに決めました。
Google Colabでの最初のテストの後、Hugging Faceの専門家がWitty WorksにAzureでモデルを展開する方法を案内しました。モデルは十分に高速であったため、最適化は必要ありませんでした。
Elena Nazarenko, Witty Worksのリードデータサイエンティスト:
「Hugging Faceと一緒に作業することで、多くの時間とお金を節約しました。
複雑なテキスト分類のユースケースを実装する際には、迷うことがあります。
最も人気のあるタスクの1つであるため、Hubには多くのモデルがあります。
Hugging Faceの専門家は、トランスフォーマーベースの大量のモデルの中から最適なアプローチを選ぶ際に私を案内してくれました。
さらに、モデルの展開中に非常に良いサポートを受けたと感じました」
結果と結論
単語ごとのトレーニング文の数は100〜200から15〜20に減少しました。Witty Worksは0.92の精度を達成し、最小限のDevOpsの取り組みでAzureにカスタムモデルを展開しました!
Witty WorksのCTO兼共同設立者であるLukas Kahwe Smith:
「一人でITプロジェクトに取り組むことは挑戦的であり、
スタートアップにとってEAPは大きな投資ですが、
相棒を見つけるためのより安く、意味のある方法です」
Hugging Faceの専門家の指導のもと、Witty WorksはHugging Faceの方法で新しいMLワークフローを実装することで、時間とお金を節約しました。
Julien Simon, Hugging Faceのチーフエバンジェリスト:
「ワークフローを構築するHugging Faceの方法:
オープンソースの事前トレーニング済みモデルを見つける
すぐに評価する
うまくいくもの、うまくいかないものを見る
反復を通じて、すぐに学ぶことができます」
🤗 Hugging Faceの専門家と一緒にMLのロードマップを加速させる興味がある場合は、hf.co/supportを訪れて詳細をご覧ください。
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