ماجراجویی با داده‌های عجیب تو سی‌تی‌اسکن طحال: چطور خطاها رو تو هوش مصنوعی پیدا کنیم؟

بیا یه داستان باحال برات تعریف کنم! تصور کن می‌خوای برای یه مدل هوش مصنوعی، مثل اون‌هایی که کاراشون تو پزشکیه، یه دیتاست درست کنی که ابعاد طحال رو با سی‌تی‌اسکن می‌سنجه. اصلاً کار ساده‌ای نیست! مخصوصا اگه نخوای خطا یا داده عجیبی قاطی سیستم شه. دردسر اینجا شروع میشه که هنوز هیچ راه قطعی و مصوب جهانی برای اینکه بفهمیم کدوم داده‌ها عجیب و غریب یا اصطلاحاً “آوتلایر” یا “استثنا” هستن وجود نداره. این موضوع می‌تونه باعث شه هوش مصنوعی اشتباه کنه و خروجی نهایی خیلی بی‌کیفیت از آب دربیاد.

خب تو این تحقیق جالب، یه تیم اومده و نشسته کلی تصویر سی‌تی‌اسکن از طحال جم کرده. منظورم دقیقا ۱۹۷ تا بیمار مختلفه! بعدشم سه تا رادیولوژیست – یعنی متخصص‌هایی که کارشون نگاه کردن به عکس‌های پزشکیه و تفسیر اونهاست – نشستن داده‌ها رو برچسب زدن. برچسب‌زدن یعنی دقیقاً گفتن هر عدد یا اندازه مربوط به چی هست یا چه ویژگی‌ای داره.

حالا سوال اصلی اینه: چطور بفهمیم تو این داده‌ها، کدوم مورد عجیب یا غیر نرماله؟ مثلاً فکر کن یه سی‌تی‌اسکن داری که طحالش بر خلاف بقیه، شکل خیلی خاص یا سایز غیرمعمول داره (مثلاً طحال هلالی‌شکل یا سه‌گوش یا با لوب اضافی!). یا مثلاً یکی اندازه‌گیری رو اشتباه وارد کرده باشه. اینا همون چیزهایین که بهشون می‌گیم “آنومالی” یا همون داده غیرعادی، و اگر تو دیتاست بمونن، آموزش هوش مصنوعی رو مختل می‌کنن.

حالا بریم سراغ این که این تیم چی کار کرده. روش‌هایی که امتحان کردن، خیلی متنوع بوده:

  • روش‌های بصری: یعنی با چشم و با نمودار نگاه کنی ببینی چی غیرعادیه. مثل نمودار جعبه‌ای یا باکس‌پلات (boxplot)، هیستوگرام (همون نمودار ستونی)، نقشه حرارتی (heatmap)، نمودار پراکندگی (scatter plot) و قاعده ۱.۵ دامنه چارکی (یعنی تو داده‌ها تشخیص بدی چه مقداری خارج از بازه طبیعی افتاده). این روش‌ها بیشتر به شهود و تجربه آدم‌ها برمی‌گرده.

  • روش‌های الگوریتمی مبتنی بر هوش مصنوعی: مثل آیلِیشِن فارست (Isolation Forest – یه الگوریتم که داده هایی که جنبه غیرعادی دارن رو جدا می‌کنه)، K-nearest neighbors یا همون KNN (یعنی نزدیک‌ترین همسایه‌ها رو برای هر داده پیدا می‌کنه و می‌سنجه که داده خیلی با بقیه فرق داره یا نه)، OSVM یا One-class Support Vector Machine (این یکی کلاً میاد داده‌های غیرطبیعی رو در برابر داده‌های نرمال پیدا می‌کنه)، لوکال آوتلایر فاکتور (یعنی فاکتوری که نشون میده چقدر یه داده توی همسایگی خودش عجیبه)، الگوریتم DBSCAN (Density-Based Spatial Clustering of Applications with Noise – اینم ببین چه اسمی داره! یعنی خوشه‌بندی مبتنی بر تراکم داده‌ها با شناسایی نویزها)، الپتیک انولوپ (EllipticEnvelope) و البته آتواینکدرها یا Autoencoders (اینها مدلی از شبکه عصبی هستن که خودشون داده رو میگیرن و خلاصه‌سازی می‌کنن، بعد اگه چیزی مقایر با مدل بره بیرون، به عنوان داده عجیب علامت می‌زنن).

  • روش‌های آماری ریاضی: مثل z-score (اندازه‌گیری اینکه هر مقدار چقدر با میانگین فاصله داره)، تست گراوبز (Grubb’s test – برای پیدا کردن داده‌های غیرعادی)، تست روزنر (Rosner’s test – همین کار رو برای چندتا داده عجیب همزمان انجام می‌ده).

حالا خودت تصور کن این همه ابزار و الگوریتم رو میارن وسط واسه یه دیتاست پزشکی. نتیجه چی شد؟ بنیادی‌ترین خطاهایی که پیدا شد مربوط به اشتباه تو اندازه‌گیری، وارد کردن داده اشتباه، یا اینکه یکی از طحال‌ها یه شکل ناجور زده بود بیرون! مثلاً طحال‌هایی که شکلاشون غیر از حالت معمولی بودن یا خیلی بزرگ بودن.

در نهایت جالب این بود که از همه این روش‌ها، تکنیک‌های بصری (مثل همون نمودارهای باکس‌پلات و هیستوگرام) به همراه چند تا از الگوریتم‌های هوش مصنوعی – مثل OSVM (اون ماشین بردار پشتیبان کلاس تکی)، KNN و آتواینکدرها – بهترین کارایی رو داشتن. تو کل این داستان، تونستن ۳۲ مورد داده عجیب رو از کل دیتاست پیدا کنن! این تعداد کم نیست و نشون می‌ده چقدر مهمه همین بررسی‌ها انجام بشه.

در آخر اینم بگم که نویسنده‌ها گفتن: برای اینجور دیتاست‌های پیچیده پزشکی، فقط تکیه کردن به ریاضیات یا فقط الگوریتم‌های هوش مصنوعی کافی نیست. باید ترکیبی از دانش آماری، تجربه بالینی (یعنی نظر کارشناس‌های پزشکی) و ابزارهای بصری استفاده شه تا دیتاست واقعاً سالم و بدون خطا بمونه.

پس اگه یه وقت خواستی هوش مصنوعی رو برای پزشکی تعلیم بدی، یادت باشه که تنها به نمودار و فرمول دل نبند! دست آخر، نگاه دقیق و هم‌فکری یه تیم حرفه‌ای (هم آماری، هم پزشکی) خیلی کار رو جلو می‌بره.

منبع: +