A Brief Review of Supervised Learning
There are a number of algorithms that are typically used for system identification, adaptive control, adaptive signal processing, and machine learning. These algorithms all have particular similarities and differences. However, they all need to process some type of experimental data. How we collect the data and process it determines the most suitable algorithm to use. In adaptive control, there is a device referred to as the self-tuning regulator. In this case, the algorithm measures the states as outputs, estimates the model parameters, and outputs the control signals. In reinforcement learning, the algorithms process rewards, estimates value functions, and output actions. Although one may refer to the recursive least squares (RLS) algorithm in the self-tuning regulator as a supervised learning algorithm and reinforcement learning as an unsupervised learning algorithm, they are both very similar.
1.1 Least Squares Estimates
The least squares (LS) algorithm is a well-known and robust algorithm for fitting experimental data to a model. The first step is for the user to define a mathematical structure or model that he/she believes will fit the data. The second step is to design an experiment to collect data under suitable conditions. “Suitable conditions” usually means the operating conditions under which the system will typically operate. The next step is to run the estimation algorithm, which can take several forms, and, finally, validate the identified or “learned” model. The LS algorithm is often used to fit the data. Let us look at the case of the classical two-dimensional linear regression fit that we are all familiar with:
(0)
In this a simple linear regression model, where the input is the sampled signal and the output is . The model structure defined is a straight line. Therefore, we are assuming that the data collected will fit a straight line. This can be written in the form:
(0)
where and . How one chooses determines the model structure, and this reflects how one believes the data should behave. This is the essence of machine learning, and virtually all university students will at some point learn the basic statistics of linear regression. Behind the computations of the linear regression algorithm is the scalar cost
function, given by
(0)
The term is the estimate of the LS parameter . The goal is for the estimate to minimize the cost function . To find the “optimal” value of the parameter estimate , one takes the partial derivative of the cost function with respect to and sets this derivative to zero.
Therefore, one gets
(1)
Setting
, we get
(1)
Solving
for , we get the LS solution
(1)
where
the inverse, , exists. If
the inverse does not exists,
then the system is not identifiable. For example, if in the straight
line case one only had a single point, then the inverse would not
span the two-dimensional space and it would not exist. One needs at
least two independent points
to draw a straight line. Or, for example, if one had exactly the same
point over and over again, then the inverse would not exist. One
needs at least two independent points to draw a straight line. The
matrix is referred to as the information
matrix
and is related to how well one can estimate the parameters. The
inverse of the information matrix is the covariance matrix, and it is
proportional to the variance of the parameter estimates. Both these
matrices are positive definite and symmetric. These are very
important properties which are used extensively in analyzing
the
behavior of the algorithm. In the literature, one will often see the
covariance matrix referred to as . We can write the second equation
on the right of Eq. in the form :
(1)
and one
can define the prediction errors as
(1)
The
term within brackets in Eq. is known as the prediction
error
or, as some people will refer to it, the innovations.
The term represents the error in predicting the output of the
system. In this case, the output term is the correct answer, which
is what we want to estimate. Since we know the correct answer, this
is referred to as supervised
learning.
Notice that the value of the prediction error times the data vector
is equal to zero. We then say that the prediction errors are
orthogonal to the data, or that the data sits in the null space of
the prediction errors. In simplistic terms, this means that, if one
has chosen a good model structure , then the
prediction errors should
appear as white
noise.
Always plot the prediction errors as a quick check to see how good
your predictor is. If the errors appear to be correlated (i.e., not
white noise), then you can improve your model and get a better
prediction.
One
does not typically write the linear regression in the form of Eq. ,
but typically will add a white noise term, and then the linear
regression takes the form
(1)
where
is a
white noise term.
Equation can represent an infinite number of possible model
structures. For example, let us assume that we want to learn the
dynamics of a
second-order linear system
or the parameters of a
second-order infinite impulse response (IIR)
filter.
Then we could choose the second-order model structure given by
(1)
Then
the model structure would be defined in as
(1)
In
general, one can write an arbitrary th-order autoregressive exogenous
(ARX) model
structure
as
(1)
and
takes the form
(1)
One
then collects the data from a suitable experiment (easier said than
done!), and then computes the parameters using Eq. The vector can
take many different forms; in fact, it can contain nonlinear
functions of the data,
for example, logarithmic terms or square terms, and it can have
different delay terms. To a large degree, one can use ones
professional judgment as to what to put into . One will often write
the data in the matrix form, in which case the matrix is defined as
(1)
and the
output matrix as
(1)
Then
one can write the LS estimate as
Furthermore,
one can write the prediction errors as
We can
also write the orthogonal condition as
The LS
method of parameter identification or machine learning is very well
developed and there are many properties associated with the
technique. In fact, much of the work in statistical inference is
derived from the few equations described in this section. This is the
beginning of many scientific investigations including work in the
social sciences.
A Brief Review of Supervised Learning的更多相关文章
- A brief introduction to weakly supervised learning(简要介绍弱监督学习)
by 南大周志华 摘要 监督学习技术通过学习大量训练数据来构建预测模型,其中每个训练样本都有其对应的真值输出.尽管现有的技术已经取得了巨大的成功,但值得注意的是,由于数据标注过程的高成本,很多任务很难 ...
- Machine Learning Algorithms Study Notes(2)--Supervised Learning
Machine Learning Algorithms Study Notes 高雪松 @雪松Cedro Microsoft MVP 本系列文章是Andrew Ng 在斯坦福的机器学习课程 CS 22 ...
- Supervised Learning and Unsupervised Learning
Supervised Learning In supervised learning, we are given a data set and already know what our correc ...
- 监督学习Supervised Learning
In supervised learning, we are given a data set and already know what our correct output should look ...
- 论文笔记:A Review on Deep Learning Techniques Applied to Semantic Segmentation
A Review on Deep Learning Techniques Applied to Semantic Segmentation 2018-02-22 10:38:12 1. Intr ...
- 学习笔记之Supervised Learning with scikit-learn | DataCamp
Supervised Learning with scikit-learn | DataCamp https://www.datacamp.com/courses/supervised-learnin ...
- (转载)[机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation
[机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation http://blog.csdn.net/walilk/articl ...
- 【RS】A review on deep learning for recommender systems: challenges and remedies- 推荐系统深度学习研究综述:挑战和补救措施
[论文标题]A review on deep learning for recommender systems: challenges and remedies (Artificial Intell ...
- Introduction - Supervised Learning
摘要: 本文是吴恩达 (Andrew Ng)老师<机器学习>课程,第一章<绪论:初识机器学习>中第3课时<监督学习>的视频原文字幕.为本人在视频学习过程中逐字逐句记 ...
随机推荐
- 三代PacBio reads纠错 - 专题
三代纠错的重要性不言而喻,三代的核心优势就是长,唯一的缺点就是错误率高,但好就好在错误是随机分布的,可以通过算法解决,这也就是为什么现在有这么多针对三代开发的纠错工具. 纠错和组装是分不开的,纠错就是 ...
- 高并发下MySQL出现checking permissions
在某些数据访问层框架中,会使用show full tables from test like 'demo',来检查数据库的状态.当数据库中表的数量较少时,并没有出现严重的问题.但是当数据库中的表数量多 ...
- c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
问题描述: jfinal做的api系统中,在正常调用接口一段时间后,突然再调用接口的时候,该请求无响应api系统后台也无错误信息 (就是刚开始接口调用是正常的,突然就无响应了) 于是啊,就开始找错误. ...
- MAC OSX环境下cordova+Ionic的安装配置
一.简介 1.Ionic是什么 IONIC 是目前最有潜力的一款 HTML5 手机应用开发框架.通过 SASS 构建应用程序,它提供了很多 UI 组件来帮助开发者开发强大的应用. 它使用 JavaSc ...
- python——赋值与深浅拷贝
初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值和深浅拷贝~~~ 预备知识一——python的变量及其存储 在详细的了解python中赋 ...
- Unity3D 中的协程
若干文章: 1.Coroutine,你究竟干了什么? 2.Radical Coroutines 3.Extended Unity Coroutines
- Scala练习(二)
3.计算指定目录下以".txt"为扩展名的文件个数.注:随便建个目录,建几个.txt文件即可. 4.计算"input_4.txt"文件中搜索词的出现次数,并按次 ...
- UEditor-从客户端(editorValue="<p>asd</p>")中检测到有潜在危险的 Request.Form 值。
在用富文本编辑器时经常会遇到的问题是asp.net报的”检测到有潜在危险的 Request.Form 值“一般的解法是在aspx页面 page 标签中加上 validaterequest='fa ...
- angularJs,ionic字符串操作
1.首先我们需要把一段"文本或字符串"中的我们想进行操作的"字符串","字"筛选出来,代码如下: app.filter('replaceCo ...
- composer 一些使用说明
1 使用订制的包 配置 "repositories": [ { "type": "path", "url": " ...