AI 学习笔记之——监督学习一朴素贝叶斯(Supervised Learning)

in #cn6 years ago (edited)

上一篇笔记介绍了机器学习的分类,其中按照从哪里学习这个角度可以分为监督学习,无监督学习和强化学习这三类。其中监督学习是研究得最早和最深入的一类机器学习。

监督学习顾名思义就是需要人类的帮助和监督,换句话说就是需要人类来标记训练数据。下面介绍几种比较常见和经典的无监督学习方法

朴素贝叶斯(Naive Bayes)

前面花了好几篇文章介绍概率理论,都是为这一个算法做铺垫。理解了概率理论和贝叶斯定理就很容易理解这个算法。

该算法由两种概率组成,它们都能从训练数据中直接计算出来:1)每个类别的概率; 2)对于给定的x值,每个类别的条件概率。 一旦计算出来,概率模型就可以用于使用贝叶斯定理对新的数据进行预测。

举一个用该算法来识别垃圾邮件(Spam)的例子。如下图其中正常邮件归类为(Ham),一共有8封邮件(句话),总共包含12个词汇(Offer, is, secret ...),有3封邮件(句话)标记为垃圾邮件。


首先可以算出垃圾邮件的概率P(S)=3/8, 然后是每一个单词在垃圾邮件(Spam)和正常邮件(Ham)的概率, 比如“Secret”这个单词在垃圾邮件中出现的概率就是P("Secret"|S) = 3/9。于是根据贝叶斯定理就可以求出:如果一句话中包含比如"Secret"这个单词,那么它是垃圾邮件的概率P(S|"Secret")(是不是跟之前癌症检测的例子很相似)

但是这个计算方法会带来一个问题,比如“today”这个单词在Spam中没有出现那P(“Secret”|S) = 0, 于是任何与这个单词一同出现的文字是垃圾邮件的概率就是0(独立事件同时发生概率相乘)。 这显然不正确的。

于是在这个算法中引入了一个重要的概念——拉普拉斯平滑(Laplace Smoothing)

如图

拉普拉斯平滑(Laplace Smoothing)加入了一个修正系数K,在计算概率的时候分子加K,分母加类别的K倍。

同样以垃圾邮件分类为例 如图

当K=1的时候,计算结果上图所示。注意在计算P(SPAM)和P(HAM)的时候由于类别只有两个所以分母加2。算P("Today"|S)和P("Today"|H)的时候,一共有12个词汇(类别)所以需要加12。


相关文章
人工智能学习笔记之——人工智能基本概念和词汇
人工智能学习笔记二 —— 定义问题


Thanks for reading my posts and welcome to comment. If you like my post , please upvote , resteem and follow me @hongtao
感谢您的阅读,欢迎留言,如果您喜欢我的帖子,请帮忙点赞、推送及关注我 @hongtao

Coin Marketplace

STEEM 0.28
TRX 0.12
JST 0.034
BTC 63956.43
ETH 3320.30
USDT 1.00
SBD 3.92