-
Notifications
You must be signed in to change notification settings - Fork 4.5k
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
Keras/TensorFlow implementation #761
Comments
@monokal 2 questions for you:
Peter |
|
|
It's all about you how you are going to apply your application and usecase. Tensorflow is all about google products for example Gmail replay suggestions, YouTube recommended videos, Google Photos i.e it is good for Classification of problems and predictions. Keras is built on top of Tensorflow, Theano deep learning regression models API into more useful manner. The (Tensorflow, Theano, Keras) main motive is classification your data and make prediction for you.
Chatterbot is a bot, It embedded knowledge to answer your questions using Natural Language Processing Library, for that you have to train with some predefined data with question and answer, later it starts learning from responses and question update your database to get more accurate predictions. If you are looking an chat application using NLP(Natural Language Processing), i believe chatterbot is good for you.
A computer program is said to learn from experience 'E' with respect to some class of tasks 'T"and performance measure 'P , if its performance at tasks in 'T' as measured by 'P', improves with experience 'E' that is called Machine Learning |
@vkosuri Thanks! Very useful reading! |
I'm agree with @vkosuri , but @monokal idea is cool. IMHO we need to see the whole picture first, how to utilize deep learning models in chatbot implementation, and me my self to be honest still got confused. for instance, if you mean chatbot by just throwing away conversation logs to the ML model and chat with it , then what is the goal ? you have to consider this case : let say user send multiple messages within short time, then how to receive and recognize those utterances , how to track the state of the conversation to the goal state, etc. if you know how to solve that, it will be cool to use deep learning I think. me myself, I've used this framework chatterbot, and modified it, embedded it with Machine Learning model to classify intent, however I'm still figuring out how to implement the deep learning libraries so that the bot can be used in real life scenario :) |
@monokal Have you had any success with writing Keras logic adapter, are you using the same storage to get the data/train model/save the trained model/weights ? |
chiming in here - I plugged in chatterbot to duel against @oswaldoludwig keras conversational agent Architecture is using using GAN. My implementation is a hack and results at the moment - round 1 - kind of suck and things get stuck in a loop. Was thinking of retraining the model against chatterbot. here's code (apparently not the best gan discriminator example - https://github.com/oswaldoludwig/Seq2seq-Chatbot-for-Keras/blob/master/conversation_discriminator.py) Microsoft released this paper a year back on hybrid code networks
https://github.com/johndpope/hcn this supposedly outperformed commercial applications 12 mths ago. |
Awesome i loved it |
IMO, ChatterBot would really benefit from a rewrite to integrate Keras/TensorFlow as the Machine/Deep Learning backend. It's not a difficult implementation now that Keras has been re-written by Google, complete with high-level Python APIs.
It provides powerful, well-maintained Machine Learning models/algorithms which have numerous NLP/chatbot examples on the web, will handle training storage, provides a web-UI to dig in to the bot's Neural Network, training progress, etc), and far more.
I'd be very happy to contribute should the proposal be accepted as I was thinking of migrating my project away from ChatterBot to Keras anyways, but I'd much rather make a good thing great here.
Some useful links:
The text was updated successfully, but these errors were encountered: