logo资料库

台湾大学林轩田机器学习基石与技法笔记.pdf

第1页 / 共384页
第2页 / 共384页
第3页 / 共384页
第4页 / 共384页
第5页 / 共384页
第6页 / 共384页
第7页 / 共384页
第8页 / 共384页
资料共384页,剩余部分请下载后查看
林轩田机器学习-封面
林轩田《机器学习基石》课程笔记1 -- The Learning Problem
林轩田《机器学习基石》课程笔记2 -- Learning to Answer Yes-No
林轩田《机器学习基石》课程笔记3 -- Types of Learning
林轩田《机器学习基石》课程笔记4 -- Feasibility of Learning
林轩田《机器学习基石》课程笔记5 -- Training versus Testing
林轩田《机器学习基石》课程笔记6 -- Theory of Generalization
林轩田《机器学习基石》课程笔记7 -- The VC Dimension
林轩田《机器学习基石》课程笔记8 -- Noise and Error
林轩田《机器学习基石》课程笔记9 -- Linear Regression
林轩田《机器学习基石》课程笔记10 -- Logistic Regression
林轩田《机器学习基石》课程笔记11 -- Linear Models for Classification
林轩田《机器学习基石》课程笔记12 -- Nonlinear Transformation
林轩田《机器学习基石》课程笔记13 -- Hazard of Overfitting
林轩田《机器学习基石》课程笔记14 -- Regularization
林轩田《机器学习基石》课程笔记15 -- Validation
林轩田《机器学习基石》课程笔记16(完结) -- Three Learning Principles
林轩田《机器学习技法》课程笔记1 -- Linear Support Vector Machine
林轩田《机器学习技法》课程笔记2 -- Dual Support Vector Machine
林轩田《机器学习技法》课程笔记3 -- Kernel Support Vector Machine
林轩田《机器学习技法》课程笔记4 -- Soft-Margin Support Vector Machine
林轩田《机器学习技法》课程笔记5 -- Kernel Logistic Regression
林轩田《机器学习技法》课程笔记6 -- Support Vector Regression
林轩田《机器学习技法》课程笔记7 -- Blending and Bagging
林轩田《机器学习技法》课程笔记8 -- Adaptive Boosting
林轩田《机器学习技法》课程笔记9 -- Decision Tree
林轩田《机器学习技法》课程笔记10 -- Random Forest
林轩田《机器学习技法》课程笔记11 -- Gradient Boosted Decision Tree
林轩田《机器学习技法》课程笔记12 -- Neural Network
林轩田《机器学习技法》课程笔记13 -- Deep Learning
林轩田《机器学习技法》课程笔记14 -- Radial Basis Function Network
林轩田《机器学习技法》课程笔记15 -- Matrix Factorization
林轩田《机器学习技法》课程笔记16(完结) -- Finale
林轩田 《机器学习基石》 《机器学习技法》 精炼笔记 AI 算法工程师必备 AI 有道:一个专注于人工智能的技术分享平台!
林轩田《机器学习基石》课程笔记1 ­­ The Learning Problem 作者:红色石头  公众号:AI有道(id:redstonewill)     最近在看NTU林轩田的《机器学习基石》课程,个人感觉讲的非常好。整个基石课程 分成四个部分: When Can Machine Learn? Why Can Machine Learn? How Can Machine Learn? How Can Machine Learn Better? 每个部分由四节课组成,总共有16节课。那么,从这篇开始,我们将连续对这门课做 课程笔记,共16篇,希望能对正在看这们课的童鞋有所帮助。下面开始第一节课的笔 记:The Learning Problem。 一、What is Machine Learning 什么是“学习”?学习就是人类通过观察、积累经验,掌握某项技能或能力。就好像我 们从小学习识别字母、认识汉字,就是学习的过程。而机器学习(Machine Learning),顾名思义,就是让机器(计算机)也能向人类一样,通过观察大量的数 据和训练,发现事物规律,获得某种分析问题、解决问题的能力。      微信公众号:AI有道
机器学习可以被定义为:Improving some performance measure with experence computed from data. 也就是机器从数据中总结经验,从数据中找出某种规律或者模 型,并用它来解决实际问题。   什么情况下会使用机器学习来解决问题呢?其实,目前机器学习的应用非常广泛,基 本上任何场合都能够看到它的身影。其应用场合大致可归纳为三个条件:    事物本身存在某种潜在规律 某些问题难以使用普通编程解决 有大量的数据样本可供使用      二、Applications of Machine Learning 机器学习在我们的衣、食、住、行、教育、娱乐等各个方面都有着广泛的应用,我们 的生活处处都离不开机器学习。比如,打开购物网站,网站就会给我们自动推荐我们 可能会喜欢的商品;电影频道会根据用户的浏览记录和观影记录,向不同用户推荐他 们可能喜欢的电影等等,到处都有机器学习的影子。 三、Components of Machine Learning 微信公众号:AI有道
本系列的课程对机器学习问题有一些基本的术语需要注意一下: 输入x 输出y 目标函数f,即最接近实际样本分布的规律 训练样本data 假设hypothesis,一个机器学习模型对应了很多不同的hypothesis,通过演算法 A,选择一个最佳的hypothesis对应的函数称为矩g,g能最好地表示事物的内在 规律,也是我们最终想要得到的模型表达式。     实际中,机器学习的流程图可以表示为:       对于理想的目标函数f,我们是不知道的,我们手上拿到的是一些训练样本D,假设是 监督式学习,其中有输入x,也有输出y。机器学习的过程,就是根据先验知识选择模 微信公众号:AI有道
型,该模型对应的hypothesis set(用H表示),H中包含了许多不同的hypothesis, 通过演算法A,在训练样本D上进行训练,选择出一个最好的hypothes,对应的函数表 达式g就是我们最终要求的。一般情况下,g能最接近目标函数f,这样,机器学习的整 个流程就完成了。 四、Machine Learning and Other Fields 与机器学习相关的领域有: 数据挖掘(Data Mining) 人工智能(Artificial Intelligence) 统计(Statistics) 其实,机器学习与这三个领域是相通的,基本类似,但也不完全一样。机器学习是这 三个领域中的有力工具,而同时,这三个领域也是机器学习可以广泛应用的领域,总 得来说,他们之间没有十分明确的界线。 五、总结 本节课主要介绍了什么是机器学习,什么样的场合下可以使用机器学习解决问题,然 后用流程图的形式展示了机器学习的整个过程,最后把机器学习和数据挖掘、人工智 能、统计这三个领域做个比较。本节课的内容主要是概述性的东西,比较简单,所以 笔记也相对比较简略。 这里附上林轩田(Hsuan­Tien Lin)关于这门课的主页:   http://www.csie.ntu.edu.tw/~htlin/ 注明: 文章中所有的图片均来自台湾大学林轩田《机器学习基石》课程。 微信公众号:AI有道
林轩田《机器学习基石》课程笔记2 ­­ Learning to Answer Yes­No 作者:红色石头  公众号:AI有道(id:redstonewill)   上节课,我们主要简述了机器学习的定义及其重要性,并用流程图的形式介绍了机器 学习的整个过程:根据模型H,使用演算法A,在训练样本D上进行训练,得到最好的 h,其对应的g就是我们最后需要的机器学习的模型函数,一般g接近于目标函数f。本 节课将继续深入探讨机器学习问题,介绍感知机Perceptron模型,并推导课程的第一 个机器学习算法:Perceptron Learning Algorithm(PLA)。 一、Perceptron Hypothesis Set 引入这样一个例子:某银行要根据用户的年龄、性别、年收入等情况来判断是否给该 用户发信用卡。现在有训练样本D,即之前用户的信息和是否发了信用卡。这是一个 典型的机器学习问题,我们要根据D,通过A,在H中选择最好的h,得到g,接近目标 函数f,也就是根据先验知识建立是否给用户发信用卡的模型。银行用这个模型对以后 用户进行判断:发信用卡(+1),不发信用卡(­1)。 在这个机器学习的整个流程中,有一个部分非常重要:就是模型选择,即Hypothesis Set。选择什么样的模型,很大程度上会影响机器学习的效果和表现。下面介绍一个简 单常用的Hypothesis Set:感知机(Perceptron)。 还是刚才银行是否给用户发信用卡的例子,我们把用户的个人信息作为特征向量x,令 总共有d个特征,每个特征赋予不同的权重w,表示该特征对输出(是否发信用卡)的 影响有多大。那所有特征的加权和的值与一个设定的阈值threshold进行比较:大于这 个阈值,输出为+1,即发信用卡;小于这个阈值,输出为­1,即不发信用卡。感知机 模型,就是当特征加权和与阈值的差大于或等于0,则输出h(x)=1;当特征加权和与阈 值的差小于0,则输出h(x)=­1,而我们的目的就是计算出所有权值w和阈值 threshold。   微信公众号:AI有道
为了计算方便,通常我们将阈值threshold当做 ,引入一个 这样就把threshold也转变成了权值 ,简化了计算。h(x)的表达式做如下变换: 的量与 相乘,      为了更清晰地说明感知机模型,我们假设Perceptrons在二维平面上,即 是平面上 一条分类直线,直线一侧是正类(+1),直线另一侧是负类(­1)。权重w不同,对 应于平面上不同的直线。 。其中,      微信公众号:AI有道
   那么,我们所说的Perceptron,在这个模型上就是一条直线,称之为linear(binary) classifiers。注意一下,感知器线性分类不限定在二维空间中,在3D中,线性分类用 平面表示,在更高维度中,线性分类用超平面表示,即只要是形如 的线性模型就 都属于linear(binary) classifiers。 同时,需要注意的是,这里所说的linear(binary) classifiers是用简单的感知器模型建立 的,线性分类问题还可以使用logistic regression来解决,后面将会介绍。 二、Perceptron Learning Algorithm(PLA) 根据上一部分的介绍,我们已经知道了hypothesis set由许多条直线构成。接下来,我 们的目的就是如何设计一个演算法A,来选择一个最好的直线,能将平面上所有的正 类和负类完全分开,也就是找到最好的g,使 。 如何找到这样一条最好的直线呢?我们可以使用逐点修正的思想,首先在平面上随意 取一条直线,看看哪些点分类错误。然后开始对第一个错误点就行修正,即变换直线 的位置,使这个错误点变成分类正确的点。接着,再对第二个、第三个等所有的错误 分类点就行直线纠正,直到所有的点都完全分类正确了,就得到了最好的直线。这 种“逐步修正”,就是PLA思想所在。   微信公众号:AI有道
分享到:
收藏