1.1 IDE配置及安装测试
工欲善其事,必先利其器。python对于机器学习来说是一个很好的选择。本系列博客采用的是python 3.6.0 + pycharm,再辅助一些机器学习库,例如numpy,matplotlib等,这些读者可以自行谷歌安装。
安装好以后可以运行以下代码,检测安装的效果。
import numpy as np from numpy import * import matplotlib.pyplot as plt # 测试数据集 dataSet = [[-0.017612,14.053064],[-1.395634 ,4.662541],[-0.752157 ,6.538620],[-1.322371 ,7.152853], [0.423363 ,11.054677],[0.406704 ,7.067335],[0.667394 ,12.741452],[-2.460150 ,6.866805], [0.569411 ,9.548755],[-0.026632 ,10.427743],[0.850433 ,6.920334],[1.347183 ,13.175500], [1.176813 ,3.167020],[-1.781871 ,9.097953]] # print(mat(dataSet)) dataMat = mat(dataSet).T # print(dataMat) # plt.scatter(dataMat[0],dataMat[1],c='red',marker='o') plt.scatter(dataMat[0].tolist(),dataMat[1].tolist(),c='red',marker='o') x= np.linspace(-2,2,100) y = 2.8*x+9 plt.plot(x,y) plt.show()
运行截图:
出现这个运行状态表明主要模块安装成功。
1.2 对象,矩阵与矢量化编程
面向对象对于大多数程序员来说,应该是一个不陌生的概念。那么在机器学习中,对象是指什么呢?是指含有一组特征的行向量。行向量类似于我们生活中的一张表的一行,如下图:
表中第一行的列表示特征的名称。所有的特征组合在一起构成一组行向量,也称作特征向量。