【机器学习】一些基本概念及符号系统

注:其实自认为还是非常喜欢数学的,但是对于复杂的公式还是有种恐惧感,就像最开始学英语时,对英语的感觉一样。但是数学与英语不同的地方在于,你可以尽情的刨根问底,从最基础的知识开始了解,直到最终把一个符号或者公式的含义弄明白。在机器学习的过程中,也会碰到各种各样的符号,尤其是遇到多参数,多样本的情况时,更是让人眼花缭乱。最近学习完coursera上吴恩达的机器学习前两周的课程,有种豁然开朗的感觉。在此做一个小结。

1. 一些基本概念



图1. 机器学习的基本过程

  • 训练集(Training Set):为了研究一个变量(x)与另一个变量(y)的关系,而通过观察、测量等方式获得的一组数据。这组数据中收集了x和与之对应的y——一个数据对(x, y)。例如我们要研究房屋面积(x)和售价(y)之间的关系,每观察一套已出售的房屋,就得到一个数据对(x, y)。观察10套已出售的房屋,就可以得到10个这样的数据对,这时就得到了一个用来研究房屋面积和售价之间的关系的训练集了(虽然样本量比较小)。这些数据集一般采集自现实环境中,属于现象(我们的目的是透过现象看本质)。
  • 样本(Sample):训练集中采集数据的对象就是一个样本,例如一套已出售的房屋。
  • 模型(Model)由于某些历史原因,机器学习中的模型也被叫做假设(hypothesis, h),这个h就是我们透过现象想要寻找的"本质"。建立模型的过程通常就是确定一个函数表达式的过程(是否还记得寒假作业中的这类题目:观察一组数,写出下一个数是什么?)。最常见的模型是回归模型(线性回归或逻辑回归等),例如我们假设房屋面积与售价之间的关系是一个线性回归模型,则可以写成:$$h(\theta) = \theta_0 + \theta_1 x \qquad \ldots (1)$$ 其中h是函数(可能更习惯叫做y,但在机器学习中y一般表示已知的函数值,即后面的因变量;这里的h相当于预测得到的y),θ是函数的参数(也可以看做是每个自变量的权重,权重越大,对y的影响也越大),x是自变量。
  • 训练模型(Training Model):选定模型(选择合适的模型需要丰富的经验)后,函数的一般形式就确定了。通常所说的训练模型是指利用训练集求解函数的待定参数的过程。上面的(1)式与直线方程的一般形式y = ax + b是相同的,这里不过换了一种写法。此时我们知道模型是一条直线,为了确定这条直线的确定方程,我们需要求出两个未知的参数——θ0(截距)和θ1(斜率),如果训练集中只有两个样本,那就只是求一个二元二次方程组就解决问题了。
  • 特征(Feature):特征就是在一个模型中,所有想研究的自变量(x)的集合。例如我们在研究房屋售价的模型中,所有可能影响售价的因素都可以看成是一个特征,房屋面积、所在城市、房间个数等。在建立模型的过程中,特征的选择是一个大学问,甚至有专门的分支来研究特征选择或特征表示。

2. 训练集的表示



上面提到过,训练集就是许多的(x, y)数据对的集合。其中x是因变量,y是自变量。通常认为x的变化引起了y的改变,即x的值决定了y的值。在预测房屋价格的模型中,假如我们能找到所有影响房屋价格的因素(所有的x),并且确定各个因素准确的参数(θ),那么理论上可以准确的预测出任何房屋的价格(y)。

2.1 单因素训练集中自变量的表示方法

  • 单因素相当于方程中只有一个自变量,这个自变量可以用一个小写字母x来表示;
  • 如果收集了多个样本,则通过在右上角添加带括号的角标的方式区分,表示为x(1), x(2), ..., x(m),其中m表示样本的个数;
  • 矩阵的表示:向量一般用小写字母表示,矩阵用大写字母表示。所有单因素样本中的x可以用一个m x 1(m行1列)的列向量x(小写字母)(只有一列的矩阵就是一个列向量)来表示:$$x = \begin{pmatrix} x^{(1)} \\ x^{(2)} \\ \vdots \\ x^{(m)} \end{pmatrix}$$

2.2 多因素训练集中自变量的表示方法

  • 多因素相当于方程中有多个自变量(多个feature),不同的自变量之间使用右下角添加不带括号的角标来区分,表示为x1, x2, ..., xn,其中n表示feature的个数;
  • 当存在多个样本时,可以用一个m x n(m行n列)的矩阵X(大写字母)来表示:$$X = \begin{bmatrix} x_{1}^{(1)} & x_{2}^{(1)} & \ldots & x_{n}^{(1)}\\ x_{1}^{(2)} & x_{2}^{(2)} & \ldots & x_{n}^{(2)}\\ \vdots & \vdots & \ddots & \vdots \\ x_{1}^{(m)} & x_{2}^{(m)} & \ldots & x_{n}^{(m)} \end{bmatrix}$$

