机器学习原理、实现与实践——机器学习概论

如果一个系统能够通过执行某个过程改进它的性能,这就是学习。 ——— Herbert A. Simon

1. 机器学习是什么

计算机基于数据来构建概率统计模型并运用模型对数据进行预测与分析的一门学科。

从上面的机器学习的定义中,我们可以了解到以下的信息:

  • 机器学习以计算机及网络为平台,是建立在计算机及网络之上的;
  • 机器学习以数据为研究对象。
  • 机器学习的目的是对数据进行预测与分析
  • 机器学习以模型为中心。构建模型、优化模型并用模型来进行预测。
  • 机器学习的模型是基于概率统计的模型。里面大量用到了概率与统计的知识。
  • 机器学习也是信息论 、计算理论、最优化理论及计算机科学等多个领域的交叉学科,并且在发展中逐步形成独立的理论体系与方法论。

2. 机器学习的对象

机器学习的对象是数据,它从数据出发,提取数据的特征,抽象出数据的模型,发现数据中的知识,又回到对数据的分析与预测中去。同时,数据是多样的,包括存在计算机及网络上的各种数字、文字、图像、视频、音频数据及它们的组合。

那么什么样的数据可以被抽象,被学习呢,杂乱无章的数据可以吗?

机器学习关于数据的基本假设是同类数据具有一定的统计规律性。同类数据是指具有某种共同性质的数据,由于它们具有统计规律,所以可以用概率统计方法来加以处理。可以用随机变量描述数据数据中的特征,用概率分布描述数据的统计规律。

在实际的机器学习中,数据往往被提取为一个特征向量表示为

$$x = (x^{(1)},x^{(2)},\dots,x^{(i)},x^{(n)})^T$$

数据可以为离散的,也可以为连续的。

3. 机器学习的目的

机器学习用于对数据进行预测与分析,特别是对未知新数据进行预测与分析。

机器学习总的目标就是考虑学习什么样的模型和如何学习模型,以使模型能对数据进行准确的预测与分析,同理也要考虑尽可能地提高学习效率。

4. 机器学习的方法

机器学习的方法是基于数据构建统计模型从而对数据进行预测与分析。机器学习包括了监督学习、非监督学习、半监督学习和强化学习。

监督学习:从给定的、有限的、用于学习的训练数据(training data)集合出发,假设数据是独立同分布产生的;并且假设要学习的模型属于某个函数集合,这个函数集合称为假设空间(hypothesis space);应用某个评价准则,从假设空间中先取一个最优的模型,使它对已知训练数据及未知测试数据在给定的评价准则下有最优的预测;最优模型的选择由算法实现。

模型的假设空间、模型的选择准则以及模型学习的算法构成了机器学习的三要素,简称模型、策略、算法。

机器学习的步骤可以归纳为:

  1. 得到一个有限的训练数据集合;
  2. 确定包含所有可能的模型的假设空间,即学习模型的集合;
  3. 确定模型选择的准则,即学习策略;
  4. 实现求解最优模型的算法,即学习的算法;
  5. 通常学习方法选择最优模型;
  6. 利用学习的最优模型对新数据进行预测或分析。

5. 机器学习的应用

近20年来,机器学习无论是在理论上还是在应用方面都得到了巨大的发展,有许多重要突破,统计学习已被成功地应用到人工智能、模式识别、数据挖掘、自然语言处理、语音识别、图像识别、信息检索和生物信息等许多计算机应用领域中。

下面是从《机器学习实战》中摘录的一段文字,描述了假想的一日,机器学习已经与我们的生活息息相关。

假设你想起今天是某位朋友的生日,打算通过邮局给她邮寄一张生日贺卡。你打开浏览器搜索趣味卡片,搜索引擎显示了10个最相关的链接。你认为第二个链接最符合你的要求,点击这个链接,搜索引擎将记录这次点击,并从中学习以优化下次搜索结果。然后,你检查电子邮件系统,此时垃圾邮件过滤器已经在后台自动过滤垃圾广告邮件,并将其放在垃圾箱内。接着你去商店购买这张生日卡片,并给你朋友的孩子挑选了一些尿布。结账时,收银员给你一张1美元的优惠券,可以用于购买6罐装的啤酒。之所以你会得到这张优惠券,是因为款台收费软件基于以前的统计知识,认为买尿布的人往往也会买啤酒。然后你去邮局邮寄这张贺卡,手写识别软件识别出邮寄地址,并将贺卡发送给正确的邮车。当天你还去了贷款申请机构,查看自己是否能够申请贷款,办事员并不是直接给出结果,而是将你最近的金融活动信息输入计算机,由软件来判定你是否合格。最后,你还去了赌场想找些乐子,当你步入前门时,尾随你进来的一个家伙被突然出现的保安给拦了下来。“对不起,索普先生,我们不得不请你离开赌场。我们不欢迎老千”。

