dynamic seq2seq
1.0.0
Google は最近、seq2seq プロジェクトをオープンソース化しました。
tensorflow は、元のバケットを置き換えるために、dynamic_rnn を起動しました。このプロジェクトは、dynamic_rnn の seq2seq モデルに基づいています。
ここでは、中国語のコーパス自体が比較的少ないので、理論的にはコーパスが多ければ多いほどモデルは良くなりますが、多くの新たな問題が発生するため、ここでは説明しません。
対話素材はデータディレクトリの Q.txt A.txt にあり、独自の対話素材に置き換えることができます。
# 新增小黄鸡语料
# 添加
python prepare_dialog.py 5000
seq = Seq2seq()
# 训练
seq.train()
# 预测
seq.predict("天气")
# 重新训练
seq.retrain()
me > 天气
AI > 地点: 重庆
气温: 7
注意: 天气较凉,较易发生感冒,请适当增加衣服。体质较弱的朋友尤其应该注意防护。
このプロジェクトにはアクションのサポートが追加されており、独自の機能をカスタマイズできます。複数ラウンドのセッションのサポートは後で追加されます。
action.py ファイルで、次のような独自のアクション タグと対応するインターフェイスを登録します。
# 注意:参数为固定参数
def act_weather(model, output_str, raw_input):
#TODO: Get weather by api
page = requests.get("http://wthrcdn.etouch.cn/weather_mini?city=重庆")
data = page.json()
temperature = data['data']['wendu']
notice = data['data']['ganmao']
outstrs = "地点: %sn气温: %sn注意: %s" % ("重庆", temperature.encode("utf-8"), notice.encode("utf-8"))
return outstrs
actions = {
"__Weather__":act_weather
}
ヒント: インターフェイスのパラメータは一時的に固定されており、後で更新されます。
同時に、トレーニング コーパスは次のように設計されています。
# Q.txt
天气
# A.txt
__Weather__