机器学习基石笔记--1

机器学习基石笔记1——在何时可以使用机器学习(1)

转载请注明出处:http://www.cnblogs.com/ymingjingr/p/4271742.html

目录

机器学习基石笔记1——在何时可以使用机器学习(1)

机器学习基石笔记2——在何时可以使用机器学习(2)

机器学习基石笔记3——在何时可以使用机器学习(3)(修改版)

机器学习基石笔记4——在何时可以使用机器学习(4)

机器学习基石笔记5——为什么机器可以学习(1)

机器学习基石笔记6——为什么机器可以学习(2)

机器学习基石笔记7——为什么机器可以学习(3)

机器学习基石笔记8——为什么机器可以学习(4)

机器学习基石笔记9——机器可以怎样学习(1)

机器学习基石笔记10——机器可以怎样学习(2)

机器学习基石笔记11——机器可以怎样学习(3)

机器学习基石笔记12——机器可以怎样学习(4)

机器学习基石笔记13——机器可以怎样学得更好(1)

机器学习基石笔记14——机器可以怎样学得更好(2)

机器学习基石笔记15——机器可以怎样学得更好(3)

机器学习基石笔记16——机器可以怎样学得更好(4)

先简单介绍下这门课程,这门课是在著名的MOOC(Massive Online Open Course大型在线公开课)Coursera上的一门关于机器学习领域的课程,由国立台湾大学的年轻老师林轩田讲授。这门叫做机器学习基石的课程,共8周的课程为整个机器学习课程的上半部分,更偏重于理论和思想而非算法,主要分为四大部分来讲授。  

 

When can Machine Learn?在何时可以使用机器学习?

Why can Machine Learn? 为什么机器可以学习?

How can Machine Learn?机器可以怎样学习?

How can Machine Learn Better?怎样能使机器学习更好?

 

每一大块又分为几周来讲授,每周的课时分为两个大课,每个大课一般又分为四个小块来教学,一个小块一般在十分钟到二十分钟之间。

以VC bound (VC限制)作为总线将整个基础课程贯通讲解了包括PLA(Perceptron learning algorithm感知器)、pocket、二元分类、线性回归(linear regression)、logistic回归(logistic regression)等等。

以下不用大课小课来叙述了,写起来感觉怪怪的,就用章节来分别代表大课时和小课时。

 

一、The learning problem

机器学习问题。

  1. Course Introduction

课程简介。

第一小节的内容就是课程简介,如上已进行了详细的介绍,这里就不多赘述。

 

1.2 What is Machine Learning

什么是机器学习?

在搞清这个问题之前,先要搞清什么是学习。

学习可以是人或者动物通过观察思考获得一定的技巧过程。

而机器学习与之类似,是计算机通过数据和计算获得一定技巧的过程。

注意这一对比,学习是通过观察而机器学习是通过数据(是计算机的一种观察)。

对比图如图1-1。(本笔记的图和公式如不加说明皆是出自林老师的课件,下文不会对此在做说明)

 

图1-1 学习与机器学习对比图 a)学习          b)机器学习

 

那么紧接着就是要解决上述中出现的一个新的名词”技巧”(skill)。

什么是技巧呢?技巧是一些能力表现的更加出色。

机器学习中的技巧如预测(prediction)、识别(recognition)。

来一个例子:从股票的数据中获得收益增多的这种技巧,这就是一种机器学习的例子。

那既然人也可以通过观察获得一个技巧,为什么还需要机器学习呢?

这就是为什么需要机器学习,简单来说,就是两大原因:

一些数据或者信息,人来无法获取,可能是一些人无法识别的事物,或是数据信息量特别大;

另一个原因是人的处理满足不了需求,比如:定义很多很多的规则满足物体识别或者其他需求;在短时间内通过大量信息做出判断等等。

上面说的是为什么使用机器学习,那么什么情况下使用机器学习呢?是不是所有的情况都使用机器学习呢?