上面提到的所有场景,都有机器学习存在!

ML 01、机器学习概论的更多相关文章

  1. AI Boot Camp 分享之 ML.NET 机器学习指南

    今天在中国七城联动,全球134场的AI BootCamp胜利落幕,广州由卢建晖老师组织,我参与分享了一个主题<ML.NET 机器学习指南和Azure Kinect .NET SDK概要>, ...

  2. C# .NET ML.NET 机器学习 图像分类

    一. 准备工作 IDE是 VS2019.先下载好"resnet_v2_50_299.meta"这个文件,放入"C:\Users\jk\AppData\Local\Temp ...

  3. coursera机器学习笔记-机器学习概论,梯度下降法

    #对coursera上Andrew Ng老师开的机器学习课程的笔记和心得: #注:此笔记是我自己认为本节课里比较重要.难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点: #标记为<补 ...

  4. ML: 聚类算法-概论

    聚类分析是一种重要的人类行为,早在孩提时代,一个人就通过不断改进下意识中的聚类模式来学会如何区分猫狗.动物植物.目前在许多领域都得到了广泛的研究和成功的应用,如用于模式识别.数据分析.图像处理.市场研 ...

  5. 《鸟哥的Linux私房菜》笔记——01. 计算机概论

    计算机的五大部分:输入单元.输出单元.CPU(控制单元(Control Unit).算数逻辑单元(ALU)).内存. CPU 的架构 精简指令集(Reduced Instruction Set Com ...

  6. 机器学习 - ML

    CNCC - 2016 | 机器学习(原文链接) Machine Learning - ML,机器学习起源于人工智能,是AI的一个分支. 机器学习的理论基础:计算学习理论 - Computationa ...

  7. 一个开源的,跨平台的.NET机器学习框架ML.NET

    微软在Build 2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET. ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无 ...

  8. 使用ML.NET + Azure DevOps + Azure Container Instances打造机器学习生产化

    介绍 Azure DevOps,以前称为Visual Studio Team Services(VSTS),可帮助个人和组织更快地规划,协作和发布产品.其中一项值得注意的服务是Azure Pipeli ...

  9. 开源的,跨平台的.NET机器学习框架ML.NET

    微软在Build 2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET. ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无 ...

随机推荐

  1. html中input输入框屏蔽鼠标右键

    <label> <input id="ckdestinationId" type="text" oncontextmenu="ret ...

  2. ASP.NET MVC 开启AJAX跨域请求

    <system.webServer> <httpProtocol> <customHeaders> <add name="Access-Contro ...

  3. Ajax相同url的请求,IE缓存问题

    最近做一个小项目,其中的一个页面如下,需要实现异步改变“是否推荐”的状态. 请求的代码如下: $.get("/Contorller/Edit", { id: id }, funct ...

  4. 存储过程优点&缺点

    存储过程不仅仅适用于大型项目,对于中小型项目,使用存储过程也是非常有必要的.其威力和优势主要体现在: 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一 ...

  5. 详述Linux ftp命令的使用方法

    转自:http://os.51cto.com/art/201003/186325.htm ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里 ...

  6. 图论&数据结构——并查集

    Wikioi 4246 NOIP模拟赛Day2T1 奶牛的身高  题目描述 Description 奶牛们在FJ的养育下茁壮成长.这天,FJ给了奶牛Bessie一个任务,去看看每个奶牛场中若干只奶牛的 ...

  7. 黑色30s高并发IIS设置

    在这篇博文中,我们抛开对阿里云的怀疑,完全从ASP.NET的角度进行分析,看能不能找到针对问题现象的更合理的解释. “黑色30秒”问题现象的主要特征是:排队的请求(Requests Queued)突增 ...

  8. NGUI 粒子显示在上级

    http://bbs.taikr.com/thread-2272-1-1.html [NGUI]3.0+版本,粒子在UI后面显示 -- : 48人阅读 评论() 收藏 举报 [Unity3D][NGU ...

  9. 从图片加载纹理-使用glut工具

    转载 http://blog.csdn.net/dreamcs/article/details/7696069

  10. Java数据库ResultSet转json实现

    现在有很多json相关的Java工具,如json-lib.gson等,它们可以直接把JavaBean转换成json格式. 在开发中,可能会从数据库中获取数据,希望直接转成json数组,中间不通过bea ...