2017-02-22 5 views
2

Ich habe einen Chatbot gemacht, mit Tensorflow translation model (mit einigen Änderungen), indem Sie es mit Message-Response-Paaren aus dem Ubuntu Dialog Corpus füttern. Ich frage mich, ob jemand irgendwelche Ideen hat, wie ich in einer Konversation mit Kontext umgehen kann? I.e. Ich möchte nicht, dass der Chatbot das, was ich vorher gesagt habe, vergisst, nachdem ich einen neuen Satz eingegeben habe.Handle-Kontext in einem Chatbot

Ich kann nur über eine Strategie nachdenken, die den Kontext in der Vorverarbeitung behandeln soll. Lassen Sie uns sagen, dass ich dieses Gespräch haben:

M1: Hi, how are you? 
R1: Hey, good! I just finished work at the restaurant. How are you? 
M2: Good. How was it? 
R2: Exhausting... 
M3: Many customers? 
R3: Yes, and they didn't tip well either! 

Dann könnte ich sie paarweise wie folgt aus: (M1-R1), (R1M2-R2), (R2M3-R3) etc ... Eine andere Möglichkeit wäre, um den Kontext von M1 in jedem Paar zu speichern, z (M1-R1), (M1R1M2-R2), (M1R1M2R2M3-R3) - aber dann wird die Länge der Trainingssätze zunehmen (viel) - was zu mehr Speicherzuweisung während des Trainings führt und wahrscheinlich mein Netzwerk (weniger Neuronen in jeder Schicht).

Sie haben etwas ähnliches in this paper, aber ich verstehe nicht, wie ihr Modell gebaut wird und wie es damit umgehen wird.

Antwort

0

Bot-context ist eine coole Bibliothek, die eine einfache Möglichkeit bietet, den Kontext zu erhalten. Die verwandte blog post.

+0

Ich arbeite derzeit an einem generativen Chatbot, und es sieht so aus, als wäre der Bot-Kontext eher für einen Abruf geeignet – siljech