bert-base-japanese-v3-unsup-simcse-jawiki项目介绍
项目概述
bert-base-japanese-v3-unsup-simcse-jawiki
是一个无监督SimCSE模型,用于特征提取。这个项目在《大规模语言模型入门》一书的第8章中进行了详细介绍。模型是基于cl-tohoku/bert-base-japanese-v3
,并使用数据集llm-book/jawiki-sentences
进行微调构建的。
模型背景
SimCSE(Simple Contrastive Sentence Embedding)是用于生成句子嵌入的模型,在句子表示的相似性度量中表现出色。这个项目的模型特别适用于日语文本的处理与分析,通过无监督的方法改进了句子间相似性的评估。
相关链接
- 项目的GitHub仓库提供了项目代码和更多信息。
- 在Colab笔记本中,用户可以体验模型的训练过程。
- 另一份Colab笔记本则展示了推理的实现方式。
- 使用的数据集可以在这里找到。
- 书籍《大规模言語モデル入門》的更多信息可以在Amazon和gihyo网站上查看。
使用指南
下面是一个简单的代码示例,展示了如何使用此项目进行日语句子相似性计算:
from torch.nn.functional import cosine_similarity
from transformers import pipeline
sim_enc_pipeline = pipeline(model="llm-book/bert-base-japanese-v3-unsup-simcse-jawiki", task="feature-extraction")
text = "川べりでサーフボードを持った人たちがいます"
sim_text = "サーファーたちが川べりに立っています"
# 获取text和sim_text的向量表示
text_emb = sim_enc_pipeline(text, return_tensors=True)[0][0]
sim_emb = sim_enc_pipeline(sim_text, return_tensors=True)[0][0]
# 计算text和sim_text的相似度
sim_pair_score = cosine_similarity(text_emb, sim_emb, dim=0)
print(sim_pair_score.item()) # -> 0.8568589687347412
上述代码展示了如何通过模型管道获取句子嵌入,并通过余弦相似度函数计算两个句子的相似性得分。
项目许可
bert-base-japanese-v3-unsup-simcse-jawiki
项目采用Apache 2.0许可证,这意味着用户可以自由使用、修改和分发该项目,只需遵守相关许可协议的条款即可。
这个项目为日语自然语言处理领域的研究者和开发者提供了一个高效的工具,能够在不需要大规模标注数据的情况下计算句子相似性,是日语特征提取和分析的有力工具。