首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏素质云笔记

    基于腾讯AI Lab向量进行未知、短语向量补齐与域内相似搜索

    以“喀拉喀什河”为例,利用腾讯AI Lab向量计算出的语义相似如下: 墨玉河、和田河、玉龙喀什河、白玉河、喀什河、叶尔羌河、克里雅河、玛纳斯河 ⒉ 新鲜度(Freshness): 该数据包含一些最近一两年出现的新词 以“因吹斯汀”为例,利用腾讯AI Lab向量计算出的语义相似如下: 一颗赛艇、因吹斯听、城会玩、厉害了word哥、emmmmm、扎心了老铁、神吐槽、可以说是非常爆笑了 ⒊ 准确性(Accuracy) ---- 文章目录 1 Tencent_AILab_ChineseEmbedding读入与高效查询 2 未知、短语向量补齐与域内相似搜索 网络用语挖掘: 评论观点 同义挖掘 ---- 1 Tencent_AILab_ChineseEmbedding ---- 2 未知、短语向量补齐与域内相似搜索 这边未知词语、短语的补齐手法是参考FastText的用法:极简使用︱Gemsim-FastText 向量训练以及OOV(out-of-word)问题有效解决 在得到未登录或短语的向量之后,就可以快速进行查找,gensim里面是支持给入向量进行相似查找: wv_from_text.most_similar(positive=[vec], topn=10)

    3.1K42发布于 2019-05-26
  • 来自专栏图灵技术域

    基于WMD(移距离)的句子相似度分析简介

    word2vec详解 NLP之word2vec简介 袋模型(Bag of Words) 袋模型(Bag-of-words model)是个在自然语言处理和信息检索(IR)下被简化的表达模型。 此模型下,像是句子或是文件这样的文字可以用一个袋子装着这些的方式表现,这种表现方式不考虑文法以及的顺序。最近袋模型也被应用在计算机视觉领域。 袋模型被广泛应用在文件分类,出现的频率可以用来当作训练分类器的特征。关于”袋”这个用字的由来可追溯到泽里格·哈里斯于1954年在Distributional Structure的文章。 移距离(Word Mover’s Distance) ? 需要有一种约束,将文档1中的每个,以不同的权重强制地分配到文档2的所有上去。 WMD的优化 现在计算两个文档之间的 WMD 距离,如果用 k-NN来计算距离就非常耗时。

    1.3K40发布于 2021-05-21
  • 来自专栏具身小站

    Python从零基于向量实现词语相似度计算

    核心优势 内存友好:能够处理超出RAM大小的语料库 并行处理:支持多核CPU加速 工业级:在生产环境中广泛应用 算法丰富:包含多种主题模型和向量算法 API简洁:易于使用的接口设计 应用场景 文本相似度计算 Word2Vec基于分布式假设(具有相似上下文的具有相似含义),通过神经网络学习的向量表示。 :", words_vec.vector_size) # 输出向 print("自然语言的向量", words_vec['自然语言']) # 输出向量 # 获取与“自然语言”最相似 most_similar_words = words_vec.most_similar('自然语言') print("与自然语言最相似:", most_similar_words) # 向量计算 similar_more_words similar = words_vec.similarity('自然语言', '处理') print("自然语言和处理的相似度:", similar)

    33710编辑于 2025-10-31
  • 来自专栏机器学习AI算法工程

    TF-IDF与余弦相似性文本处理:自动提取关键、找出相似文章

    有些时候,除了找到关键,我们还希望找到与原文章相似的其他文章。比如,"Google新闻"在主新闻下方,还提供多条相似的新闻。 ? 为了找出相似的文章,需要用到"余弦相似性"(cosine similiarity)。下面,我举一个例子来说明,什么是"余弦相似性"。 为了简单起见,我们先从句子着手。    请问怎样才能计算上面两句话的相似程度? 基本思路是:如果这两句话的用词越相似,它们的内容就应该越相似。因此,可以从词频入手,计算它们的相似程度。 第一步,分词。    余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"。所以,上面的句子A和句子B是很相似的,事实上它们的夹角大约为20.3度。 由此,我们就得到了"找出相似文章"的一种算法:   (1)使用TF-IDF算法,找出两篇文章的关键;   (2)每篇文章各取出若干个关键(比如20个),合并成一个集合,计算每篇文章对于这个集合中的的词频

    1.5K40发布于 2018-03-14
  • 来自专栏决胜机器学习

    循环神经网络(三) ——嵌入学习与余弦相似

    循环神经网络(三) ——嵌入学习与余弦相似度 (原创内容,转载请注明来源,谢谢) 一、词汇表征 1、one-hot表示法 之前的学习中提到过,对于词汇库,可以用one-hot表示法来表示。 说明:当训练集数据较小时,嵌入的作用最明显,所以嵌入在 NLP 应用很广泛。 3、其他 另外,这个过程类似人脸识别中的人脸图像编码的过程,都是比较编码后的向量的相似度来确认两者是否相似。 但是嵌入模型的词语通常是有限种类的,未知的词语会标记成<UKN>,而图像则需要处理各种的输入。 三、嵌入特性与余弦相似度 1、相似处理过程 嵌入有个特性,称为类比推理。 判断两对词语是否相似,例如man-woman与king-queen,可以把对应的特征向量进行相减,减完以后进行比对即可。即求一个向量e,使得eman−ewoman≈eking−e ? 需要说明的是,通常相似度并不会精准的100%,因为经过压缩后,会有一定的误差。 ? 2、相似度函数 最常用的相似度函数,即余弦相似度,如下图所示。

    1.6K60发布于 2018-03-29
  • 来自专栏人工智能与演化计算成长与进阶

    序列模型2.3-2.5余弦相似度嵌入矩阵学习嵌入

    余弦相似度 (Cosine similarity) 其中二范数即 是把向量中的所有元素求平方和再开平方根。 而分子是两个向量求内积,如果两个向量十分接近,则内积会越大。 Note 在实际应用中,使用词嵌入矩阵和向量相乘的方法所需计算量很大,因为向量是一个维度很高的向量,并且 10000 的维度中仅仅有一行的值是 0,直接使用矩阵相乘的方法计算效率是十分低下。 本节介绍使用深度学习来学习嵌入的算法。 也可以使用 目标单词前后的四个 进行预测 当然也可以只把 目标单词前的一个输入模型 使用相近的一个 总结 研究者们发现 如果你想建立一个语言模型,用目标的前几个单词作为上下文是常见做法 但如果你的目标是学习嵌入 ,使用以上提出的四种方法也能很好的学习嵌入。

    89320发布于 2020-08-14
  • 来自专栏python与大数据分析

    关于云可视化笔记七(文本相似度比较流程)

    用Python进行简单的文本相似度分析 使用jieba进行中文分词 利用gensim包分析文档相似度 通过corpora.Dictionary创建预料特征 通过dictionary.doc2bow 进行简单的文本相似度分析 #使用jieba进行中文分词 #利用gensim包分析文档相似度 # 通过corpora.Dictionary创建预料特征 # 通过dictionary.doc2bow转换成稀疏矩阵 海南省海口市海甸二西路金江口花园', '金江口花园小区', '金江小区', '海甸二西路', '我住在金江口花园', '金江口花园好玩吗'] #初始化分词后的数组 all_doc_list = [] #需要对个别进行自定义词典 对文档进行整理成指定格式,方便后续进行计算 # 4、计算出词语的词频 # 5、【可选】对词频低的词语进行过滤 # 6、建立语料库词典 # 7、加载要对比的文档 # 8、将要对比的文档通过doc2bow转化为袋模型 # 13、得到最终相似度结果

    69720编辑于 2022-03-11
  • 来自专栏机器学习AI算法工程

    TF-IDF应用:自动提取关键、找相似文章、自动摘要

    找出相似文章 我们再来研究另一个相关的问题。有些时候,除了找到关键,我们还希望找到与原文章相似的其他文章。比如,"Google新闻"在主新闻下方,还提供多条相似的新闻。 ? 请问怎样才能计算上面两句话的相似程度? 基本思路是:如果这两句话的用词越相似,它们的内容就应该越相似。因此,可以从词频入手,计算它们的相似程度。 第一步,分词。    余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"。所以,上面的句子A和句子B是很相似的,事实上它们的夹角大约为20.3度。 由此,我们就得到了"找出相似文章"的一种算法:   (1)使用TF-IDF算法,找出两篇文章的关键;   (2)每篇文章各取出若干个关键(比如20个),合并成一个集合,计算每篇文章对于这个集合中的的词频 仅仅依靠统计词频,就能找出关键相似文章。虽然它们算不上效果最好的方法,但肯定是最简便易行的方法。 接下来讨论如何通过词频,对文章进行自动摘要(Automatic summarization)。

    4.6K171发布于 2018-03-13
  • 来自专栏素质云笔记

    NLP︱句子级、词语级以及句子-词语之间相似性(相关名称:文档特征、特征、权重)

    关于相似性以及文档特征、特征有太多种说法。弄得好乱,而且没有一个清晰逻辑与归类,包括一些经典书籍里面也分得概念模糊,所以擅自分一分。 ? 文档中词语权重方案一览) —————————————————————————————————————————————— 二、词语与词语间 1、点间互信息(PMI) 点间互信息(PMI)主要用于计算词语间的语义相似度 DF的动机是,如果某些特征在文档中经常出现,那么这个就可能很重要。 从上面的公式上看出:如果某个特征的频率很低,那么互信息得分就会很大,因此互信息法倾向"低频"的特征。相对的词频很高的,得分就会变低,如果这携带了很高的信息量,互信息法就会变得低效。 —————————————————————————————————————————————— 四、句子与句子间 句子之间的相似性,一般用词向量组成句向量。

    5.6K21发布于 2019-05-26
  • 来自专栏思考是一种快乐

    TF-IDF与余弦相似性的应用:自动提取关键

    所以,我们需要一个重要性调整系数,衡量一个是不是常见。**如果某个比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键。 最常见的("的"、"是"、"在")给予最小的权重,较常见的("中国")给予较小的权重,较少见的("蜜蜂"、"养殖")给予较大的权重。 所以,自动提取关键的算法就很清楚了,就是计算出文档的每个的TF-IDF值,然后按降序排列,取排在最前面的几个。 所以,如果只选择一个,"蜜蜂"就是这篇文章的关键。 除了自动提取关键,TF-IDF算法还可以用于许多别的地方。 缺点是,单纯以"词频"衡量一个的重要性,不够全面,有时重要的可能出现次数并不多。而且,这种算法无法体现的位置信息,出现位置靠前的与出现位置靠后的,都被视为重要性相同,这是不正确的。

    50110发布于 2019-09-23
  • 来自专栏机器学习算法与Python学习

    TF-IDF与余弦相似性的应用-自动提取关键

    TF-IDF与余弦相似性应用之自动提取关键 引言 这个标题看上去好像很复杂,其实我要谈的是一个很简单的问题。 所以,我们需要一个重要性调整系数,衡量一个是不是常见。 如果某个比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键。 最常见的("的"、"是"、"在")给予最小的权重,较常见的("中国")给予较小的权重,较少见的("蜜蜂"、"养殖")给予较大的权重。 所以,自动提取关键的算法就很清楚了,就是计算出文档的每个的TF-IDF值,然后按降序排列,取排在最前面的几个。 缺点是,单纯以"词频"衡量一个的重要性,不够全面,有时重要的可能出现次数并不多。而且,这种算法无法体现的位置信息,出现位置靠前的与出现位置靠后的,都被视为重要性相同,这是不正确的。

    867100发布于 2018-04-08
  • 来自专栏鳄鱼儿的技术分享

    相似度计算——余弦相似

    余弦相似度介绍 余弦相似度是利用两个向量之间的夹角的余弦值来衡量两个向量之间的相似度,这个值的范围在-1到1之间。 余弦相似度越接近1,表示两个向量之间的夹角越小,即越相似;而越接近-1,表示两个向量之间的夹角越大,即越不相似。 两个向量的夹角示例图如下: 余弦相似度的计算公式 向量的余弦相似度计算公式 余弦相似度计算的示例代码 用Python实现余弦相似度计算时,我们可以使用NumPy库来计算余弦相似度,示例代码如下: import 余弦相似度在相似度计算中被广泛应用在文本相似度、推荐系统、图像处理等领域。 如果两篇文章的余弦相似度接近1,那么它们在内容上是相似的; 如果余弦相似度接近0,则它们在内容上是不相似的。 这样的相似度计算方法可以在信息检索、自然语言处理等领域得到广泛应用。

    2K10编辑于 2024-05-21
  • 来自专栏全栈程序员必看

    pta集合相似度_结构相似

    发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168948.html原文链接:https://javaforall.cn

    1.1K20编辑于 2022-09-22
  • 来自专栏阮一峰的网络日志

    TF-IDF与余弦相似性的应用(一):自动提取关键

    所以,我们需要一个重要性调整系数,衡量一个是不是常见。如果某个比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键。 所以,自动提取关键的算法就很清楚了,就是计算出文档的每个的TF-IDF值,然后按降序排列,取排在最前面的几个。 所以,如果只选择一个,"蜜蜂"就是这篇文章的关键。 除了自动提取关键,TF-IDF算法还可以用于许多别的地方。 缺点是,单纯以"词频"衡量一个的重要性,不够全面,有时重要的可能出现次数并不多。而且,这种算法无法体现的位置信息,出现位置靠前的与出现位置靠后的,都被视为重要性相同,这是不正确的。 下一次,我将用TF-IDF结合余弦相似性,衡量文档之间的相似程度。 (完)

    69560发布于 2018-04-13
  • 来自专栏数说工作室

    文本相似度 | 余弦相似度思想

    计算文本相似度有什么用? 推荐系统 在微博和各大BBS上,每一篇文章/帖子的下面都有一个推荐阅读,那就是根据一定算法计算出来的相似文章。 冗余过滤 我们每天接触过量的信息,信息之间存在大量的重复,相似度可以帮我们删除这些重复内容,比如,大量相似新闻的过滤筛选。 这里有一个在线计算程序,你们可以感受一下 ? 余弦相似度的思想 余弦相似度,就是用空间中两个向量的夹角,来判断这两个向量的相似程度: ? 相似度,个么侬就好好弄一个相似程度好伐?比如99%相似、10%相似,更关键的是,夹角这个东西—— 我不会算! 谁来跟我说说两个空间向量的角度怎么计算?哪本书有?

    3.3K70发布于 2018-04-08
  • 来自专栏mythsman的个人博客

    相似度度量标准之Jaccard相似

    定义 Jaccard相似度(杰卡德相似度)是一个用于衡量两个集合相似程度的度量标准,他的定义如下:给定两个集合 ,那么我们记这两个集合的Jaccard相似度 为: SIM(S,T)=|S\cap T 扩展 原始的Jaccard相似度定义的仅仅是两个集合(set)之间的相似度,而实际上更常见的情况是我们需要求两个包(bag,multiset)的相似度,即每个元素可能会出现多次。 那么在这种情况下,Jaccard相似度的分子就便成了取每个元素在两个包中出现的最小次数之和,分母是两个包中元素的数目之和。 比如\{a,a,a,b\},\{a,a,b,b,c\}之间的Jaccard相似度就是(2+1)/(4+5)=33%。 应用 Jaccard的应用很广,最常见的应用就是求两个文档的文本相似度,通过一定的办法(比如shinging)对文档进行分词,构成词语的集合,再计算Jaccard相似度即可。

    4K21编辑于 2022-11-14
  • 来自专栏二爷记

    Python结巴分词,字符串余弦相似度算法实现关键筛选及整理

    Python分词方法,返回json格式关键词数据 分词思路: 结巴分词,用字符串余弦相似度算法实现关键筛选和整理。 字符串余弦相似性算法是通过利用我们初中就学过的三角函数中的余弦定理来计算两个字符串的相似度,它是定义在向量空间模型(Vector Space Model)中的。 几个关键点: 1.posseg 用法 每个都有其词性,比如名词、动词、代词等,结巴分词的结果也可以带上每个的词性,要用到jieba.posseg from jieba import posseg s ={} def simicos(str1,str2): """ 字符串余弦相似度算法实现, 添加缓存存储,减少分词带来的时间消耗 提高计算效率 :param str1: 要比较的字符串1 :param str2:要比较的字符串2 :return:相似度值0.0-1.0,越接近1,相似度越高 """ global cache #全局变量

    1.8K20发布于 2020-07-22
  • 来自专栏图像处理与模式识别研究所

    图像相似程度

    else: degree=degree+1 degree=degree/len(hist1) return degree #计算单通道的直方图的相似值 else: degree=degree+1 degree=degree/len(hist1) return degree #通过得到每个通道的直方图来计算相似度 def classify_hist_with_split(image1,image2,size=(256,256)): #将图像resize后,分离为三个通道,再计算每个通道的相似值 classify_aHash(img1,img2) degree=classify_pHash(img1,img2) print(degree) cv2.waitKey(0) 算法:图像相似程度是通过图像直方图 、汉明距离、平均哈希法、感知哈希法等来计算相似程度。

    1.1K40编辑于 2022-05-29
  • 图像相似

    在网上发现一个有趣的题目  给出两幅相同大小的黑白图像(用0-1矩阵)表示,求它们的相似度。若两幅图像在相同位置上的像素点颜色相同,则称它们在该位置具有相同的像素点。 两幅图像的相似度定义为相同像素点数占总像素点数的百分比。 输入 第一行包含两个整数m和n,表示图像的行数和列数,用单个空格隔开。1≤m≤100, 1≤n≤100。 输出   一个实数,表示相似度(以百分比的形式给出),精确到小数点后两位。 输入: 3 3 1 0 1 0 0 1 1 1 0 1 1 0 0 0 1 0 0 1 输出: 44.44 我们可以创建二维数组,通过循环来判断有多少个相似的,在进行计算来算出结果 #define _CRT_SECURE_NO_WARNINGS include<stdio.h> int main() { //n为行 m为列 int n = 0; int m = 0; scanf("%d %d", &n, &m); //题目需要两个图比较相似

    16910编辑于 2025-12-30
  • 来自专栏老齐教室

    计算相似

    在机器学习中,经常要度量两个对象的相似度,例如k-最近邻算法,即通过度量数据的相似度而进行分类。 在推荐系统中,也会用到相似度的计算(当然还有其他方面的度量)。 本文中,将介绍业务实践中最常用的几种相似度的度量方法。 基于相似性的度量 皮尔逊相关系数 斯皮尔曼秩相关系数 肯德尔秩相关系数 余弦相似度 雅卡尔相似度 基于距离的度量 欧几里得距离 曼哈顿距离 1. 如果向量指向相同的方向,余弦相似度是+1。如果向量指向相反的方向,余弦相似度为-1。 ? ? 余弦相似度在文本分析中很常见。它用于确定文档之间的相似程度,而不考虑文档的大小。 余弦相似度和雅卡尔相似度都是度量文本相似度的常用方法,但雅卡尔相似度在计算上成本较高,因为它要将一个文档的所有词汇匹配到另一个文档。实践证明,雅卡尔相似度在检测重复项方面很有用——集合运算的特点。

    4.9K11发布于 2021-03-11
领券