ترکیب داده‌ها توی فضای پنهان: یه راه باحال برای پیش‌بینی وضعیت روحی با کلی دیتای جورواجور!

Fall Back

اگه دوست داری بدونی چطور میشه با کمک تکنولوژی و یه عالمه داده مختلف، زودتر بفهمیم کسی افسرده یا مضطربه (و حتی بتونیم دقیق‌تر واسش برنامه درمانی بچینیم)، این مقاله دقیقا حرفای جدید و جالبی داره!

خب بذار اول واضح کنم که کلا کار کردن با داده‌های سلامت روانی اصلا آسون نیست، چون این مشکلات معمولاً خیلی پیچیده و ریشه‌دار هستن و یه مدل ساده نمی‌تونه کامل همه چی رو توضیح بده. قبلاً بچه‌های پژوهشی، اکثر وقتا فقط با یه نوع داده (مثلاً فقط اطلاعات پزشکی یا فقط داده‌های رفتاری) کار می‌کردن یا اگه می‌خواستن چند نوع داده رو باهم بریزن، همون اولش همشو قاطی می‌کردن که بهش میگن «early fusion» — یعنی ادغام زودهنگام. ولی مشکل اینه که این روش اصلاً به خوبی نمی‌تونه ارتباط‌های پیچیده بین دیتاهای مختلف رو نشون بده.

حالا یه چیزی هست به اسم «latent space fusion» یا «ادغام توی فضای نهفته». این یعنی قبل از اینکه کل دیتاهارو با هم قاطی کنیم، یه قدم می‌ریم عقب؛ اول هر دیتا رو به صورت جداگانه با یه مدل می‌بریم توی یه فضای جدید که بهش می‌گن latent space، یعنی جایی که اطلاعات مهم هر دسته از دیتاها خلاصه و فشرده میشن و تازه اون موقع همه‌شونو با هم ترکیب می‌کنیم.

تو این مطالعه که داده‌هاش از پروژه BRIGHTEN اومده (این پروژه روی داده‌های سلامت روحی، دقیق‌تر بگم روی نشونه‌های روزانه افسردگی کار می‌کنه)، داده‌ها خیلی متنوع بودن: اطلاعات از گوشی هوشمند، ویژگی‌های جمعیت‌شناختی (یعنی سن، جنسیت، شغل و…)، و داده‌های پزشکی مثل فرم‌های مخصوص افسردگی مثل PHQ-2.

آزمایش‌ها به این صورت بودن: اومدن دو مدل رو با هم مقایسه کردن. یکی مدل «Random Forest» یا «جنگل تصادفی» (یه مدل یادگیری ماشین که چندتا تصمیم‌گیرنده داره و باهم رای جمع می‌کنن). این مدل با روش early fusion داده‌ها رو ترکیب می‌کرد. مدل دیگه‌شون اسمش Combined Model (CM) بود، که با روش latent space fusion کار می‌کنه: اول با autoencoder ها (یه نوع شبکه عصبی که یاد می‌گیره اطلاعات اصلی هر دسته از دیتا رو جمع کنه و بخش غیرمهم رو بندازه دور) هر جریان داده رو خلاصه کردن و بعد همه رو دادن به یه شبکه عصبی برای پیش‌بینی.

حالا نتیجه چطور بود؟ CM تو همه حالت‌ها از هر دو مدل سنتی، یعنی Random Forest و Linear Regression («رگرسیون خطی»، این هم یه مدل آماری ساده)، بهتر عمل کرد! برای اندازه‌گیری هم از دوتا عدد استفاده کردن: «میانگین مربع خطا» (Mean Squared Error – MSE؛ یعنی اختلاف واقعی و پیش‌بینی مدل چقدر بزرگه، هرچی کمتر بهتر) و «ضریب تعیین» (R2؛ یعنی مدل چقدر خوب می‌تونه تغییرات رو توضیح بده، هرچی بیشتر بهتر). نتیجه جالب بود: مدل CM تونست MSE رو برسونه به 0.4985 که از RF که عددش 0.5305 بود خیلی کمتره. R2 هم برای CM شد 0.4695 و برای RF فقط 0.4356 موند.

یه نکته باحال دیگه این بود که Random Forest توی آموزش روی دیتا خیلی قوی ظاهر شد اما موقع تست عملکردش افت کرد؛ به این حالت میگن overfitting یعنی مدل فقط داده‌هایی که دیده رو خیلی خوب حفظ می‌کنه و بلد نیست تعمیم بده. ولی CM تونست خوب واسه داده‌های جدید هم جواب پس بده (یعنی generalize شدن خوبی داشت).

جالب‌تر اینکه وقتی همه دیتاها (گوشی، اطلاعات جمعیتی، پزشکی) رو باهم و به روش latent space ترکیب کردن، بهترین نتیجه رو گرفتن. این نشون میده توی کارهایی که اطلاعات پیچیده و زیادی داریم، بهتره مدل بتونه ارتباط‌ها و وابستگی‌های غیرمستقیم رو هم بگیره.

در آخر مقاله پیشنهاد داده: اگه داریم روی دیتای سلامت روان از چند منبع مختلف کار می‌کنیم، latent space fusion یه راه خیلی باحال و دقیق‌تره تا early fusion سنتی. ولی هنوز یه کمی کار داره مخصوصاً تو فهمیدن اینکه مدل اصلاً سر چه داده‌هایی تصمیم گرفته (به این میگن interpretability یعنی قابل فهم بودن رفتار مدل برای ما آدما)، و اینکه بتونیم پیش‌بینی رو واسه هر فرد جداجدا (personalized prediction) دقیق‌تر در بیاریم. این موضوعات مهمن اگه بخوایم این مدل‌ها رو توی زندگی واقعی و درمان واقعی به کار ببریم.

پس خلاصه: اگه می‌خوای با داده‌های مختلف (مثلاً از گوشی، اطلاعات فردی و کلینیکی) مدل هوشمندی بسازی که بتونه وضعیت سلامت روان رو بهتر پیش‌بینی کنه، روش latent space fusion خیلی جواب میده و امکانات جدیدی هم تو راهشه!

منبع: +