1.1 机器学习的定义
机器学习是从数据中自动分析获得模型,并且利用模型对未知数据进行预测。
可想而知,利用机器学习可以大幅度提高学者的学习速度,使机器可以在人类的操作下发挥出更大的作用。
1.1.1 图片直观解释
根据此图,我们可以直观看出,在人类延续至今的过程当中,我们惯用的思维是:利用我们日常生活中所积累的种种经验,去归纳总结出一个特有的规律,然后在将一个新的问题代入此规律当中,就可以得到一个预测值,我们可以根据此预测值来进行下一步的具体操作。一些特有的规律很好找,例如:函数关系,数字规律等。可如果输入的是一个指纹信息,又该如何呢?在此基础之上,人们将“人类发现规律并且预测模型 ”的实例运用到机器当中会发生什么呢?
这样,机器可以帮助人类做一些更加复杂化、精确化的数据处理,并且可以生成更有理论依据的预测模型。
1.2 实例引入
就拿当下较为火热的猫狗识别来说,对于人类来说是非常轻松就可以识别什么是猫什么是狗,可是对于机器呢?
在计算机的“眼睛”中,这些图片无非都是一个个像素点构成的数字矩阵,那又该如何让计算机按照人类的想法识别出猫狗呢?我们的第一想法可能就是,让计算机进行机器学习,建立出一个关于猫狗的模型,后进行模型与图片比对进而得出结论。那么我们就开始进入正题。
1.3 监督学习与无监督学习
监督学习(分类与回归):输入数据有特征有标签,也就是说是有标准答案的。
- (分类 k-近邻算法、贝叶斯分类、决策树与随机森林、逻辑回归、神经网络)
无监督学习(聚类):输入数据是有特征无标签的,也就是说是没有标准答案的。
- (聚类 k-means)
1.4 机器学习的大概流程
2.1 可用数据集介绍
在机器学习当中,常用的数据集为:scikit-learn、UCI数据集、Kaggle
scikit-learn网址下载:http://scikit-learn.org/stable/datasets/index.html#datasets
UCI数据集网址下载:http://archive.ics.uci.edu/ml/
Kaggle网址下载:Find Open Datasets and Machine Learning Projects | Kaggle
2.1.1 特点介绍
在接下来的学习当中,我们由浅入深,先学习sklearn数据集。
2.2 sklearn安装
pip3 install Scikit-learn==0.19.1
安装之后可以打开Pycharm,输入如下指令,看是否报错(检查是否安装成功)
import sklearn
2.2.1 scikit-learn数据集API介绍
调用数据集: sklearn.datasets
其中有两种方法进行获取数据
1. datasets.load_*()
- 获取小规模数据集,数据包含在datasets里
2. datasets.fetch_*(data_home=None)
- 获取大规模数据集,需要从网络上下载,函数的第一个参数是data_home,表示数据集下载的目录,默认是 ~/scikit_learn_data/
2.2.2 实际操作(代码)
from sklearn.datasets import load_iris
# 获取鸢尾花数据集
iris = load_iris()
print("鸢尾花数据集的返回值:\n", iris)
# 返回值是一个继承自字典的Bench
print("鸢尾花的特征值:\n", iris["data"])
print("鸢尾花的目标值:\n", iris.target)
print("鸢尾花特征的名字:\n", iris.feature_names)
print("鸢尾花目标值的名字:\n", iris.target_names)
print("鸢尾花的描述:\n", iris.DESCR)
输出结果:
今天的分享就到这,喜欢的可以关注博主~