前言
由于本人打算做图像处理模块,所以对于特征工程模块,主要从两个模块来讲,图像处理模块个非图像处理模块。当然有些基础类的也会抽出来,想要看音频处理的请绕道。
基础类
简单的数据处理
- 二值化:大于某一个阈值置1,小于摸一个阈值置0
- 独热编码:对于每一个类别分一个连续的数字表示。如
- 量化与装箱:
- 固定宽度装箱:按数据宽度装箱,如年龄 [1,10),[11,20)…
- 按分位数装箱:按数据的级数装箱
- 对数变换:对于数字而言(非数字可以转化为数字)将数字进行对数变化。这也给了我们一个启示,其实只要是函数变换,都可以做为一个数据处理变换。只是怎么选择比较合适举个例子,由于对数变化0-1为负值,所以可以考虑向左平移一个单位,对正数据集做处理,对于对数而言,则是将越大的数字,变得约平滑。所以对数很够加强一些小样本的权重。
- 功率变化:
先补一些基础的统计知识
- 数学期望:E(x)为数学期望
- 方差
- 正态分布
简单提一下正态分布, (x-μ)意味方程的对称轴是 μ。方程最大值为 当μ=0时代入结果。可知,当σ越小时取得的最大值越大。也可以了解一下3σ原则。 - 泊松分布
- 二项分布
功率变化最常见对策有 box-cox 变换,而这,跟我们的功率变换有什么相关呢?
请看如下(请注意 正态假设!)
那么 box-cox长什么样,其本质不过是一个分段函数
5.特征缩放 - Min-max特征缩放 一般是 x1 = (x-min)/max-min
- 标准化 x1 =( x-平均值)/方差
- 去中心稀疏化
- 特征选择常用方法(此处不解释)
- 过滤: 过滤掉无用信息
- 包装 : 封装一些有用信息
- 嵌入式方法: 在执行决策的过程中插入一些信息
非图像处理类
文本数据处理
- 词袋一级词袋的向量表示
- 过滤清洗特征
- 停用词 如介词等等
- 基于频率过滤
- 高频词
- 稀有词(可能是错误评论)
- 词干解析(词的映射表,多个单词映射统一结果)
- 短语检测和搭配提取(被认为有不同意义的组合/字符串称为搭配)
- 假设检验提取(判断两个词是否经常出现再一起)
- 似然比检验
- tf-idf 算法
类别特征处理
- Plain one-hot encoding 独热编码
- effect 编码
- dumpy 编码
- feature hash 特征hash
-
首先介绍一下基本的hash知识
考虑到篇幅 决定引用一篇解释的比较详细的博客 https://blog.csdn.net/u012835097/article/details/79407591
先假设你已经看完了这篇博客,我们来解释一下hash 特征在实际应用中的用途,我们知道,对于编码,前面已经提到了三种方式,至少都是 k-1 维的向量。但是如果是对词进行分析,会发现,因词的分类太多发生需要申请的内存空间变大和查找的速度变慢的现象,针对这个问题。我们提出hash特征。对于怎么解决hash冲突。请另查资料。
也就是说,这种方法适用于特征点多的情况。
- Bin-counting
利用概率此处不解释
图像处理类
接下来我们涉及的模块会比较复杂。主要分降维和图像特征提取两个大的模块来讲。对于需要补必要数学知识的地方我会补入,但不会说得特别详细。下一个模块将介绍降维处理和图像特征提取算法。期待下一篇博文。