/personality_detection

Code for personality detection from image and about text from linkedin user url

Primary LanguageJupyter Notebook

Personality Detection

Our main idea is to use image url and text from user profile and then passing it through image analysis model and text-analysis model to get the possibility of person being in personality traits from big 5 model namely:

  1. Extraversion
  2. Agreeableness
  3. Conscientiousness
  4. Neuroticism
  5. Openness

For Text analysis part we are using pretrained bert model for preprocessing and smaller bert from tensorflow_hub using mean squared loss BinaryCrossentropy loss and AdamW optimizer. The overall accuracy of over model for predicting personality trait is about 50%

model wieghts link : https://drive.google.com/drive/folders/1U1fuZryj3R4rj6E7Umwbt9qefjMckCjA?usp=sharing

For Image analysis part we are using custom convolution network trained using mean squared loss (regression loss) and adam optimizer. The overall accuracy of over model for predicting personality trait is about 80%
Dataset pickle files link : https://drive.google.com/drive/folders/1U1fuZryj3R4rj6E7Umwbt9qefjMckCjA?usp=sharing

Training code for image analysis part is in personality_image.ipynb file you can directly open it in colab and run it.

Testing Instruction

Instruction for text analsysis

  • Run text_analsysis.pynb on colab
  • Load model weights

Sentiment analysis part

Just run sentiment_analysis.ipynb. training data link : https://www.kaggle.com/cosmos98/twitter-and-reddit-sentimental-analysis-dataset
work in progress: model saving and inference code will be added soon and this will be automated with twitter scraper which scraps comments of users on twitter and gives sentiment of each comment.