十、贝叶斯分析

贝叶斯统计学

    基于(总体信息+样本信息+先验信息)进行统计推断的方法和理论

先验信息:抽样之前,有关推断问题中未知参数的一些信息,通常来自于经验或历史资料

贝叶斯定理

    P(H \vert X) = \frac {P(X \vert H)P(H)}{P(X)}

P(H \vert X)给定观测数据样本X,假设H是成立的概率,是后验概率,比如一份特定邮件中,P(X \vert H)是垃圾邮件的概率

P(H)H的先验概率,比如总体邮件中垃圾邮件的概率,P(X)X的先验概率,比如总体邮件中带有特定特征的邮件概率

可以通过抽样来计算先验概率

eg:

总体100,正常70,垃圾30,办证在正常邮件中出现10次,垃圾邮件中出现15次。

设X为办证,H为垃圾邮件

P(X \vert H) = 25/30 = 5/6

P(H) = 30/100 = 3/10

P(X) = 35/100 = 7/20

P(H\vert X) = \frac {P(X \vert H)P(H)}{P(X)} = \frac{\frac{5}{6}* \frac{3}{10}}{\frac{7}{20}}=\frac{5}{7}

包含办证这个词的邮件属于垃圾邮件的概率为\frac{5}{7}

多个特征会使统计量巨大,所有特征需要计算2^{n-1}次,n是特征数


朴素贝叶斯(Naive Bayes)

    假设:特征X_1,X_2,X_3,...之间都是相互独立的

P(H \vert X) = \frac {P(X \vert H)P(H)}{P(X)}= \frac {P(X_1 \vert H)P(X_2 \vert H)...P(H)}{P(X_1)P(X_2)...P(X_n)}

多项式模型:重复的词语我们视其出现多次('a','b','c','a','d','a')

eg:P("发票"\vert S)=\frac{每封垃圾邮件中出现"发票"的次数之和}{每封垃圾邮件中所有词出现次数(计算重复次数)之和}

伯努利模型:重复的词我们视其为出现一次('a','b','c','d')

eg:P("发票"\vert S)=\frac{出现"发票"的垃圾邮件的封数}{每封垃圾邮件中所有词出现次数(出现只计算一次)之和}

混合模型:在计算句子概率时,不考虑重复词语出现的次数,但是在统计计算词语的概率P("词语"\vert S)时,却考虑重复词语出现的次数

高斯模型:连续型变量,转换成离散型的值


词袋模型(Bag of Words)

BoW模型最早出现在自然语言处理(Natural Language Processing)和信息检索(Information Retrieval)领域。该模型忽略掉文本的语法和语序等要素,将其仅仅看作是若干个词汇的集合,文档中每个单词的出现都是独立的。BoW使用一组无序的单词来表达一段文字或一个文档。

eg:John likes to watch movies,Marry likes too.John also likes to watch football games.

构成词典:

{"John" : 1 , "likes" 2 , "to" : 3 , "watch" : 4 , "movies" : 5 , "also" : 6 , "football" : 7 , "games" : 8 , "Marry" : 9 , "too" : 10}

则上述两个文本可用向量表示:

[ 1 , 2 , 1 , 1 , 1 , 0 , 0 , 0 , 1 , 1 ]

[ 1 , 1 , 1 , 1 , 0 , 1 , 1 , 1 , 0 , 0 ]

向量与原来文本中单词出现的顺序无关,而是词典中每个单词在文本中出现的频率

python中使用CountVictorizer方法构建单词的字典,每个单词实例被转换为向量的一个数值特征,每个元素是特定单词在文本中出现的次数

from sklearn.feature-extraction.text import CountVectorizer


TF-IDF

提取文章关键词:

1、提取词频(Term Frequency,TF),但出现最多的词可能是“的,是,在”等对文章分类或搜索没有帮助的停用词(stop words)

2、假设停用词都过滤掉了,但仍会有关键词排序问题,比如“中国”,“蜜蜂”,“养殖”三个词TF相同,但相对而言,后两个比前一个不那么常见,对于一篇文章,三者TF相同,那么在关键词排序上,后两者应该在“中国”之前,所以需要一个重要性调整系数,衡量一个词是否是常见词。常见词的权重 < 不常见词的权重,这个权重叫做“逆文本频率(Inverse Document Frequency,IDF)”其大小与一个词的常见程度成反比。

词频(TF) = 某个词在文章中的出现次数

词频(TF) = \frac{某个词在文章中的出现次数}{文章总词数}

词频(TF) = \frac{某个词在文章中的出现次数}{该文出现次数最多的词的出现次数}

TF-IDF = TF * IDF

sklearn实现,可以使用 TfidfVectorizer()

from sklearn.feature-extraction.text import TfidfVectorizer


代码:

import numpyas np

from sklearnimport datasets

from sklearn.model_selectionimport train_test_split

from sklearn.metricsimport classification_report, confusion_matrix

from sklearn.naive_bayesimport MultinomialNB, BernoulliNB, GaussianNB

# 载入数据

iris = datasets.load_iris()

x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target)

mul_nb = MultinomialNB()

mul_nb.fit(x_train, y_train)

print(classification_report(mul_nb.predict(x_test), y_test))

print(confusion_matrix(mul_nb.predict(x_test), y_test))

Ber_nb = BernoulliNB()

Ber_nb.fit(x_train, y_train)

print(classification_report(Ber_nb.predict(x_test), y_test))

print(confusion_matrix(Ber_nb.predict(x_test), y_test))

Gau_nb = GaussianNB()

Gau_nb.fit(x_train, y_train)

print(classification_report(Gau_nb.predict(x_test), y_test))

print(confusion_matrix(Gau_nb.predict(x_test), y_test))

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容