前言最一开始,在学习《Python人工智能:原理、实践及应用》中涉及到了写词频统计,只是对词频进行了统计。但在我们在日常工作中,涉及词频统计,我们往往绕不开TF-IDF,因此对词频-逆文档频率进行了学习总结,以及日常中你经常会被问到的几个问题。为什么TF要进行标准化操作?为什么要取对数?为什么IDF分母中要进行+1(IDF如何进行平滑处理的)?为什么要词频 * 逆文档频率(TF-IDF要用乘法)?            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-08 16:17:58
                            
                                99阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # NLP编辑距离实现方法
## 引言
编辑距离是一种用于衡量两个字符串之间相似度的算法,常见于自然语言处理(NLP)领域。它衡量的是将一个字符串转换为另一个字符串所需的最小操作数,这些操作包括插入、删除和替换字符。在本文中,我将向您介绍如何使用Python来实现NLP编辑距离算法。
## 算法流程
下面是实现NLP编辑距离的一般步骤:
| 步骤 | 描述 |
| --- | --- |
|            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-15 14:50:34
                            
                                111阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            onehot:又称独热编码,将每个词表示成具有n个元素的向量,这个词向量中只有一个元素是1,其他元素都是0,不同词汇元素为0的位置不同,其中n的大小是整个语料中不同词汇的总数.例如:["我", "喜欢", "你"]编码为:[[1, 0, 0, 0],[0, 1, 0, 0],[0, 0, 1, 0],]one-hot编码的优劣势:优势:操作简单,容易理解.劣势:完全割裂了词与词之间的联系,而且在大            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-02 06:36:50
                            
                                102阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            NLP之汉语分词:可以先加载常用的词典,如果加载词典分词的效果还是不理想,可以选择将词典里面的词进行词频调整。方法如下:import jieba
jieba.load_userdict("dic.txt")
f = open("dic.txt", "r", encoding="utf8")
for i in f:
    line = i.strip()
    jieba.suggest_fre            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-24 02:52:12
                            
                                39阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            NLTK使用nltk库进行英文文本处理英文文本分词处理(NLTK)分词、取出标点符号由于英语的句子基本上就是由标点符号、空格和词构成,那么只要根据空格和标点符号将词语分割成数组即可,所以相对来说简单很多。使用nltk中的方法:word_tokenize        分割单词sent_tokenize        分            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-05 13:55:46
                            
                                379阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录词干提取 & 词形还原词干提取 stemming自己设计 Porter 词干提取器词形还原(lemmatization)词干提取 & 词形还原相关资料停用词、罕见次过滤停用词 stopwords1、查看停用词停用词过滤罕见词分词jieba关于 jieba特点安装使用分词工具添加自定义词典关键词抽取词性标注相似性度量文本相似字面相似编辑距离1、编辑距离 edit-dista            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-14 11:43:33
                            
                                68阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            NLP(Natural Language Processing)是一种与人类语言相关的计算机科学领域,它涉及计算机对人类语言的理解和生成。在NLP中,欧氏距离是一种常用的度量方法,用于衡量两个向量之间的相似性。本文将介绍NLP中的欧氏距离和它的代码实现。
## 什么是欧氏距离?
欧氏距离是欧几里德空间中两个向量之间的距离。在NLP中,我们可以将文本表示为向量,其中每个维度代表了一个特征或者单词            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-25 03:43:38
                            
                                63阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # 计算编辑距离:NLP中的重要概念
