PYTHON分类

分类简述

分类是一种监督学习算法,根据已知样本的训练集合来识别待测试集中哪一组子集归属哪一类别。
实现分类算法的模块称之为分类器,主要包含2个部分,训练和分类。
训练是从已知样本中提取特征并标注标签类,建立分类器。
分类是利用分类器判断未知类别的数据的类别。
分类主要算法有:
朴素贝叶斯算法,包括高斯贝叶斯算法、伯努利贝叶斯算法

分类器的应用

Sklearn类库包含很多分类器的实现,这里使用高斯朴素贝叶斯来分析鸢尾花数据,包含山鸢尾、变色鸢尾和维吉尼亚鸢尾。首先把字符串数组转型成整型数据:

def get_classification(ft,msample):
    t = zeros(len(msample))
    t[msample == 'setosa'] = 1
    t[msample == 'versicolor'] = 2
    t[msample == 'virginica'] = 3
    #选取60%的数据作为训练集,剩下的作为测试集
    train, test, t_train, t_test = model_selection.train_test_split(ft,t,test_size = 0.4, random_state = 0)
    print "train:\n",train, "\ntest:\n",test,"\nt_train:\n" ,t_train,"\nt_test:\n", t_test
    cf = GaussianNB()
    cf.fit(train,t_train)
    print cf.score(test,t_test)

该分类器的精确度为93%,计算方式为正确分类的样本数量除以样本总数量,即正确预测的比例。

评估分类器性能的工具

  1. 混淆矩阵
#需要用到的包:from sklearn.metrics import confusion_matrix
#结果中对角线外的是分错了的,这里是4个分错,应该是变色鸢尾,但是分类器分成了维吉尼亚鸢尾
print confusion_matrix(cf.predict(test), t_test)
'''
运行结果:
[[16  0  0]
 [ 0 23  4]
 [ 0  0 17]]
'''
  1. 完整报告
print classification_report(cf.predict(test), t_test, target_names=['setosa', 'versicolor', 'virginica'])
'''
运行结果:
             precision    recall  f1-score   support

     setosa       1.00      1.00      1.00        16
 versicolor       1.00      0.85      0.92        27
  virginica       0.81      1.00      0.89        17

avg / total       0.95      0.93      0.93        60
'''
  1. Cross Validation评估模型
    scores = model_selection.cross_val_score(cf, ft, t, cv=6)
    print scores
    print mean(scores)

运行结果:

0.933333333333


[ 0.92592593  1.          0.91666667  0.91666667  0.95833333  1.        ]
0.952932098765

拓展:
1、文本分类如何应用
2、伯努利贝叶斯算法 2类判别(0,1)

参考:https://en.wikipedia.org/wiki/Statistical_classification
http://python.jobbole.com/81721/
http://www.cnblogs.com/taichu/p/5251332.html
http://www.cnblogs.com/jasonfreak/p/5448462.html

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

推荐阅读更多精彩内容