Formé à partir du corpus chinois par les outils wordrep du MITIE (prend 2-3 jours pour la formation)
Pour la formation, veuillez créer l'outil Wordrep MITIE. Notez que le corpus chinois doit d'abord être tokenisé avant d'être intégré à l'outil de formation. Le corpus de domaine proche qui correspond le mieux au cas utilisateur fonctionne mieux.
Un modèle entraîné à partir de Wikipedia Dump chinois et de Baidu Baike peut être téléchargé à partir du blog 中文.
Devrait ajouter autant d'exemples que possible.
python setup.py install
Modifier la configuration.
Actuellement, pour le chinois, nous disposons de deux pipelines :
Utilisez MITIE+Jieba (sample_configs/config_jieba_mitie.yml) :
language : " zh "
pipeline :
- name : " nlp_mitie "
model : " data/total_word_feature_extractor_zh.dat "
- name : " tokenizer_jieba "
- name : " ner_mitie "
- name : " ner_synonyms "
- name : " intent_entity_featurizer_regex "
- name : " intent_classifier_mitie "
RECOMMANDÉ : utilisez MITIE+Jieba+sklearn (sample_configs/config_jieba_mitie_sklearn.yml) :
language : " zh "
pipeline :
- name : " nlp_mitie "
model : " data/total_word_feature_extractor_zh.dat "
- name : " tokenizer_jieba "
- name : " ner_mitie "
- name : " ner_synonyms "
- name : " intent_entity_featurizer_regex "
- name : " intent_featurizer_mitie "
- name : " intent_classifier_sklearn "
(Facultatif) Utilisez le dictionnaire défini par l'utilisateur Jieba ou changez le dictionnaire par défaut de Jieba :
Vous pouvez indiquer le chemin du fichier ou le chemin du répertoire comme valeur "user_dicts". (sample_configs/config_jieba_mitie_sklearn_plus_dict_path.yml)
language : " zh "
pipeline :
- name : " nlp_mitie "
model : " data/total_word_feature_extractor_zh.dat "
- name : " tokenizer_jieba "
default_dict : " ./default_dict.big "
user_dicts : " ./jieba_userdict "
# user_dicts: "./jieba_userdict/jieba_userdict.txt"
- name : " ner_mitie "
- name : " ner_synonyms "
- name : " intent_entity_featurizer_regex "
- name : " intent_featurizer_mitie "
- name : " intent_classifier_sklearn "
Entraîner le modèle en exécutant :
Si vous spécifiez le nom de votre projet dans le fichier de configuration, cela enregistrera votre modèle dans /models/your_project_name.
Sinon, votre modèle sera enregistré dans /models/default
python -m rasa_nlu.train -c sample_configs/config_jieba_mitie_sklearn.yml --data data/examples/rasa/demo-rasa_zh.json --path models
python -m rasa_nlu.server -c sample_configs/config_jieba_mitie_sklearn.yml --path models
$ curl -XPOST localhost:5000/parse -d '{"q":"我发烧了该吃什么药?", "project": "rasa_nlu_test", "model": "model_20170921-170911"}' | python -mjson.tool
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 652 0 552 100 100 157 28 0:00:03 0:00:03 --:--:-- 157
{
"entities": [
{
"end": 3,
"entity": "disease",
"extractor": "ner_mitie",
"start": 1,
"value": "发烧"
}
],
"intent": {
"confidence": 0.5397186422631861,
"name": "medical"
},
"intent_ranking": [
{
"confidence": 0.5397186422631861,
"name": "medical"
},
{
"confidence": 0.16206323981749196,
"name": "restaurant_search"
},
{
"confidence": 0.1212448457737397,
"name": "affirm"
},
{
"confidence": 0.10333600028547868,
"name": "goodbye"
},
{
"confidence": 0.07363727186010374,
"name": "greet"
}
],
"text": "我发烧了该吃什么药?"
}