机器学习算法面试—口述(3):贝叶斯分类器

这个系列是为了应对找工作面试时面试官问的算法问题,所以只是也谢算法的简要介绍,后期会陆续补充关于此算法的常见面试的问题!

贝叶斯分类器的原理其实很简单,知道了贝叶斯公式基本上就知道了贝叶斯分类器的工作原理。对于一个待分类项,求出此项出现的条件下哪个类别的概率大,就判定为哪类,仅次而已。其实贝叶斯分类器是建立在错误的理论上建立起来的分类器,没错就是错误的理论,它假定事物之间是没有联系的(马克思告诉我们,这是不可能的。。。),从而大大的简化了计算。

算法的过程如下:

首先核心的是贝叶斯公式:P(B | A) = P(A, B) / P(B) = P(A | B) * P(A) / P(B);从而将P(B | A)转化为P(A | B) 。

设X = {a1, a2, ... , am}, a为x的一个属性,C = {y1, y2,..., yn},为类别。计算P(y1| X), P(y2| X), ...., P(yn|
X)哪个大,哪个大就判定为哪个类别。问题的关键就是求P(y1| X), P(y2| X), ...., P(yn| X),但是直接求是求不出来的,这时就要靠贝叶斯公式了。

首先可以统计某个类别出现时给个属性出现的概率

P(a1|
y1), P(a2| y1), ...., P(am| y1)

P(a1|
y2), P(a2| y2), ...., P(am| y2)

.........................................................

P(a1|
yn), P(a2| yn), ...., P(am| yn)

之后利用朴素贝叶斯的思想 + 贝叶斯公式

P(yi | X) = P(X|yi)*P(yi) / P(X),是要比较这个式子的结果谁的大,分母都是一样的,所以只需要比较P(X|yi)*P(yi) ,其中P(yi) 可以通过训练数据统计出来,P(X|yi)用朴素贝叶斯的理论求出来P(X|yi)
= P(a1| yi)  * P(a2| yi) * .... * P(am| yi)

整个这个过程就是贝叶斯的思想了。

整个过程存在两个问题

1、分母为0,可以使用拉普拉斯校准;

2、概率连乘后过小,可以使用对数表示;

3、朴素贝叶斯理论错误,改用贝叶斯网络;

现在简要说下贝叶斯网络,贝叶斯网络是由有向无环图(DAG)和条件概率表组成,DAG中每个节点表示一个随机变量,是一个可以直接观测或则隐藏的变量,有向边表示随机变量的条件依赖,条件概率表中给出了DAG中边的依赖程度。

贝叶斯网络的一个核心的性质是:一个节点在给定了前驱节点的值后,此节点独立于任何非直接前驱节点。

之后的计算和前面的贝叶斯分类器差不多。

贝叶斯网络的关键在于如何训练网络,即如何得到DAG以及条件概率表,这是一个NP问题,贝叶斯网络的训练一般是用梯度下降法,而网络的拓扑结构一般由专家解决(这是资料上说的,我也没做过这个。。。)。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-15 06:17:09

机器学习算法面试—口述(3):贝叶斯分类器的相关文章

机器学习算法( 四、朴素贝叶斯算法)

一.概述 前两章我们要求分类器做出艰难决策,给出“该数据实例属于哪一类”这类问题的明确答案.不过,分类器有时会产生错误结果,这时可以要求分类器给出一个最优的类别猜测结果,同时给出这个猜测的概率估计值. 概率论是许多机器学习算法的基础,所以深刻理解这一主题就显得十分重要.第3章在计算特征值取某个值的概率时涉及了一些概率知识,在那里我们先统计特征在数据集中取某个特定值的次数,然后除以数据集的实例总数,就得到了特征取该值的概率.我们将在此基础上深人讨论.      本章会给出一些使用概率论进行分类的方

机器学习算法面试口述(7)—分类小结

这个系列是为了应对找工作面试时面试官问的算法问题,所以只是也谢算法的简要介绍,后期会陆续补充关于此 算法的常见面问题. 分类的概念就说了,分类一般分为两个阶段:学习阶段以及分类阶段: 常用的分类方法有: 1.决策树 决策树不需要任何领域的知识或者参数的设置,其可以处理高维数据,简单快速. 若分类的数据是连续的,则需要插入分裂点将数据离散化:树建立的过程中,需要按照一定的 规则选择分裂的属性,可以有信息的增益.增益率.基尼指数等等,不同的规则对应的决策树, 如前面三种分别对应ID3.C4.5.CA

