Stanford大学机器学习公开课(六):朴素贝叶斯多项式模型、神经网络、SVM初步
(一)朴素贝叶斯多项式事件模型
其在NB-MEM中的向量表示则如下所示:
在NB-MEM中,假设文本的生成过程如下:
于是,我们可以得到参数在训练集上的极大似然估计:
在φk|y=1和φk|y=0
上使用Laplace平滑,得到公式如下:
其中,|V|为词典的大小。
分子的意思是对所有标签为1的邮件求和,即只考虑垃圾邮件,之后对垃圾邮件中的所有词求和,它加起来应该是词k出现在垃圾邮件中的次数。
假如邮件中只有a,b,c这三个词,他们在词典的位置分别是1,2,3,前两封邮件都只有两个词,后两封有3个词。
假如新来一封邮件为b,c,那么特征表示为{2,3}
那么该邮件是垃圾邮件概率是0.6。
,而朴素贝叶斯里面针对每个特征求的φxj=1|y=1
,而且这里的特征值维度是参差不齐的。
其中,xi是输入的特征向量的各个分量,sigmoid是计算单元,output是函数输出。sigmoid计算单元有参数θ,其函数形式为:
而神经网络则是将这样的计算单元组合起来,如下图所示:
其中,a1,a2,a3是中间单元的输出。可以看到,该图所示的神经网络有四个参数,分别为四个sigmoid单元的参数。这些参数之间的关系如下式所述:
这是第一次视频里就提到的二次成本函数(quadratic cost
function),可以使用梯度下降方法最小化成本函数来求得参数,在神经网络中的梯度下降算法有一个专门的名称叫做反向传播算法。
layer),与输出直接项链的称为输出层(output
layer)。神经网络算法的一大特点就在于不知道隐藏层计算的东西的意义,另一个特点在于神经网络有比较多的局部最优值,可以通过多次随机设定初始值然后运行梯度下降算法获得最优值。
LeCun,他以字符识别与卷积神经网络而著名。另外一个应用则是NETtalk神经网络,使用神经网络来阅读文本,作者是Terry
J.Sejnowski。
Machine),必须先了解函数间隔与几何间隔。一下假设数据集是线性可分的。
而目标函数h也由:
变为:
其中,公式15中x,θ εRn+1
,且x0=1。而在公式16中,x,ω εRn
,b取代了公式15中x0的作用。
公式17还有一个性质,即对于正确分类的数据点,函数间隔不小于0。
Stanford大学机器学习公开课(六):朴素贝叶斯多项式模型、神经网络、SVM初步的更多相关文章
- Andrew Ng机器学习公开课笔记 -- 朴素贝叶斯算法
网易公开课,第5,6课 notes,http://cs229.stanford.edu/notes/cs229-notes2.pdf 前面讨论了高斯判别分析,是一种生成学习算法,其中x是连续值 这里要 ...
- Stanford大学机器学习公开课(五):生成学习算法、高斯判别、朴素贝叶斯
(一)生成学习算法 在线性回归和Logistic回归这种类型的学习算法中我们探讨的模型都是p(y|x;θ),即给定x的情况探讨y的条件概率分布.如二分类问题,不管是感知器算法还是逻辑回归算法,都是在解 ...
- Stanford大学机器学习公开课(四):牛顿法、指数分布族、广义线性模型
(一)牛顿法解最大似然估计 牛顿方法(Newton's Method)与梯度下降(Gradient Descent)方法的功能一样,都是对解空间进行搜索的方法.其基本思想如下: 对于一个函数f(x), ...
- Stanford大学机器学习公开课(三):局部加权回归、最小二乘的概率解释、逻辑回归、感知器算法
(一)局部加权回归 通常情况下的线性拟合不能很好地预测所有的值,因为它容易导致欠拟合(under fitting).如下图的左图.而多项式拟合能拟合所有数据,但是在预测新样本的时候又会变得很糟糕,因为 ...
- Stanford大学机器学习公开课(二):监督学习应用与梯度下降
本课内容: 1.线性回归 2.梯度下降 3.正规方程组 监督学习:告诉算法每个样本的正确答案,学习后的算法对新的输入也能输入正确的答案 1.线性回归 问题引入:假设有一房屋销售的数据如下: 引 ...
- LR 算法总结--斯坦福大学机器学习公开课学习笔记
在有监督学习里面有几个逻辑上的重要组成部件[3],初略地分可以分为:模型,参数 和 目标函数.(此部分转自 XGBoost 与 Boosted Tree) 一.模型和参数 模型指给定输入xi如何去 ...
- 【机器学习】文本分类——朴素贝叶斯Bayes
朴素贝叶斯主要用于文本分类.文本分类常见三大算法:KNN.朴素贝叶斯.支持向量机SVM. 一.贝叶斯定理 贝叶斯公式思想:利用已知值来估计未知概率.已知某条件概率,如何得到两个事件交换后的概率,也就是 ...
- 机器学习算法实践:朴素贝叶斯 (Naive Bayes)(转载)
前言 上一篇<机器学习算法实践:决策树 (Decision Tree)>总结了决策树的实现,本文中我将一步步实现一个朴素贝叶斯分类器,并采用SMS垃圾短信语料库中的数据进行模型训练,对垃圾 ...
- 机器学习---用python实现朴素贝叶斯算法(Machine Learning Naive Bayes Algorithm Application)
在<机器学习---朴素贝叶斯分类器(Machine Learning Naive Bayes Classifier)>一文中,我们介绍了朴素贝叶斯分类器的原理.现在,让我们来实践一下. 在 ...
随机推荐
- IQ测试
1.4个人过桥,只能两两过桥,且只有一盏灯,必须有灯才能过桥,4个人过桥时间分别为1,2,5,10分钟,最短多少时间可以过桥? 答案:1和2先走,1再返回,花3分钟.5和10走,2回去,花了3+10+ ...
- 桂电在linux环境下使用出校器
一.官方出校器(无界面) 由于学校官方最新的linux版出校器无效,我们只能使用老版本的出校器了. 但因为老版本的出校器是32位的,而现在主流使用的是64位系统,因此我们得安装32位库. 在ubunt ...
- Entity Framework 学习总结之一:ADO.NET 实体框架概述
http://www.cnblogs.com/xlovey/archive/2011/01/03/1924800.html ADO.NET 实体框架概述 新版本中的 ADO.NET 以新实体框架为特色 ...
- Android 实现卫星菜单
步骤:一:自定义ViewGroup 1.自定义属性 a.attr.xml b.在布局文件中使用activity_main.xml c.在自定义控件中进行读取 2.onMeasure 3.onLayou ...
- std::function,std::bind
std::function 和 std::bind 标准库函数bind()和function()定义于头文件中(该头文件还包括许多其他函数对象),用于处理函数及函数参数.bind()接受一个函数(或者 ...
- Spring实战学习笔记之SpEL表达式
在Spring XML配置文件中装配Bean的属性和构造参数都是静态的,而在运行期才知道装配的值,就可以使用SpEL实现 SpEL表达式的首要目标是通过计算获得某个值. ...
- Linux之Sed命令详解(总结一些实用例子)
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- rwsr-sr-x类似权限设置
如何设置suid/guid? 如果希望设置suid,那么就将相应的权限位之前的那一位设置为4:如果希望设置guid,那么就将相应的权限位之前的那一位设置为2:如果希望两者都置位,那么将相应的权限位之前 ...
- c3p0、dbcp<转>
<!--读取文件jdbc.properties --> <bean id="config" class="org.springframework.bea ...
- javafx之CSS初探
文档:http://www.haogongju.net/art/1807238 javafx中的css元素必须有-fx-前缀. 一.介绍 java8中新增了javafx.css开放了css相关api. ...