2.3 训练集中因变量的表示方法

无论是单因素还是多因素,每一个样本中都只包含一个因变量(y),因此只需要区分不同样本间的y,y(1), y(2), ..., y(m),其中m表示样本的个数;

用列向量y表示为:$$y = \begin{pmatrix} y^{(1)} \\ y^{(2)} \\ \vdots \\ y^{(m)} \end{pmatrix}$$

3. 参数的表示



也许是某种约定,在机器学习中,一般都是用θ来表示参数,参数是自变量X的参数(也可以看做是每个自变量的权重,权重越大的自变量对y的影响也越大),理论上,有多少个自变量就有多少个参数,但就像在直线方程y = ax + b中表现出来的那样,除了x的参数a,还有一个常数项b。因此参数一般比自变量的个数多一个,当有n个自变量的时候,会有n+1个参数。

最终的模型是由一个特定的方程来表示的,在训练模型的过程中,确定了这个方程中的未知参数。这些参数对于所有的样本都是相同的,例如第一个样本x(1)中的第一个自变量x1的参数与任意其他样本x(i)中第一个自变量x1的参数是相同的。因此不用区分样本间的参数,只用区分不同自变量之间的参数,可以使用一个n+1维的列向量θ来表示所有的参数:

$$\theta = \begin{pmatrix} \theta_0 \\ \theta_1 \\ \vdots \\ \theta_n \end{pmatrix}$$

4. 模型的表示



这里说的模型就是一个特定的函数,上面已经提过,模型一般使用h来表示。下面用线性回归模型来举例说明模型的符号表示。

4.1 直接表示

直接表示方法是我们在没有学习线性代数之前的代数表示方式。

  • 单变量线性回归方程:$$h_\theta (x) = \theta_0 + \theta_1 x$$
  • 多变量线性回归方程:$$h_\theta (x) = \theta_0 + \theta_1 x_1 + \theta_2 x_2 + \theta_3 x_3 + \ldots + \theta_n x_n$$

4.2 矩阵表示

学习了线性代数后,可以使用矩阵来表示上面的方程,不仅表示起来方便,直接进行矩阵运算效率也更高效。在这里需要特别说明的一点是,为了配合矩阵的表示,在上面的方程中添加了x0,并且x0=1,且将θ0作为x0的参数。

  • 单变量/多变量线性回归方程:$$h_\theta (x) = X \theta = \begin{bmatrix} x_{0}^{(1)} & x_{1}^{(1)} & \ldots & x_{n}^{(1)}\\ x_{0}^{(2)} & x_{1}^{(2)} & \ldots & x_{n}^{(2)}\\ \vdots & \vdots & \ddots & \vdots \\ x_{0}^{(m)} & x_{1}^{(m)} & \ldots & x_{n}^{(m)} \end{bmatrix} \begin{bmatrix} \theta_0 \\ \theta_1 \\ \vdots \\ \theta_n \end{bmatrix}$$,此时X是一个m x (n+1)的矩阵,每一行表示一个样本,每一列表示一个特征,结果是一个m x 1的列向量,其中m表示样本的个数,n表示变量的个数;
  • 当只有一个样本多个变量时,还可以表示为:$$h_\theta (x) = \theta^T x = \begin{bmatrix} \theta_0 & \theta_1 & \ldots & \theta_n \end{bmatrix} \begin{bmatrix} x_0 \\ x_1 \\ \vdots \\ x_n \end{bmatrix}$$,此时x是一个(n+1)维的列向量,每一行表示一个变量的值。

参考:https://www.coursera.org/learn/machine-learning

时间: 2024-08-04 10:18:15

【机器学习】一些基本概念及符号系统的相关文章

机器学习:基本概念、五大流派与九种常见算法

机器学习正在进步,我们正在不断接近创造人工智能的目标.语音识别.图像检测.机器翻译.风格迁移等技术已经在生活中开始得到了应用,但机器学习的发展仍还在继续,有人认为这场变革有可能会彻底改变人类文明的发展方向乃至人类自身.但你了解现在正在发生的这场变革吗?四大会计师事务所之一的普华永道(PwC)近日发布了多份解读机器学习基础的图表,其中介绍了机器学习的基本概念.原理.历史.未来趋势和一些常见的算法. 一.机器学习概览 1. 什么是机器学习? 机器通过分析大量数据来进行学习.比如说,不需要通过编程来识