机器学习算法总结(十)——朴素贝叶斯

1.模型的定义 朴素贝叶斯是基于贝叶斯定理与特征条件独立假设的分裂方法.首先我们来了解下贝叶斯定理和所要建立的模型.对于给定的数据集 假定输出的类别yi ∈ {c1, c2, ...., ck},朴素贝叶斯通过训练数据集的来学习联合概率分布P(x|y).但是直接求联合概率分布P(x|y)一般比较难,因此在这里我们近视的求先验概率分布和条件概率分布来替代它.先验概率分布如下 对于先验概率的求解,可以根据大数定理认为就是该类别在总体样本中的比例.条件概率分布如下 通过先验概率和条件概率的求解就可以学

机器学习算法面试—口述(5):回归

这个系列是为了应对找工作面试时面试官问的算法问题,所以只是也谢算法的简要介绍,后期会陆续补充关于此 算法的常见面问题. 一.Logistic回归 先说下logistic回归,它是根据现有数据对分类边界建立回归公式,以此进行分类.其计算代价不高,易于 实现与理解,但是容易欠拟合.分类精度不太高: logistic回归可以看成是一种概率估计,使用的的是sigmioid函数, 通过训练数据训练出参数[w1, w2, ..., wn],根据训练出的参数就可以求出h(x)的值,比较其 与0.5的大小(大于

机器学习算法面试—口述(4):决策树

这个系列是为了应对找工作面试时面试官问的算法问题,所以只是也谢算法的简要介绍,后期会陆续补充关于此 算法的常见面问题! 决策树是一种依托于策略抉择而建立起来的树,是一种依托于分类.训练上的预测树,根据已知,预测和分类未来. 决策树的建立是不断的使用数据的特征将数据分类的过程,主要的问题在于如何选择划分的特征: 常用的几种决策树算法有ID3.C4.5.CART等:其中ID3使用的是信息熵增益选大的方法划分数据,C4.5是使用增益率选大的方法划分数据,CART使用的是基尼指数选小的划分方法: ID3

机器学习之贝叶斯分类器

贝叶斯分类器(Bayesian decision theory) 贝叶斯决策论是概率框架下实施决策的基本方法,通过相关概率预先已知的情况下对误判损失来选择最优的类别分类. 将标记为cj的样本误分类成ci产生的期望损失,即样本上的“条件风险”为 贝叶斯分类的最基本的思想是:为了最小化总体风险,只需在每个样本上选择能够使条件风险R(c|x)最小的类别标记. 要想用贝叶斯判定准则来最小化决策风险,首先要获得后验概率P(c|x),机器学习则是基于有限的训练样本集尽可能准确的估计出后验概率P(c|x).通

神经网络与机器学习笔记——贝叶斯分类器

高斯环境下贝叶斯分类器退化为线性分类器,与感知器形式一样,但是感知器的线性特性并不是由于高斯假设而引起的. 贝叶斯分类器: 高斯分布下的贝叶斯分类器 更多关于神经网络笔记见我的专栏:神经网络与机器学习笔记

机器学习系列-朴素贝叶斯分类器

贝叶斯分类器 什么是贝叶斯分类器 贝叶斯分类器是一类分类器的总称,这些分类器均以贝叶斯定理为基础,故统称为贝叶斯分类器.这些分类器中最简单的是朴素贝叶斯分类器,它几乎完全按照贝叶斯定理进行分类,因此我们从朴素贝叶斯分类器说起. 贝叶斯定理: 贝叶斯定理是概率论中一个比较重要的定理,在讲解贝叶斯定理之前,首先回顾一下贝叶斯定理的基础:条件概率和全概率公式. 条件概率:设\(A,B\)是两个事件,且\(P(A)>0\),称 \[P(B|A)=\frac{P(AB)}{P(A)}\] 为在事件\(A\

机器学习(五)—朴素贝叶斯

最近一直在看机器学习相关的算法,今天我们学习一种基于概率论的分类算法—朴素贝叶斯.本文在对朴素贝叶斯进行简单介绍之后,通过Python编程加以实现. 一  朴素贝叶斯概述                                                               1 前言 “贝叶斯”又是一个响当当的名字,刚开始接触的是贝叶斯定理.贝叶斯分类器是一类分类算法的总称,是两种最为广泛的分类模型之一,另一种就是上篇中的决策树了.贝叶斯分类均以贝叶斯定理为基础,朴素贝叶斯是