pipeline_tag: 句子相似度
tags:
widget:
- source_sentence: "哪些部件容易发生疲劳裂纹?"
sentences:
- "第一级压缩机叶片因疲劳裂纹而断裂。"
- "目击者和消防部门人员发现燃油管路破裂导致燃油泄漏。"
- "在低能见度和夜间条件下,辅助传感器有时会出现冲突。"
example_title: "疲劳裂纹查询示例"
智能知识访问管理器(MIKA)
定制信息检索模型
这是一个基于sentence-transformers的模型:能够将句子和段落映射到768维稠密向量空间,适用于聚类或语义搜索等任务。
该模型针对工程文档进行了非对称信息检索的定制训练,旨在设计阶段识别与查询相关的工程文档。例如,可通过查询资料库来寻找需求支持或了解特定故障类型的详细信息。
使用方法(Sentence-Transformers)
安装sentence-transformers后即可轻松使用:
pip install -U sentence-transformers
使用示例:
from sentence_transformers import SentenceTransformer
sentences = ["这是一个示例句子", "每个句子都会被转换"]
model = SentenceTransformer("NASA-AIML/MIKA_Custom_IR")
embeddings = model.encode(sentences)
print(embeddings)
评估结果
模型基于三个查询进行了评估,计算了k=10/20/30时的准确率@k指标,同时计算了平均准确率均值(MAP)。基线模型为预训练的SBERT。
信息检索方法 |
MAP |
预训练SBERT |
0.648 |
微调SBERT |
0.807 |
训练参数
数据加载器:
使用sentence_transformers.datasets.NoDuplicatesDataLoader.NoDuplicatesDataLoader
,参数为:
{'batch_size': 32}
损失函数:
采用sentence_transformers.losses.MultipleNegativesRankingLoss.MultipleNegativesRankingLoss
,参数为:
{'scale': 20.0, 'similarity_fct': 'cos_sim'}
训练方法参数:
{
"epochs": 2,
"evaluation_steps": 100,
"evaluator": "sentence_transformers.evaluation.InformationRetrievalEvaluator.InformationRetrievalEvaluator",
"max_grad_norm": 1,
"optimizer_class": "<class 'transformers.optimization.AdamW'>",
"optimizer_params": {
"lr": 2e-05
},
"scheduler": "WarmupLinear",
"steps_per_epoch": null,
"warmup_steps": 0,
"weight_decay": 0.01
}
完整模型架构
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) 使用MPNetModel转换器
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False})
(2): Normalize()
)
引用与作者
Walsh, HS与Andrade, SR合著《基于Sentence-BERT的设计信息语义检索》,收录于ASME 2022国际设计工程技术会议论文集。美国密苏里州圣路易斯,2022年8月14-17日。论文编号V002T02A066。DOI: https://doi.org/10.1115/DETC2022-89557
声明:
版权所有 © 2023 美国政府(由美国国家航空航天局局长代表)。保留所有权利。
免责声明
无担保声明:本软件按"原样"提供,不作任何明示或默示担保,包括但不限于对符合规格、适销性、特定用途适用性、不侵权、无缺陷或文档准确性等方面的担保。美国政府机构不对使用本软件产生的任何结果、设计、硬件、软件产品或应用作背书。对于原始软件中包含的第三方软件,政府机构不承担任何责任,将按"原样"分发。
免责与赔偿:使用者同意放弃对美国政府及其承包商、分包商和前任接受者的所有索赔。若因使用本软件产生任何责任、索赔、损害、费用或损失(包括基于本软件开发的产品的损害赔偿),使用者应依法对美国政府及其承包商、分包商和前任接受者进行赔偿。使用者的唯一救济方式是立即单方面终止本协议。