机器学习应用——导学part

Python之机器学习第一弹。
Python被称为最简单好上手的语言之一,基于其极强的关联性,对各种库的引用,和资源的关联,使其实现功能非常容易。一些底层逻辑不需过多过深的理解。

机器学习是Python发展中应用广泛的一个领域。
本篇将简要介绍:
1.机器学习概念
2.sklearn库初步介绍(标准数据集及基本功能)
3.一些相关书籍及课程推荐

一、机器学习的目标

1.机器学习简介及其分类

(1)机器学习是实现人工智能的手段,其主要研究内容是如何利用数据或经验进行学习,改善具体算法的性能。
(2)特点
①多领域交叉,涉及概率论、统计学,算法复杂度理论等多门学科
②广泛应用于网络搜索、垃圾邮件过滤、推荐系统、广告投放、信用评价、欺诈检测、股票交易和医疗诊断等应用

(3)分类
①监督学习(Supervised Learning)
②无监督学习(Unsupervised Learning)
③强化学习(Reinforcement Learning,增强学习)
④半监督学习(Semi-supervised Learning )
⑤深度学习(Deep Learning)

2.Python Scikit-learn(一组简单有效的机器学习工具集)

①依赖Python的NumPy,SciPy和matplotlib库
②开源、可复用
③常用函数
机器学习应用——导学part_第1张图片

3.相关书籍及课程推荐

①图书-《机器学习》-周志华(西瓜书)
出版社:清华大学出版社
主页:http://t.cn/RXvpCKB

②图书-《PRML》- Bishop
出版社:Springer
主页:http://t.cn/RXv0YVz
此书为机器学习贝叶斯学派的经典书籍,广度深度,可读性及可用性兼顾

③课程-《Machine Learning 》 - Andrew Ng
Coursera版:前百度首席科学家斯坦福教授吴恩达老师(Coursera创始人)录制的在线课程
课程主页:http://t.cn/RJZQbV2Stanford手书版
在线观看:http://t.cn/RwUWKMS
课程主页:http://cs229.stanford.edu/
此课程讲解机器学习的原理和算法知识

④课程-《CS231n》 - Fei-Fei Li(斯坦福大学)
课程主页:http://cs231n.stanford.edu/
在线观看:http://t.cn/RqRNasR
主要介绍深度学习在计算机视觉领域的应用

⑤课程-《Reinforcement Learning》- David Silver
课程主页;http://t.cn/Rw0rwtU
在线观看:http://t.cn/RIAfRUt
由AlphaGo的主要开发者团队讲解的,有关强化学习和深度强化学习原理及其应用技术

二、Sklearn库的安装

1.sklearn库

①sklearn是scikit-learn的简称,是一个基于Python的第三方模块。
②sklearn库集成了一些常用的机器学习方法,在进行机器学习任务时,并不需要实现算法,只需要简单的调用sklearn库中提供的模块就能完成大多数的机器学习任务。

③sklearn库是在Numpy、Scipy和matplotlib的基础上开发而成的,因此在介绍sklearn的安装前,需要先安装这些依赖库。

2.sklearn库的基础库

①Numpy (Numerical Python的缩写)是一个开源的Python科学计算库。
②Scipy库是sklearn库的基础,它是基于Numpy的一个集成了多种数学算法和函数的Python模块。
③matplotlib是基于Numpy的一套Python工具包,它提供了大量的数据绘图工具。

3.安装顺序

机器学习应用——导学part_第2张图片

三、sklearn库中的标准数据集及基本功能

1.数据集总览

机器学习应用——导学part_第3张图片

注:小数据集可以直接使用,大数据集要在调用时程序自动下载(一次即可)
这里举几个例子

2.波士顿房价数据集

①波士顿房价数据集包含506组数据,每条数据包含房屋以及房屋周围的详细信息。
②其中包括城镇犯罪率、一氧化氮浓度、住宅平均房间数、到中心区域的加权距离以及自住房平均房价等。
③因此,波士顿房价数据集能够应用到回归问题上。
④部分数据
机器学习应用——导学part_第4张图片

⑤使用sklearn.datasets.load boston即可加载相关数据集
⑥重要参数:
return_X_y:表示是否返回target(即价格),默认为False,只返回data(即属性)。

3.鸢尾花数据集

①鸢尾花数据集采集的是鸢尾花的测量数据以及其所属的类别。
②测量数据包括:尊片长度、尊片宽度、花瓣长度、花瓣宽度。
③类别共分为三类:Iris Setosa,Iris Versicolour,Iris Virginica。可用于多分类问题。
④使用sklearn.datasets.load iris即可加载相关数据集

⑤参数:
return_X_y:若为True,则以(data,target)形式返回数据;默认为False,表示以字典形式返回数据全部信息(包括data和target)。

4.手写数字数据集

①手写数字数据集包括1797个0-9的手写数字数据,每个数字由8*8大小的矩阵构成,矩阵中值的范围是0-16,代表颜色的深度。
②数字0的样本
机器学习应用——导学part_第5张图片
③使用sklearn.datasets.load digits即可加载相关数据集

④参数
return_X_y:若为True,则以(data, target)形式返回数据;默认为False,表示以字典形式返回数据全部信息(包括data和target)。

⑤n_ class(特别的属性):表示返回数据的类别数,如:n_class=5,则返回0到4的数据样本。

5.sklearn库的基本功能

①sklearn库的共分为6大部分,分别用于完成分类任务、回归任务、聚类任务、降维任务、模型选择以及数据的预处理。
②分类任务
机器学习应用——导学part_第6张图片

③回归任务
机器学习应用——导学part_第7张图片
④聚类任务
机器学习应用——导学part_第8张图片
⑤降维任务
机器学习应用——导学part_第9张图片

总结

本篇干货不多,这里只是简单概述,之后会以实例对这些算法的使用方式进行具体介绍。
将分为无监督学习,有监督学习,强化学习进行具体介绍
下一篇介绍:机器学习之无监督学习,将结合实例及代码详述聚类、降维、基于聚类的整图分割实例

如有错误,欢迎指正!

你可能感兴趣的