IoT, ROS and AI {Session 3}

Content 

目录

目录

k-Nearest Neighbour (k-NN) 最近邻 (k-NN)

k-mean K-均值

Decision Tree 决策树

ID3 

Bayes' Theorem Bayes定理

Bayes Classifier Bayes分类器

Maximum a Posteriori (MAP) Estimation 最大后验(MAP)估计

Maximum Likelihood 极大似然

Naive Bayesian Network 朴素贝叶斯网络

Expectation Maximisation 经验最大化


机器学习分为以下几种学习方式:

  • 监督式学习 supervised learning
    • 使用一组数据来学习一个模型
    • 给训练数据分配标签label(类)
    • example:分类和回归问题
    • 算法:贝叶斯网络,人工神经网络
  • 无监督式学习 unsupervised learning
    • 使用一组数据来学习一个模型
    • 没有给训练数据分配标签label(类)
    • 学习算法必须学习训练数据中的模式或结构
    • example:聚类,降维问题
    • 算法:K-means, SOM
  • 半监督式学习 semi-supercised learning
    • 训练数据由有标签和无标签的数据混合组成
    • 模型必须了解数据中的结构或模式
    • example:分类和回归问题
    • 算法:隐马尔可夫模型

常见的算法:

  • 回归算法
    • 普通最小二乘回归(OLSR)
    • 线性回归
    • 逻辑回归
    • 逐步回归
    • 多元自适应回归样条 
  • 基于实例的算法
    • K临近算法 (KNN)
    • 自组织映射(SOM)
    • 局部加权学习(LWL)
  •  正则化算法
    • 岭回归
    • 最小绝对收缩选择算子(LSSO)
    • 弹性网
  •  决策树算法
    • 分类及回归树(CART)
    • 迭代二分类器(ID3)
    • C4.5和C5.0
    • 卡方自动交互检测(CHAID)
  • 贝叶斯算法
    • 朴素贝叶斯
    • 贝叶斯网络
  • 聚类算法
    • K-means
    • 期望最大化 (EM)
  • 人工神经网络算法
    • 感知器
    • 径向基函数网络
    • hopfield 网络
  • 深度学习算法
    • 深度玻尔兹曼机(DBM)
    • 深度信念网络(DBM)
    • 卷积神经网络(CNN)
  • 降维
    • 主成分分析(PCA)
    • 多维标度(MDS)
    • 偏最小二乘回归(PLSR)
  • 集成算法
    • boosting
    • AdaBoosting
    • Booststrapped Aggregation Bagging
  • 遗传算法

k-Nearest Neighbour (k-NN) 最近邻 (k-NN)

 

所有实例或者对象(我们这里可以抽象为点)都对应了N维空间中的点(n维空间用R^{n})表示。每两个实例或者点之间的距离用标准欧式几何距离来定义。其中每一个实例x都可以用一个特征向量表示 :<a_{1}(x), a_2(x), a_3(x), ..., a_n(x)>。其中a_{n}代表了这个实例x第n列的值。

那每两个实例之间的距离如何表示呢?

有两个实例a_ia_j,他俩的距离就表示为上图所示。也就是每一个实例对应的特征向量里的每一列相减、平方再求和。

K-NN涉及到了training和classification算法。(这里暂且不会)

 这里有一个帮助我们理解K-NN的例子。首先我们拥有三个阵营,a,b和c。我们要把c划进ab两个阵营中(也叫综合k个“邻居”的标签值作为新样本的预测值),但是如何进行划分是一个问题。

首先我们要确定k值,它的作用是我们需要从c阵营周边找多少个邻居,k值怎么确定?

文章转自—— https://www.zhihu.com/question/40456656/answer/2269875330
来源:知乎

k值是KNN算法的一个超参数,K的含义即参考”邻居“标签值的个数。 有个反直觉的现象,K取值较小时,模型复杂度(容量)高,训练误差会减小,泛化能力减弱;K取值较大时,模型复杂度低,训练误差会增大,泛化能力有一定的提高。

