Andrew Ng机器学习算法入门(二):机器学习分类
机器学习的定义
Arthur Samuel给出的定义,Field of Study that gives computers the ability to learn without being explicitly programmed.(在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域)
Tom Mitchell给出的定义,A computer program is said to learn from experience E with respect to some task T and some performace measure P,if its performance on T,as measured by P,improves with experience E.(对于某类任务T和性能度量P,如果一个计算机程序在T上以P衡量的性能随着经验E而自我完善,那么我们称这个计算机程序在从经验E学习)
Andrew Ng认为Tom Mitchell给出的例子仅仅是为了押韵,不是很容易理解。
Arthur Samuel给出这样的定义是有原因的。Samuel写了一个国际象棋的程序,但他本人并不擅长国际象棋。让这个程序和自己进行对弈,从而进行学习知道什么样的棋局能够胜利。
对于Mitchell给出的定义,我们使用一个下棋的例子来进行说明。在下棋程序中,经验E指的就是程序的上万次的自我联系的经验,任务T就是下棋,性能度量P指的就是在比赛过程中取胜的概率。
机器学习的分类
机器学习大致可以分为两类,监督学习和无监督学习。
监督学习,给定一个算法,需要部分数据已经有了正确答案。
无监督学习,给算法输入数据,要求算法自行分析这些数据得到结果。
有监督学习
监督学习的有可以分为:线性回归、逻辑回归。
- 线性回归,用于根据连续变量估计实际数值(房价、呼叫次数、总销售额等)
- 逻辑回归,该算法可根据已知的一系列因变量估计离散数值。
线性回归的算法问题,假设存在这样的数据,房价和房屋面积的关系。如下图:

如果给定了房屋面积,需要求出房价。这样就需要得到房屋面积和房价之间的关系。这样的问题就需要使用线性回归来解决。线性回归解决的问题就是连续变量之间的实际关系,这样的问题在高中数学里面也是十分常见的。
逻辑回归的问题,通过一个根据肿瘤大小来判断是良性还是恶性的问题来进行说明。

