هوش مصنوعی برای تشخیص بیماری (بخش چهارم)

خوب تا اینجا با داده‌های پزشکی و نوع مشکلاتی که می‌توان با هوش مصنوعی آنها را برطرف نمود آشنا شدیم. در ادامه‌ی این دوره می‌خواهیم مدلی پیاده‌سازی کنیم که چندین بیماری را از روی تصویر اشعه‌ی ایکس (X-ray) قفسه‌ی سینه تشخیص دهد. در طول این مسیر با چالش‌های متداول برای آموزش مدل برخورد خواهیم کرد که تکنیک‌هایی برای برطرف کردن آنها مطرح می‌کنیم.

تصویر اشعه‌ی ایکس قفسه‌ی سینه برای تشخیص مریضی‌هایی مانند سرطان ریه، ذات الریه و ... استفاده می‌شود. رادیولوژیست‌ها کسانی هستند که یاد میگیرن چگونه تصاویر اشعه‌ی ایکس قفسه‌ی سینه را تفسیر کنن و بیماری را تشخیص دهند. امروزه می‌توان به کامپیوتر آموزش داد که بیماری را از روی تصویر اشعه‌ی ایکس قفسه‌ی سینه تشخیص دهد.

برای شروع به تفسیر اشعه‌ی ایکس قفسه‌ی سینه می‌پردازیم. در تصویر زیر دو دسته از تصاویر را می‌بینید که دسته اول مربوط به قفسه‌ی سینه‌ی بیماران است که برچسب بیمار دارد و دسته‌ی دوم مربوط به افراد سالم است که برچسب نرمال دارد

حال ما تصویر جدیدی به شما می‌دهیم و از شما می‌خواهیم که تشخیص دهید آیا این تصویر متعلق به دسته‌ی بیمار است یا نرمال؟

خوب برای تشخیص و جواب دادن به این مساله باید شباهت تصویر داده شده را با تصویر هر دو دسته بررسی کنیم و تشخیص دهیم که این تصویر متعلق به کدام دسته است.

در تصویر زیر می‌بینیم که تصویر داده شده شباهت زیادی با تصاویر دسته‌ی بیمار دارد چرا که یک اسیب بافتی در قسمت مشخص شده وجود دارد که این حالت مشترکا در تصویر دسته‌ی بیمار نیز موجود است ولی در تصویر دسته‌ی نرمال وجود ندارد

روش آموزش مدل دقیقا مشابه با همین روش مطرح شده است. در این روش ما هر توده یا اسیبی که قطر آن بیشتر از ۳ سانتی‌متر باشد را به عنوان بیماری در نظر می‌گیریم.

در هنگام آموزش ما تصاویر را با برچسب در اختیار الگوریتم قرار می‌دهیم تا از تصاویر ورودی بتواند خروجی مورد نیاز ما را ایجاد کند. خروجی الگوریتم به صورت نمره است که احتمال وجود بیماری در تصویر را نشان می‌دهد برای فهم بهتر به تصویر زیر توجه نمایید

در تصویر بالا عدد اول متعلق به عکس اول و عدد دوم متعلق به عکس دوم است. تا زمانی که مدل آموزش ندیده باشد نمره‌ی خروجی با عدد دسته‌ی حقیقی تصاویر اختلاف زیادی دارد که این خطا را با تابع loss محاسبه می‌کنند نحوه‌ی عملکرد تابع loss را در بخش های بعدی بررسی خواهیم کرد.

عدد دسته‌ی بیمار ۱ و عدد دسته‌ی نرمال ۰ است. همانطور که می‌بینید ۰.۴۸ تا ۱ فاصله‌ی زیادی دارد و ۰.۵۱ هم تا ۰ فاصله‌ی زیادی دارد.

هنگامی که مدل آموزش می‌بیند این نمره‌ها به اعداد هر دسته نزدیک تر می‌شوند.