机器学习算法基础
机器学习
简单理解:机器在一堆数据中学习规律的过程,通过训练,学习到函数中的参数,保存模型,通过训练好的模型,来预测未知的事情
数据集的组成
一般都是csv文件类型,numpy释放了gil锁,panda读取文件就非常快,真正的多线程,数据主要由特征值和目标值组成,比如要做一个疾病分类,症状就是特征,咳嗽就是特征,感冒疾病就是目标值
一、特征工程
1.特征工程是什么
特征工程是把一些不规则的数据,转换成可以用模型训练的数据,从而提高模型的准确度.
2.字典特征的抽取
把字典中的字符串数据进行one-hot编码,把每一种不重复的特征归为一类,one-hot,就是出现的为1,其它列都为0.
sklearn api
3.文本特征的抽取以及中文的问题
1.文本特征的抽取
2.在每一篇文章里面统计每个词出现的次数,单个字不统计
3.遇到有中文通过jieba分词,在进行特征抽取
4.tf-idf抽取文本特征
tf:词的频率 就是词在文章中出现的次数
idf:逆文档频率
一个词在一篇文章出现很多,在另一篇文章出现很少,就可以做分类
二、特征预处理
1.归一化
特征预处理:通过特定的统计方法,将数据转换成算法要求的数据
归一化:通过对原始数据的变换,把数据映射到[0,1]之间
计算公式
归一化计算方法举例
归一化的作用:某个特征对结果影响不大
归一化的缺点:对异常点影响很大,鲁棒性不好,就是稳定性差,最大值和最小值是变化的
2.标准化
标准化:通过对原始数据进行变换,把数据变换成均值为0,方差为1的范围之内
标准化和归一化的区别
标准化总结
标准化适合现代嘈杂大数据环境
2.缺失值
缺失值处理的两种方法
要么删除
要么填补
建议用填补的方式
按照特征列去填补
总结
特征处理方式