我正在探索句子转换器,并偶然发现了这个。它展示了如何对我们的自定义数据进行培训。但我不知道该怎么预测。如果有两个新句子,如1)这是第三个例子,2)这是第三个例子。我怎么能预测到这些句子有多相似呢?
from sentence_transformers import SentenceTransformer, InputExample, losses
from torch.utils.data import DataLoader
#Define the model. Either from scratch of by loading a pre-trained model
model = Sen
我正在尝试实现textrank算法,其中我正在计算所有句子的余弦相似矩阵。我想使用Spark并行创建相似矩阵的任务,但不知道如何实现it.Here代码: cluster_summary_dict = {}
for cluster,sentences in tqdm(cluster_wise_sen.items()):
sen_sim_matrix = np.zeros([len(sentences),len(sentences)])
for row in range(len(sentences)):
for col in
lst_train中约有98,000句(5-100字),lst_test约有1,000个句子(5-100字长)。对于lst_test中的每一个句子,我想知道它是否是从lst_train中的一个句子中剽窃来的。如果这个句子是剽窃的,我应该用lst_train或or返回id。
现在,我想计算lst_test中每个句子相对于lst_train中每个句子的jaccard相似性。下面是我的代码,b.JaccardSim计算两个句子的jaccard相似性:
lst_all_p = []
for i in range(len(lst_test)):
print('i:', i)
问题
1.如何找到合适的测量方法
有几种测量句子相似性的方法,但我不知道如何为我的数据(句子)找到合适的方法。
关于堆栈溢出的相关问题:有没有办法检查python中两个完整句子之间的相似性?
2.基于
的句子或段落
如果可以同时获得一个句子和一个包含句子的段落,那么哪个句子或段落之间的相似性更准确呢?
到目前为止我尝试了什么,
1.我尝试使用其中一个库来度量相似性.
然而,我很难找到更精确的方法来测量相似之处。
original = 'New York is a noisy city where hamburgers are famous.'
test = ['Berl
我用刮刮爬行了几个欺凌论坛,并将结果作为字典使用。
我现在要做的是提取一个句子的关键字,例如He harassed me in the chat,这将给出关键字Harassed和chat,并将这些关键字与我的单词字典进行比较,并为它的相关性分配一个值(在这种情况下,这显然会提供接近1.0的高值,因为它与欺凌非常相关)。
我已经把关键词提取下来了,所以现在我只需要知道如何进行比较。
我看过使用pandas、scikit和nltk的情况,但它们似乎对多个字段的字典最有效,而我只有一袋单词。
有什么NLP库可以帮我吗?如果不这样做,最好的办法是什么?
如果我有一组句子,并且我想提取副本,我应该像下面的例子那样工作:
sentences<-c("So there I was at the mercy of three monstrous trolls",
"Today is my One Hundred and Eleventh birthday",
"I'm sorry I brought this upon you, my",
"So there I was at the mercy of three monstro
我想计算两个句子之间的相似度,我需要百分比值来说明它们相互匹配的程度。像这样的句子,
1. The red fox is moving on the hill.
2. The black fox is moving in the bill.
我正在考虑Levenshtein distance,但我不确定这一点,因为它说它是为了寻找"2个单词“之间的相似性。那么这个Levenshtein distance可以帮助我吗?或者还有什么其他方法可以帮助我呢?我将使用JavaScript。
我有一组句子,它们是使用句子编码器编码成向量的,我想找出与输入查询最相似的句子。 搜索功能如下所示: def semantic_search(cleaned_query, data, vectors):
query_vec = get_features(cleaned_query)[0].ravel()
res = []
for i, d in enumerate(data):
qvec = vectors[i].ravel()
sim = cosine_similarity(query_vec, qvec)
if si
以下是我的代码
from sklearn.feature_extraction.text import TfidfVectorizer
corpus = [
"this is first document ","this is second document","this is third","which document is first", ]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
X.toarray()
这
我是一个新的进入NLP (自然语言处理)。作为一个启动项目,我正在开发一个释义识别器(一个可以识别两个类似句子的系统)。对于这个识别器,我将在三个层次上应用不同的度量,即:词汇、句法和语义。在词汇层面,有多种相似性度量,如余弦相似度、匹配系数、Jaccard系数等。对于这些度量,我使用谢菲尔德大学( University )开发的simMetrics软件包,其中包含了许多相似的度量。但是对于Levenshtein距离和Jaro-Winkler距离度量而言,代码只位于字符级别的,而我需要句子级别的代码(即将单个单词视为单元而不是字符)。此外,在SimMetrics中没有计算曼哈顿距离的代码。对于
我试图使用潜在的语义索引来根据一个大型语料库产生的主题来生成两句句子之间的余弦相似度,但我很难找到任何完全符合我所寻找的内容的教程--我发现的最接近的是,但我并不想找到与查询最相似的句子,我特别想使用LSI模型来降低两句句子的维数,然后测量这两句话的余弦相似度。有人能帮忙吗?
从引用的文章中,我想我可能看了下面的代码,然后进行余弦相似度计算?但我被困住了。
import gensim
from gensim import corpora, models, similarities
from gensim.models import LsiModel
# texts = list of lis
我有客户和顾问之间的聊天互动话语,我想知道顾问的互动是否包含以下列表中的特定句子或类似的句子:
我在顾问交互中寻找的例句
["I would be more than happy to help you with this",
"I would be happy to look over the account to see how I can help get this sorted out for you",
"I’d be more than happy to look into this for you!",
"Oh, I see