A Programmer's Guide to Data Mining(六)

Chapter 6 Naïve Bayes and Probability Density Functions
This chapter introduces the Naïve Bayes Classifier.

Contents

  • lazy and eager learners
  • a probability refresher
  • Conditional probabilities: a shopping cart example
  • Bayes Theorem
  • P ython code for Naïve Bayes
  • The Congressional Voting Records data set
  • Gaussian distributions and the probability density function.
  • Probability density function: the Python implementation
  • How a recommendation system works.

The PDF of the Chapter

Python code

  • p31: basic Naive Bayes Classifier: naiveBayes.py
  • p63: code it challenge: naiveBayesDensityFunctionTraining.py
  • p64: code it solution: naiveBayesDensityFunctionTrainingSolution.py
  • p66: complete solution using Probability Density Function: naiveBayesDensityFunction.py

Data

  • p34: iHealth data: iHealth.zip
  • p35: Republicans or Democrats: house-votes.zip
  • p63 : Pima Indian Diabetes Small Data Set pimaSmall.zip
  • p67: Pima Indian Diabetes Small Data Set pima.zip
  • p71: Final Code It challenge: mpgData.zip

朴素贝叶斯和概率密度函数

朴素贝叶斯

我们再次回顾下之前的运动员那个例子. 假设我现在问你身高6.8inch, 体重207pds的Brittney Griner 应该是练习什么项目的, 体操,马拉松, 还是篮球?我想你可能会脱口而出"篮球", 如果我继续问, 你有多大把握?我猜你会给出百分之八九十的肯定吧.

现在我再问你身高6.1inch, 体重176pds的Heather Zurich(图6.1)是玩啥的? 反正我自己是不能给出个肯定的答案.你可能会回答, 篮球.然后你自己也不太肯定, 也许是个跑马拉松的高个子呢!这也不无可能.


A Programmer's Guide to Data Mining(六)_第1张图片
Heather Zurich.jpg

最后我再问你5.4inch高, 95pds重的Yumiko Hara是练什么的?你会大概会说, 体操.但是你不太确定,因为这样的身材跑马拉松也是可以.

只是用最近邻算法是很难量化一个分类的确定性或者说可能性(得到概率).但是贝叶斯分类方法就可以做到不但能完成分类工作,还能同时得到对应分类的概率.这个运动员有80%可能是打篮球, 这个病人有40%的可能性会在未来5年内患糖尿病,Las Cruces24小时内会下雨的概率是10%,等等.

最近邻理论又叫"惰性学习".当我们给基于该算法的分类器一个训练数据集, 它仅仅是做基本的特征保存处理.在遍历整个训练数据集时,每一次分类都是相互独立的一个实例.如果我们给一个有100,000音乐信息的训练数据,它要做100,000相互独立的分类处理.

贝叶斯方法又叫"期望学习".当"期望学习"得到一个训练数据,它会立即分析整个数据,并建立一个模型.要分类一个实例数据时,它会用这个模型来做出分类判断."期望学习"一般都会笔"惰性学习"处理得快些.

贝叶斯方法的两个特性或者优点就是,能够量化分类的可能性(概率)和是"期望学习".

概率

假设你已经对概率的基础知识有所了解.抛一枚硬币,正面朝上的概率是多少?六面体的骰子,摇出"1"的概率又是多大呢?这些都是比较简单的事件.再举个个例子,如果我告诉你最近我交了个19岁朋友,请问是女生的概率多大?毫不犹豫,你会回答50%.这些都是先验概率的例子.事件h的概率记作---P(h).

  • 抛硬币:
    P(正面朝上) = 0.5
  • 抛骰子正面数字:
    P(1) = 1/6
  • 新交的朋友
    P(女生) = 0.5

如果我再给你一条关于这个19岁少年的信息:Frank Lloyd Wright School of Architecture 学校的学生.你马上到Google上去搜索,发现这所学校的女生占86%,现在你应该会修改你的答案为86%.

你可能感兴趣的:(A Programmer's Guide to Data Mining(六))