




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python爬虫大数据采集与挖掘(11-1)
--文本信息处理与分类《Python爬虫大数据采集与挖掘》第二版.微课视频版(清华大学出版社,2025)教材《Python爬虫大数据采集与挖掘》及配套公众号
(当当、京东可购书)提纲文本预处理文本的向量空间模型文本的分布式表示文本分类及实现技术文本情感分析词汇切分词汇切分的必要性爬虫采集到文本信息之后的处理是文本处理挖掘的基础是大数据语义分析的基础切分的流程基于词典的分词方法三个基本要素分词词典文本扫描顺序正向扫描、逆向扫描和双向扫描匹配原则最大匹配、最小匹配、逐词匹配和最佳匹配所谓最大匹配,就是优先匹配最长词汇,即每一句的分词结果中的词汇总量要最少。正向最大匹配分词在实现上可以采用减字法。正向减字最大匹配法,首先需要将词典中词汇按照其长度从大到小的顺序排列,然后对于待切分的中文字符串,做如下处理:(1)将字符串和词典中的每个词汇逐一进行比较;(2)如果匹配到,则切分出一个词汇,转步骤5执行;(3)否则,从字符串的末尾减去一个字;(4)如果剩下的字符串只有一个字,则切分出该字;(5)将剩下的字符串作为新的字符串,转步骤1执行,直到剩下的字符串长度为0。[1]s=“今天是中华人民共和国获得奥运会举办权的日子”[2]s=“今天是中华人民共和国获得奥运会举办权的日”[3]s=“今天是中华人民共和国获得奥运会举办权的”…[20]s=“今天”[21]s=“是中华人民共和国获得奥运会举办权的日子”[22]s=“是中华人民共和国获得奥运会举办权的日”…[39]s=“是”[40]s=“中华人民共和国获得奥运会举办权的日子”…[51]s=“中华人民共和国”[52]s=“获得奥运会举办权的日子”…[61]s=“获得”…[1]s=“今天是中华人民”…[6]s=“今天”[7]s=“是中华人民共和”[13]s=“是”[14]s=“中华人民共和国”[15]s=“获得奥运会举办”[20]s=“获得”[21]s=“奥运会举办权的”…按照目前基于一些语料的词汇切分实验结果,逆向最大匹配的切分方法得到的错误率是1/245,而正向最大匹配的切分方法的错误率是1/169。切分中的错误源于词汇之间字符的重叠.“局长的房间内存储贵重的黄金”正向最大匹配扫描得到的结果是“局长的房间内存储贵重的黄金”逆向最大匹配扫描得到的结果是“局长的房间内存储贵重的黄金”基于统计的分词该方法利用词汇使用中的统计特性进行分词,如字串的使用频率、每个字在词汇中的位置特征等。通过使用机器学习的方法学习字词特征。该方法由3个步骤组成,分别是构造语料、训练模型和分词。语料采用BMES标签,构造大量语料。如上,是语料中的两个例子。训练模型训练模型的目的是获得描述语料中的字和对应标签的统计特征,可以是标签和字的组合概率、上下文的使用情况等。模型学习类似p(人|B)、p(人|S)、p(这|B)…每个字作为BMES的概率,以及BMES序列之间的联系等特征。相关模型:HMM、CRF、RNN等等。分词例如,输入句子是“上海大学学科发展得很快”,假如模型输出的标签序列是BMMEBEBESBE,那么,相应的切分结果就是“上海大学/学科/发展/得/很快”。停用词过滤停用词过滤停用词在不同的文本分析任务中有着不同的定义,在基于词的检索系统中,停用词是指出现频率太高、没有太大检索意义的词,如“一个、一种、因此、否则、其中”等;在文本分类中,停用词是指没有意义的虚词和类别色彩不强的中性词;在自动问答系统中,停用词因问题不同而动态变化。词形规范化词形规范化英文单词一般由三部分构成:词根、前缀和后缀,其中词根决定单词意思,前缀改变单词词义,后缀改变单词词性。在英文文本处理当中,在有些应用当中需要对一个词的不同形态进行归并,提高文本处理的效率。词干提取是抽取词的词干或词根形式,不要求一定能表达完整语义。例如,fishing抽取出fish,electricity抽取出electr。词干提取的方法同样分为:基于规则的方法、基于词典的方法、基于统计的方法。Python开源库的使用Python开源库的使用“结巴”(jieba)(1)jieba.cut(sentence,cut_all=False,HMM=True)(2)加载自定义词典(3)切分词汇、同时进行词性标注(4)命名实体识别:名词、人名等相关例子见教材提纲文本预处理文本的向量空间模型文本的分布式表示文本分类及实现技术文本情感分析文本表示向量空间表示文本表示成为一个向量维度可以是词汇,也可以不是词汇概率模型表示特征选择目前,特征选择的主要方法有:信息增益、卡方统计量、互信息以及专门针对文本内容的TF-IDF等方法。这些特征选择方法可分为有监督和无监督两类,其中TF-IDF、互信息为无监督方法,卡方统计量、信息增益为有监督方法。模型表示文本的向量空间模型和线性代数中学过的向量空间模型是相同的,由基向量和坐标构成。以词汇作为维度为例,在文本表示中,基向量就是特征词汇,坐标就是词汇的权重。
坐标或权重常用的计算方法有布尔权重记录特征词是否在文本中出现过TF特征项频率权重(TermFrequency)TF-IDFTF-IDF(词频率-逆文档频率,TermFrequency-InverseDocumentFrequency)TF-IDF=TF*IDFIDF=log((1+N)/(1+N(ti)))+1可避免IDF=0
维度/文档ABCw1210w2001w3010w4110w5000w6110w7101基本公式平滑公式—替换基本公式的idfLog((1+3)/(1+2))+1Log((1+3)/(1+2))+1使用Python构建向量空间表示可以使用Python开源库sklearn和gensim中的相关类或函数来构造相应的向量空间表示。基本步骤#装载停用词列表#分词、去停用词#特征选择#使用TfidfVectorizer计算每个文档中每个词汇的TF-IDF值例子见教材特别强调的是:下面语句进行特征选择:解释见教材dictionary=Dictionary(texts)dictionary.filter_extremes(no_below=2,no_above=1.0,keep_n=10)扩展阅读向量的重要性提纲文本预处理文本的向量空间模型文本的分布式表示文本分类及实现技术文本情感分析VSM模型的维度是随着文本集的不同而不同,这样会导致大规模文本集处理的困难,因此,希望能将不同文本集的词汇都表示为一个等长向量。分布式表示(DistributedRepresentation)将长短不一的句子表示为一个定长向量,而向量的每个维度不再是词汇,而是代表某种语义特征。具有更加丰富的语义。文本向量表示的技术发展SVD--LDA–word2vec--Glove–FastText—Doc2vec—Elmo—GTP—BertWord2vec之后采取的是神经网络训练学习的方法。Fromgenism.models.doc2vecimportDoc2Vec,TaggedDocument准备训练语料,需要分词训练文档模型model.train使用模型进行文本分析提纲文本预处理文本的向量空间模型文本的分布式表示文本分类及实现技术文本情感分析分类技术概要在分类中涉及到的概念有:分类器、训练、训练样本、测试样本等。分类器是对数据挖掘中对样本进行分类的总称,训练是指对模型的参数进行优化,选取最优的模型参数使得算法能够建立具有很好泛化能力的模型。训练样本是由类别已知的样本组成,用于模型的训练。测试样本是由类别未知的样本组成,用于测试模型的性能。根据文本表示方法的不同,文本分类方法总体上有两大类基于概率模型的分类使用概率文本模型,如n-gram等基于向量空间模型的分类使用文本向量表示,如VSM、Doc2vec等不管是哪类方法,基本流程大都相似。分类的流程基于概率模型的分类器朴素Bayes分类训练:求解以下两组参数分类:按照极大后验例子假设有以下A类、B类共7个训练样本。其中斜体的词汇为特征词,共8个不同的特征词,即:元旦、旅游、假期、计划、跑步、运动、身材、方法。A类4个文本共有10个特征词,B类3文本有7个特征词模型训练-采用unigram,加一平滑分类X=“元旦里,跑步、运动不可少”P(x|A)*P(A)=0.167*0.056*0.056*4/7=0.000299,P(x|B)*P(B)=0.067*0.2*0.2*3/7=0.001149,根据最大后验概率判定准则可见,应当把该文本分为B类。基于向量空间表示的分类KNN分类KNN算法的思想比较简单,即如果一个样本(向量)在特征空间中的
个最近邻样本(向量)中的大多数属于某一个类别,则该样本(向量)也属于这个类别。对文本分类而言,在给定新文本后,考虑在训练文本集中与该新文本距离最近的
篇文本,根据这
篇文本所属的类别判断新文本所属类别。SVM分类简单分类器可以避免过拟合分类方法常用的核函数有线性核函数、多项式核函数、径向基核函数、Sigmoid核函数和复合核函数。SVM在应对多类情况下,常用的方法是将
类问题转化为
个两类问题性能评估分类模型的性能评估真实类别为正例真实类别为负例算法判断为正例ab算法判断为负例cd查全率(召回率,Recall,简记为r)和查准率(准确率,Precision,简记为p),
Python实现:新闻分类为例具体实现方法,其中使用到的主要开源函数包或函数有:gensim.corpora、sklearn.svm、sklearn.feature_extraction.text.TfidfVectorizer、sklearn.metrics.confusion_matrix、sklearn.metrics.classification_report等,用于数据集的表示、TFIDF的计算、SVM模型以及性能分析等。训练和分类两个过程见教材提纲文本预处理文本的向量空间模型文本的分布式表示文本分类及实现技术文本情感分析情感分析也称为观点挖掘,是互联网大数据挖掘应用中的一项重要技术。目标是从文本中识别出显性或隐性表达的褒贬情感,在社会事件、服务评论、票房预测、金融市场等众多领域具有广泛的应用。情感分析分为词汇级别、属性级别、句子级别和篇章级别。以“手机用很久了,今天买了一个新的,屏幕大,分辨率高。如果过几天觉得不好用,还可以退货。”词汇级别情感分析目标是提取文本中词汇的情感,“很久”“新”“大”“高”“不好”都是包含情感的词汇。属性级别是提取文本中的描述对象及其情感,如(手机,新)(屏幕,大)(分辨率,高)(手机,不好用)句子级别是为整条评论文本输出其情感,基于机器学习的方法SnowNLP是一个常用的中文文本处理库,其包含了基于Bayes的情感分类器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 疫情期间陪护管理课件
- 2025安置房购买合同协议书(含物业交接)
- 2025版摩托车改装项目合作开发与技术支持合同
- 2025版保障性住房买卖合同模板
- 二零二五年度航空服务业职工劳动合同
- 网络维护服务年度合同
- 疟疾防治教育课件
- 工业设备采购与维修保养服务合同
- 多功能农产品批发销售合同
- 广东汕头八上数学试卷
- 市场卖菜规划方案(3篇)
- 2025年河南省中考语文试卷(含答案)
- 低空经济现代化产业体系构建与战略路径
- 监管公司准入管理制度
- 贵州省2025年中考第三次模拟考试化学试卷(含答案)
- 水厂易制毒管理制度
- 2025年《社会工作法规与政策》课程标准
- 2025郑州市中牟县辅警考试试卷真题
- 商场日常保洁服务方案投标文件(技术方案)
- 医院防汛救灾管理制度
- 锅炉试题及答案
评论
0/150
提交评论