一、机器学习概述

机器学习是从数据里, 自动剖析获取规律(模型), 并且借助规律针对未知数据实施预测。

二、数据集的构成1.数据集存储

机器学习的历史数据通常使用csv文件存储。

不用mysql的原因:

1、文件大的话读取速度慢;

2、格式不符合机器学习要求的格式

2.可用的数据集

:大数据竞赛平台、80万科学家、真实数据、数据量巨大

网址:

UCI, 有着360个数据集, 这些数据集覆盖了科学、生活、经济等领域, 其数据量达到几十万。

UCI数据集网址:

-learn:数据量较小、方便学习

-learn网址:

3.常用数据集的结构

用于判定目标值所借助的条件, 像房子的面积、朝向等, 这是特征值, 期望达成的目标, 例如房子价格, 这是目标值。

有些数据集可以没有目标值。

三、特征工程

名为特征工程的过程, 进行的是将原始那般的数据, 转化成能够更有效地去代表预测模型潜在之问题的特征的行为;正是此, 能够提升对于未知数据预测之时而产生的准确性;若特征并非良好, 极有可能即便算法堪称良好, 终了其结果也不会达至尽为如人所愿的状态, 是这样的情况。

可用于数据读取、对数据的基本处理

有更多对于特征的处理的强大的接口

特征抽取:

特征抽取API:.

1.字典数据特征抽取

API:..

语法如下:

KaggleUCIscikit-learn数据集_机器学习数据集特征工程_Python特征工程

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

2.文本特征抽取

Count

类:..text.

用法:

机器学习数据集特征工程_KaggleUCIscikit-learn数据集_Python特征工程

1.统计所有文章当中所有的词,重复的只看做一次

2.对每篇文章,在词的列表里面,统计每个词出现的次数

3.单个字母不统计

留意: 此方法默认情况下不支持中文 , 每个中文汉字 将被当作成为一个英文字母来对待看待 , 中间倘若有空格或者逗号便会被分隔分开 , 同样的情形 , 一个汉字是不予进行统计计算的。(中文能够可以使用jieba分词: pip jieba , 依照 usage 使用: jieba.cut("我是一个程序员"))。

3.文本特征抽取:tf-idf

上边的没法处理中性词诸如“明天”“中午”“因为”等, 所以能够启用tfidf方法。

tf:term 词频(和方法一样)

idf, 也就是逆文档频率, 它是通过计算对数, 用总文档数量除以该词出现的文档数得到的。

tf * idf 重要性程度

类:..text.

4.特征预处理:归一化

特征预处理:通过特定的统计方法,将数据转换为算法要求的数据

特征预处理API:.

KaggleUCIscikit-learn数据集_机器学习数据集特征工程_Python特征工程

归一化API:..

机器学习数据集特征工程_KaggleUCIscikit-learn数据集_Python特征工程

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

5.特征预处理:标准化

将原始数据变换到均值为0,标准差为1的范围内

Python特征工程_机器学习数据集特征工程_KaggleUCIscikit-learn数据集

标准化API:

..

Python特征工程_机器学习数据集特征工程_KaggleUCIscikit-learn数据集

符合标准的情况适宜当下喧闹繁杂的大量数据场景, 在已拥有的样本数量充足多的情形下相对稳定。

6.特征预处理:缺失值处理

插补, 是要通过缺失值, 利用每行或者每列的平均值、中位数来进行填补, 一般情况下是按照列来进行填补。

API:..

数据当中的缺失值标记:默认为np.nan

Python特征工程_机器学习数据集特征工程_KaggleUCIscikit-learn数据集

更多推荐