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的更多相关文章

  1. A brief introduction to weakly supervised learning(简要介绍弱监督学习)

    by 南大周志华 摘要 监督学习技术通过学习大量训练数据来构建预测模型,其中每个训练样本都有其对应的真值输出.尽管现有的技术已经取得了巨大的成功,但值得注意的是,由于数据标注过程的高成本,很多任务很难 ...

  2. Machine Learning Algorithms Study Notes(2)--Supervised Learning

    Machine Learning Algorithms Study Notes 高雪松 @雪松Cedro Microsoft MVP 本系列文章是Andrew Ng 在斯坦福的机器学习课程 CS 22 ...

  3. Supervised Learning and Unsupervised Learning

    Supervised Learning In supervised learning, we are given a data set and already know what our correc ...

  4. 监督学习Supervised Learning

    In supervised learning, we are given a data set and already know what our correct output should look ...

  5. 论文笔记: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 ...

  6. 学习笔记之Supervised Learning with scikit-learn | DataCamp

    Supervised Learning with scikit-learn | DataCamp https://www.datacamp.com/courses/supervised-learnin ...

  7. (转载)[机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation

    [机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation http://blog.csdn.net/walilk/articl ...

  8. 【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 ...

  9. Introduction - Supervised Learning

    摘要: 本文是吴恩达 (Andrew Ng)老师<机器学习>课程,第一章<绪论:初识机器学习>中第3课时<监督学习>的视频原文字幕.为本人在视频学习过程中逐字逐句记 ...

随机推荐

  1. 【转】 C++的精髓——虚函数

    虚函数为了重载和多态的需要,在基类中是由定义的,即便定义是空,所以子类中可以重写也可以不写基类中的函数! 纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数! 虚函数 引入原 ...

  2. Python之路 day2 字典练习题之 三级菜单

    #Author:ersa ''' 程序: 三级菜单 要求: 打印省.市.县三级菜单 可返回上一级 可随时退出程序 ''' menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{ ...

  3. phpstorm使用手册

    参考:http://www.cnblogs.com/luojianqun/p/4596052.html 罗总说这是php最好的IDE,phpstorm9.02,没有之一.各种功能各种好,罗总此等大神说 ...

  4. meta 360极速模式

    <meta name="render" content="webkit">  启用360极速模式

  5. DOM加载顺序

    最近一直在困扰dom的加载顺序问题,经常会遇到以为绑定好的事件不响应等情况,一头雾水,直到请教了周围的同事,才发现了解dom的加载顺序是多么的重要. 关于这个问题,其实网上已经有一些介绍,但是我觉得并 ...

  6. Win8开虚拟wifi ‘无法启动承载网络 组或资源的状态不是执行请求操作的正确状态“

    第一步,首先我们点开开始按钮菜单,要右键以“管理员身份”打开CMD“命令提示符”并键入或者复制(粘贴)命令:netsh wlan show drivers 查看本机无线网卡是否支持此项Wifi热点共享 ...

  7. echarts图表第一个案例

    1.action中获取到数据 @Override public String execute() throws Exception { List<Student> find = echar ...

  8. 周爱民:真正的架构师是没有title的(图灵访谈)

    周爱民,现任豌豆荚架构师,国内软件开发界资深软件工程师.从1996年起开始涉足商业软件开发,历任部门经理.区域总经理.高级软件工程师.平台架构师等职,有18年的软件开发与架构.项目管理及团队建设经验, ...

  9. 动态获取R.drawable.xx资源

    String imageName = "index_fragmen"+getColor();final int resId = context.getResources().get ...

  10. java selenium (二) 环境搭建方法一

    webdriver 就是selenium 2.    webdriver 是一款优秀的,开源的,自动化测试框架. 支持很多语言.  本文描述的是用java Eclipse 如何搭建环境 阅读目录   ...