🚀 Omartificial-Intelligence-Space/Arabic-all-nli-triplet-Matryoshka
这是一个基于sentence-transformers
库的模型,用于处理阿拉伯语的句子相似度任务。它基于sentence-transformers/paraphrase-multilingual-mpnet-base-v2
基础模型,在特定数据集上进行训练,可用于特征提取和检索等任务。
🚀 快速开始
该模型可直接使用sentence-transformers
库进行加载和推理,以下是一些使用示例:
示例输入
{
"source_sentence": "ذكر متوازن بعناية يقف على قدم واحدة بالقرب من منطقة شاطئ المحيط النظيفة",
"sentences": [
"رجل يقدم عرضاً",
"هناك رجل بالخارج قرب الشاطئ",
"رجل يجلس على أريكه"
]
}
示例输出
模型会计算源句子与每个候选句子之间的相似度得分。
✨ 主要特性
- 多语言支持:基于多语言基础模型,可处理阿拉伯语相关任务。
- 多种损失函数:使用
MatryoshkaLoss
和MultipleNegativesRankingLoss
进行训练。
- 丰富的评估指标:使用多种评估指标,如
pearson_cosine
、spearman_cosine
等,全面评估模型性能。
📦 安装
要使用该模型,需要安装sentence-transformers
库:
pip install sentence-transformers
💻 使用示例
基础用法
from sentence_transformers import SentenceTransformer
import numpy as np
model = SentenceTransformer('Omartificial-Intelligence-Space/Arabic-all-nli-triplet-Matryoshka')
source_sentence = "ذكر متوازن بعناية يقف على قدم واحدة بالقرب من منطقة شاطئ المحيط النظيفة"
sentences = [
"رجل يقدم عرضاً",
"هناك رجل بالخارج قرب الشاطئ",
"رجل يجلس على أريكه"
]
source_embedding = model.encode(source_sentence)
sentence_embeddings = model.encode(sentences)
for i, embedding in enumerate(sentence_embeddings):
similarity = np.dot(source_embedding, embedding) / (np.linalg.norm(source_embedding) * np.linalg.norm(embedding))
print(f"与句子 '{sentences[i]}' 的相似度: {similarity}")
📚 详细文档
模型信息
属性 |
详情 |
模型类型 |
sentence-transformers 模型 |
基础模型 |
sentence-transformers/paraphrase-multilingual-mpnet-base-v2 |
数据集 |
Omartificial-Intelligence-Space/Arabic-NLi-Triplet |
损失函数 |
MatryoshkaLoss , MultipleNegativesRankingLoss |
评估指标 |
pearson_cosine , spearman_cosine , pearson_manhattan , spearman_manhattan , pearson_euclidean , spearman_euclidean , pearson_dot , spearman_dot , pearson_max , spearman_max |
评估结果
MTEB MIRACLRetrieval (ar)
指标 |
值 |
ndcg_at_1 |
19.233 |
ndcg_at_3 |
21.393 |
ndcg_at_5 |
23.347 |
... |
... |
MTEB MIRACLRetrievalHardNegatives (ar)
指标 |
值 |
ndcg_at_1 |
20.7 |
ndcg_at_3 |
23.766 |
ndcg_at_5 |
26.479 |
... |
... |
MTEB MLQARetrieval (ara-ara)
指标 |
值 |
ndcg_at_1 |
51.451 |
ndcg_at_3 |
60.302 |
ndcg_at_5 |
62.432 |
... |
... |
MTEB MLQARetrieval (ara-deu)
指标 |
值 |
ndcg_at_1 |
51.691 |
ndcg_at_3 |
63.365 |
ndcg_at_5 |
65.922 |
... |
... |
MTEB MLQARetrieval (ara-eng)
指标 |
值 |
ndcg_at_1 |
51.838 |
ndcg_at_3 |
61.207 |
ndcg_at_5 |
63.57 |
... |
... |
🔧 技术细节
该模型基于sentence-transformers
库构建,使用了MatryoshkaLoss
和MultipleNegativesRankingLoss
进行训练。在训练过程中,模型学习将句子映射到低维向量空间,使得语义相似的句子在向量空间中距离更近。通过在特定的阿拉伯语数据集上进行训练,模型能够更好地处理阿拉伯语的句子相似度任务。
📄 许可证
请参考该模型所在仓库的具体许可证信息。