Von MITIE Wordrep Tools anhand des chinesischen Korpus trainiert (die Schulung dauert 2–3 Tage)
Für Schulungen erstellen Sie bitte das MITIE Wordrep Tool. Beachten Sie, dass der chinesische Korpus zuerst tokenisiert werden sollte, bevor er zum Training in das Tool eingespeist wird. Ein domänennaher Korpus, der am besten zum Benutzerfall passt, funktioniert am besten.
Ein trainiertes Modell aus dem chinesischen Wikipedia-Dump und Baidu Baike kann von 中文Blog heruntergeladen werden.
Sollte so viele Beispiele wie möglich hinzufügen.
python setup.py install
Konfiguration ändern.
Derzeit haben wir für Chinesisch zwei Pipelines:
Verwenden Sie 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 "
EMPFOHLEN: Verwenden Sie 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 "
(Optional) Verwenden Sie das benutzerdefinierte Jieba-Wörterbuch oder wechseln Sie zum Jieba-Standardwörterbuch:
Sie können den Dateipfad oder den Verzeichnispfad als „user_dicts“-Wert eingeben. (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 "
Trainieren Sie das Modell, indem Sie Folgendes ausführen:
Wenn Sie Ihren Projektnamen in der Konfigurationsdatei angeben, wird Ihr Modell unter /models/your_project_name gespeichert.
Andernfalls wird Ihr Modell unter /models/default gespeichert
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": "我发烧了该吃什么药?"
}