MultiVerse Neural Talk - Multi Lingual(English, Bangla) Chatbot Experiment For Neural Network Course
This repository contains code and resources related to three different natural language processing projects:
- ChatBot_English.ipynb: A Python notebook implementing a chatbot using neural networks trained on English conversations.
- Translation_English_To_Bangla.ipynb: A notebook demonstrating language translation functionality from English to Bengali.
- ChatBot_Bangla.ipynb: Another notebook focused on a chatbot trained on Bengali conversations.
These notebooks utilize Python, TensorFlow, and neural network techniques for creating multi-lingual chatbots.
This notebook implements a chatbot using neural networks trained on English conversations. It uses a provided dataset ('dialogs.txt') that includes columns 'question' and 'answer'.
- Python 3.x
- Jupyter Notebook
- TensorFlow
- NumPy
- Pandas
- Matplotlib
- Seaborn
- dialogs.txt: This dataset serves as the foundation for training the English chatbot. It contains conversational pairs of questions and corresponding answers.
This notebook demonstrates language translation functionality from English to Bengali. It operates using a translation library and provides a translation output file ('output_dataset_bengali_exp_1.txt') based on the input English sentences.
- Python 3.x
- Jupyter Notebook
- mtranslate (for language translation)
- translate (for language translation)
- dialogs.txt: The input dataset containing English sentences.
- output_dataset_bengali_exp_1.txt: The resulting dataset with translated Bengali sentences.
A notebook focused on training a chatbot with Bengali conversations. It utilizes the 'exp_bangla.txt' dataset for this purpose.
- Python 3.x
- Jupyter Notebook
- TensorFlow
- NumPy
- Pandas
- Matplotlib
- Seaborn
- exp_bangla.txt: This dataset serves as the foundation for training the Bengali chatbot. It contains conversations in the Bengali language.
A test case notebook designed to validate the Bengali chatbot. It uses testing procedures to ensure the chatbot's functionality and accuracy.
- Python 3.x
- Jupyter Notebook
- TensorFlow
- NumPy
- Pandas
- Matplotlib
- Seaborn
- Fault: Dataset might be empty or improperly loaded.
- Solution: Verify the dataset is properly loaded and contains data.
- Fault: Issues during data loading process.
- Solution: Check the code responsible for loading data to ensure it functions correctly.
- Fault: Preprocessing results in an empty dataset.
- Solution: Review preprocessing steps to avoid unintended data loss or modifications.
- Fault: Mismatch in input data shape or format.
- Solution: Ensure the input data matches the model's expected format and shape.
- Fault: Difficulty identifying points of failure in the code.
- Solution: Insert print statements strategically to pinpoint issues during code execution.
Contributions are welcome! If you have suggestions, improvements, or encounter issues, feel free to explore alternative approaches or report them via the GitHub repository's issue tracker.
-
Can I use my own dataset for training?
- Yes, you can replace provided datasets with your own. Ensure they match the required format.
-
How can I improve model performance?
- Suggestions on scaling datasets, adjusting hyperparameters, etc.
-
Can I translate languages other than English to Bengali?
- Yes, you can. Modify parameters in the translation function for other source languages.
-
How can I improve translation accuracy?
- Experiment with different libraries/models, provide more context, or use context-aware models.
-
What to do if encountering training issues?
- Check dataset format, data cleaning, and experiment with different hyperparameters.
-
How can I integrate the model into a chatbot application?
- Steps to integrate the model into an application.
-
How can I improve the model's vocabulary?
- Increase training data size and preprocess text to remove noise.
-
Can I use this code for other languages?
- Yes, adapt the code for other languages by providing a dataset in the desired language.
Specify the license for the repository, if applicable.
Credit any contributors, libraries, or resources utilized in the projects.