一、贝叶斯分类器和其他分类器的区别
贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。。也就是说,贝叶斯分类器是最小错误率意义上的优化。目前研究较多的贝叶斯分类器主要有四种,分别是:Naive Bayes、TAN、BAN和GBN。
贝叶斯网络是一个带有概率注释的有向无环图,图中的每一个结点均表示一个随机变量,图中两结点间若存在着一条弧,则表示这两结点相对应的随机变量是概率相依的,反之则说明这两个随机变量是条件独立的。网络中任意一个结点X 均有一个相应的条件概率表(Conditional Probability Table,CPT),用以表示结点X 在其父结点取各可能值时的条件概率。若结点X 无父结点,则X 的CPT 为其先验概率分布。贝叶斯网络的结构及各结点的CPT 定义了网络中各变量的概率分布。
1,它是一种典型的生成学习方法,其生成方法是由训练数据学习联合概率分布P(X,Y),具体来说就是利用训练数据学习P(Y)和P(X|Y)的估计:P(X,Y) = P(Y)P(X|Y),其概率估计方法是极大似然估计或者贝叶斯估计都行~~~
2,另一个要注意的点是朴素贝叶斯的基本假设是条件独立性。
<img src= data-rawwidth=586 data-rawheight=127 class=origin_image zh-lightbox-thumb width=586 data-original=>(因为网上没有找到这个公式,所以我自己打开了word~自从数学建模后就没编辑过这么复杂的公式,2333~)(因为网上没有找到这个公式,所以我自己打开了word~自从数学建模后就没编辑过这么复杂的公式,2333~)
这会使模型包含的条件概率的数量减少,因而朴素贝叶斯法高效,易于实现,但也有缺点,就是其分类的性能不一定很高。
3,朴素贝叶斯发利用贝叶斯定理与学到的联合概率模型进行分类预测,
<img src= data-rawwidth=408 data-rawheight=106 class=content_image width=408>将输入x分到后验概率最大的类y.将输入x分到后验概率最大的类y.
<img src= data-rawwidth=499 data-rawheight=75 class=origin_image zh-lightbox-thumb width=499 data-original=>后验概率最大等价于0-1损失函数时的期望风险最小化。。。
后验概率最大等价于0-1损失函数时的期望风险最小化。。。
二、机器学习有很多关于核函数的说法,什么是核函数
分类器一般都是线性分类器,对于线性不可分的样本空间,需要核函数将样本映射至高维空间使其线性可分。
三、如何用adaboost训练分类器
Paul Viola和Michael Jones于2001年将Adaboost算法应用于人脸检测中,其基本思想是针对不同的训练集训练同一个分类器(弱分类器),然后把这些不同训练集上的得到的分类器联合起来,构成一个最终的强分类器。Adaboost 算法中不同的训练集是通过调整每个样本对应的权重来实现的。开始时,每个样本对应的权重是相同的,对于h1 分类错误的样本,加大其对应的权重; 而对于分类正确的样本, 降低其权重, 这样分错的样本就被突出出来,从而得到一个新的样本分布 U2 。在新的样本分布下,再次对弱分类器进行训练,得到弱分类器 h2 。依次类推,经过 T 次循环,得到 T 个弱分类器,把这 T 个弱分类器按一定的权重叠加(boost)起来,得到最终想要的强分类器。
训练系统总体框架,由“ 训练部分”和 “ 补充部分”构成。依据系统框架,本文的训练系统可分为以下几个模块:
(1)以样本集为输入,在给定的矩形特征原型下,计算并获得矩形特征集;
(2)以特征集为输入,根据给定的弱学习算法,确定闽值,将特征与弱分类器一一对应,获得弱分类器集;
(3)以弱分类器集为输入, 在训练检出率和误判率限制下, 使用A d a B o o s t 算法
挑选最优的弱分类器构成强分类器;
(4)以强分类器集为输入,将其组合为级联分类器;
(5)以非人脸图片集为输入,组合强分类器为临时的级联分类器,筛选并补充
非人脸样本。
四、sparse encoding是无监督学习吗
机器学习任务根据训练样本是否有label,可以分为监督学习和无监督学习 监督学习的训练样本有label,主要是学习得到一个特征空间到label的映射,如分类、回归等 无监督学习的训练样本没有label,主要是发现样本的内部结构,如聚类、降维、可视化等
五、有没有好用的java编写的分类器,将一些文本文件进行分类?
文本分类的重点不在分类,而在怎么样描述文本模型和提取文档中的terms并把它数字化,转化为分类器可以使用的输入类型。这前面的处理直接关系到后面分分类效果。就文本模型而言,现在普遍使用的还是Salton 和 McGill的Vector Space Model, 通过TF-IDF统计,如果是英文的话,要进行语义层次的抽象, 这方面可以使用WordNet,网上可以找到JAVA wordnet 的API,,个人认为比较好的是JWNL 如果是中文的话,涉及到分词, 中科院计算所分词系统ICTCLAS, 可到其网站上下载免费版。
至于JAVA写的分类器很多,常用的比如说Weka, RapidMiner(这个相当不错,有专门的Web data Mining的扩展包,是我的最爱),这些都可以自己调用其接口实现新的算法。个人强烈推荐使用RapidMiner,功能相当强大,几乎实现了当前的所有机器学习的算法,并且操纵简便。
学习提示:不要刚开始就希望效果很好,急躁是做学问的大敌,肯定会出现一些意想不到的问题,最主要是勤于思考,善于查找问题,慢慢改进,一个问题,如果比较难,回到它最原始最简单的问题上去。祝你学业进步。