Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

not an issue - GAN vs chatterbot / ai bot architecture #4

Closed
johndpope opened this issue Jun 29, 2018 · 5 comments
Closed

not an issue - GAN vs chatterbot / ai bot architecture #4

johndpope opened this issue Jun 29, 2018 · 5 comments

Comments

@johndpope
Copy link

johndpope commented Jun 29, 2018

I threw this code together which launches the chatterbot code directly against your trained model.
pip install git+git://github.com/gunthercox/ChatterBot.git

https://gist.github.com/johndpope/b0d9a025c6e54dc1e07ab6100c34a24a
screen shot 2018-06-29 at 9 54 16 am

the results were quite bad.

screen shot 2018-06-29 at 9 55 03 am

there's a bunch of yml files in chatterbot which if I get time will attempt to glue together - but it would be good to be able to have an api into this architecture where it could be corrected...or maybe that exists in codebase?

I understand this repo is to showcase whitepaper research - but wondered if you have ideas to take ai bots to another level. If you were to step back - and look at higher level of what could be achieved with blending technologies.

off the back of an envelope - some thoughts of mine
eg. by doing entity detection on sentence / have these carry forward
memory of stuff (I guess this opens up problems like microsoft's disastrous tai tai twitter bot)
eg. use elmo for understanding context of words
wikidata -> don't stop at entity detection / go beyond to understand meaning sentence.
use hybrid code network / action templates
Commonsense Knowledge

what do you see as the biggest challenge that needs solving?

@oswaldoludwig
Copy link
Owner

First point: This isn't the best GAN-based model, the best one is here. This version uses the discriminator of the GAN-based model to select the best answer between two models, one trained by teacher forcing and another trained by our new GAN-like training method.
Second point: you're comparing two different technologies, a retrieval model with a generative model. The retrieval model isn't able to create new answers, it only retrieves an answer from a set of answers, provided by the user. The generative model learns to create new answers by "reading" a large amount of text. Generative models seem to be the future, but they're still inside the research labs, since they're much more complex. If I had ideas to take generative bots to another level, I would be a very rich man :-).

@oswaldoludwig
Copy link
Owner

I think one of the biggest challenges that needs to be solved is the acquisition of background knowledge.

@johndpope
Copy link
Author

did you consider plugging in something like concept net to the conversation pipeline ?
https://github.com/commonsense/conceptnet5

https://arxiv.org/pdf/1805.07858.pdf

@oswaldoludwig
Copy link
Owner

This is a relevant topic, thanks for the link!

@johndpope
Copy link
Author

johndpope commented Jul 3, 2018

so been digging around and came across sling parser framework by google.
sample code is thin -
https://github.com/google/sling

came across this repo
https://github.com/sih4sing5hong5/sling_trying_out/blob/df3604419a6849dba1df2a6b8779a9eef1799bdf/trying_out.py

import sling

parser = sling.Parser("sempar.flow")

text = raw_input("text: ")
doc = parser.parse(text)
print doc.frame.data(pretty=True)
for m in doc.mentions:
  print "mention", doc.phrase(m.begin, m.end)

naively speculating, if the word2vec embeddings in this agent could incorporate these frames / tokens - which include a transition system to detection actions within text - evocations / shift / refer / assign / embed / elaborate - wouldn't this help propel understanding in latent space of end to end training?

eg. there's some images here
https://ai.googleblog.com/2017/11/sling-natural-language-frame-semantic.html

white paper here
https://arxiv.org/pdf/1710.07032.pdf

eg. john hit the ball.
screen shot 2018-07-03 at 1 05 57 pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants