python机器学习基础特征工程算法详解
一、机器学习概述
机器学习是从数据里, 自动剖析获取规律(模型), 并且借助规律针对未知数据实施预测。
二、数据集的构成1.数据集存储
机器学习的历史数据通常使用csv文件存储。
不用mysql的原因:
1、文件大的话读取速度慢;
2、格式不符合机器学习要求的格式
2.可用的数据集
:大数据竞赛平台、80万科学家、真实数据、数据量巨大
网址:
UCI, 有着360个数据集, 这些数据集覆盖了科学、生活、经济等领域, 其数据量达到几十万。
UCI数据集网址:
-learn:数据量较小、方便学习
-learn网址:
3.常用数据集的结构
用于判定目标值所借助的条件, 像房子的面积、朝向等, 这是特征值, 期望达成的目标, 例如房子价格, 这是目标值。
有些数据集可以没有目标值。
三、特征工程
名为特征工程的过程, 进行的是将原始那般的数据, 转化成能够更有效地去代表预测模型潜在之问题的特征的行为;正是此, 能够提升对于未知数据预测之时而产生的准确性;若特征并非良好, 极有可能即便算法堪称良好, 终了其结果也不会达至尽为如人所愿的状态, 是这样的情况。
可用于数据读取、对数据的基本处理
有更多对于特征的处理的强大的接口
特征抽取:
特征抽取API:.
1.字典数据特征抽取
API:..
语法如下:

抽取字典数据: 把字典里的类别性质数据, 逐个地转化为特征数据来进行。所以, 要是输入呈现为数组形态, 而且具备那些带有类别的特征, 那就得先转变为字典数据, 之后再开展抽取操作。
2.文本特征抽取
Count
类:..text.
用法:

1.统计所有文章当中所有的词,重复的只看做一次
2.对每篇文章,在词的列表里面,统计每个词出现的次数
3.单个字母不统计
留意: 此方法默认情况下不支持中文 , 每个中文汉字 将被当作成为一个英文字母来对待看待 , 中间倘若有空格或者逗号便会被分隔分开 , 同样的情形 , 一个汉字是不予进行统计计算的。(中文能够可以使用jieba分词: pip jieba , 依照 usage 使用: jieba.cut("我是一个程序员"))。
3.文本特征抽取:tf-idf
上边的没法处理中性词诸如“明天”“中午”“因为”等, 所以能够启用tfidf方法。
tf:term 词频(和方法一样)
idf, 也就是逆文档频率, 它是通过计算对数, 用总文档数量除以该词出现的文档数得到的。
tf * idf 重要性程度
类:..text.
4.特征预处理:归一化
特征预处理:通过特定的统计方法,将数据转换为算法要求的数据
特征预处理API:.

归一化API:..

多种特征处于同等重要的状态, 与此同时, 特征数据相互之间的差距比较大, 在这种情形下, 要开展归一化操作。然而, 由于归一化极易受到异常点的干扰影响, 所以, 这个方法所具备的鲁棒性不是很好, 这就导致了该方法仅仅适用于传统的精确小数据场景。
5.特征预处理:标准化
将原始数据变换到均值为0,标准差为1的范围内

标准化API:
..

符合标准的情况适宜当下喧闹繁杂的大量数据场景, 在已拥有的样本数量充足多的情形下相对稳定。
6.特征预处理:缺失值处理
插补, 是要通过缺失值, 利用每行或者每列的平均值、中位数来进行填补, 一般情况下是按照列来进行填补。
API:..
数据当中的缺失值标记:默认为np.nan

更多推荐
所有评论(0)