Python机器学习—1 监督学习(1.1-1.3数据的预处理and编码)
1.1 简介
- 监督学习:监督学习是值在有标记的样本(labeled sample)上建立机器学习的模型。
- 无监督学习:面对的是没有标记的数据,假设需要把一些数据分成不同的组别,但是对分组条件毫不知情。
1.2 数据预处理技术
- 在实际中,原始数据通常是计算机无法理解的,所以要对原始数据进行预处理.
1.2.1 准备工作
- 导入程序包and数组:
import numpy as np
from sklearn import preprocessing #预处理
data=np.array([[3, -1.5, 2, -5.4],
[0, 4, -0.3, 2.1],
[1, 3.3, -1.9, -4.3]])
1.2.2 详细步骤—>归一化
- 机器学习中最常用的归一化形式就是将特征向量调整为L1范数.
data_normalized=preprocessing.normalize(data,norm="l1")
print ("\n L1 normalized data=",data_normalized)
1.3 标记编码方法
- 在监督学习中,需要处理各种各样的标记。
- 这些标记可能是数字、也可能是单词。
- 如果是数字,那么算法可以直接使用它们。
- 如果是单词,则需要标记编码把单词转化为数值形式。
标记编码代码如下:
from sklearn import preprocessing #预处理
label_encoder=preprocessing.LabelEncoder()
input_class=['audi','ford','audi','toyota','ford','bmw']
label_encoder.fit(input_class)
for i,item in enumerate(label_encoder.classes_):
print (item,"-->",i)
输出:
编码查看
ChaKan=['toyota','ford','audi']
encoded_labels=label_encoder.transform(ChaKan)
输出:
这样,计算机就可以识别audi、ford等单词了
————————————————————————————————————————
记录自己的一句座右铭:
路漫漫其修远兮,吾将上下而求索。