原因是K取值小的时候(如k==1),仅用较小的领域中的训练样本进行预测,模型拟合能力比较强,决策就是只要紧跟着最近的训练样本(邻居)的结果。但是,当训练集包含”噪声样本“时,模型也很容易受这些噪声样本的影响(如图 过拟合情况,噪声样本在哪个位置,决策边界就会画到哪),这样会增大"学习"的方差,也就是容易过拟合。这时,多”听听其他邻居“训练样本的观点就能尽量减少这些噪声的影响。K值取值太大时,情况相反,容易欠拟合。

对于K值的选择,通常可以网格搜索,采用交叉验证的方法选取合适的K值。

一般情况下:我们要为一个有两个分类的问题  选择一个奇数值 k,且k不能是分类的数量的倍数。

K-NN的缺点:他总是在搜索周边的最小的临朐,这是一件很复杂的事尤其是在数据集很庞大的时候。

下面是K-NN的一些例子:

so, the method is very straightforward. The first step is getting the training data (i.e. the first table with X as the input and Y is the output) 也就是说我们首先需要得到一个训练数据(也就是表一中x1和x2,他两是成对出现的,所以我理解为他们是一个实体的两个分量)

Then when you do classification with a new input i.e. X1=3, X2=6. You just need to calculate the Euclidean distance between the new input point with all the training data point (hence, the second table). 然后我们怎样去分类?只需要计算新输入点与所有训练数据点之间的欧几里得距离,也就是表二第三列的运算过程,得到我们新输入点与训练数据德欧几里得距离d。

then you rank the Euclidean distances, and pick the first k samples with the least distance (for ex, the 3 training data points which is closest to the new input point). Then check the corresponding outputs of those training data points and if most of the output is Yes, then the result will be Yes.然后我们需要取这些距离中前k个距离最小的样本,跟k比较,比k小就行。

所以我们可以得到下面的结果:

k-mean K-均值

K-mean clustering

他是一个简单地无监督的学习算法,他通过一定量的集群(clusters)对给定的数据集进行分类。

对于k个集群,我们为每一个定义1个中心,一共k个中心

学习过程:

  1. 在任一点放置质心c_j
  2. 对于每一个数据点x_i,我们要找到离他最近的质心c_j,然后计算他俩之间的欧几里得距离{\left \| x_i - c_j \right \|^{^{}}}^2,然后把x_i赋值给c_j ,也就是c_j 变成了 x_i。表示为x_i^{(j)} 
  3. 重复以上过程直到c_j不改变。

就像这个例子一样。 

Decision Tree 决策树

决策树是通过从根节点到一些叶节点(自上而下)的排序来对实例进行分类。然后这些不同的叶节点有可能被分到不同的类中,也就实现了分类。

树上的每一个节点都是对于某个实例的某个特殊属性的测试,从该节点降序的每一个分支是一个该特别属性的可能值。

例如:

我们需要找到樱桃的分类,首先从根节点开始。根据樱桃的特征进行下一步操作——樱桃是红色的,大小是小的,尝起来是甜的。所以我们找到了cherry这个根节点。 

我们将上面的例子抽象出来,我们可以看出,在最上面节点中,i就是这个实例的某个属性。然后做子节点已经是一个分类了,右子节点是一个对该属性的测试,从而又分出来两个类。所以上图其实是有三个类别。分别是small,medium和large。

note:如果属性是n维的,那么决策树将创建超平面来分隔不同类。

一个例子: 

ID3 algorithm

 ID3分六步建立树

  1. 使用训练数据分个节点
  2. 使用最优属性拆分(就像上面的Outlook一样)

Bayes' Theorem Bayes定理

Bayes Classifier Bayes分类器

Maximum a Posteriori (MAP) Estimation 最大后验(MAP)估计

Maximum Likelihood 极大似然

Naive Bayesian Network 朴素贝叶斯网络

Expectation Maximisation 经验最大化
 

猜你喜欢

转载自blog.csdn.net/Harvery_/article/details/126008984
IOT