
يحتوي هذا المستودع على رمز للورقة من أسفل إلى أعلى وأعلى إلى أسفل: التنبؤ بالشخصية بميزات نموذجية ولغوية ، تم نشرها في مؤتمر IEEE الدولي لتعدين البيانات 2020 .
فيما يلي مجموعة من التجارب المكتوبة في TensorFlow + Pytorch لاستكشاف اكتشاف الشخصية الآلي باستخدام نماذج لغة على مجموعة بيانات المقالات (السمات ذات العلامات الشخصية ذات الخمسة الكبيرة) ومجموعة بيانات Kaggle MBTI.
اسحب المستودع من Github ، يليه إنشاء بيئة افتراضية جديدة (Conda أو VenV):
git clone https : // github . com / yashsmehta / personality - prediction . git
cd personality - prediction
conda create - n mvenv python = 3.10تثبيت الشعر ، واستخدم ذلك لتثبيت التبعيات المطلوبة لتشغيل المشروع:
curl - sSL https : // install . python - poetry . org | python3 -
poetry install قم أولاً بتشغيل رمز مستخرج LM الذي يمرر مجموعة البيانات من خلال نموذج اللغة ويخزن التضمينات (من جميع الطبقات) في ملف Pickle. إن إنشاء "مجموعة البيانات الجديدة" يوفر لنا الكثير من وقت الحساب ويسمح بالبحث الفعال عن المقاييس المفرطة لشبكة Finetuning. قبل تشغيل الكود ، قم بإنشاء مجلد PKL_DATA في مجلد REPO. جميع الوسيطات اختيارية ولا تمر أي وسيطات تعمل على تشغيل المستخرج بالقيم الافتراضية.
python LM_extractor.py -dataset_type ' essays ' -token_length 512 -batch_size 32 -embed ' bert-base ' -op_dir ' pkl_data 'بعد ذلك ، قم بتشغيل طراز FinetUting لأخذ الميزات المستخرجة كمدخلات من ملف Pickle وتدريب طراز Finetuning. نجد أن MLP ضحل ليكون أفضل أداء
python finetune_models/MLP_LM.py| جدول النتائج | نماذج اللغة مقابل السمات اللغوية النفسية |
|---|---|
![]() | ![]() |
اتبع الخطوات أدناه للتنبؤ بالشخصية (على سبيل المثال الخمسة الكبار: سمات المحيط) على نص/مقال جديد:
python finetune_models/MLP_LM.py -save_model ' yes 'الآن استخدم البرنامج النصي أدناه للتنبؤ بالنص غير المرئي:
python unseen_predictor.pyLM_extractor.pyعلى وحدة معالجة الرسومات RTX2080 ، يستغرق مستخرج "bert-base" -embed حوالي حوالي 2 متر ويستغرق حوالي 5 أمتار حوالي 5 أمتار
على وحدة المعالجة المركزية ، يستغرق مستخرج "Bert-Base" حوالي 25 مترًا تقريبًا
python finetune_models/MLP_LM.pyعلى وحدة معالجة الرسومات RTX2080 ، يأخذ تشغيل 15 عصرًا (بدون التحقق المتبادل) من 5S-60s ، اعتمادًا على بنية MLP.
@article { mehta2020recent ,
title = { Recent Trends in Deep Learning Based Personality Detection } ,
author = { Mehta, Yash and Majumder, Navonil and Gelbukh, Alexander and Cambria, Erik } ,
journal = { Artificial Intelligence Review } ,
pages = { 2313–2339 } ,
year = { 2020 } ,
doi = { https://doi.org/10.1007/s10462-019-09770-z } ,
url = { https://link.springer.com/article/10.1007/s10462-019-09770-z }
publisher= { Springer }
}إذا وجدت هذا الريبو مفيدًا لبحثك ، فيرجى الاستشهاد به باستخدام ما يلي:
@inproceedings { mehta2020bottom ,
title = { Bottom-up and top-down: Predicting personality with psycholinguistic and language model features } ,
author = { Mehta, Yash and Fatehi, Samin and Kazameini, Amirmohammad and Stachl, Clemens and Cambria, Erik and Eetemadi, Sauleh } ,
booktitle = { 2020 IEEE International Conference on Data Mining (ICDM) } ,
pages = { 1184--1189 } ,
year = { 2020 } ,
organization = { IEEE }
}تم ترخيص رمز المصدر لهذا المشروع بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.