так что позволяет сказать, что вы хотите, чтобы классифицировать имя пользователя как женщина или мужчина, вы можете сделать следующее в вашем view.py
from django.shortcuts import render
import nltk
from nltk.corpus import names
import random
тогда мы возьмем запрос пост, который содержит имя, точно так, как вы это делаете с формами
def index(request):
message = ''
if request.method == 'POST':
input_name = request.POST.get("name", "")
if input_name != '':
затем подготовить этикетки для каждого пола и перетасовать их
labeled_names = ([(name, 'male') for name in names.words('male.txt')] + [(name, 'female') for name in names.words('female.txt')])
random.shuffle(labeled_names)
Теперь создайте обучение/тестирование наборов
train_set = feature_set[:3000]
test_set = feature_set[3000:]
затем классификатор NaivesBayes
classifier = nltk.NaiveBayesClassifier.train(train_set)
так, чтобы сделать прогноз, мы должны передать ИМЯ_ВЫХОДА в классификаторе и возвращает сообщение
message = input_name + " is probably " + classifier.classify(gender_features(input_name))
Окончательно мы возвращаем контекст и сообщение в t он шаблон
context = {'message': message}
return render(request, 'Myapp/template.html', context)
Импортируйте код для своих функций nltk в свой код django; либо скопируйте и вставьте его, либо просто выполните оператор импорта для них. – benjamin
@benjamin Когда я пытаюсь импортировать nltk в начало my.support, он всегда возвращает ошибку "no module named nltk". – jblew
@jblew, как вы установили NLTK? – Chris