这里给出了三个ML(机器学习的英文缩写)的关键要素:

1、存在一个模式或者说表现可以让我们对它进行改进提高;

2、规则并不容易那么定义;

3、需要有数据。

 

1.3 Applications of Machine Learning

机器学习的应用。

这一小节主要介绍的就是机器学习能用在哪些方面。个人感觉不是理论介绍的重点(不是说应用不重要,刚好相反,其实个人认为机器学习甚至整个计算机学科最重要的还是应用),就简述下机器学习可以应用在在衣食住行育乐,包含了人类生活的方方面面,所以机器学习的应用场景很广泛很有市场。

 

1.4 Components of Machine Learning

机器学习的组成部分。

这一小节是第一章的重点,因为它将机器学习的理论应用符号及数学知识进行表示,而以下各章内容也都是在这小节内容的基础上展开的。

从一个银行是否会发信用卡给用户的例子引出了机器学习可以分为哪几个部分(组件)。

1.输入(input):xX(代表银行所掌握的用户信息)

2.输出(output):yY (是否会发信用卡给用户)

3.未知的函数,即目标函数(target function):f:XY(理想的信用卡发放公式)

4.数据或者叫做资料( data),即训练样本( training examples):D = {(), ( ), …, ( )}(银行的历史记录)

5.假设(hypothesis),即前面提到的技能,能够具有更好地表现:g:XY (能够学习到的公式)

可以通过一个简单的流程图表示,如图1-2所示。

 

图1-2 机器学习的简单流程图

 

从图中可以清楚机器学习就是从我们未知但是却存在的一个规则或者公式f中得到大量的数据或者说资料(训练样本),在这些资料的基础上得到一个近似于未知规则g的过程。

这么说还是有点抽象,特别是目标函数f又是未知的,那为什么还能找到一个假设g能够接近f呢?

还是以一个更加详细的流程图来说明这一问题,如图1-3。

图1-3 详细的机器学习流程图

 

这个流程图和图1-2有些不同,其中ML被更详细的定义为机器学习算法(learning algorithm)一般用A表示。还多出来一个新的项目,就是假设空间或者叫做假设集合(hypothesis set)一般用H表示,它是包含各种各样的假设,其中包括好的假设和坏的假设,而这时A的作用就体现了,它可以从H这个集合中挑选出它认为最好的假设作为g。

注:

1、这里还要说明的是机器学习的输入在这个流程图中就变成了两个部分,一个是训练样本集,而另一个就是假设空间H。

2、还有一点需要注意的是,我们所说的机器学习模型在这个流程图中也不仅仅是算法A,而且还包含了假设空间H。

3、要求得g来近似于未知目标函数f。

4、给出了机器学习的一个更准确点的定义,就是通过数据来计算得到一个假设g使它接近未知目标函数。

 

图1-3是还是一个相对比较简单的机器学习流程图,在往后的章节中会不断的根据新学的知识继续扩展这幅图的元素。

 

1.5 Machine Learning and Other Fields

机器学习与其他各个领域的关系。

 

1.5.1 ML VS DM (Data Mining)

机器学习与数据挖掘者叫知识发现(KDD Knowledge Discovery in Dataset)。

上一节中已经给出了机器学习的概念,因此只介绍下数据挖掘的概念,就是从大量的数据中找出有用的信息。

从定义出发,我们可以将两者之间的关系分为3种。

  1. 两者是一致的:能够找出的有用信息就是我们要求得的近似目标函数的假设。
  2. 两者是互助的:能够找出的有用信息就能帮助我们找出近似的假设,反之也可行。
  3. 传统的数据挖掘更关注与从大量的数据中的计算问题。

总的来时,两者密不可分。

1.5.2 M L VS AI (artificial intelligence)

机器学习与人工智能。

人工智能的大概概念就是电脑能够表现出一些智慧行为。

从定义可以得到,机器学习是实现人工智能的一种方式。

1.5.3 ML VS statistic

机器学习与统计。

