🚀 ドイツ語セマンティックV3
このモデルは、German_Semantic_STS_V2 の後継モデルで、多くのクールな新機能を備えています。V3は知識量が非常に多い一方で、German_Semantic_V3b はパフォーマンスに重点を置いています。モデルに関するフィードバックや、次に何を見たいかを自由に提供してください。
注意: このモデルを適切に実行するには、「使用方法」を参照してください。
このモデルを使用して、ドイツ語のセマンティック文埋め込みを作成します。
✨ 主な機能
主な更新と特長
- 柔軟性: 柔軟なシーケンス長と埋め込みトランケーションで学習されており、柔軟性がモデルの核心的な機能です。ただし、より小さい次元では品質が若干低下するトレードオフがあります。
- シーケンス長: 最大8192トークンを埋め込むことができます(V2や他のモデルの16倍)。
- マトリョーシカ埋め込み: モデルは1024から64までの埋め込みサイズで学習されており、品質の損失を最小限に抑えて、はるかに小さな埋め込みを保存することができます。
- ドイツ語専用: このモデルはドイツ語専用で、ドイツやドイツのトピックに関する豊富な文化的知識を持っています。これにより、トークナイザーのおかげでモデルがより効率的に学習し、より短いクエリをより適切に処理し、多くのシナリオでより微妙な表現が可能になります。
- 最新の知識と高品質のデータ: このモデルのバックボーンは、deepsetによるgbert-largeです。occiglotによる10億トークンのドイツ語のfinewebでのステージ2の事前学習により、最新の知識が保証されています。
- タイポと大文字小文字: このモデルは、軽微なタイポや大文字小文字に対してロバストに学習されており、ベンチマークのパフォーマンスや学習中の品質が若干低下しますが、埋め込みのロバスト性が向上します。
- プーリング関数: 平均プーリングからCLSトークンの使用に移行しています。一般的に、ステージ2の事前学習後により良く学習するようになり、より柔軟性が高まります。
- ライセンス: Apache 2.0
(タスクでさらに良いパフォーマンスが必要で、2020年頃のドイツの知識で十分な場合は、German_Semantic_V3b をチェックしてください。)
📦 インストール
このセクションではインストールに関する具体的なコマンドが提供されていないため、スキップします。
💻 使用例
基本的な使用法
from sentence_transformers import SentenceTransformer
matryoshka_dim = 1024
model = SentenceTransformer("aari1995/German_Semantic_V3", trust_remote_code=True, truncate_dim=matryoshka_dim)
sentences = [
'Eine Flagge weht.',
'Die Flagge bewegte sich in der Luft.',
'Zwei Personen beobachten das Wasser.',
]
embeddings = model.encode(sentences, convert_to_tensor=True).half()
similarities = model.similarity(embeddings, embeddings)
📚 ドキュメント
よくある質問
Q: このモデルはV2より良いですか?
A: 柔軟性の面では間違いなく良いです。データの面でも、最新のデータを使用しているため良いです。ベンチマークの面では異なりますが、V3は長いテキストに対して良い結果を出し、V2は短いテキストに対して非常に良い結果を出します。多くのベンチマークでは文化的な知識を十分にカバーしていないことにも留意してください。
2020年初頭以降の開発に関する知識が必要ない場合は、German_Semantic_V3b をお勧めします。
Q: V3とV3bの違いは何ですか?
A: V3はベンチマークでは若干劣りますが、V3bは2020年までの知識でカットオフされているため、どのモデルを使用するかは、使用ケースによって異なります。
ピークパフォーマンスが必要で、最近の開発にあまり気にしない場合は、V3b を選択してください。
ベンチマークで数ポイントの犠牲を承知で、2020年以降の出来事(選挙、コロナ、その他の文化的なイベントなど)をモデルに知ってもらいたい場合は、このモデルを使用することをお勧めします。
もう1つの顕著な違いは、V3のコサイン類似度スペクトルが-1から1まで広く(ただし、ほとんどの場合、最小値は-0.2を超えます)、V3bはV2により近く、類似度スペクトルは0から1程度です。また、V3はcls_poolingを使用し、V3bはmean_poolingを使用しています。
Q: マルチリンガルモデルと比較して、このモデルのパフォーマンスはどうですか?
A: 多くの使用ケースに非常に役立つ素晴らしいマルチリンガルモデルがあります。しかし、このモデルは文化的な知識やドイツ人の行動に関する知識で光ります。
Q: 埋め込みサイズを小さくすると、どのようなトレードオフがありますか?
A: 大まかに言うと、1024から512次元に減らす場合は、トレードオフは非常に少なく(1%)、64次元まで下げると、最大3%の低下が見られる可能性があります。
評価
ストレージの比較:

ベンチマーク: 近日公開予定。
これからの予定
German_Semantic_V3_Instruct: 自動選択された側面に向けて埋め込みを誘導する。 - 予定: 2024年。
謝辞とクレジット
アイデア、学習、実装はAaron Chibbによるものです。
📄 ライセンス
このモデルはApache 2.0ライセンスの下で提供されています。