1.29学习总结:特征抽取TF-IDF

一、概述

  用来统计词频及逆向文件频率。词语由t表示,文档用表示,词料库由D表示,词频TF(t,d)表示词语在文档中出现的频率,文件频率DF(t,D)表示包含词语的文档个数。

  TF:指HashingTF,是一个转换器,在文本处理时,接收词条的集合并将其转换成固定长度的特征向量,这个算法会在哈希的同时统计词频。

  IDF:是一个评估器,在一个数据集上调用它的fit()方法,产生一个IDFModel,该模型接受特征向量计算词频。IDF会减少在词料库中出现频率较高的词的权重,因为词频高代表其辨识度较低,所以降低他的重要程度。

  TF-IDF定义式:

   TF-IDF度量式:

二、实现过程

   首先先定义一个句子

   使用分解器将句子划分成单词

   对于每一个句子,使用HashingTF转化成特征向量

   最后使用IDF重新调整特征向量

三、代码实现

  3.1导入相关包

   

   3.2创建一个简单的DataFrame

   

   .toDF()方法中的两个参数含义是构建DataFrame的两个列,一个列是标签列,对应句子前的0或者1,一个列是句子列,代表句子

   3.3对上面构建的二维表进行转化,把句子划分成单词

   

   3.4将句子哈希成特征向量

   

   3.5使用IDF进行训练

   

   调用.fit()进行训练

   3.6调整权重

   

四、学习视频

https://www.bilibili.com/video/BV1oE411s7h7?p=73

原文地址:https://www.cnblogs.com/wangzhaojun1670/p/14407216.html