统计也需要通过数据,来做一个未知的推论。

因此统计是一种实现机器学习的方法。

传统的统计学习更关注与数学公式,而非计算本身。

5
0

« 上一篇: 机器学习基石笔记3——在何时可以使用机器学习(3)
» 下一篇: 机器学习基石笔记2——在何时可以使用机器学习(2)
    </div>
    <div class="postDesc">posted @ <span id="post-date">2015-02-04 10:34</span> <a href="http://www.cnblogs.com/ymingjingr/">杜少</a> 阅读(<span id="post_view_count">5278</span>) 评论(<span id="post_comment_count">5</span>)  <a href="https://i.cnblogs.com/EditPosts.aspx?postid=4271742" rel="nofollow">编辑</a> <a href="#" onclick="AddToWz(4271742);return false;">收藏</a></div>
</div>
<script type="text/javascript">var allowComments=true,cb_blogId=213243,cb_entryId=4271742,cb_blogApp=currentBlogApp,cb_blogUserGuid='1dd46345-ec5e-e211-aa8f-842b2b196315',cb_entryCreatedDate='2015/2/4 10:34:00';loadViewCount(cb_entryId);</script>






  
#1楼 2015-03-01 23:50 | 长江与沙漠  
之前学过这门课,最大的感触就是,数学没学好太难受了,总有很多地方是“显然可得”,然后我完全搞不明白的。。。。
http://pic.cnblogs.com/face/723688/20150214083212.png
  
#2楼 [ 楼主] 2015-03-02 14:16 | 杜少  
@ 长江与沙漠
我也是,看一遍很多都不懂,写个笔记开始不懂得地方还是明白了不少。
http://pic.cnblogs.com/face/489652/20150214123220.png
  
#3楼 2015-03-02 15:13 | 长江与沙漠  
@ 杜少

其实我觉得对我这种已经上班的人来说,最需要的是有一个实际项目,不太复杂的,一步步如何实用这些理论,做出来。纯理论的东西很容易让人抓不住重点。
http://pic.cnblogs.com/face/723688/20150214083212.png
  
#4楼 [ 楼主] 2015-03-03 09:46 | 杜少  
@ 长江与沙漠
是的,看理论特别头疼。机器学习基石只是林老师机器学习课程的上半部分,主要讲的是理论,下半部分叫机器学习技法,更侧重算法。但是前半部分的理论能将后半部分的算法串联起来,看起来像是一个整体,而不是单独一个一个无限穷举下去的算法大军。
http://pic.cnblogs.com/face/489652/20150214123220.png
  
#5楼 3554450 2016/11/12 21:36:49 2016-11-12 21:36 | 登高远行  
群主,你好,我是一名研一学生,目前方向是机器学习,已看完coursera上的斯坦福机器学习公开课,目前想学习台湾国立大学老师机器学习基石的公开课,可是coursera上该课程已经下架,寻不得。能否发个链接?不甚感激。。
</div><!--end: forFlow -->
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
综合小区管理系统管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、车位管理、车位分配管理、出入管理、字典管理、房屋管理、物业费缴纳管理、公告管理、物业人员投诉管理、我的私信管理、物业人员管理、用户管理、管理员管理。用户的功能包括管理部门以及部门岗位信息,管理招聘信息,培训信息,薪资信息等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 综合小区管理系统管理系统可以提高综合小区管理系统信息管理问题的解决效率,优化综合小区管理系统信息处理流程,保证综合小区管理系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理综合小区管理系统信息,包括出入管理,报修管理,报修管理,物业费缴纳等,可以管理操作员。 出入管理界面,管理员在出入管理界面中可以对界面中显示,可以对招聘信息的招聘状态进行查看,可以添加新的招聘信息等。报修管理界面,管理员在报修管理界面中查看奖罚种类信息,奖罚描述信息,新增奖惩信息等。车位管理界面,管理员在车位管理界面中新增。公告管理界面,管理员在公告管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值