机器学习的定义

  1. Arthur Samuel给出的定义,Field of Study that gives computers the ability to learn without being explicitly programmed.(在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域)

  2. 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来完成。

总结

通过本章学习,对机器学习算法有了一个初步的认识。

为了了能到远方,脚下的每一步都不能少。

转载于:https://www.cnblogs.com/babers/p/6723525.html

Andrew Ng机器学习算法入门(二):机器学习分类相关推荐

  1. 机器学习算法(二):基于决策树的分类预测

    机器学习算法(二):基于决策树的分类预测 决策树的介绍和应用 简介 决策树构建的伪代码 特征划分选择 信息增益 信息增益率 基尼系数 应用场景 优缺点 基于企鹅数据集的决策树实战 Step1:函数库导 ...

  2. Python机器学习算法入门教程(四)

    Python机器学习算法入门教程(四) 文章目录 Python机器学习算法入门教程(四) Logistic回归算法(分类问题) 什么是分类问题? Logistic回归算法 数学解析Logistic回归 ...

  3. Python机器学习算法入门教程(一)

    Python机器学习算法入门教程 Python机器学习 教程特点 什么是人工智能? 写在前面的话 人工智能应用 人工智能发展简史 1.第一次兴起 2.第二次发展 3.第三次崛起 机器学习&深度 ...

  4. Python机器学习算法入门教程(三)

    Python机器学习算法入门教程(三) 构建线性回归模型 一次函数 构建线性模型 假设函数图像 梯度下降求极值 导数 偏导数 梯度下降 sklearn应用线性回归算法 实现线性回归算法 准备数据 线性 ...

  5. 文本分类入门(二)文本分类的方法

    文本分类入门(二)文本分类的方法 文本分类问题与其它分类问题没有本质上的区别,其方法可以归结为根据待分类数据的某些特征来进行匹配,当然完全的匹配是不太可能的,因此必须(根据某种评价标准)选择最优的匹配 ...

  6. 【Java应用】使用Java实现机器学习算法:聚类、分类、预测

    一.引言 1.机器学习算法概述 机器学习是一种人工智能技术,旨在通过使用数据和统计分析来让计算机系统自动改进性能.机器学习算法可分为三大类:聚类.分类和预测.聚类算法用于将数据集分成不同的群组:分类算 ...

  7. 十大机器学习算法入门

    近年来,机器学习与人工智能已广泛应用于学术与工程,比如数据挖掘.计算机视觉.自然语言处理.生物特征识别.搜索引擎.医学诊断.检测信用卡欺诈.证券市场分析.DNA序列测序.语音和手写识别.战略游戏和机器 ...

  8. 【机器学习算法】Logistic回归分类算法

    文章目录 一.Logistic回归 1. 分类问题 2. Logistic函数 (1) 阶跃函数(不可导) (2)可导的阶跃函数 二.Logistic回归的算法原理 1. 基本思路 2. 数学解析 ( ...

  9. 如何用机器学习算法来进行电影分类?(含Python代码)

    电影分析--K近邻算法 周末,小迪与女朋友小西走出电影院,回味着刚刚看过的电影. 小迪:刚刚的电影很精彩,打斗场景非常真实,又是一部优秀的动作片! 小西:是吗?我怎么感觉这是一部爱情片呢?真心被男主女 ...

最新文章

  1. 人体姿态跟踪--Pose Flow: Efficient Online Pose Tracking
  2. Java的jar文件安装成windows 服务
  3. java 泛型int_Java 泛型
  4. 割线法求解过程_求解稀疏优化问题2——临近点方法+半光滑牛顿法
  5. python是面向对象还是过程_python编程:面向对象与过程是什么?
  6. LeetCode 718. 最长重复子数组(DP)
  7. linux环境C语言操作数据库
  8. python selenium实现百度搜索
  9. 中小卖家需要避开的三个坑
  10. 进程管理工具   htop
  11. [转] 面向对象编程介绍
  12. 自然语言处理理论与实战
  13. r710 linux网卡驱动,Dell R710更换网卡驱动linux
  14. 如何在CAD编辑软件中画椭圆
  15. Ubuntu 安装 peek 动态截图软件
  16. matlab将txt转成dat,将matlab中数据保存为txt或dat格式
  17. 单进程子进程超时处理方法
  18. 【Unity3D】粒子系统ParticleSystem
  19. Android基于Facebook Rebound的动画效果框架Backboard demo (非常炫酷)
  20. 百度地图点击marker换图标的两种方式

热门文章

  1. il2cpp 打包TimeLine异常
  2. j2ee 引入java类_J2EE学而时习之——JavaBean
  3. Vue组件通信的五种方式
  4. 【数字信号处理 | 学习笔记】二、离散傅里叶变换及其快速算法
  5. 百度语音助手电脑版 v3.0 官方版
  6. 如何使用Unity中的HDRI视图
  7. 指定日期判断是否节假日
  8. C语言网:二叉链表存储的二叉树
  9. 处理multipart形式的数据
  10. 粒子群算法(PSO)以及Matlab实现