机器学习的基本概念

智能系统:需要具有学习能力.例如,遇到错误时能自我校正:会通过经验改善自身的性能:会自动获取和发现所需要的知识. 基本特征: 自适应:根据数据自动调整参数 自组织:根据数据自动确定组织规则 自推理:根据已有数据和规则能发现新的定理.定律和规则 应用:如专家系统.自动推理.自然语言理解.模式识别.计算机视觉.智能机器人等领域.其中尤其典型的是专家系统中的知识获取瓶颈问题,人们一直在努力试图采用机器学习的方法加以克服. 机器学习的基本概念: 按照人工智能大师西蒙的观点,学习就是系统在不断重复的工作中

【Machine Learn】机器学习及其基础概念简介

机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结合视频学习和书籍基础的笔记所得.本系列文章将采用理论结合实践方式编写.首先介绍机器学习和深度学习的范畴,然后介绍关于训练集.测试集等介绍.接着分别介绍机器学习常用算法,分别是监督学习之分类(决策树.临近取样.支持向量机.神经网络算法)监督学习之回归(线性回归.非线性回归)非监督学习(K-means聚

机器学习的基础概念

一.概念理解 机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论.统计学.逼近论.凸分析.算法复杂度理论等多门学科.专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能. 它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳.综合而不是演绎. 机器学习有下面几种定义:(一个讲的比较好的文章) “机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如

机器学习初探——机器学习的基本概念

机器学习 机器学习研究的主要内容:使计算机从数据中产生"模型"的算法. 机器学习的基本术语 我们认为将一组数据可以抽象画表示为一个向量Xi,D={X1,X2,X3..Xm}表示包含m个示例的数据集,每一个Xi是由一系列属性描述所构成的,Xij则表示第i个示例的第j个特征或属性. 所有记录的集合为:数据集(D) 每一条记录为:一个实例(instance)或样本(sample),(样本.示例.记录:Xi). 一个样本的特征数为:维数(dimensionality),属性空间的维数,当维数非

机器学习中复杂概念的理解

平均值和数学期望的区别? 均值(mean value)是针对既有的数值(简称母体)全部一个不漏个别都总加起来,做平均值(除以总母体个数),就叫做均值. 但是当这个数群(data group)的数量(numbers)很大很多时,我们只好做个抽样(sampling),并"期望"透过抽样所得到的均值,去预测整个群体的"期望值(expectation value)". 当抽样的数量很大时候,我们认为抽样得到的均值接近于期望值. 机器学习中概念都有哪些? 损失函数是度量模型一

台大机器学习基石课程之机器学习基本原理和概念

前段时间在网上看到了coursera公开课台大机器学习基石课程,比较全面而且清晰地将机器学习所需的基本知识.理论基础给与了讲解.foundation中有几个比较重要的概念和思想,先进行一下回顾,然后开启对后续技法课程的学习和总结. 1. VC dimension(VC维,非常重要的概念) 能够shutter 二分类问题的上限.也是衡量模型复杂度的工具(类似自由度的概念).之所以这个概念比较重要是它能够解释为什么机器能够学习. 1),以概率统计中常用的手段:用sample来估计整体,机器学习也是如

AI机器学习-决策树算法-概念和学习过程

1. 概念 决策树是通过一系列规则对数据进行分类的过程,它提供一种在什么条件下会得到什么值的类似规则的方法.决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树. 分类决策树模型是一种描述对实例进行分类的树形结构.决策树由结点和有向边组成.结点有两种类型:内部节点和叶节点,内部节点表示一个特征或属性,叶节点表示一个类. 直观看上去,决策树分类器就像判断模块和终止块组成的流程图,终止块表示分类结果(也就是树的叶子).判断模块表示对一个特征取值的判断(该特征有几个值,判断

机器学习:基本概念、一般步骤、工具

人工智能(Artificial Intelligence) 通过计算机模拟人类智慧,以完成很多只有人类才可以完成,甚至连人类都无法完成的任务 比如专家系统.图像识别.语音识别.自然语言处理.自动驾驶.推荐系统.人机博弈.电脑游戏.机器人等 人类利用计算机完成了很多对人类而言非常困难的工作,但一些人类可以很容易解决的问题比如驾驶汽车.语言图像识别,计算机却很难解决,这是人工智能需要解决的问题 早期人工智能只能解决简单的特定环境下的问题,比如国际象棋 机器学习(Machine Learning) 通