纵坐标只有两个值,0表示是良性的,1表示恶性的。横坐标表示的肿瘤的大小。那么最终的问题就是通过机器学习来对肿瘤的大小进行分析,判断是良性的还是恶性的。
需要说明的是,在逻辑回归中,很多时候特征是会有很多的。在上述的例子中,特征就只有一个就是肿瘤的大小。考虑到如果有很多的特征的时候,这个时候就需要使用到支持向量机。支持向量机能让电脑处理无限个特征。
无监督学习
在有监督学习中,会对每个数据进行标记。这样算法在进行分析的时候,就会有一个正确的数据来进行参考。
在无监督学习中,只有一个数据集,需要算法自行对数据进行分析,找出其中的特征,能够对数据进行分类。
下面就是无监督学习的一些常见的实际应用。
谷歌的新闻
谷歌爬虫每天会从网络中爬取大量的新闻,通过无监督的学习算法,自动将这些新闻进行分类,这样就不需要人工进行分类了。在这样的例子中,其实算法之前没有经过训练,通过分析新闻,然后自动地进行分类
市场营销
在电商中一般会有大量的用户信息。通过无监督算法,将这些用户进行分类,划分到更小的市场中
社交网络
无监督学习通过分析email中的联系人情况,Facebook或者是Google+中的朋友,就能够判断出你与其他好友之间的亲密关系。
通过我的发现,我发现无监督学习貌似在分类方面应用的较多。
机器学习算法编程
Andrew Ng推荐使用的是Octave来完成。
总结
通过本章学习,对机器学习算法有了一个初步的认识。
为了了能到远方,脚下的每一步都不能少。
Andrew Ng机器学习算法入门(二):机器学习分类的更多相关文章
- Andrew Ng机器学习算法入门(一):简介
简介 最近在参加一个利用机器学习来解决安全问题的算法比赛,但是对机器学习的算法一直不了解,所以先了解一下机器学习相关的算法. Andrew Ng就是前段时间从百度离职的吴恩达.关于吴恩达是谁,相信程序 ...
- Andrew Ng机器学习算法入门(九):逻辑回归
逻辑回归 先前所讲的线性回归主要是一个预测问题,根据已知的数据去预测接下来的情况.线性回归中的房价的例子就很好地说明了这个问题. 然后在现实世界中,很多问题不是预测问题而是一个分类问题. 如邮件是否为 ...
- Andrew Ng机器学习算法入门((七):特征选择和多项式回归
特征选择 还是回归到房价的问题.在最开始的问题中,我们假设房价与房屋面积有关,那么最开始对房价预测的时候,回归方程可能如下所示: 其中frontage表示的房子的长,depth表示的是房子的宽. 但长 ...
- 斯坦福大学Andrew Ng教授主讲的《机器学习》公开课观后感[转]
近日,在网易公开课视频网站上看完了<机器学习>课程视频,现做个学后感,也叫观后感吧. 学习时间 从2013年7月26日星期五开始,在网易公开课视频网站上,观看由斯坦福大学Andrew Ng ...
- 机器学习算法总结(二)——决策树(ID3, C4.5, CART)
决策树是既可以作为分类算法,又可以作为回归算法,而且在经常被用作为集成算法中的基学习器.决策树是一种很古老的算法,也是很好理解的一种算法,构建决策树的过程本质上是一个递归的过程,采用if-then的规 ...
- Andrew Ng机器学习算法入门(十):过拟合问题解决方法
在使用机器学习对训练数据进行学习和分类的时候,会出现欠拟合和过拟合的问题.那么什么是欠拟合和过拟合问题呢?
- Andrew Ng机器学习算法入门(三):线性回归算法
线性回归 线性回归,就是能够用一个直线较为精确地描述数据之间的关系.这样当出现新的数据的时候,就能够预测出一个简单的值. 线性回归中最常见的就是房价的问题.一直存在很多房屋面积和房价的数据,如下图所示 ...
- Andrew Ng机器学习算法入门(八):正规方程
正规方程 在先学习正规方程之前,先来复习一下之前学过的常规的回归方程的解法. 假设存在如果的代价函数, ,解法也十分的简答. 但是有时候遇到的情况或许会变得相当的复杂. 的数,如果是按照常规的方式进行 ...
- Andrew Ng机器学习算法入门((六):多变量线性回归方程求解
多变量线性回归 之前讨论的都是单变量的情况.例如房价与房屋面积之前的关系,但是实际上,房价除了房屋面积之外,还要房间数,楼层等因素相关.那么此时就变成了一个多变量线性回归的问题.在实际问题中,多变量的 ...
随机推荐
- python学习总结篇(2)——函数
如其他语言一样,除了基本知识外,另外一个重要的板块就是函数了,python中也有函数. 在python中,函数的定义方式为: def 函数名( ): 下面通过几个简单的例子,看看python中的函 ...
- 为什么要从 Linux 迁移到 BSD 5
为什么要从 Linux 迁移到 BSD 5 干净的分离 在 FreeBSD 的设计方式下,不同的组件组合在一起的,处理配置和调优,以及多年来开发和改进的所有工具,使得使用 FreeBSD 是一件很特别 ...
- PHP配置 3. 配置open_basedir
open_basedir将网站限定在指定的目录,做目录的隔离 先在php.ini中设置open_basedir: # vim /usr/local/php/etc/php.ini //搜索open_b ...
- DDD实战课--学习笔记
目录 学好了DDD,你能做什么? 领域驱动设计:微服务设计为什么要选择DDD? 领域.子域.核心域.通用域和支撑域:傻傻分不清? 限界上下文:定义领域边界的利器 实体和值对象:从领域模型的基础单元看系 ...
- C语言结构体及其内存布局
code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...
- 前瞻|Amundsen的数据血缘功能
目前,Amundsen并不支持表级别和列级别的数据血缘功能,也没有办法展示数据的来龙去脉. 作为Amundsen一项非常核心的功能,Lineage功能早已经提上日程,并进入设计与研发阶段.本位将展示此 ...
- Java自定义 sort 排序方法
Sort用法 •结构 1 package Test; 2 3 import java.util.Arrays; 4 import java.util.Random; 5 import java.uti ...
- Redis实战篇(四)基于GEO实现查找附近的人功能
如果现在要开发一个功能: 要为一款交友App实现查找附近的人,并按距离进行排序. 让你来开发这个功能,你会如何实现? MySQL 不合适 你可能想到,把用户用户的经纬度坐标使用MySQL等关系数据库( ...
- RabbitMQ 入门 (Go) - 5. 使用 Fanout Exchange 做服务发现(下)
到目前为止,我一直专注于如何让消息进出消息代理,也就是RabbitMQ. 实际上,我们可以继续使用 RabbitMQ 和它的 Exchanges 来连接这个应用程序的其他部分,但是我想探索一个稍微不同 ...
- Kubernetes使用metric-server让HPA弹性伸缩运行
监控架构概述 kubernetes监控指标大体可以分为两类:核心监控指标和自定义指标,核心监控指标是kubernetes内置稳定可靠监控指标,早期由heapster完成,现由metric-server ...