This code implements the model discussed in Deep Learning-Based Document Modeling for Personality Detection from Text for detection of Big-Five personality traits, namely:
- Extroversion
- Neuroticism
- Agreeableness
- Conscientiousness
- Openness
- Python 2.7
- Theano 0.7 (Tested)
- Pandas 18.0 (Tested)
- Pre-trained GoogleNews word2vec vector
process_data.py
prepares the data for training. It requires three command-line arguments:
- Path to google word2vec file (
GoogleNews-vectors-negative300.bin
) - Path to
essays.csv
file containing the annotated dataset - Path to
mairesse.csv
containing Mairesse features for each sample/essay
This code generates a pickle file essays_mairesse.p
.
Example:
python process_data.py ./GoogleNews-vectors-negative300.bin ./essays.csv ./mairesse.csv
conv_net_train.py
trains and tests the model. It requires three command-line arguments:
- Mode:
-static
: word embeddings will remain fixed-nonstatic
: word embeddings will be trained
- Word Embedding Type:
-rand
: randomized word embedding (dimension is 300 by default; is hardcoded; can be changed by modifying default value ofk
in line 111 ofprocess_data.py
)-word2vec
: 300 dimensional google pre-trained word embeddings
- Personality Trait:
0
: Extroversion1
: Neuroticism2
: Agreeableness3
: Conscientiousness4
: Openness
Example:
python conv_layer_train.py -static -word2vec 2
If you use this code in your work then please cite the paper - Deep Learning-Based Document Modeling for Personality Detection from Text with the following:
@ARTICLE{7887639,
author={N. Majumder and S. Poria and A. Gelbukh and E. Cambria},
journal={IEEE Intelligent Systems},
title={{Deep} Learning-Based Document Modeling for Personality Detection from Text},
year={2017},
volume={32},
number={2},
pages={74-79},
keywords={feedforward neural nets;information filtering;learning (artificial intelligence);pattern classification;text analysis;Big Five traits;author personality type;author psychological profile;binary classifier training;deep convolutional neural network;deep learning based method;deep learning-based document modeling;document vector;document-level Mairesse features;emotionally neutral input sentence filtering;identical architecture;personality detection;text;Artificial intelligence;Computational modeling;Emotion recognition;Feature extraction;Neural networks;Pragmatics;Semantics;artificial intelligence;convolutional neural network;distributional semantics;intelligent systems;natural language processing;neural-based document modeling;personality},
doi={10.1109/MIS.2017.23},
ISSN={1541-1672},
month={Mar},}