【Python机器学习】01_机器学习概述
一、前言
近年来,人工智能一词频繁出现在我们的视野。从深蓝到阿法狗,人工智能已经成为未来趋势。而机器学习又是人工智能的一大重要分支,所以学习机器学习也是一个很好的选择。本系列文章将使用通俗的语言讲解机器学习,并使用scikit-learn模块实现常用的机器学习算法。
二、机器学习
机器学习是从数据中提取知识的科目,它是计算机技术与概率论、统计学等数学理论的结合。简单来说,机器学习就是寻找一个函数。我们给定一个输入,它就可以输出我们想要的内容。我们可以看几个实际的例子。
现在人脸识别、语音识别、自动驾驶等技术都比较热门,我们可以分别看看这三种技术的输入、函数、输出是什么。
对于人脸识别,输入是人脸的图像,输出是这个人的姓名或者其它标识,而函数我们好像无法描述;对于语音识别,输入是声音信号,输出是文字,函数我们同样无法描述;对于自动驾驶,输入是各种传感器的数据,四周的图像等,输出是下一步操作(转方向盘、踩油门、刹车),函数我们依旧无法描述。
可以发现,机器学习通常要找的函数是非常复杂的,这些函数很难描述,也正因为人难以描述,所以需要机器学习。
三、监督学习和非监督学习
3.1、学习方式
我们需要大量的历史数据来驱动寻找函数的过程。根据数据的的不同,我们通常有两种不同的学习方式。分别是监督学习和非监督学习。
对于监督学习,数据需要包含特征值和目标值两个部分。 而对于非监督学习,目标值的存在不是必要的。下面我们用两个例子区分一下监督学习和非监督学习。
3.2、监督学习
假如有一个射箭任务,我们的目标就是命中靶心,经过多次有效练习,我们可以很精准命中靶心。我们可以把这个任务理解为监督学习。
3.3、非监督学习
现在有另外一个任务,有一堆重量分别是10kg、20kg、30kg,单大小一样的铁球混合在一起,让你胡乱用力丢,最后我们可以看到下图的效果:
图中绿色为10kg、蓝色为20kg、黄色为30kg,为了区分
可以发现绿色集中在外圈,蓝色集中在中间,而黄色则离人最近。虽然我们通过肉眼无法知道球的重量,但是通过抛球后的圈,我们可以猜测各个球的重量。
四、机器学习算法
4.1、函数集(function set)
在上面我们提到,机器学习是要寻找一个函数。但是光说寻找一个函数如同大海捞针,无从下手。为了有更明确的目标,我们可以把函数的范围进一步缩小,比如我们假定我们要找的函数形式如下:
y = w x + b y = wx + b y=wx+b
其中x是输入,y是输出,w和b是我们函数的参数。因为不同的w和b可以确定不同函数,所以我们把上面有未知w和b的函数叫函数集。
在确定好函数集后,我们就可以在函数集寻找一个最优的函数(最优的一组w和b)。具体寻找方式会在后面讲解。
4.2、算法
机器学习算法在机器学习中起到了非常重要的作用,在我们确定了使用的算法时,就相当于确定了函数集。之后只需要在函数集中找到最优的函数即可。
各个算法有各自的优点 ,适用不同的任务。因此我们只有熟悉各个算法的特点,才能很好的运用各个算法。
下面是我们会学到的几个算法:
- k近邻
- 决策树
- 随机森林
- 朴素贝叶斯
- 线性回归
- 逻辑回归
- 支持向量机
- 神经网络
- 聚类
这里没有全部列出,后续会详细介绍。今天的内容就分享到这,更多内容可以关注“新建文件夹X”。
文章来源: zacksock.blog.csdn.net,作者:ZackSock,版权归原作者所有,如需转载,请联系作者。
原文链接:zacksock.blog.csdn.net/article/details/122709496
- 点赞
- 收藏
- 关注作者
评论(0)