Rasa_NLU_Chi
1.0.0
MITIE wordrep ツールを使用して中国語コーパスからトレーニング済み (トレーニングには 2 ~ 3 日かかります)
トレーニングのために、MITIE Wordrep ツールを構築してください。中国語コーパスは、トレーニング用ツールに入力する前に、まずトークン化する必要があることに注意してください。ユーザーケースに最もよく一致するクローズドメインコーパスが最も効果的です。
中国語の Wikipedia Dump および Baidu Baike からのトレーニング済みモデルは、中文ブログからダウンロードできます。
できるだけ多くの例を追加する必要があります。
python setup.py install
構成を変更します。
現在、中国語に関しては 2 つのパイプラインがあります。
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 "
推奨: 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 "
(オプション) Jieba ユーザー定義辞書を使用するか、Jieba デフォルト辞書を切り替えます。
ファイルパスまたはディレクトリパスを「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 "
以下を実行してモデルをトレーニングします。
構成ファイルでプロジェクト名を指定すると、モデルは /models/your_project_name に保存されます。
それ以外の場合、モデルは /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": "我发烧了该吃什么药?"
}