数值特征和分类特征
以下图为例子进行学习:
- Age: 年龄本身就是数值特征,数值特征可以比较大小。
- Gender: 二分的分类特征,可以用0和1来表示男性和女性。
- Natinoality: 可以用0-197的这些数字建立一一映射,但是由于国籍之间没有大小关系。固改用One-hot编码来表示国籍:用197维的向量来表示。其中全0的向量代表国籍缺失。
这样,我们就可以用一个199维的向量来表示一个人:
Quesion: 为什么国籍要用One-Hot编码而不是直接用数字编码更节省存储空间?
- 数字编码相加无实际意义:
- One-hot编码的相加更能够表示特征:
处理文本数据
Step1:Tokenization(Text to Words)
把文本中的单词都进行分割,将一篇文变为一个个词:
Step2:计算词频
- 建立一个空的哈希表来对词频进行计数
- 对哈希表按照词频由大到小进行排序,index从1开始。(哈希表长度被称为vocalubary)①为避免最后vocalubary过于庞大,我们进行计数和排序的目的就在于此,②还可以筛选掉一些人名或者拼写错误的词,最后只取排序前面的单词进行编码即可。
Step3:One-hot编码
对文本中的每一个词编码成其在哈希表中的index:
若一个单词在哈希表中不存在,则直接编码为0或者忽略即可。