A Natural Language Processing (NLP), Machine Learning and Data Mining project, which will automate the screening process before hiring a professional or can be used in psychiatry to check effectivity of patient therapy.
● Uses the Twitter REST API to mine tweets for personality identification.
● Create n-grams and word vectors for the hashtags, emoticons and phrases using NLP techniques like TF-IDF.
● Train the machine to classify the personality types by using a Naive-Bayes Text Classifier.
● Accurately predict the user’s Myers-Briggs personality type using 10-fold cross validation.
In Myer's Briggs Type indicator Classification we have 16 types of personality which can be categorized as :
- First step is to run the requirement.txt file to install all the libraries and dependencies.
- Run train.py first to generate your naive bayes classifier models for all 4 different classes. It will generate few scores which will give the training data size and the features used while training the model.
- Run predict.py(use your own Twitter keys) and enter the username you want to predict.
👍🎉 First off, thanks for taking the time to contribute! 🎉👍
Did you find a bug?
- Ensure the bug was not already reported by searching on GitHub under Issues.
- Open up a New Github issue if you find a bug and it have not been lready reported by searching on GitHub under Issues section.
Did you write a patch that fixes a bug?
- Open a new GitHub pull request with the patch
- Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable
- Once you open up a Pull Request the maintainer will check the PR and merge it.
Do you aim to add a brand new feature or change an existing one?
- Suggest your change in the to us and start writing code.
- Do not open an issue on GitHub until you have collected positive feedback about the change. GitHub issues are primarily intended for bug reports and fixes.
Do you have questions about the source code?
- Want to ask any question about this project us you can simply create an issue. we will reply to your questions there.