一 、性别鉴定步骤
根据名字男女规律进行判断
建立分类器
• 1. 确定输入特征——特征提取器
• 2. 划分数据集
• 3. 使用训练集构建分类器
• 4. 使用测试集测试分类器效果
二、叶贝斯分类器原理
特征:假设选取名字的最后一个字母为主要特征
类别:男性、女性
贝叶斯公式:P(B|A)=P(A|B)*P(B)/P(A)
贝叶斯分类器
比较P(男性|特征)与P(女性|特征)有如下两种方法
1. 直接比较P(特征|男性)*P(男性)与P(特征|女性)*P(女性)
2. 直接将P(女性|特征)与0.5比较(因为只有两种分类,两个概率加起来为1,所以只要有一方概率大于0.5即可判断)
三、实战代码
from nltk.corpus import names
import nltk
import random
#从数据集中打印出前10个名字
names_set = ([(name, 'male') for name in names.words('male.txt')] +
[(name, 'female') for name in names.words('female.txt')])
print (names_s