您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据挖掘与识别 > 大数据十大经典算法Navie Bayes讲解PPT
NaiveBayesTeam分类数学定义:已知集合C={y1,y2...yn},I={x1,x2...xm}确定映射规则y=f(x),使得任意xi∈I有且仅有yj∈C一个使得yj=f(xi)成立。其中C叫做类别集合,其中每一个元素是一个类别,而I叫做项集合,其中每一个元素是一个待分类项,f叫做分类器。分类算法的任务就是构造分类器f。分类步骤1—学习训练数据集NAMERANKYEARSTENUREDMikeAssistantProf3noMaryAssistantProf7yesBillProfessor2yesJimAssociateProf7yesDaveAssistantProf6noAnneAssociateProf3no分类算法IFrank=‘professor’ORyears6THENtenured=‘yes’分类规则通过对经验数据的学习从而实现一定概率意义上正确的分类建立预先定义的数据类或概念集的分类器。分类步骤2—用模型分类使用模型对将来的或未知的对象进行分类影响分类的因素分类器构造方法待分类数据的特性训练样本数量重点通过训练数据集得到规则贝叶斯分类基础-贝叶斯定理给出了P(w|C)与P(C|w)的关系P(C):先验概率P(C|w):后验概率P(w|C)/P(w):调整因子,p(w)一般是一个若P(w|C)/P(w)1,则先验概率被增强,事件C的发生的可能性变大;若P(w|C)/P(w)=1,意味着w事件无助于判断事件C的可能性;若P(w|C)/P(w)1,意味着先验概率被削弱,事件C的可能性变小)()|()()|(wPCwPCPwCP朴素贝叶斯)()|()()|(wPCwPCPwCP)|(1)|w(CiwPmiCP朴素贝叶斯定义(1)设x={a1,a2,……,am}为一个待分类项,而每个a为x的一个特征属性。(2)有类别集合C={y1,y2,……,yn}(3)计算P(y1|x),P(y2|x),……,P(yn|x)(关键)(4)如果P(yk|x)=max{P(y1|x),P(y2|x),……,P(yn|x)},则x∈yk各个条件的概率P(yi|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);如果各个特征属性是条件独立的)()|()()|y(xPiyxPiyPxiP(|y)(|)1mPxPayjiij工作流程样例(一)—Buycomputerageincomestudentcredit_ratingbuys_computeryouthhighnofairnoyouthhighnoexcellentnomiddle_agedhighnofairyesseniormediumnofairyesseniorlowyesfairyesseniorlowyesexcellentnomiddle_agedlowyesexcellentyesyouthmediumnofairnoyouthlowyesfairyesseniormediumyesfairyesyouthmediumyesexcellentyesmiddle_agedmediumnoexcellentyesmiddle_agedhighyesfairyesseniormediumnoexcellentno样例(一)—BuycomputerX=(age=youth,income=medium,student=yes,Credit_rating=fair)买电脑吗?P(buy=yes)=9/14=0.643,P(buy=no)=0.357P(age=youth|buy=yes)=2/9=0.222P(X|buy=yes)=P(age=youth|buy=yes)*P(income=medium|buy=yes)*P(student=yes|buy=yes)*P(credit=fair|but=yes)=0.044P(X|buy=no)=0.019P(X|buy=yes)*P(buy=yes)=0.028P(X|buy=no)*P(buy=no)=0.007特征属性为连续值当特征属性为连续值时,通常假定其值服从高斯分布因此只要计算出训练样本中各个类别中此特征项划分的各均值和标准差2δ22)η-(),,(δπ21δηxexg),(),,(Piiyyδ,ηδηkagx样例(二)—MaleorFemale问题描述:通过一些测量的特征,包括身高、体重、脚的尺寸,判定一个人是男性还是女性。训练数据假设训练集样本的特征满足高斯分布样例(二)—MaleorFemale假定P(male)=P(female)=0.5。posterior(male)=P(male)p(height|male)p(weight|male)p(footsize|male)/evidenceposterior(female)=P(female)p(height|female)p(weight|female)p(footsize|female)/evidence2δ22)μ-()|height(δπ21xemaleP样本修正问题描述P(Xi|Ci)中出现一个零概率,则最后P(X|Ci)将为0,一个0概率会消除乘积中其它概率的影响。拉普拉斯校准(PierreLaplace)训练数据库D每种情况计数加上一,这样如果训练样本集数量充分大时,并不会对结果产生影响,并且解决了上述频率为0的尴尬局面SNS和垃圾邮件应用准备工作阶段信息来源抓取youtube视频的留言对垃圾信息和非垃圾信息分类分类保存数据分类器训练阶段分词,使用split计数,使用dict保存概率数据•代码(build_hashes.py)1.forkinspamtokens:2.num_in_spam=spamtokens[k]3.ifkinnotspamtokens:4.num_in_notspam=notspamtokens[k]*25.else:6.num_in_notspam=07.p=(num_in_spam/float(spam_count))8./((num_in_spam/float(spam_count))9.+(num_in_notspam/float(notspam_count)))10.probabilities[k]=p应用阶段贝叶斯垃圾邮件过滤假设:邮件中每个单词的出现是独立事件测试分词,使用split选择单词:前K个(自己定)最突出的词计算概率值•代码(spamcheck.py)1.token_probs={}2.tokens=comment.split()3.fortokenintokens:4.token=token.lower()5.iftokeninprobabilities:6.token_probs[token]=probabilities[token]7.else:8.token_probs[token]=0.41.fortokenininteresting_tokens:2.a=a*token3.b=b*(1-token)4.spam_probability=a/(a+b)5.printspam_probability运行效果垃圾回复正常回复ThankYou!3/16/2020
本文标题:大数据十大经典算法Navie Bayes讲解PPT
链接地址:https://www.777doc.com/doc-4404097 .html