基本概念

机器学习应用三方面:①图像识别、自然语言处理、传统预测
应用工具框架:SKlearn(机器学习)、
机器学习定义:机器学习是从数据中自动分析获得规律,并利用规律对位置数据进行预测
数据集构成
历史数据的格式
①csv文件(pandas–numpy)-numpy释放GIL锁,可以进行多线程运算
②格式不太符合机器学习要求数据的格式
可用数据集

***数据集常用的结构:***特征值+目标值
注:有些数据集可能没有目标值

特征工程
①重复值—不需去重,同样的样本并不影响学习
②对特征值进行处理的步骤称做特征工程
特征工程:
将原始数据转换为更好地代表预测模型地潜在问题的特征的过程,从而提高对位置数据的预测准确性。特征值的处理,会影响最后的结果
工具:
SCIKIT-LEARN
内容:
数据的特征抽取、数据的特征与处理、数据的降维(必须掌握)
特征工程–特征抽取
将文本、字符串等转换为数字类型
目的:
对文本等数据进行特征值化,让计算机更好理解数据
①字典特征抽取:对字典数据进行特征值化
API:
Sklearn.feature_extraction
类:sklearn.feature_extraction.DictVectorizer
fit_transform(sparse=True)


(把字典中一些类别的特征分别进行转换成特征,默认的一些数值类型数据则不会进行转换)
get_feature_names()—获取特征值类别名称

(对于数组数据,有些类别需要先转换为字典数据)
②文本特征抽取:对文本数据进行特征值化
第一种方式:统计次数
API:




①统计所有文章当中的词,重复的只看作一次,词的列表
②对每篇文章,在词的列表里面进行统计每个词出现的次数
③单个字母不统计:因为单个字母并不反应文章的主题,没有分类依据
④对于中文,必须要断开,才可以进行词的抽取。
可以采用jieba库进行分词 pip install jieba
#文章划分

#对三种文章进行特征值化

第二种方式:tf idf—对于中性的一些词语能较好处理—分类机器学习的重要方法
①Tf:term frequency—词的频率—与countvec相同
②Idf:iverse-document-frequency–逆文档频率—log(总文档数量/该词出现文档数),每个词在一篇文章中的重要性程度
Tf*idf=重要性程度

API:


(返回重要性权重矩阵)
特征预处理(对数据处理)—数值型数据处理
通过特定的统计方法将数据转换成算法要求的数据
①数值型数据:归一化、标准化、缺失值
②类别型:one-hot
③时间类型:时间的切分
API:所有预处理方法

①归一化

API:


(可以指定范围)
数据类型都是二维数组,和特征抽取的列表形式不同
目的:使得特征不会对最终结果造成更大影响。
问题:
如果数据中异常点较多,归一化会有什么影响?
答:
异常点对最大值最小值影响太大(这也是归一化的缺点)–一般不适用归一化

(鲁棒性较差-一般不使用)
②标准化—标准正态分布

异常点对均值的影响较小,数据集中方差越小

API:

***(在已有样本足够多的情况下比较稳定,适合现代嘈杂大数据场景)***
③缺失值处理—填补、删除
填补:按列填补(统一特征值类型)
API:
缺失值必须是np.nan的float类型缺失值,可以用replace()对其中的缺失值进行替换

528

被折叠的 条评论
为什么被折叠?



