一、特征工程定义
在数据预处理以后(或者数据预处理过程中),如何从数据中提取有效的特征,使这些特征能够尽可能的表达原始数据中的信息,使得后续建立的数据模型能达到更好的效果,就是特征工程所要做的工作。
二、设计特征的方法
独热特征表示 One-hot Representation
将每个属性表示成一个很长的向量(每维代表一个属性值,如词语)
函数:[0, 0, 1, 0, 0, …, 0, 0, 0, 0]
图像:[0, 0, 0, 0, 0, …, 0, 0, 0, 1]
优点:直观,简洁
缺陷:
“维度灾难” 问题:尤其是我们所构建的语料库包含的词语数据非常多的时候,独热表征在空间和时间上的开销都是十分巨大的
“语义鸿沟” 现象:任意两个词之间都是完全孤立的,是无法刻画句子中词语的语序信息的(之前提到的词袋模型也是如此)。例如,我们是无法通过独热表征来判断“函数”与“偶函数”之间的联系的(但实际上这两个词语是非常相关的)。
TF-IDF(词频-逆文档率)
算法简单高效,工业界用于最开始的数据预处理
主要思想:找到能代表该文档中的“关键词”
词频 (TF, Term Frequency)
TF = 某个词(特征值)在句子(数据)中出现的频率
逆文档率 (IDF, Inverse Document Frequency)
IDF = log(语料库(数据库)的句子(数据)总数) / 包含该词(特征值)的句子(数据)总数)
每个特征值(词)的重要性
举个直观例子:
很多推荐系统都使用该方法,根据用户搜索的信息内容,计算词频等,来推荐相关的信息
三、利用标准数据集进行特征学习(特征预训练)
作用:模型效果验证 & 应用问题中的模型预训练
图像数据预训练:ImageNet
ImageNethttp://www.image-net.org/
1400万张图片数据,2万类别,已标注
常用模型:ResNet,AlexNet,VGG等
常见应用:图像分类、目标检测、目标定位,场景分类等
文本数据预训练:Twitter,Wiki
GloVe: Global Vectors for Word RepresentationGloVe: Global Vectors for Word Representationhttps://nlp.stanford.edu/projects/glove/
2 Billon tweets, 27 Billion 词数,1.2M 词表
常用模型:CBOW,Skip-gram,Glove等Word2Vec模型
常见应用:文本分类,文本推理,翻译等
训练好的特征可以直接作为其他模型的输入来使用
笔者时间问题,还是不把课程内容之外的特征工程评价这一块拿上来。因为其中涉及损失函数(传统特征工程)、CNN、RNN(深度学习)等方法,可以去有关机器学习、深度学习的课程,或者西瓜书、花书一类的经典教辅学习!
下一讲又是全新的章节!加油!