在自然语言处理(NLP)中,编辑距离是一种用于衡量两个字符串之间相似性的重要指标。它是在一个字符串(源字符串)转换为另一个字符串(目标字符串)所需的最小操作数。常见的操作包括插入一个字符、删除一个字符或替换一个字符。编辑距离的计算可以帮助我们在拼写检查、语音识别、机器翻译等领域中的应用。
## 编辑距离的定义
编辑距离亦称为Levenshtein距离。给            
                
         
            
            
            
            一、什么是最小编辑距离最小编辑距离:是用以衡量两个字符串之间的相似度,是两个字符串之间的最小操作数,即从一个字符转换成另一个字符所需要的操作数,包括插入、删除和置换。每个操作数的cost:每个操作数的cost一般是1如果置换的cost是2,而插入和删除的cost是1,我们称之为Levenshtein 距离。作用:计算衡量机器翻译和语音识别的好坏:将机器得到的字符串与专家写的字符串比较最小编辑距离,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-30 02:36:58
                            
                                54阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在学习python语言或者从事人工智能开发时,经常会看到很多熟悉而又陌生的单词,今天博主把自己在开发过程中认为常见的单词(包括了读音和意义)给大家做了总结,有不到的地方还请大家斧正。具体内容如下:path [ pɑ:θ ] 路径 class [klɑ:s] 类  public ['p ʌblik] 公共的,公用的 private ['praivit] 私有的,私人的 static ['stæ ti            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-07 23:15:22
                            
                                32阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            深度学习、自然语言处理和表征方法一个感知器网络(perceptron network)。感知器 (perceptron)是非常简单的神经元,如果超过一个阈值它就会被启动,如果没超过改阈值它就没反应。感知器网络的输入和输出都是是二进制的(0和1)。注意可能的输入个数是有限的。对每个可能的输入,我们可以在隐层里面构建一个只对这个输入有反应的神经元(见注解1)。然后我们可以利用这个神经元和输出神经元之            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2017-06-27 10:53:00
                            
                                150阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            欧式距离也称欧几里得距离,是最常见的距离度量,衡量的是多维空间中两个点之间的 绝对距离 。以古希腊数学家欧几里得命名的距离,也就是我们直观的两点之间直线最短的直线距离。
 欧氏距离定义: 欧氏距离( Euclidean distance)是一个通常采用的距离定义,它是在m维空间中两个点之间的真实距离。在二维和三维空间中的欧式距离的就是两点之间的距离,二维的公式是:三维的公式是:             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-01-20 14:38:00
                            
                                244阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1安装:pip install python-Levenshtein;(但是会报错,你自己去下载这个包) 2.原理解析: “”“ 就是计算两个字符串之间的改动次数:改动包括(新增,修改,删除) (1-两个字符所有的改动次数 / 两个字符之和 ) = 近似比率 ”“” 3.如何使用: import L
                    
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-16 09:04:32
                            
                                115阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 计算文本相似度的常用算法(1) 基于词向量: 余弦相似度, 曼哈顿距离, 欧几里得距离, 明式距离(是前两种距离测度的推广)  (2) 基于字符: 编辑距离, simhash(适用于海量数据), 共有字符数(有点类似 onehot 编码, 直接统计两个文本的共有字符数, 最naive)  (3) 基于概率统计: 杰卡德相似系数  (4) 基于词嵌入模型: word2vec/doc2vec2            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-28 14:27:59
                            
                                305阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(Distance)。采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否。  本文的目的就是对常用的相似性度量作一个总结。本文目录:1. 欧氏距离2. 曼哈顿距离3. 切比雪夫距离4. 闵可夫斯基距离5. 标准化欧氏距离6. 马氏距离7. 夹角余弦8.            
                
         
            
            
            
            1. 概述在学习机器学习(machine learning)或模式识别(pattern recognition)过程中,我经常会困惑于向量、数组和矩阵这三种数据结构,而在学习张学工教授《模式识别》一书时,我又碰到了二维矩阵这个对我很模糊的概念,一生气就自己总结一个吧。2. 数组、向量、矩阵和向量空间2.1  数组[转载自:]概念:所谓数组,是有序的元素序列。 这里的概念就没有涉及到空间了            
                
         
            
            
            
            有个内含单词的超大文本文件,给定任意两个单词,找出在这个文件中这两个单词的最短距离(相隔单词数)。如果寻找过程在这个文件中会重复多次,而每次寻找的单词不同,你能对此优化吗? 示例: 输入:words = ["I","am","a","student","from","a","university",            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-09-28 16:12:00
                            
                                333阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            题目:原题链接(中等)标签:双指针、字符串解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(1)O(1)O(1)88ms (96.65%)Ans 2 (Python)Ans 3 (Python)            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-02-23 18:39:15
                            
                                95阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            题目:原题链接(中等)标签:双指针、字符串解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(1)O(1)O(1)88ms (96.65%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution:    def findClosest(self, words: List[str], word1: str, word2: str) -> int:                    
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-08-26 10:44:14
                            
                                63阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            解释一下图片:这里feature可以指一篇文档分词后的某个词,即将文档中的某个词作为一个特征。weight是这个词的权重,这里可以是这个词在这个句子中出现的次数。这里的hash算法就是传统的hash算法,通过调用一个hash函数实现的。simhash是为了计算一篇文档之间的相似度存在的,通过simhash算法可以计算出文档的simhash值,通过各个文档计算出的二进制值来计算文档之间的汉明距离,然            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-12 10:59:16
                            
                                44阅读
                            
                                                                             
                 
                
                                
                    