記事一覧に戻る

Hugging Face Expert Acceleration Programを活用したWitty Worksの成功事例

より迅速にMLソリューションを構築することに興味がある方は、Expert Acceleration Program のランディングページをご覧いただき、こちらからお問い合わせください!

ビジネス背景

ITが継続的に進化し、世界を変革していく中で、業界内でより多様で包括的な環境を構築することが不可欠です。Witty Worksは2018年にこの課題に取り組むために設立されました。当初は組織の多様化に関するコンサルティング会社としてスタートし、Witty Worksはまず包括的な表現を用いた求人広告の作成を支援しました。この取り組みを拡大するため、2019年に英語、フランス語、ドイツ語で包括的な求人広告を書くのを支援するWebアプリを構築しました。その後、ブラウザ拡張機能として動作し、メール、LinkedIn投稿、求人広告などの潜在的なバイアスを自動的に修正・説明するライティングアシスタントへと、迅速にスコープを拡大しました。目的は、ハイライトされた単語やフレーズの背景にあるバイアスを説明するマイクロラーニングを提供することで、文化変革を促進する内部・外部コミュニケーション向けのソリューションを提供することでした。

wittyworks.png
ライティングアシスタントによる提案の例

最初の試み

Witty Worksはまず、ゼロからアシスタントを構築するために基本的な機械学習アプローチを選択しました。事前学習済みのspaCyモデルを使った転移学習により、アシスタントは以下を実現できました:

  • テキストを分析し、単語を原形に変換する
  • 言語分析を実行する
  • テキストから言語的特徴(複数形・単数形、性別)、品詞タグ(代名詞、動詞、名詞、形容詞など)、単語の依存関係ラベル、固有表現抽出などを抽出する

言語的特徴を用いて特定の知識ベースに基づいて単語を検出・フィルタリングすることで、アシスタントは非包括的な単語をリアルタイムでハイライトし、代替案を提案できました。

課題

語彙にはドイツ語と英語でそれぞれ約2300の非包括的な単語とイディオムがありました。上記の基本的なアプローチは語彙の85%についてはうまく機能しましたが、文脈依存の単語では失敗しました。そこで、文脈依存の非包括的単語分類器を構築するという課題が生じました。この課題(言語的特徴の認識ではなく文脈の理解)が、Hugging Face transformersの使用につながりました。

Example of context dependent non-inclusive words: 
Fossil fuels are not renewable resources. Vs He is an old fossil
You will have a flexible schedule. Vs You should keep your schedule flexible.

Hugging Face Expertsが提供したソリューション

  • 適切なMLアプローチを決定するためのガイダンスを得る。

当初選択されたアプローチは、特定の非包括的単語のトークン埋め込みを抽出するために使用されるvanilla transformersでした。Hugging Face Expertは、文脈化された単語埋め込みから文脈化された文埋め込みへの切り替えを推奨しました。このアプローチでは、文中の各単語の表現はその周囲の文脈に依存します。

Hugging Face ExpertsはSentence Transformersアーキテクチャの使用を提案しました。このアーキテクチャは文全体の埋め込みを生成します。意味的に類似した文の距離は最小化され、離れた文の距離は最大化されます。

このアプローチでは、Sentence TransformersはSiameseネットワークとtripletネットワーク構造を使用して、事前学習済みのtransformerモデルを修正し、「意味的に意味のある」文埋め込みを生成します。

得られた文埋め込みは、KNNまたはロジスティック回帰に基づく古典的な分類器への入力として使用され、文脈依存の非包括的単語分類器を構築します。

Elena Nazarenko, Lead Data Scientist at Witty Works: 
“We generate contextualized embedding vectors for every word depending on its 
sentence (BERT embedding). Then, we keep only the embedding for the “problem” 
word’s token, and calculate the smallest angle (cosine similarity)”  

単純なBERTモデルなどのvanilla transformersベースの分類器をファインチューニングするには、Witty Worksは大量のアノテーション付きデータが必要でした。フラグ付き単語の各カテゴリに対して数百のサンプルが必要だったでしょう。しかし、そのようなアノテーションプロセスはコストと時間がかかり、Witty Worksには余裕がありませんでした。

  • 適切なMLライブラリを選択するためのガイダンスを得る。

Hugging Face Expertは、Sentence Transformersモデルのfew-shotファインチューニングのための効率的なフレームワークであるSentence Transformers Fine-tuningライブラリ(別名SetFit)の使用を提案しました。対照学習と意味的文類似性を組み合わせることで、SetFitは非常に少ないラベル付きデータでテキスト分類タスクにおいて高い精度を実現します。

Julien Simon, Chief Evangelist at Hugging Face: 
“SetFit for text classification tasks is a great tool to add to the ML toolbox” 

Witty Worksチームは、特定の単語あたり15〜20のラベル付き文だけで十分な性能が得られることを発見しました。

Elena Nazarenko, Lead Data Scientist at Witty Works: 
“At the end of the day, we saved time and money by not creating this large data set”

文の数を減らすことは、モデルのトレーニングを高速に保ち、モデルの実行を効率的にするために不可欠でした。しかし、もう一つの理由もありました。Wittyはバイアスを積極的に管理するために、非常に教師あり/ルールベースのアプローチを明示的に取っています。文の数を減らすことは、トレーニング文を手動でレビューする労力を減らすために非常に重要です。

  • 適切なMLモデルを選択するためのガイダンスを得る。

Witty Worksにとっての大きな課題の一つは、低レイテンシのモデルをデプロイすることでした。誰も自分のテキストを改善するための提案を得るために3分待つことを期待しません!Hugging FaceとWitty Worksの両方がいくつかのsentence transformersモデルを試し、mpnet-base-v2をロジスティック回帰およびKNNと組み合わせて採用することに決定しました。

Google Colabでの最初のテストの後、Hugging Face expertsはWitty WorksにAzureへのモデルデプロイを指導しました。モデルは十分に高速だったため、最適化は必要ありませんでした。

Elena Nazarenko, Lead Data Scientist at Witty Works: 
“Working with Hugging Face saved us a lot of time and money. 
One can feel lost when implementing complex text classification use cases. 
As it is one of the most popular tasks, there are a lot of models on the Hub. 
The Hugging Face experts guided me through the massive amount of transformer-based 
models to choose the best possible approach. 
Plus, I felt very well supported during the model deployment”

結果と結論

トレーニング文の数は、単語あたり100〜200文から15〜20文に減少しました。Witty Worksは0.92の精度を達成し、最小限のDevOps労力でAzureにカスタムモデルを正常にデプロイしました!

Lukas Kahwe Smith CTO & Co-founder of Witty Works: 
“Working on an IT project by oneself can be challenging and even if 
the EAP is a significant investment for a startup, it is the cheaper 
and most meaningful way to get a sparring partner“

Hugging Face expertsの指導により、Witty WorksはHugging Face方式で新しいMLワークフローを実装することで、時間とコストを節約しました。

Julien Simon, Chief Evangelist at Hugging Face: 
“The Hugging way to build workflows: 
find open-source pre-trained models, 
evaluate them right away, 
see what works, see what does not. 
By iterating, you start learning  things immediately” 

🤗 あなたまたはあなたのチームがHugging Face Expertsとの協力でMLロードマップを加速させることに興味がある場合は、hf.co/supportをご覧ください。