142536a 发表于 2015-4-27 12:21:13

黄聪:Python+NLTK自然语言处理学习(三):计算机自动学习机制

  本文演示使用NLTK让计算机学习如何通过名字识别性别。
  
  1、导入NLTK:



import nltk
from nltk.book import *
  
  2、定义学习方法



def gender_features(word):
      return {'last_letter':word[-1]}
  
  
  3、导入学习的姓名-性别名单:



from nltk.corpus import names
import random
names=([(name,'male') for name in names.words('male.txt')] + [(name,'female') for name in names.words('female.txt')])
random.shuffle(names)
  
  4、开始学习



f = [(gender_features(n),g) for (n,g) in names]
trainset,testset = f,f[:500]
c = nltk.NaiveBayesClassifier.train(trainset)
  
  5、测试:



c.classify(gender_features('Neo'))
c.classify(gender_features('Trinity'))
页: [1]
查看完整版本: 黄聪:Python+NLTK自然语言处理学习(三):计算机自动学习机制