机器学习是一个计算机程序,针对某个特定的任务,从经验(即数据,谁的数据规模大、质量好,谁就占据了机器学习个人工智能领域最有利的资本。)中学习,并且越做越好。
机器学习工具
库:numpy、pandas、scikit-learn、matplotlib
开发环境:Anaconda、Pycharm
scikit-learn包含了几乎所有主流的机器学习算法,提供了一致的调用接口。详情可以参考官网文档:http://scikit-learn.org
机器学习流程
-
数据采集和标注
-
数据预处理
缺失值、异常值和重复值的处理,将不适合进入机器学习模型的数据处理掉。缺失值、异常值和重复值的处理,将不适合进入机器学习模型的数据处理掉。 -
特征选择
基于业务背景人工选择特征、基于模型自动选择特征。 -
模型选择
scikit-learn官网提供了一个模型速查表,针对几个简单问题就可以选择一个相对合适的模型。
-
模型训练与测试
模型训练需要把数据集分成训练集和测试集,训练集建模,测试集评价模型准确性。
#切分数据
from sklearn.cross_validation import train_test_split
x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size=0.2, random_state=2)
#建立模型,训练
from sklearn import svm
clf = svm.SVC(C=1.0, kernel='rbf', gamma=0.5)
clf.fit(x_train, y_train)
#模型测试
clf.score(x_train, y_train)
clf