机器学习
人工智能概述
人工智能 > 机器学习 > 深度学习
机器学习是人工智能的一个实现途径
深度学习是机器学习的一个学习方法发展而来
应用
传统预测
图像识别
自然语言处理
机器学习
定义:机器学习是从数据中自动分析获取模型,并利用模型对未知数据进行预测
数据集构成
结构:特征值+目标值
注:
对于每一行数据我们可以称之为样本
有些数据集可以没有目标值
目标值
目标值:类别 - 分类问题
目标值:连续型的数据 - 回归问题
目标值:无 - 无监督学习
机器学习算法分类
监督学习
定义:输入数据是由特征值和目标值所构成。函数的输出可以是一个连续的值(称为回归),或是输出有限个离散值(分类问题)
eg K-近邻算法 贝叶斯分类 决策树与随机森林 逻辑回归 回归 线性回归 岭回归
无监督学习
定义:输入数据是由输入特征值所决定
聚类 K-means
开发流程
1)获取数据
2)数据处理
3)特征工程
4)机器学习算法训练 - 模型
5)模型评估
6)应用
注:算法是核心,数据与计算是基础
2.1可用数据集
2.1.1 可用数据集
搜索引擎
朋友圈广告
学习阶段可以用的数据集:
1) sklearn
2) kaggle
3)UCI
Scikit-工具介绍
Python语言的机器学习工具
sklearn数据集
sklearn.datasets
load_* 获取小规模数据集
fetch_* 获取大规模数据
1、sklearn小规模数据集
sklearn.datasets.load_iris()
2、sklearn大数据集
sklearn.datasets.fetch_20newsgroups(data_home=None,subset=’train’)
subset :’train’或者’test’,’all’可选,选择要加载的数据集
训练集的“训练”,测试集的“测试”,两者的“全部”
3、数据集的返回值
datasets.base.Bunch(继承自字典)
dist[“key”] = values
Bunch.key = values\
数据集的划分
训练数据:用于训练,构建模型
测试数据:在检测检验时使用,用于评估模型是否有效(测试集:20%~30%)
![avatar]{1.jpg}
特征工程介绍
算法 特征工程
特征工程
什么是特征工程
sklearn (特征工程)\
pandas 数据清洗、数据处理\
特征抽取/特征提取\
机器学习算法 - 统计方法 - 数学公式 \
文本类型 -》 数值 \
类型转换 -》 数值 \
特征提取
也叫 特征值化
sklearn.feature.extraction·
字典特征提取 - 类别 -> one-hot编码
作用:对字典数据进行特征值化
sklearn.feature_extraction.DictVectorizer(sparse = true,…)
>vector 数学:向量 物理:矢量
>>矩阵 matrix 二维数组
>>向量 vector 一维数组\
输出:
1)DictVectorizer.fit_transform(X)
X:字典或者包含字典的迭代器返回值:返回sparse矩阵
2)DictVectorizer.inverse_transform(X)
X:array数组或者spars矩阵 返回值:转换之前数据格式
3)DictVectorizer.get_feature_names()
返回类别名称
父类:转换器类
返回:
sparse矩阵
sparse稀疏(将非零值 按位置表示出来
可节省内存-提高加载效率)
注:对于特征当中存在类别信息的常做one-hot编码的处理
应用场景:
1)pclass,sex 数据集当中;类别特征非常多的
处理思路:1、先将数据集的特征-》 字典类型
2、DictVectorizer转化
2) 本身数据就是字典类型
直接DictVectorizer转化
文本特征提取
特征:特征词
方法一:CountVectorizer
1)实例化CountVectorizer
2)调用fit_transform方法输入数据并转化(注意返回格式,利用toarray()进行sparse矩阵转化为array数组)
stop_words 停用的
停用词表
eg: A = CountVectorizer(stop_words = [“is”, “too”]) \
特征预处理\
通过一些转换函数将特征数据转化成更加适合算法模型的特征数据过程。\
数值型数据的无量纲化:(1)归一化 (2)标准化\
API:sklearn.preprocessing \
目的:将不同规格的数据转换到同一规格。\
归一化
将原始数据进行变换把数据映射到(默认为[0,1])之间
sklearn.preprocessing.MinMaxScaler(feature_range=(0,1)....)\
MinMaxScaler.fit_transform(X)\
X:numpy array格式的数据[n_sample,n_features] \
返回值:转换后的形状相同的array
标准化
特征降维\