一、机器学习简介
1、图灵(图灵测试)和马文.李.闵斯基(人工智能领域贡献杰出)
人工智能发展限制因素:计算能力,算法,数据大小
2、什么是机器学习?
机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测。
3、为什么需要机器学习?
解放生产力(智能客服),解决专业问题(ET医疗)。
让机器学习程序代替人工操作步骤,减少企业的成本,提高企业的效率。
4、机器学习,深度学习能做些什么?
图像识别,自然语言处理,传统预测。
5、机器学习库和框架
Scikit learn,TensorFlow(推荐使用)
pythorch,theano,caffe2,Chainer。
支持语言: Python
6、学习书籍
《统计学习方法》,《机器学习》,《Python数据分析与挖掘实战》,《机器学习系统设计》等。
二、特征工程和文本特征提取
- 数据集的组成
机器学习中的数据以文件形式存储,由于使用的数据大,mysql等数据库受限于性能瓶颈,读取速度慢,并且格式不符合机器学习要求数据的格式。
Pandas:读取工具。基于numpy。。
扩展:numpy为什么快?
释放了GIL锁:
(1)可用数据集
- kaggle:
大数据竞赛平台;80万科学家;真实数据;数据量巨大
- scikit-learn
数据量小;方便学习
- UCI:
https://archive.ics.uci.edu/ml/index.php
收录360个数据集;覆盖科学,生活等多个领域;数据量几十万
(2)常用数据集数据的结构组成
结构:特征值+目标值
注意:有些数据集可以没有目标值
(3)数据中对于特征的处理
Pandas:一个数据读取非常方便以及基本的处理格式的工具
Sklearn:对于特征的处理提供强大的接口
2、特征工程
(1)定义
将原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高了对未知数据的预测准确性。
(2)Scikit-learn库:
Python语言的机器学习工具
许多知名的机器学习算法
安装sklearn:
Linux系统:
安装python,pip工具,virtualenv工具
在虚拟环境中安装:pip3 install sklearn
在Python环境中:import sklearn
Windows:
安装python,pip工具(Python官网可下载安装)
Cmd命令行中执行 pip install sklearn 即可完成安装
(3)特征抽取
示例:
上述示例演示结论:特征抽取对文本,字符串等数据进行特征值化。
特征值化是为计算机更好的去理解数据。
- Sklearn中特征抽取的API:sklearn.feature_extraction
- 字典特征抽取
作用:对字典数据进行特征值化
类:sklearn. feature_extraction.DictVectorizer
字典数据抽取:把字典中一些类别数据,分别进行转换成特征。
数组形式,有类别的这些特征先要转换成字典数据。
One-hot编码:
上例中执行结果中如下:
- 文本特征抽取以及中文问题
作用:对文本数据进行特征值化
第一种方式:
类:sklearn.feature_extraction.text.CountVectorizer
示例:
文本特征抽取:Count。主要可用于:文本分类,情感分析。
处理中文:
中文默认不支持特征抽取,用空格区分统计。
针对中文处理,首先需要进行分词:
第二种方式:tf-df分析问题
Tf: term frequency:词的频率,出现的次数
iDf : inverse document frequency逆文档频率,log(总文档数/该词出现的文档数量)
tf*idf:重要性程度
示例:
Tfidf:分类机器学习算法的重要依据。