:‫پروژه‬ ‫عنوان‬
‫طبقه‬‫متلب‬ ‫در‬ ‫الیه‬ ‫چند‬ ‫پرسپترون‬ ‫از‬ ‫استفاده‬ ‫با‬ ‫تیروئید‬ ‫بندی‬
:‫درس‬‫عصبی‬ ‫شبکه‬
:‫دانشجو‬‫رمضانی‬ ‫نسیم‬
:‫درس‬ ‫استاد‬‫المدرسی‬ ‫محمدتقی‬ ‫دکتر‬
‫پاییز‬69
‫مقدمه‬
‫غده‬‫تیروئید‬‫یکی‬‫از‬‫غدد‬‫حیاتی‬‫بدن‬‫است‬‫که‬‫م‬‫ی‬‫توان‬‫گفت‬‫تقریبا‬‫بطور‬‫غیر‬‫مستقیم‬‫روی‬‫تمام‬‫ارگانیسم‬‫های‬
‫بدن‬‫مانند‬،‫قلب‬،‫کلیه‬‫دستگاه‬‫گوارش‬‫و‬‫غیره‬‫اثر‬.‫دارد‬‫غده‬‫تیروئید‬‫در‬‫گردن‬‫و‬‫در‬‫قسمت‬‫جلویی‬‫حنجره‬‫قرار‬
‫گرفته‬‫است‬.‫هورمونهای‬‫غده‬‫تیروئید‬‫عبارتند‬‫از‬:‫تیروتروپین‬(Thyrotropin)‫که‬‫فعالیت‬‫هورمونی‬،‫ندارد‬‫تری‬
‫یدو‬‫تیرونین‬( Three Iodo Thronin)‫و‬‫تیروکسین‬(Thyroxine)‫که‬‫هورمونهای‬‫فعال‬‫غده‬‫تیروئید‬‫می‬‫ب‬‫اشند‬.
‫کم‬‫کاری‬‫و‬‫پرکاری‬‫تیروئید‬‫دو‬‫بیماری‬‫غده‬‫تیروئید‬‫می‬‫باشند‬‫که‬‫در‬‫بسیاری‬‫موارد‬‫علت‬‫اساسی‬‫بیماریهای‬‫دیگر‬
‫می‬‫باشند‬ً‫ال‬‫مث‬‫قند‬‫باال‬‫و‬‫چربی‬‫باال‬‫هر‬‫دو‬‫میتوانند‬‫ناشی‬‫از‬‫پرکاری‬‫تیروئید‬‫باشند‬.
‫همچنین‬‫کم‬‫کاری‬‫غده‬‫تیروئید‬‫که‬‫به‬‫دلیل‬‫کمبود‬‫ید‬‫در‬‫بدن‬‫حاصل‬‫می‬‫شود‬‫منجر‬‫به‬‫بیماری‬‫مانند‬‫گواتر‬‫می‬‫شود‬.
‫هورمونهای‬‫غده‬‫تیروئیدی‬‫پس‬‫از‬‫آنکه‬‫به‬‫بافتها‬‫رسیدند‬‫فعالیت‬‫تنفسی‬‫سلولها‬‫را‬‫تشدید‬‫می‬‫کنند‬‫و‬‫عمل‬‫تبدیل‬
‫گلیکوژن‬‫به‬‫گلوکز‬‫را‬‫آسان‬‫می‬‫سازند‬‫و‬‫افزایش‬‫قند‬‫خون‬‫را‬‫موجب‬‫می‬‫شوند‬‫و‬‫برخالف‬،‫چربی‬‫کلسترول‬‫خون‬‫را‬
‫کم‬‫می‬‫کنند‬‫در‬‫پرکاری‬‫غده‬‫تیروئید‬‫مواد‬‫آلی‬‫بیشتر‬‫از‬‫حد‬‫طبیعی‬‫در‬‫سلولها‬‫می‬‫سوزند‬‫در‬‫این‬‫بیماران‬‫افزایش‬
‫حجم‬‫غده‬‫تیروئید‬‫مشاهده‬‫می‬‫شود‬‫و‬‫در‬‫بسیاری‬‫از‬‫آن‬‫چشم‬‫ها‬‫از‬‫حدقه‬‫بیرون‬‫رانده‬‫می‬‫شود‬.‫جمعی‬‫از‬‫پزشکان‬
‫این‬‫بیماری‬‫را‬‫گواتر‬‫سمی‬‫منتشر‬‫نام‬‫داده‬‫اند‬.‫کم‬‫کاری‬‫غده‬‫تیروئید‬‫در‬‫کودکان‬‫رشد‬‫بدن‬‫را‬‫متوقف‬‫می‬‫سازد‬‫و‬
‫اختالالت‬‫روانی‬(‫کند‬‫ذهنی‬)‫ایجاد‬‫میکند‬.
‫هدف‬‫ما‬‫در‬‫این‬‫گزارش‬‫طبقه‬‫بندی‬‫غده‬‫تیروئید‬‫از‬‫نظر‬‫نرمال‬،‫بودن‬‫پرکاری‬‫و‬‫یا‬‫کم‬‫کاری‬‫بر‬‫اساس‬‫مجموعه‬
‫داده‬‫های‬‫متلب‬ ‫در‬ ‫آماده‬‫شبکه‬ ‫از‬ ‫استفاده‬ ‫با‬‫های‬‫عصبی‬‫الیه‬ ‫چند‬‫می‬.‫باشد‬
‫های‬ ‫شبکه‬‫عصبی‬‫مصنوعی‬‫دارای‬‫انواع‬‫مختلف‬‫هستند‬‫در‬‫این‬‫بین‬‫مدل‬‫پرسپترون‬‫الیه‬ ‫چند‬(Multilayer
Perceptron)‫نوعی‬‫از‬‫مدلهای‬‫عصبی‬ ‫شبکه‬‫پیشخور‬‫است‬‫که‬‫استفاده‬‫از‬‫آن‬‫در‬‫طبقه‬‫بندی‬‫بسیار‬‫رایج‬‫است‬.
‫در‬‫این‬‫مدل‬‫واحدها‬‫در‬‫الیه‬‫های‬‫متوالی‬‫از‬‫طریق‬‫اتصاالت‬‫یکطرفه‬‫رو‬‫به‬‫جلو‬‫به‬‫هم‬‫مربوط‬‫می‬،‫شوند‬‫نمونه‬‫ها‬‫که‬
‫از‬‫طریق‬‫الیه‬‫های‬‫ورودی‬‫وارد‬‫شبکه‬‫شده‬‫در‬‫طول‬‫حرکت‬‫در‬‫شبکه‬‫تبدیالتی‬‫روی‬‫آنها‬‫انجام‬‫می‬‫گیرد‬‫در‬‫نهایت‬
‫واحدهای‬‫الیه‬‫خروجی‬‫نتیجه‬‫نهایی‬‫را‬‫به‬‫عنوان‬‫خروجی‬‫شبکه‬‫تحویل‬‫می‬.‫دهند‬
‫عملکرد‬‫شبکه‬‫عصبی‬‫شامل‬‫مجموع‬‫ه‬‫های‬‫از‬‫نرون‬‫ها‬‫است‬‫که‬‫در‬‫الیه‬‫های‬،‫ورودی‬‫پنهان‬‫و‬‫خروجی‬‫مرتب‬‫ط‬‫شده‬‫اند‬
‫البته‬‫چندین‬‫الیه‬‫پنهان‬‫میتواند‬‫بین‬‫الیه‬‫ورودی‬‫و‬‫الیه‬‫خروجی‬‫قرار‬.‫گیرد‬
‫یک‬‫مدل‬‫شبکه‬‫عصبی‬‫مصنوعی‬‫از‬‫متغیرهای‬‫ورودی‬‫در‬‫الیه‬‫اول‬‫استفاده‬‫میکند‬.‫خروجی‬‫شبکه‬‫معموال‬‫راه‬‫حلی‬
‫برای‬‫یک‬‫مسئله‬‫است‬‫در‬‫اینجا‬‫خروجی‬‫شبکه‬‫نشان‬‫دهندة‬‫نوع‬‫وضعیت‬‫غده‬‫تیروئید‬‫هر‬‫نمونه‬‫است‬.
‫مسئله‬ ‫شرح‬
‫ورودی‬ ‫الگوهای‬ ‫از‬ ‫ای‬ ‫مجموعه‬ ‫به‬ ‫را‬ ‫صحیح‬ ‫کالسهای‬ ‫تا‬ ‫است‬ ‫عصبی‬ ‫شبکه‬ ‫یک‬ ‫آموزش‬ ‫فرایند‬ ‫الگو‬ ‫تشخیص‬
‫دیده‬ ‫آن‬ ‫از‬ ‫قبل‬ ‫که‬ ‫الگوهایی‬ ‫بندی‬ ‫طبقه‬ ‫برای‬ ‫توان‬ ‫می‬ ‫را‬ ‫شبکه‬ ،‫آموزش‬ ‫از‬ ‫پس‬ .‫دهد‬ ‫اختصاص‬‫مورد‬ ‫شود‬ ‫نمی‬
‫داد‬ ‫قرار‬ ‫استفاده‬.
‫صورت‬ ‫به‬ ‫را‬ ‫کلینیک‬ ‫به‬ ‫کننده‬ ‫مراجعه‬ ‫بیماران‬ ‫که‬ ‫باشد‬ ‫عصبی‬ ‫شبکه‬ ‫یک‬ ‫ایجاد‬ ‫برای‬ ‫تواند‬ ‫می‬ ‫ها‬ ‫داده‬ ‫مجموعه‬ ‫این‬
،‫نرمال‬‫نرمال‬ ‫حد‬ ‫از‬ ‫بیشتر‬‫یا‬ ‫و‬‫نرمال‬ ‫حد‬ ‫از‬ ‫کمتر‬‫کند‬ ‫بندی‬ ‫طبقه‬.
‫های‬ ‫ورودی‬-‫ماتریکس‬ ‫یک‬21*7200‫شامل‬7200‫با‬ ‫بیمار‬15‫و‬ ‫دوتایی‬6‫ویژگی‬‫است‬ ‫شده‬ ‫مشخص‬.
‫هدف‬‫ماتریس‬ ‫یک‬ ‫ها‬3*7200‫تعریف‬ ‫با‬7200‫به‬ ‫که‬ ‫مرتبط‬ ‫کالس‬ ‫بردارهای‬3‫اختصاص‬ ‫ورودی‬ ‫هر‬ ‫کالس‬
‫می‬ ‫داده‬‫کالس‬ .‫شود‬‫ردیف‬ ‫با‬ ‫ها‬1،2‫یا‬3‫می‬ ‫داده‬ ‫نشان‬.‫شوند‬
1-‫نرمال‬
2-‫پرکار‬
3-‫کار‬ ‫کم‬
‫مسئله‬ ‫سازی‬ ‫شبیه‬
‫کد‬ ‫اجرای‬ ‫با‬nprtool‫در‬command window‫پنجره‬Neural Pattern Recognition‫می‬ ‫باز‬‫شود(شکل‬1‫یک‬ ‫که‬ )
‫شبکه‬2‫الیه‬ .‫میدهد‬ ‫نمایش‬ ‫را‬ ‫الیه‬‫می‬ ‫نامیده‬ ‫پنهان‬ ‫الیه‬ ‫که‬ ‫اول‬‫صورت‬ ‫به‬ ‫است‬ ‫پنهان‬ ‫خروجی‬ ‫دید‬ ‫از‬ ‫واقع‬ ‫در‬ ‫شود‬
‫انتقال‬ ‫تابع‬ ‫از‬ ‫فرض‬ ‫پیش‬Tan-sigmoid‫می‬ ‫استفاده‬‫می‬ ‫نامیده‬ ‫خروجی‬ ‫الیه‬ ‫که‬ ‫دوم‬ ‫الیه‬ ‫و‬ ،‫کند‬‫انتقال‬ ‫تابع‬ ‫از‬ ‫شود‬
SoftMax‫می‬ ‫استفاده‬.‫کند‬
‫(شکل‬1)
‫تابع‬softmax
‫در‬‫ریاضیات‬‫هموار‬ ‫بیشینه‬ ‫تابع‬‫(به‬‫انگلیسی‬:softmax function‫نرمال‬ ‫نمایی‬ ‫تابع‬ ‫یا‬ )‫سازی‬‫(به‬ ‫شده‬
‫انگلیسی‬:normalized exponential function‫تعمیم‬ )‫لجستیک‬ ‫تابع‬‫بردار‬ ‫یک‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ .‫است‬
k-‫مانند‬ ‫حقیقی‬ ‫اعداد‬ ‫از‬ ‫بعدی‬‫می‬ ‫دریافت‬ ‫ورودی‬ ‫عنوان‬ ‫به‬ ‫را‬‫و‬ ‫کند‬‫بردار‬k–‫بعدی‬(z)σ‫مقادیر‬ ‫از‬
‫حقیقی‬[0,1]‫می‬ ‫خروجی‬ ‫عنوان‬ ‫به‬ ‫را‬‫مولفه‬ ‫جمع‬ ‫که‬ ‫دهد‬‫آن‬ ‫های‬1‫می‬:‫است‬ ‫زیر‬ ‫شرح‬ ‫به‬ ‫تابع‬ ‫ضابطه‬ .‫شود‬
for j = 1, …, K.
‫بیشینه‬ ‫تابع‬ ‫خروجی‬‫در‬ ،‫هموار‬‫احتماالت‬ ‫نظریه‬‫می‬‫یک‬ ‫نمایش‬ ‫برای‬ ‫تواند‬‫رسته‬ ‫توزیع‬‫ای‬‫(به‬‫انگلیسی‬:
categorical distribution‫رسته‬ ‫توزیع‬ .‫شود‬ ‫استفاده‬ )‫روی‬ ‫بر‬ ‫احتماالتی‬ ‫توزیع‬ ،‫ای‬‫مختلف‬ ‫نتیجه‬
.‫است‬
‫بیشینه‬ ‫تابع‬‫روش‬ ‫در‬ ‫هموار‬‫های‬‫طبقه‬‫بندی‬‫می‬ ‫استفاده‬ ‫متعددی‬‫شود؛‬:‫مانند‬‫چندجمله‬ ‫لجستیک‬ ‫رگرسیون‬‫ای‬‫(به‬
‫انگلیسی‬multinomial logistic regression،)‫خطی‬ ‫افتراقی‬ ‫آنالیز‬،‫دسته‬‫ساده‬ ‫بیز‬ ‫کننده‬ ‫بندی‬‫و‬‫شبکه‬
‫مصنوعی‬ ‫عصبی‬.‫چندجمله‬ ‫لجستیک‬ ‫رگرسیون‬ ‫در‬‫خروجی‬ ،‫تابع‬ ‫ورودی‬ ،‫خطی‬ ‫افتراقی‬ ‫آنالیز‬ ‫و‬ ‫ای‬k‫خطی‬ ‫تابع‬
‫ورودی‬ ‫نمونه‬ ‫بردار‬ ‫که‬ ‫صورتی‬ ‫در‬ ‫و‬ ‫است‬x‫وزن‬ ‫بردار‬ ‫و‬‫ها‬w‫پیش‬ ‫احتمال‬ ،‫باشد‬‫کالس‬ ‫برای‬ ‫شده‬ ‫بینی‬j‫برابر‬ ‫ام‬
:‫با‬ ‫است‬
‫که‬𝑤𝑗‫سطر‬𝑤𝑗𝑥 𝑇
‫وزن‬ ‫بردار‬ ‫ام‬‫و‬ ‫هاست‬‫مقدار‬ ‫با‬ ‫برابر‬ ‫هم‬‫داخلی‬ ‫ضرب‬‫در‬ .‫است‬ ‫وزن‬ ‫بردار‬ ‫و‬ ‫ورودی‬ ‫بردارهای‬
‫می‬ ،‫داخلی‬ ‫ضرب‬ ‫جای‬ ‫به‬ ‫باال‬ ‫عبارت‬ ‫از‬ ‫دیگری‬ ‫توصیف‬‫عملیات‬ ‫از‬ ‫توان‬‫توابع‬ ‫ترکیب‬‫عبارت‬ ‫یعنی‬ ‫کرد؛‬ ‫استفاده‬
‫ترکیب‬ ‫صورت‬ ‫به‬ ‫باال‬K‫خطی‬ ‫تابع‬𝑥 → 𝑥 𝑇
𝑤 𝐾𝑥 → 𝑥 𝑇
𝑤1…..‫بیشینه‬ ‫تابع‬ ‫و‬‫به‬ .‫گردد‬ ‫تلقی‬ ‫هموار‬
‫دیگر‬ ‫عبارت‬‫عملگری‬‫شده‬ ‫تعریف‬ ‫وزن‬ ‫بردار‬ ‫از‬ ‫استفاده‬ ‫با‬ ‫که‬‫به‬ ‫را‬ ‫ورودی‬ ‫و‬ ‫شده‬ ‫اعمال‬ ‫ورودی‬ ‫روی‬ ‫بر‬ ،‫است‬
‫فضای‬ ‫در‬ ‫برداری‬𝑅 𝐾
‫می‬ ‫انتقال‬.‫دهد‬
‫از‬ ‫پذیری‬ ‫مشتق‬ ‫تقریب‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ .‫قرمز‬ ‫رنگ‬ ‫به‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ ‫و‬ ‫آبی‬ ‫رنگ‬ ‫به‬ ‫بیشینه‬ ‫تابع‬ ‫مقایسه‬
‫بیشینه‬ ‫تابع‬‫می‬ ‫ارائه‬.‫کند‬
‫مرحله‬ ‫این‬ ‫در‬‫ورودی‬‫هدف‬ ‫و‬ ‫ها‬( ‫های‬targets‫می‬ ‫مشخص‬ ‫را‬ ‫شبکه‬ )‫مجموعه‬ ‫از‬ ‫گزارش‬ ‫این‬ ‫در‬ ‫که‬ .‫کنیم‬
‫داده‬‫برای‬ ‫متلب‬ ‫آماده‬ ‫های‬‫طبقه‬‫می‬ ‫استفاده‬ ‫تیروئید‬ ‫بندی‬.‫کنیم‬
‫(شکل‬2)
‫داده‬ ‫میزان‬ ‫اینجا‬ ‫در‬‫می‬ ‫تعیین‬ ‫را‬ ‫تست‬ ‫و‬ ‫سنجی‬ ‫اعتبار‬ ،‫آموزش‬ ‫های‬‫حالت‬ ‫از‬ ‫ما‬ ‫که‬ ‫کنیم‬‫استفاده‬ ‫فرض‬ ‫پیش‬
‫می‬.‫کنیم‬
‫(شکل‬3)
‫نورون‬ ‫تعداد‬ ‫مرحله‬ ‫این‬ ‫در‬ ‫و‬‫الیه‬‫می‬ ‫تعیین‬ ‫پنهان‬‫خروجی‬ ‫تعداد‬ ‫برابر‬ ‫خروجی‬ ‫الیه‬ ‫نورون‬ ‫تعداد‬ ‫شودو‬.‫است‬ ‫ها‬
‫(شکل‬4)
‫می‬ ‫آموزش‬ ‫را‬ ‫شبکه‬ ‫قسمت‬ ‫این‬ ‫در‬‫دهیم‬.
‫(شکل‬5)
‫نمونه‬ ‫تعداد‬ ‫مرحله‬ ‫این‬ ‫در‬ ‫و‬‫خطا‬ ‫درصد‬ ‫و‬ ‫گروه‬ ‫هر‬ ‫به‬ ‫متعلق‬ ‫های‬‫در‬ ‫استفاده‬ ‫مورد‬ ‫الگوریتم‬ ‫برای‬ ‫خطا‬ ‫میزان‬ ‫و‬
‫یعنی‬ ‫الگو‬ ‫شناسایی‬Croos-Entropy‫می‬ ‫نشان‬ ‫را‬‫دهد‬.
‫(شکل‬6)
‫تعر‬‫ی‬‫ف‬‫ورودی‬‫ها‬‫و‬‫خروج‬‫ی‬‫شبکه‬
7- % thyroidInputs - input data.
8- % thyroidTargets - target data.
9- x = thyroidInputs;
10- t = thyroidTargets;
‫ا‬‫نتخاب‬‫تابع‬‫آموزش‬‫که‬‫به‬‫دالیل‬‫زیر‬scaled conjugate gradient‫می‬ ‫انتخاب‬ ‫را‬:‫کنیم‬
‫الگوریتم‬ ‫از‬ ‫یک‬ ‫هر‬‫هزینه‬ ‫خط‬ ‫جستجوی‬ ‫این‬ .‫است‬ ‫تکرار‬ ‫هر‬ ‫در‬ ‫خط‬ ‫جستجوی‬ ‫نیازمند‬ ،‫گرادیان‬ ‫های‬،‫است‬ ‫بر‬
‫ورودی‬ ‫تمام‬ ‫به‬ ‫شبکه‬ ‫پاسخ‬ ‫زیرا‬‫می‬ ‫محاسبه‬ ‫جستجو‬ ‫هر‬ ‫برای‬ ‫بار‬ ‫چندین‬ ‫برای‬ ‫آموزشی‬ ‫های‬‫الگوریتم‬ .‫شود‬
scaled conjugate gradient(SCG)‫طراح‬ ‫زمان‬ ‫خطی‬ ‫جستجوی‬ ‫از‬ ‫جلوگیری‬ ‫برای‬ ،‫روش‬ .‫است‬ ‫شده‬ ‫ی‬
trainscg‫نسبت‬ ‫بیشتری‬ ‫تکرار‬ ‫به‬ ‫نیاز‬ ‫است‬ ‫ممکن‬‫الگوریتم‬ ‫سایر‬ ‫به‬‫تعداد‬ ‫اما‬ ،‫باشد‬ ‫داشته‬ ‫گرادیان‬ ‫های‬
‫می‬ ‫کاهش‬ ‫توجهی‬ ‫قابل‬ ‫بطور‬ ‫تکرار‬ ‫هر‬ ‫در‬ ‫محاسبات‬‫نمی‬ ‫انجام‬ ‫خطی‬ ‫جستجوی‬ ‫هیچ‬ ‫زیرا‬ ‫یابد‬.‫شود‬
13- % Choose a Training Function
14- % For a list of all training functions type: help nntrain
15- % 'trainlm' is usually fastest.
16- % 'trainbr' takes longer but may be better for challenging problems.
17- % 'trainscg' uses less memory. Suitable in low memory situations.
18- trainFcn = 'trainscg'; % Scaled conjugate gradient backpropagation.
‫ساخت‬‫ساختار‬‫شبکه‬‫با‬‫تابع‬‫و‬‫تع‬‫یی‬‫ن‬‫تعداد‬‫نورون‬‫های‬‫ال‬‫ی‬‫ه‬‫پنهان‬
20- % Create a Pattern Recognition Network
21- hiddenLayerSize = 10;
22- net = patternnet(hiddenLayerSize);
‫انتخاب‬/ ‫قبل‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫توابع‬‫پردازش‬ ‫بعد‬
24- % Choose Input and Output Pre/Post-Processing Functions
25- % For a list of all processing functions type: help nnprocess
26- net.input.processFcns = {'removeconstantrows','mapminmax'};
27- net.output.processFcns = {'removeconstantrows','mapminmax'};
‫در‬‫ا‬‫ی‬‫ن‬‫قسمت‬‫داده‬‫های‬‫ورودی‬‫را‬‫به‬‫سه‬‫قسمت‬‫آموزش‬‫،ارز‬‫ی‬‫اب‬‫ی‬‫و‬‫تست‬‫تقس‬‫ی‬‫م‬‫کرده‬‫است‬‫و‬‫با‬‫توابع‬
divideMode‫و‬divideFcn‫ا‬‫ی‬‫ن‬‫تقس‬‫ی‬‫م‬‫بندی‬‫را‬‫بصورت‬‫تصادف‬‫ی‬‫و‬‫از‬‫سراسر‬‫د‬‫ی‬‫تاها‬‫انجام‬‫داده‬‫است‬.
29- % Setup Division of Data for Training, Validation, Testing
30- % For a list of all data division functions type: help nndivide
31- net.divideFcn = 'dividerand'; % Divide data randomly
32- net.divideMode = 'sample'; % Divide up every sample
33- net.divideParam.trainRatio = 70/100;
34- net.divideParam.valRatio = 15/100;
35- net.divideParam.testRatio = 15/100;
‫که‬ ‫خطا‬ ‫عملکرد‬ ‫تابع‬ ‫انتخاب‬Cross-Entropy‫است‬
37- % Choose a Performance Function
38- % For a list of all performance functions type: help nnperformance
39- net.performFcn = 'crossentropy'; % Cross-Entropy
‫انتخاب‬‫نمودارها‬‫یی‬‫که‬‫با‬‫ی‬‫د‬‫بعد‬‫از‬‫آموزش‬‫شبکه‬‫برای‬‫بررس‬‫ی‬‫عملکرد‬‫شبکه‬‫استخراج‬‫شوند‬.‫از‬‫جمله‬‫نمودار‬
‫خطای‬‫آموزش‬‫و‬‫ارز‬‫ی‬‫اب‬‫و‬‫تست،نمودار‬ROC‫و‬‫ه‬‫ی‬‫ستوگرام‬‫تابع‬‫خطا‬‫و‬...
41- % Choose Plot Functions
42- % For a list of all plot functions type: help nnplot
43- net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ...
'plotconfusion', 'plotroc'};
‫شروع‬‫آموزش‬‫شبکه‬:
46- % Train the Network
47- [net,tr] = train(net,x,t);
‫تست‬‫شبکه‬‫با‬‫داده‬‫های‬،‫تست‬‫همانطور‬‫که‬‫م‬‫ی‬‫دون‬‫ی‬‫م‬‫داده‬‫های‬validation‫در‬‫ح‬‫ی‬‫ن‬‫آموزش‬‫شبکه‬‫اعمال‬
‫می‬‫داده‬ ‫و‬ ‫شوند‬‫های‬Test.‫شبکه‬ ‫آموزش‬ ‫اتمام‬ ‫از‬ ‫بعد‬
‫تابع‬gsubtract‫اختالف‬‫ب‬‫ی‬‫ن‬‫خروج‬‫ی‬‫واقع‬‫ی‬‫ی‬‫همان‬ ‫ا‬t‫خروجی‬ ‫با‬ ‫را‬‫در‬ ‫و‬ ‫کرده‬ ‫محاسبه‬ ‫شبکه‬ ‫های‬e‫قرار‬
‫می‬‫تابع‬ ‫و‬ ‫دهد‬perform‫میزان‬performance‫می‬ ‫نشان‬ ‫را‬ ‫خطا‬.‫دهد‬
49- % Test the Network
50- y = net(x);
51- e = gsubtract(t,y);
52- performance = perform(net,t,y)
53- tind = vec2ind(t);
54- yind = vec2ind(y);
55- percentErrors = sum(tind ~= yind)/numel(tind);
‫مقدار‬ ‫قسمت‬ ‫این‬ ‫در‬performance‫داده‬ ‫برای‬ ‫شبکه‬‫های‬train،validation‫و‬test‫محاسبه‬ ‫جداگانه‬ ‫بصورت‬
‫می‬‫می‬ ‫چاپ‬ ‫برنامه‬ ‫خروجی‬ ‫در‬ ‫و‬ ‫شود‬.‫شود‬
57- % Recalculate Training, Validation and Test Performance
58- trainTargets = t .* tr.trainMask{1};
59- valTargets = t .* tr.valMask{1};
60- testTargets = t .* tr.testMask{1};
61- trainPerformance = perform(net,trainTargets,y)
62- valPerformance = perform(net,valTargets,y)
63- testPerformance = perform(net,testTargets,y)
‫الین‬ ‫مورد‬ ‫در‬ ‫نکته‬58‫و‬59:
‫تابع‬Mask‫داده‬‫می‬ ‫مشخص‬ ‫را‬ ‫تست‬ ‫و‬ ‫ارزیابی‬ ‫و‬ ‫آموزش‬ ‫های‬‫در‬ ‫وقتی‬ ‫و‬ ‫کند‬t‫می‬ ‫ضرب‬‫داده‬ ‫مقدار‬ ‫شود‬‫را‬ ‫هایی‬
‫آموزش‬ ‫برای‬ ‫که‬‫رفته‬ ‫بکار‬ ‫تست‬ ‫یا‬ ‫ارزیابی‬ ‫یا‬‫می‬ ‫مشخص‬ ‫اند‬.‫کند‬
‫داده‬ ‫اندیس‬ ‫بخواهیم‬ ‫اگر‬‫رفته‬ ‫بکار‬ ‫تست‬ ‫و‬ ‫ارزیابی‬ ‫و‬ ‫آموزش‬ ‫برای‬ ‫که‬ ‫هایی‬‫تابع‬ ‫نقیض‬ ‫از‬ ‫کنیم‬ ‫پیدا‬ ‫را‬ ‫اند‬isnan‫و‬
‫تابع‬ ‫کمک‬ ‫با‬Mask‫می‬ ‫استفاده‬‫داده‬ ‫اندیس‬ ‫اگر‬ ‫مثال‬ .‫شود‬‫های‬Test‫می‬ ‫استفاده‬ ‫زیر‬ ‫دستور‬ ‫از‬ ‫بخواهیم‬ ‫را‬:‫کنیم‬
testIndices=find(~ isnan (tr.testMask{1}))
‫صفحه‬ ‫قسمت‬ ‫این‬ ‫در‬‫می‬ ‫داده‬ ‫نشان‬ ‫هست‬ ‫شبکه‬ ‫آموزش‬ ‫اطالعات‬ ‫حاوی‬ ‫که‬ ‫ای‬:‫شود‬ 
65- % View the Network
66- view(net)
‫می‬ ‫مشاهده‬ ‫شکل‬ ‫در‬ ‫که‬ ‫همانطور‬ ‫که‬‫شده‬ ‫داده‬ ‫توضیح‬ ‫قبال‬ ‫که‬ ‫است‬ ‫شبکه‬ ‫از‬ ‫اطالعاتی‬ ‫حاوی‬ ‫شود‬‫قسمت‬ ‫در‬ ‫اند‬
progress‫می‬ ‫قسمت‬ ‫پنج‬ ‫دارای‬‫مشخص‬ ‫حد‬ ‫به‬ ‫زودتر‬ ‫که‬ ‫گزینه‬ ‫شش‬ ‫این‬ ‫از‬ ‫کدام‬ ‫هر‬ ‫که‬ ‫باشد‬‫برسد‬ ‫شده‬
‫می‬ ‫متوقف‬ ‫شبکه‬ ‫آموزش‬‫از‬ ‫بعد‬ ‫شبکه‬ ‫اینجا‬ ‫در‬ ‫که‬ ‫شود‬78‫رسید‬ ‫علت‬ ‫به‬ ‫آموزش‬ ‫نسل‬‫ن‬validation checks‫به‬
6.‫است‬ ‫شده‬ ‫متوقف‬ ‫شبکه‬ ‫آموزش‬
‫نمودار‬ ‫قسمت‬ ‫این‬ ‫در‬‫است‬ ‫شده‬ ‫داده‬ ‫نمایش‬ ‫خروجی‬ ‫مختلف‬ ‫های‬
68- % Plots
69- % Uncomment these lines to enable various plots.
70- %figure, plotperform(tr)
71- %figure, plottrainstate(tr)
72- %figure, ploterrhist(e)
73- %figure, plotconfusion(t,y)
74- %figure, plotroc(t,y)
Cross Antropy
‫در‬‫اطالعات‬ ‫تئوری‬‫دو‬ ‫بین‬ ‫متقاطع‬ ‫انتروپی‬ ،‫احتمالی‬ ‫توزیع‬p‫و‬q،‫وقایع‬ ‫از‬ ‫حقیقی‬ ‫مجموعه‬ ‫یک‬ ‫از‬ ‫بیش‬
‫تعداد‬ ‫میانگین‬‫های‬ ‫بیت‬‫نیاز‬ ‫مورد‬‫را‬‫شناسا‬ ‫برای‬‫مجموعه‬ ‫از‬ ‫شده‬ ‫کشیده‬ ‫رویداد‬ ‫یی‬‫اگر‬ ،‫کند‬ ‫می‬ ‫گیری‬ ‫اندازه‬
‫ش‬ ‫استفاده‬ ‫کدگذاری‬ ‫طرح‬ ‫یک‬‫احتمالی‬ ‫توزیع‬ ‫برای‬ ‫که‬ ‫است‬ ‫ده‬«‫طبیعی‬ ‫غیر‬»‫است‬ ‫شده‬ ‫بهینه‬q‫جای‬ ‫به‬ ،
‫توزیع‬‫درست‬p
‫که‬ ‫جایی‬H(p)‫است‬ ‫انتروپی‬p‫و‬𝐷 𝐾𝐿(𝑃||𝑞)‫واگرایی‬Kullback-Leibler‫است‬q‫جانب‬ ‫از‬
p‫عنوان‬ ‫به‬ ‫(همچنین‬‫نسبی‬ ‫آنتروپی‬p‫به‬ ‫توجه‬ ‫با‬Q‫شود‬ ‫می‬ ‫شناخته‬-.)‫تاکید‬ ‫معکوس‬ ‫به‬ ‫توجه‬
‫برای‬‫گسسته‬p‫و‬q‫یعنی‬ ‫این‬
‫توزیع‬ ‫برای‬ ‫وضعیت‬.‫است‬ ‫مداوم‬ ‫مشابه‬ ‫های‬‫بپذیریم‬ ‫را‬ ‫این‬ ‫باید‬ ‫ما‬p‫و‬q‫به‬ ‫توجه‬ ‫با‬‫معیار‬‫مرجع‬‫مستمر‬ ‫کامال‬
‫هستند‬r‫(معموال‬r‫یک‬‫معیار‬Lebesgue‫یک‬ ‫در‬‫جبر‬‫بورل‬‫است‬.)‫دهید‬ ‫اجازه‬P‫و‬Q‫چگالی‬ ‫توابع‬
‫احتمالی‬p‫و‬q‫به‬ ‫توجه‬ ‫با‬r.‫سپس‬
NB‫نماد‬ :H(p,q)،‫دیگر‬ ‫مفهوم‬ ‫یک‬ ‫برای‬ ‫همچنین‬‫مشترک‬ ‫انتروپی‬‫آن‬ ‫از‬‫شود‬ ‫می‬ ‫استفاده‬p‫و‬q.
:‫نتایج‬
: Performance ‫نمودار‬ 
‫نمودار‬Training State:
‫نمودار‬Error Histogram:
‫می‬ ‫مشاهده‬ ‫که‬ ‫همانطور‬‫ستون‬ ‫شود‬‫داده‬ ‫های‬‫هستند‬ ‫نزدیکتر‬ )‫رنگ‬ ‫زرد‬ ‫(خط‬ ‫صفر‬ ‫خط‬ ‫محدوده‬ ‫به‬ ‫ها‬‫نتیجه‬ ‫و‬
.‫است‬ ‫کرده‬ ‫فراهم‬ ‫را‬ ‫خوبی‬
‫نمودار‬Training Confusion:
‫نمودار‬ ‫توضییح‬Confusion
:‫ها‬ ‫نمونه‬ ‫کل‬ ‫تعداد‬0227
:‫شده‬ ‫تقسیم‬ ‫دسته‬ ‫سه‬ ‫به‬ ‫ذیل‬ ‫شکل‬ ‫به‬ ‫ها‬ ‫داده‬ ‫این‬
1 − 𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔 = 5040
2 − 𝑉𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛 = 1080
3 − 𝑇𝑒𝑠𝑡𝑖𝑛𝑔 = 1080
‫(بخش‬ .‫میباشد‬ ‫ذیل‬ ‫قرار‬ ‫ذیل‬ ‫شکل‬ ‫در‬ ‫فوق‬ ‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔)‫ببینید‬ ‫را‬ ‫شکل‬
-)‫سبز‬ ‫قطر(رنگ‬ ‫های‬ ‫داده‬ ‫مجموعه‬93 + 9 + 4623 = 4725
‫ها‬ ‫داده‬ ‫این‬93.7%‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔‫یا‬ ‫میدهد‬ ‫تشکیل‬ ‫را‬93.7%‫های‬ ‫داده‬5040‫تشکیل‬ ‫را‬
‫بخش‬ ‫از‬ ‫یعنی‬ .‫میدهد‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔،93.7%.‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫ها‬ ‫داده‬
-:)‫قرمز‬ ‫شده(رنگ‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫که‬ ‫های‬ ‫داده‬ ‫مجموعه‬
[9 + 24 + 264] + [3 + 14 + 1] = 315
،‫ها‬ ‫داده‬ ‫این‬6.3%‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔.‫میدهد‬ ‫تشکیل‬ ‫را‬
‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫های‬ ‫داده‬ ‫صورت‬ ‫این‬ ‫به‬93.7%‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬ ‫و‬6.3%‫میشود‬
)‫باال‬ ‫است.(شکل‬ ‫شده‬ ‫نوشته‬ ،‫دارد‬ ‫آبی‬ ‫رنگ‬ ‫که‬ ‫پاین‬ ‫خانه‬ ‫در‬ ‫که‬
‫بخش‬ ‫اول‬ ‫میکنیم.(سطر‬ ‫محاسبه‬ ‫دارد‬ ‫قرار‬ ‫خاکستری‬ ‫رنگ‬ ‫به‬ ‫های‬ ‫خانه‬ ‫در‬ ‫که‬ ‫های‬ ‫داده‬ ‫حال‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔)
=‫سبز‬ ‫قرمز+رنگ‬ ‫رنگ‬ :‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬ ‫کل‬117
:)‫قرمز‬ ‫(رنگ‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬3 + 14 = 17‫داده‬ ‫این‬ .15.5%‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬
(117.‫میدهد‬ ‫تشکیل‬ ‫را‬ )
:)‫سبز‬ ‫(رنگ‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫های‬ ‫داده‬93‫ها‬ ‫داده‬ ‫این‬84.5%( ‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬117‫را‬ )
.‫میدهد‬ ‫تشکیل‬
‫صدی‬ ‫در‬15.5%‫درصدی‬ ‫و‬84.5%.‫شده‬ ‫نوشته‬ ‫رنگ‬ ‫خاکستری‬ ‫خانه‬ ‫در‬
:‫روال‬ ‫همین‬ ‫به‬
‫به‬ ‫دارد‬ ‫قرار‬ ‫راست‬ ‫دست‬ ‫در‬ ‫که‬ ‫رنک‬ ‫خاکستری‬ ‫های‬ ‫داده‬ ‫تعداد‬ ‫نمایم‬ ‫جمع‬ ‫سطری‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬
.‫مییاید‬ ‫دست‬
.‫مییاید‬ ‫دست‬ ‫به‬ ‫پائین‬ ‫رنگ‬ ‫خاکستری‬ ‫های‬ ‫داده‬ ‫نمایم‬ ‫جمع‬ ‫ستونی‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬ ‫و‬
‫ک‬ ‫سه‬ ‫هر‬ ‫درست‬ ‫های‬ ‫داده‬ ‫مجموعه‬ ،‫نمایم‬ ‫جمع‬ ‫قطری‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬‫خانه‬ ‫در‬ ‫و‬ ‫آید‬ ‫می‬ ‫بدست‬ ‫الس‬
.‫است‬ ‫شده‬ ‫نوشت‬ ‫آبی‬
‫یادداشت‬1‫های‬ ‫داده‬ ‫دهنده‬ ‫نشان‬ ‫آن‬ ‫سبز‬ ‫رنگ‬ ‫به‬ ‫اعداد‬ ،‫نوشته‬ ‫رنگ‬ ‫خاکستری‬ ‫های‬ ‫خانه‬ ‫در‬ ‫که‬ ‫های‬ ‫داده‬ :
.‫میباشد‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬ ‫دهنده‬ ‫نشان‬ ‫آن‬ ‫قرمز‬ ‫رنگ‬ ‫به‬ ‫های‬ ‫داده‬ ‫و‬ ‫درست‬
‫یادداشت‬2‫شکل‬ ‫های‬ ‫داده‬ ‫بخواهیم‬ ‫اگر‬ :𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫از‬ ‫چو‬ .‫نمایم‬ ‫تحلیل‬ ‫را‬0227‫تعداد‬ ‫به‬ ‫نمونه‬1080
‫به‬ ‫را‬ ‫نمونه‬𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫های‬ ‫داده‬ ‫کل‬ ‫باید‬ ‫بنآ‬ ‫دادیم‬ ‫اختصاص‬𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫را‬1707‫به‬ ‫و‬ ‫گرفته‬ ‫درنظر‬
‫داد‬ ‫نشاندهنده‬ ‫سبز‬ ‫رنگ‬ ‫که‬ ‫مینمایم‬ ‫محاسبه‬ ‫و‬ ‫تحلیل‬ ‫را‬ ‫ها‬ ‫داده‬ ‫ستونی‬ ‫و‬ ‫سطری‬ ،‫قطری‬ ‫شکل‬‫درست‬ ‫های‬ ‫ه‬
‫آن‬ ‫در‬ ‫را‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫دادهای‬ ‫دهنده‬ ‫نشان‬ ‫قرمز‬ ‫رنگ‬ ‫های‬ ‫داده‬ ‫و‬ ‫میباشد‬ ‫گروه‬ ‫آن‬ ‫شده‬ ‫بندی‬ ‫طبقه‬
.‫میدهد‬ ‫نشان‬ ‫گروه‬
‫نمودار‬Training Receiver Operating:
‫سیستم‬ ‫اساسی‬ ‫ایده‬‫دسته‬ ‫و‬ ‫تشخیص‬ ‫های‬‫بیماری‬ ‫بندی‬‫اساس‬ ‫بر‬ ،‫بیماران‬ ‫بیماری‬ ‫احتمال‬ ‫محاسبه‬ ‫ها‬‫نتای‬‫آزمون‬ ‫ج‬
‫می‬ ‫بیماری‬.‫باشد‬‫تحلیل‬‫های‬ROC‫تشخیص‬ ‫نتایج‬ ‫واقعی‬ ‫دقت‬ ‫کردن‬ ‫مشخص‬ ‫برای‬‫برای‬ .‫است‬ ‫پزشکی‬ ‫های‬
‫سیستم‬ ‫عملکرد‬ ‫بررسی‬‫تصاویر‬ ‫تشخیصی‬ ‫های‬ROC‫ویژه‬ ‫اهمیت‬ ‫از‬‫برخواردند‬ ‫ای‬.‫تحلیل‬‫های‬ROC‫رویکردی‬
‫مشخص‬ ‫برای‬ ‫که‬ ‫است‬ ‫استاندارد‬‫تشخیص‬ ‫ویژگی‬ ‫و‬ ‫حساسیت‬ ‫کردن‬‫بکارمی‬ ‫ها‬‫ر‬‫منحنی‬ ،‫منظور‬ ‫این‬ ‫برای‬ .‫وند‬ROC
‫تعریف‬ ‫برای‬‫می‬ ‫بکار‬ ‫تشخیصی‬ ‫سیستم‬ ‫ویژگی‬ ‫و‬ ‫حساسیت‬ ‫رابطه‬ ‫کردن‬.‫رود‬
‫منحنی‬‫می‬ ‫قرار‬ ‫یک‬ ‫و‬ ‫صفر‬ ‫بین‬ ‫ها‬‫منحنی‬ .‫گیرند‬‫نیمساز‬ ‫همسایگی‬ ‫در‬ ‫که‬ ‫های‬55‫سیستم‬ ‫معرف‬ ‫هستند‬ ‫درجه‬‫های‬
‫منحنی‬ ‫زیر‬ ‫مساحت‬ ‫که‬ ‫نمودارهای‬ ‫همچنین‬ ‫و‬ ‫هستند‬ ‫نامناسب‬ ‫تشخیصی‬ROC‫مساحت‬ ‫از‬ ‫کمتر‬ ‫یا‬ ‫مساوی‬ ‫و‬
.‫هستند‬ ‫آمیز‬ ‫غیرموفقیت‬ ‫تستی‬ ‫نشاندهنده‬ ‫باشد‬ ‫منحنی‬ ‫باالی‬
Final report

Final report

  • 1.
    :‫پروژه‬ ‫عنوان‬ ‫طبقه‬‫متلب‬ ‫در‬‫الیه‬ ‫چند‬ ‫پرسپترون‬ ‫از‬ ‫استفاده‬ ‫با‬ ‫تیروئید‬ ‫بندی‬ :‫درس‬‫عصبی‬ ‫شبکه‬ :‫دانشجو‬‫رمضانی‬ ‫نسیم‬ :‫درس‬ ‫استاد‬‫المدرسی‬ ‫محمدتقی‬ ‫دکتر‬ ‫پاییز‬69
  • 2.
    ‫مقدمه‬ ‫غده‬‫تیروئید‬‫یکی‬‫از‬‫غدد‬‫حیاتی‬‫بدن‬‫است‬‫که‬‫م‬‫ی‬‫توان‬‫گفت‬‫تقریبا‬‫بطور‬‫غیر‬‫مستقیم‬‫روی‬‫تمام‬‫ارگانیسم‬‫های‬ ‫بدن‬‫مانند‬،‫قلب‬،‫کلیه‬‫دستگاه‬‫گوارش‬‫و‬‫غیره‬‫اثر‬.‫دارد‬‫غده‬‫تیروئید‬‫در‬‫گردن‬‫و‬‫در‬‫قسمت‬‫جلویی‬‫حنجره‬‫قرار‬ ‫گرفته‬‫است‬.‫هورمونهای‬‫غده‬‫تیروئید‬‫عبارتند‬‫از‬:‫تیروتروپین‬(Thyrotropin)‫که‬‫فعالیت‬‫هورمونی‬،‫ندارد‬‫تری‬ ‫یدو‬‫تیرونین‬( Three IodoThronin)‫و‬‫تیروکسین‬(Thyroxine)‫که‬‫هورمونهای‬‫فعال‬‫غده‬‫تیروئید‬‫می‬‫ب‬‫اشند‬. ‫کم‬‫کاری‬‫و‬‫پرکاری‬‫تیروئید‬‫دو‬‫بیماری‬‫غده‬‫تیروئید‬‫می‬‫باشند‬‫که‬‫در‬‫بسیاری‬‫موارد‬‫علت‬‫اساسی‬‫بیماریهای‬‫دیگر‬ ‫می‬‫باشند‬ً‫ال‬‫مث‬‫قند‬‫باال‬‫و‬‫چربی‬‫باال‬‫هر‬‫دو‬‫میتوانند‬‫ناشی‬‫از‬‫پرکاری‬‫تیروئید‬‫باشند‬. ‫همچنین‬‫کم‬‫کاری‬‫غده‬‫تیروئید‬‫که‬‫به‬‫دلیل‬‫کمبود‬‫ید‬‫در‬‫بدن‬‫حاصل‬‫می‬‫شود‬‫منجر‬‫به‬‫بیماری‬‫مانند‬‫گواتر‬‫می‬‫شود‬. ‫هورمونهای‬‫غده‬‫تیروئیدی‬‫پس‬‫از‬‫آنکه‬‫به‬‫بافتها‬‫رسیدند‬‫فعالیت‬‫تنفسی‬‫سلولها‬‫را‬‫تشدید‬‫می‬‫کنند‬‫و‬‫عمل‬‫تبدیل‬ ‫گلیکوژن‬‫به‬‫گلوکز‬‫را‬‫آسان‬‫می‬‫سازند‬‫و‬‫افزایش‬‫قند‬‫خون‬‫را‬‫موجب‬‫می‬‫شوند‬‫و‬‫برخالف‬،‫چربی‬‫کلسترول‬‫خون‬‫را‬ ‫کم‬‫می‬‫کنند‬‫در‬‫پرکاری‬‫غده‬‫تیروئید‬‫مواد‬‫آلی‬‫بیشتر‬‫از‬‫حد‬‫طبیعی‬‫در‬‫سلولها‬‫می‬‫سوزند‬‫در‬‫این‬‫بیماران‬‫افزایش‬ ‫حجم‬‫غده‬‫تیروئید‬‫مشاهده‬‫می‬‫شود‬‫و‬‫در‬‫بسیاری‬‫از‬‫آن‬‫چشم‬‫ها‬‫از‬‫حدقه‬‫بیرون‬‫رانده‬‫می‬‫شود‬.‫جمعی‬‫از‬‫پزشکان‬ ‫این‬‫بیماری‬‫را‬‫گواتر‬‫سمی‬‫منتشر‬‫نام‬‫داده‬‫اند‬.‫کم‬‫کاری‬‫غده‬‫تیروئید‬‫در‬‫کودکان‬‫رشد‬‫بدن‬‫را‬‫متوقف‬‫می‬‫سازد‬‫و‬ ‫اختالالت‬‫روانی‬(‫کند‬‫ذهنی‬)‫ایجاد‬‫میکند‬. ‫هدف‬‫ما‬‫در‬‫این‬‫گزارش‬‫طبقه‬‫بندی‬‫غده‬‫تیروئید‬‫از‬‫نظر‬‫نرمال‬،‫بودن‬‫پرکاری‬‫و‬‫یا‬‫کم‬‫کاری‬‫بر‬‫اساس‬‫مجموعه‬ ‫داده‬‫های‬‫متلب‬ ‫در‬ ‫آماده‬‫شبکه‬ ‫از‬ ‫استفاده‬ ‫با‬‫های‬‫عصبی‬‫الیه‬ ‫چند‬‫می‬.‫باشد‬ ‫های‬ ‫شبکه‬‫عصبی‬‫مصنوعی‬‫دارای‬‫انواع‬‫مختلف‬‫هستند‬‫در‬‫این‬‫بین‬‫مدل‬‫پرسپترون‬‫الیه‬ ‫چند‬(Multilayer Perceptron)‫نوعی‬‫از‬‫مدلهای‬‫عصبی‬ ‫شبکه‬‫پیشخور‬‫است‬‫که‬‫استفاده‬‫از‬‫آن‬‫در‬‫طبقه‬‫بندی‬‫بسیار‬‫رایج‬‫است‬. ‫در‬‫این‬‫مدل‬‫واحدها‬‫در‬‫الیه‬‫های‬‫متوالی‬‫از‬‫طریق‬‫اتصاالت‬‫یکطرفه‬‫رو‬‫به‬‫جلو‬‫به‬‫هم‬‫مربوط‬‫می‬،‫شوند‬‫نمونه‬‫ها‬‫که‬ ‫از‬‫طریق‬‫الیه‬‫های‬‫ورودی‬‫وارد‬‫شبکه‬‫شده‬‫در‬‫طول‬‫حرکت‬‫در‬‫شبکه‬‫تبدیالتی‬‫روی‬‫آنها‬‫انجام‬‫می‬‫گیرد‬‫در‬‫نهایت‬ ‫واحدهای‬‫الیه‬‫خروجی‬‫نتیجه‬‫نهایی‬‫را‬‫به‬‫عنوان‬‫خروجی‬‫شبکه‬‫تحویل‬‫می‬.‫دهند‬ ‫عملکرد‬‫شبکه‬‫عصبی‬‫شامل‬‫مجموع‬‫ه‬‫های‬‫از‬‫نرون‬‫ها‬‫است‬‫که‬‫در‬‫الیه‬‫های‬،‫ورودی‬‫پنهان‬‫و‬‫خروجی‬‫مرتب‬‫ط‬‫شده‬‫اند‬ ‫البته‬‫چندین‬‫الیه‬‫پنهان‬‫میتواند‬‫بین‬‫الیه‬‫ورودی‬‫و‬‫الیه‬‫خروجی‬‫قرار‬.‫گیرد‬ ‫یک‬‫مدل‬‫شبکه‬‫عصبی‬‫مصنوعی‬‫از‬‫متغیرهای‬‫ورودی‬‫در‬‫الیه‬‫اول‬‫استفاده‬‫میکند‬.‫خروجی‬‫شبکه‬‫معموال‬‫راه‬‫حلی‬ ‫برای‬‫یک‬‫مسئله‬‫است‬‫در‬‫اینجا‬‫خروجی‬‫شبکه‬‫نشان‬‫دهندة‬‫نوع‬‫وضعیت‬‫غده‬‫تیروئید‬‫هر‬‫نمونه‬‫است‬.
  • 3.
    ‫مسئله‬ ‫شرح‬ ‫ورودی‬ ‫الگوهای‬‫از‬ ‫ای‬ ‫مجموعه‬ ‫به‬ ‫را‬ ‫صحیح‬ ‫کالسهای‬ ‫تا‬ ‫است‬ ‫عصبی‬ ‫شبکه‬ ‫یک‬ ‫آموزش‬ ‫فرایند‬ ‫الگو‬ ‫تشخیص‬ ‫دیده‬ ‫آن‬ ‫از‬ ‫قبل‬ ‫که‬ ‫الگوهایی‬ ‫بندی‬ ‫طبقه‬ ‫برای‬ ‫توان‬ ‫می‬ ‫را‬ ‫شبکه‬ ،‫آموزش‬ ‫از‬ ‫پس‬ .‫دهد‬ ‫اختصاص‬‫مورد‬ ‫شود‬ ‫نمی‬ ‫داد‬ ‫قرار‬ ‫استفاده‬. ‫صورت‬ ‫به‬ ‫را‬ ‫کلینیک‬ ‫به‬ ‫کننده‬ ‫مراجعه‬ ‫بیماران‬ ‫که‬ ‫باشد‬ ‫عصبی‬ ‫شبکه‬ ‫یک‬ ‫ایجاد‬ ‫برای‬ ‫تواند‬ ‫می‬ ‫ها‬ ‫داده‬ ‫مجموعه‬ ‫این‬ ،‫نرمال‬‫نرمال‬ ‫حد‬ ‫از‬ ‫بیشتر‬‫یا‬ ‫و‬‫نرمال‬ ‫حد‬ ‫از‬ ‫کمتر‬‫کند‬ ‫بندی‬ ‫طبقه‬. ‫های‬ ‫ورودی‬-‫ماتریکس‬ ‫یک‬21*7200‫شامل‬7200‫با‬ ‫بیمار‬15‫و‬ ‫دوتایی‬6‫ویژگی‬‫است‬ ‫شده‬ ‫مشخص‬. ‫هدف‬‫ماتریس‬ ‫یک‬ ‫ها‬3*7200‫تعریف‬ ‫با‬7200‫به‬ ‫که‬ ‫مرتبط‬ ‫کالس‬ ‫بردارهای‬3‫اختصاص‬ ‫ورودی‬ ‫هر‬ ‫کالس‬ ‫می‬ ‫داده‬‫کالس‬ .‫شود‬‫ردیف‬ ‫با‬ ‫ها‬1،2‫یا‬3‫می‬ ‫داده‬ ‫نشان‬.‫شوند‬ 1-‫نرمال‬ 2-‫پرکار‬ 3-‫کار‬ ‫کم‬ ‫مسئله‬ ‫سازی‬ ‫شبیه‬ ‫کد‬ ‫اجرای‬ ‫با‬nprtool‫در‬command window‫پنجره‬Neural Pattern Recognition‫می‬ ‫باز‬‫شود(شکل‬1‫یک‬ ‫که‬ ) ‫شبکه‬2‫الیه‬ .‫میدهد‬ ‫نمایش‬ ‫را‬ ‫الیه‬‫می‬ ‫نامیده‬ ‫پنهان‬ ‫الیه‬ ‫که‬ ‫اول‬‫صورت‬ ‫به‬ ‫است‬ ‫پنهان‬ ‫خروجی‬ ‫دید‬ ‫از‬ ‫واقع‬ ‫در‬ ‫شود‬ ‫انتقال‬ ‫تابع‬ ‫از‬ ‫فرض‬ ‫پیش‬Tan-sigmoid‫می‬ ‫استفاده‬‫می‬ ‫نامیده‬ ‫خروجی‬ ‫الیه‬ ‫که‬ ‫دوم‬ ‫الیه‬ ‫و‬ ،‫کند‬‫انتقال‬ ‫تابع‬ ‫از‬ ‫شود‬ SoftMax‫می‬ ‫استفاده‬.‫کند‬ ‫(شکل‬1)
  • 4.
    ‫تابع‬softmax ‫در‬‫ریاضیات‬‫هموار‬ ‫بیشینه‬ ‫تابع‬‫(به‬‫انگلیسی‬:softmaxfunction‫نرمال‬ ‫نمایی‬ ‫تابع‬ ‫یا‬ )‫سازی‬‫(به‬ ‫شده‬ ‫انگلیسی‬:normalized exponential function‫تعمیم‬ )‫لجستیک‬ ‫تابع‬‫بردار‬ ‫یک‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ .‫است‬ k-‫مانند‬ ‫حقیقی‬ ‫اعداد‬ ‫از‬ ‫بعدی‬‫می‬ ‫دریافت‬ ‫ورودی‬ ‫عنوان‬ ‫به‬ ‫را‬‫و‬ ‫کند‬‫بردار‬k–‫بعدی‬(z)σ‫مقادیر‬ ‫از‬ ‫حقیقی‬[0,1]‫می‬ ‫خروجی‬ ‫عنوان‬ ‫به‬ ‫را‬‫مولفه‬ ‫جمع‬ ‫که‬ ‫دهد‬‫آن‬ ‫های‬1‫می‬:‫است‬ ‫زیر‬ ‫شرح‬ ‫به‬ ‫تابع‬ ‫ضابطه‬ .‫شود‬ for j = 1, …, K. ‫بیشینه‬ ‫تابع‬ ‫خروجی‬‫در‬ ،‫هموار‬‫احتماالت‬ ‫نظریه‬‫می‬‫یک‬ ‫نمایش‬ ‫برای‬ ‫تواند‬‫رسته‬ ‫توزیع‬‫ای‬‫(به‬‫انگلیسی‬: categorical distribution‫رسته‬ ‫توزیع‬ .‫شود‬ ‫استفاده‬ )‫روی‬ ‫بر‬ ‫احتماالتی‬ ‫توزیع‬ ،‫ای‬‫مختلف‬ ‫نتیجه‬ .‫است‬ ‫بیشینه‬ ‫تابع‬‫روش‬ ‫در‬ ‫هموار‬‫های‬‫طبقه‬‫بندی‬‫می‬ ‫استفاده‬ ‫متعددی‬‫شود؛‬:‫مانند‬‫چندجمله‬ ‫لجستیک‬ ‫رگرسیون‬‫ای‬‫(به‬ ‫انگلیسی‬multinomial logistic regression،)‫خطی‬ ‫افتراقی‬ ‫آنالیز‬،‫دسته‬‫ساده‬ ‫بیز‬ ‫کننده‬ ‫بندی‬‫و‬‫شبکه‬ ‫مصنوعی‬ ‫عصبی‬.‫چندجمله‬ ‫لجستیک‬ ‫رگرسیون‬ ‫در‬‫خروجی‬ ،‫تابع‬ ‫ورودی‬ ،‫خطی‬ ‫افتراقی‬ ‫آنالیز‬ ‫و‬ ‫ای‬k‫خطی‬ ‫تابع‬ ‫ورودی‬ ‫نمونه‬ ‫بردار‬ ‫که‬ ‫صورتی‬ ‫در‬ ‫و‬ ‫است‬x‫وزن‬ ‫بردار‬ ‫و‬‫ها‬w‫پیش‬ ‫احتمال‬ ،‫باشد‬‫کالس‬ ‫برای‬ ‫شده‬ ‫بینی‬j‫برابر‬ ‫ام‬ :‫با‬ ‫است‬ ‫که‬𝑤𝑗‫سطر‬𝑤𝑗𝑥 𝑇 ‫وزن‬ ‫بردار‬ ‫ام‬‫و‬ ‫هاست‬‫مقدار‬ ‫با‬ ‫برابر‬ ‫هم‬‫داخلی‬ ‫ضرب‬‫در‬ .‫است‬ ‫وزن‬ ‫بردار‬ ‫و‬ ‫ورودی‬ ‫بردارهای‬ ‫می‬ ،‫داخلی‬ ‫ضرب‬ ‫جای‬ ‫به‬ ‫باال‬ ‫عبارت‬ ‫از‬ ‫دیگری‬ ‫توصیف‬‫عملیات‬ ‫از‬ ‫توان‬‫توابع‬ ‫ترکیب‬‫عبارت‬ ‫یعنی‬ ‫کرد؛‬ ‫استفاده‬ ‫ترکیب‬ ‫صورت‬ ‫به‬ ‫باال‬K‫خطی‬ ‫تابع‬𝑥 → 𝑥 𝑇 𝑤 𝐾𝑥 → 𝑥 𝑇 𝑤1…..‫بیشینه‬ ‫تابع‬ ‫و‬‫به‬ .‫گردد‬ ‫تلقی‬ ‫هموار‬ ‫دیگر‬ ‫عبارت‬‫عملگری‬‫شده‬ ‫تعریف‬ ‫وزن‬ ‫بردار‬ ‫از‬ ‫استفاده‬ ‫با‬ ‫که‬‫به‬ ‫را‬ ‫ورودی‬ ‫و‬ ‫شده‬ ‫اعمال‬ ‫ورودی‬ ‫روی‬ ‫بر‬ ،‫است‬ ‫فضای‬ ‫در‬ ‫برداری‬𝑅 𝐾 ‫می‬ ‫انتقال‬.‫دهد‬
  • 5.
    ‫از‬ ‫پذیری‬ ‫مشتق‬‫تقریب‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ .‫قرمز‬ ‫رنگ‬ ‫به‬ ‫هموار‬ ‫بیشینه‬ ‫تابع‬ ‫و‬ ‫آبی‬ ‫رنگ‬ ‫به‬ ‫بیشینه‬ ‫تابع‬ ‫مقایسه‬ ‫بیشینه‬ ‫تابع‬‫می‬ ‫ارائه‬.‫کند‬ ‫مرحله‬ ‫این‬ ‫در‬‫ورودی‬‫هدف‬ ‫و‬ ‫ها‬( ‫های‬targets‫می‬ ‫مشخص‬ ‫را‬ ‫شبکه‬ )‫مجموعه‬ ‫از‬ ‫گزارش‬ ‫این‬ ‫در‬ ‫که‬ .‫کنیم‬ ‫داده‬‫برای‬ ‫متلب‬ ‫آماده‬ ‫های‬‫طبقه‬‫می‬ ‫استفاده‬ ‫تیروئید‬ ‫بندی‬.‫کنیم‬ ‫(شکل‬2)
  • 6.
    ‫داده‬ ‫میزان‬ ‫اینجا‬‫در‬‫می‬ ‫تعیین‬ ‫را‬ ‫تست‬ ‫و‬ ‫سنجی‬ ‫اعتبار‬ ،‫آموزش‬ ‫های‬‫حالت‬ ‫از‬ ‫ما‬ ‫که‬ ‫کنیم‬‫استفاده‬ ‫فرض‬ ‫پیش‬ ‫می‬.‫کنیم‬ ‫(شکل‬3) ‫نورون‬ ‫تعداد‬ ‫مرحله‬ ‫این‬ ‫در‬ ‫و‬‫الیه‬‫می‬ ‫تعیین‬ ‫پنهان‬‫خروجی‬ ‫تعداد‬ ‫برابر‬ ‫خروجی‬ ‫الیه‬ ‫نورون‬ ‫تعداد‬ ‫شودو‬.‫است‬ ‫ها‬ ‫(شکل‬4)
  • 7.
    ‫می‬ ‫آموزش‬ ‫را‬‫شبکه‬ ‫قسمت‬ ‫این‬ ‫در‬‫دهیم‬. ‫(شکل‬5) ‫نمونه‬ ‫تعداد‬ ‫مرحله‬ ‫این‬ ‫در‬ ‫و‬‫خطا‬ ‫درصد‬ ‫و‬ ‫گروه‬ ‫هر‬ ‫به‬ ‫متعلق‬ ‫های‬‫در‬ ‫استفاده‬ ‫مورد‬ ‫الگوریتم‬ ‫برای‬ ‫خطا‬ ‫میزان‬ ‫و‬ ‫یعنی‬ ‫الگو‬ ‫شناسایی‬Croos-Entropy‫می‬ ‫نشان‬ ‫را‬‫دهد‬. ‫(شکل‬6)
  • 8.
    ‫تعر‬‫ی‬‫ف‬‫ورودی‬‫ها‬‫و‬‫خروج‬‫ی‬‫شبکه‬ 7- % thyroidInputs- input data. 8- % thyroidTargets - target data. 9- x = thyroidInputs; 10- t = thyroidTargets; ‫ا‬‫نتخاب‬‫تابع‬‫آموزش‬‫که‬‫به‬‫دالیل‬‫زیر‬scaled conjugate gradient‫می‬ ‫انتخاب‬ ‫را‬:‫کنیم‬ ‫الگوریتم‬ ‫از‬ ‫یک‬ ‫هر‬‫هزینه‬ ‫خط‬ ‫جستجوی‬ ‫این‬ .‫است‬ ‫تکرار‬ ‫هر‬ ‫در‬ ‫خط‬ ‫جستجوی‬ ‫نیازمند‬ ،‫گرادیان‬ ‫های‬،‫است‬ ‫بر‬ ‫ورودی‬ ‫تمام‬ ‫به‬ ‫شبکه‬ ‫پاسخ‬ ‫زیرا‬‫می‬ ‫محاسبه‬ ‫جستجو‬ ‫هر‬ ‫برای‬ ‫بار‬ ‫چندین‬ ‫برای‬ ‫آموزشی‬ ‫های‬‫الگوریتم‬ .‫شود‬ scaled conjugate gradient(SCG)‫طراح‬ ‫زمان‬ ‫خطی‬ ‫جستجوی‬ ‫از‬ ‫جلوگیری‬ ‫برای‬ ،‫روش‬ .‫است‬ ‫شده‬ ‫ی‬ trainscg‫نسبت‬ ‫بیشتری‬ ‫تکرار‬ ‫به‬ ‫نیاز‬ ‫است‬ ‫ممکن‬‫الگوریتم‬ ‫سایر‬ ‫به‬‫تعداد‬ ‫اما‬ ،‫باشد‬ ‫داشته‬ ‫گرادیان‬ ‫های‬ ‫می‬ ‫کاهش‬ ‫توجهی‬ ‫قابل‬ ‫بطور‬ ‫تکرار‬ ‫هر‬ ‫در‬ ‫محاسبات‬‫نمی‬ ‫انجام‬ ‫خطی‬ ‫جستجوی‬ ‫هیچ‬ ‫زیرا‬ ‫یابد‬.‫شود‬ 13- % Choose a Training Function 14- % For a list of all training functions type: help nntrain 15- % 'trainlm' is usually fastest. 16- % 'trainbr' takes longer but may be better for challenging problems. 17- % 'trainscg' uses less memory. Suitable in low memory situations. 18- trainFcn = 'trainscg'; % Scaled conjugate gradient backpropagation. ‫ساخت‬‫ساختار‬‫شبکه‬‫با‬‫تابع‬‫و‬‫تع‬‫یی‬‫ن‬‫تعداد‬‫نورون‬‫های‬‫ال‬‫ی‬‫ه‬‫پنهان‬ 20- % Create a Pattern Recognition Network 21- hiddenLayerSize = 10; 22- net = patternnet(hiddenLayerSize); ‫انتخاب‬/ ‫قبل‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫توابع‬‫پردازش‬ ‫بعد‬ 24- % Choose Input and Output Pre/Post-Processing Functions 25- % For a list of all processing functions type: help nnprocess 26- net.input.processFcns = {'removeconstantrows','mapminmax'}; 27- net.output.processFcns = {'removeconstantrows','mapminmax'}; ‫در‬‫ا‬‫ی‬‫ن‬‫قسمت‬‫داده‬‫های‬‫ورودی‬‫را‬‫به‬‫سه‬‫قسمت‬‫آموزش‬‫،ارز‬‫ی‬‫اب‬‫ی‬‫و‬‫تست‬‫تقس‬‫ی‬‫م‬‫کرده‬‫است‬‫و‬‫با‬‫توابع‬ divideMode‫و‬divideFcn‫ا‬‫ی‬‫ن‬‫تقس‬‫ی‬‫م‬‫بندی‬‫را‬‫بصورت‬‫تصادف‬‫ی‬‫و‬‫از‬‫سراسر‬‫د‬‫ی‬‫تاها‬‫انجام‬‫داده‬‫است‬. 29- % Setup Division of Data for Training, Validation, Testing 30- % For a list of all data division functions type: help nndivide 31- net.divideFcn = 'dividerand'; % Divide data randomly 32- net.divideMode = 'sample'; % Divide up every sample 33- net.divideParam.trainRatio = 70/100; 34- net.divideParam.valRatio = 15/100; 35- net.divideParam.testRatio = 15/100; ‫که‬ ‫خطا‬ ‫عملکرد‬ ‫تابع‬ ‫انتخاب‬Cross-Entropy‫است‬ 37- % Choose a Performance Function 38- % For a list of all performance functions type: help nnperformance 39- net.performFcn = 'crossentropy'; % Cross-Entropy
  • 9.
    ‫انتخاب‬‫نمودارها‬‫یی‬‫که‬‫با‬‫ی‬‫د‬‫بعد‬‫از‬‫آموزش‬‫شبکه‬‫برای‬‫بررس‬‫ی‬‫عملکرد‬‫شبکه‬‫استخراج‬‫شوند‬.‫از‬‫جمله‬‫نمودار‬ ‫خطای‬‫آموزش‬‫و‬‫ارز‬‫ی‬‫اب‬‫و‬‫تست،نمودار‬ROC‫و‬‫ه‬‫ی‬‫ستوگرام‬‫تابع‬‫خطا‬‫و‬... 41- % ChoosePlot Functions 42- % For a list of all plot functions type: help nnplot 43- net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ... 'plotconfusion', 'plotroc'}; ‫شروع‬‫آموزش‬‫شبکه‬: 46- % Train the Network 47- [net,tr] = train(net,x,t); ‫تست‬‫شبکه‬‫با‬‫داده‬‫های‬،‫تست‬‫همانطور‬‫که‬‫م‬‫ی‬‫دون‬‫ی‬‫م‬‫داده‬‫های‬validation‫در‬‫ح‬‫ی‬‫ن‬‫آموزش‬‫شبکه‬‫اعمال‬ ‫می‬‫داده‬ ‫و‬ ‫شوند‬‫های‬Test.‫شبکه‬ ‫آموزش‬ ‫اتمام‬ ‫از‬ ‫بعد‬ ‫تابع‬gsubtract‫اختالف‬‫ب‬‫ی‬‫ن‬‫خروج‬‫ی‬‫واقع‬‫ی‬‫ی‬‫همان‬ ‫ا‬t‫خروجی‬ ‫با‬ ‫را‬‫در‬ ‫و‬ ‫کرده‬ ‫محاسبه‬ ‫شبکه‬ ‫های‬e‫قرار‬ ‫می‬‫تابع‬ ‫و‬ ‫دهد‬perform‫میزان‬performance‫می‬ ‫نشان‬ ‫را‬ ‫خطا‬.‫دهد‬ 49- % Test the Network 50- y = net(x); 51- e = gsubtract(t,y); 52- performance = perform(net,t,y) 53- tind = vec2ind(t); 54- yind = vec2ind(y); 55- percentErrors = sum(tind ~= yind)/numel(tind); ‫مقدار‬ ‫قسمت‬ ‫این‬ ‫در‬performance‫داده‬ ‫برای‬ ‫شبکه‬‫های‬train،validation‫و‬test‫محاسبه‬ ‫جداگانه‬ ‫بصورت‬ ‫می‬‫می‬ ‫چاپ‬ ‫برنامه‬ ‫خروجی‬ ‫در‬ ‫و‬ ‫شود‬.‫شود‬ 57- % Recalculate Training, Validation and Test Performance 58- trainTargets = t .* tr.trainMask{1}; 59- valTargets = t .* tr.valMask{1}; 60- testTargets = t .* tr.testMask{1}; 61- trainPerformance = perform(net,trainTargets,y) 62- valPerformance = perform(net,valTargets,y) 63- testPerformance = perform(net,testTargets,y) ‫الین‬ ‫مورد‬ ‫در‬ ‫نکته‬58‫و‬59: ‫تابع‬Mask‫داده‬‫می‬ ‫مشخص‬ ‫را‬ ‫تست‬ ‫و‬ ‫ارزیابی‬ ‫و‬ ‫آموزش‬ ‫های‬‫در‬ ‫وقتی‬ ‫و‬ ‫کند‬t‫می‬ ‫ضرب‬‫داده‬ ‫مقدار‬ ‫شود‬‫را‬ ‫هایی‬ ‫آموزش‬ ‫برای‬ ‫که‬‫رفته‬ ‫بکار‬ ‫تست‬ ‫یا‬ ‫ارزیابی‬ ‫یا‬‫می‬ ‫مشخص‬ ‫اند‬.‫کند‬ ‫داده‬ ‫اندیس‬ ‫بخواهیم‬ ‫اگر‬‫رفته‬ ‫بکار‬ ‫تست‬ ‫و‬ ‫ارزیابی‬ ‫و‬ ‫آموزش‬ ‫برای‬ ‫که‬ ‫هایی‬‫تابع‬ ‫نقیض‬ ‫از‬ ‫کنیم‬ ‫پیدا‬ ‫را‬ ‫اند‬isnan‫و‬ ‫تابع‬ ‫کمک‬ ‫با‬Mask‫می‬ ‫استفاده‬‫داده‬ ‫اندیس‬ ‫اگر‬ ‫مثال‬ .‫شود‬‫های‬Test‫می‬ ‫استفاده‬ ‫زیر‬ ‫دستور‬ ‫از‬ ‫بخواهیم‬ ‫را‬:‫کنیم‬ testIndices=find(~ isnan (tr.testMask{1})) ‫صفحه‬ ‫قسمت‬ ‫این‬ ‫در‬‫می‬ ‫داده‬ ‫نشان‬ ‫هست‬ ‫شبکه‬ ‫آموزش‬ ‫اطالعات‬ ‫حاوی‬ ‫که‬ ‫ای‬:‫شود‬  65- % View the Network 66- view(net)
  • 10.
    ‫می‬ ‫مشاهده‬ ‫شکل‬‫در‬ ‫که‬ ‫همانطور‬ ‫که‬‫شده‬ ‫داده‬ ‫توضیح‬ ‫قبال‬ ‫که‬ ‫است‬ ‫شبکه‬ ‫از‬ ‫اطالعاتی‬ ‫حاوی‬ ‫شود‬‫قسمت‬ ‫در‬ ‫اند‬ progress‫می‬ ‫قسمت‬ ‫پنج‬ ‫دارای‬‫مشخص‬ ‫حد‬ ‫به‬ ‫زودتر‬ ‫که‬ ‫گزینه‬ ‫شش‬ ‫این‬ ‫از‬ ‫کدام‬ ‫هر‬ ‫که‬ ‫باشد‬‫برسد‬ ‫شده‬ ‫می‬ ‫متوقف‬ ‫شبکه‬ ‫آموزش‬‫از‬ ‫بعد‬ ‫شبکه‬ ‫اینجا‬ ‫در‬ ‫که‬ ‫شود‬78‫رسید‬ ‫علت‬ ‫به‬ ‫آموزش‬ ‫نسل‬‫ن‬validation checks‫به‬ 6.‫است‬ ‫شده‬ ‫متوقف‬ ‫شبکه‬ ‫آموزش‬ ‫نمودار‬ ‫قسمت‬ ‫این‬ ‫در‬‫است‬ ‫شده‬ ‫داده‬ ‫نمایش‬ ‫خروجی‬ ‫مختلف‬ ‫های‬ 68- % Plots 69- % Uncomment these lines to enable various plots. 70- %figure, plotperform(tr) 71- %figure, plottrainstate(tr) 72- %figure, ploterrhist(e)
  • 11.
    73- %figure, plotconfusion(t,y) 74-%figure, plotroc(t,y) Cross Antropy ‫در‬‫اطالعات‬ ‫تئوری‬‫دو‬ ‫بین‬ ‫متقاطع‬ ‫انتروپی‬ ،‫احتمالی‬ ‫توزیع‬p‫و‬q،‫وقایع‬ ‫از‬ ‫حقیقی‬ ‫مجموعه‬ ‫یک‬ ‫از‬ ‫بیش‬ ‫تعداد‬ ‫میانگین‬‫های‬ ‫بیت‬‫نیاز‬ ‫مورد‬‫را‬‫شناسا‬ ‫برای‬‫مجموعه‬ ‫از‬ ‫شده‬ ‫کشیده‬ ‫رویداد‬ ‫یی‬‫اگر‬ ،‫کند‬ ‫می‬ ‫گیری‬ ‫اندازه‬ ‫ش‬ ‫استفاده‬ ‫کدگذاری‬ ‫طرح‬ ‫یک‬‫احتمالی‬ ‫توزیع‬ ‫برای‬ ‫که‬ ‫است‬ ‫ده‬«‫طبیعی‬ ‫غیر‬»‫است‬ ‫شده‬ ‫بهینه‬q‫جای‬ ‫به‬ ، ‫توزیع‬‫درست‬p ‫که‬ ‫جایی‬H(p)‫است‬ ‫انتروپی‬p‫و‬𝐷 𝐾𝐿(𝑃||𝑞)‫واگرایی‬Kullback-Leibler‫است‬q‫جانب‬ ‫از‬ p‫عنوان‬ ‫به‬ ‫(همچنین‬‫نسبی‬ ‫آنتروپی‬p‫به‬ ‫توجه‬ ‫با‬Q‫شود‬ ‫می‬ ‫شناخته‬-.)‫تاکید‬ ‫معکوس‬ ‫به‬ ‫توجه‬ ‫برای‬‫گسسته‬p‫و‬q‫یعنی‬ ‫این‬ ‫توزیع‬ ‫برای‬ ‫وضعیت‬.‫است‬ ‫مداوم‬ ‫مشابه‬ ‫های‬‫بپذیریم‬ ‫را‬ ‫این‬ ‫باید‬ ‫ما‬p‫و‬q‫به‬ ‫توجه‬ ‫با‬‫معیار‬‫مرجع‬‫مستمر‬ ‫کامال‬ ‫هستند‬r‫(معموال‬r‫یک‬‫معیار‬Lebesgue‫یک‬ ‫در‬‫جبر‬‫بورل‬‫است‬.)‫دهید‬ ‫اجازه‬P‫و‬Q‫چگالی‬ ‫توابع‬ ‫احتمالی‬p‫و‬q‫به‬ ‫توجه‬ ‫با‬r.‫سپس‬ NB‫نماد‬ :H(p,q)،‫دیگر‬ ‫مفهوم‬ ‫یک‬ ‫برای‬ ‫همچنین‬‫مشترک‬ ‫انتروپی‬‫آن‬ ‫از‬‫شود‬ ‫می‬ ‫استفاده‬p‫و‬q.
  • 12.
  • 13.
  • 14.
    ‫نمودار‬Error Histogram: ‫می‬ ‫مشاهده‬‫که‬ ‫همانطور‬‫ستون‬ ‫شود‬‫داده‬ ‫های‬‫هستند‬ ‫نزدیکتر‬ )‫رنگ‬ ‫زرد‬ ‫(خط‬ ‫صفر‬ ‫خط‬ ‫محدوده‬ ‫به‬ ‫ها‬‫نتیجه‬ ‫و‬ .‫است‬ ‫کرده‬ ‫فراهم‬ ‫را‬ ‫خوبی‬
  • 15.
    ‫نمودار‬Training Confusion: ‫نمودار‬ ‫توضییح‬Confusion :‫ها‬‫نمونه‬ ‫کل‬ ‫تعداد‬0227 :‫شده‬ ‫تقسیم‬ ‫دسته‬ ‫سه‬ ‫به‬ ‫ذیل‬ ‫شکل‬ ‫به‬ ‫ها‬ ‫داده‬ ‫این‬
  • 16.
    1 − 𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔= 5040 2 − 𝑉𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛 = 1080 3 − 𝑇𝑒𝑠𝑡𝑖𝑛𝑔 = 1080 ‫(بخش‬ .‫میباشد‬ ‫ذیل‬ ‫قرار‬ ‫ذیل‬ ‫شکل‬ ‫در‬ ‫فوق‬ ‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔)‫ببینید‬ ‫را‬ ‫شکل‬ -)‫سبز‬ ‫قطر(رنگ‬ ‫های‬ ‫داده‬ ‫مجموعه‬93 + 9 + 4623 = 4725 ‫ها‬ ‫داده‬ ‫این‬93.7%‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔‫یا‬ ‫میدهد‬ ‫تشکیل‬ ‫را‬93.7%‫های‬ ‫داده‬5040‫تشکیل‬ ‫را‬ ‫بخش‬ ‫از‬ ‫یعنی‬ .‫میدهد‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔،93.7%.‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫ها‬ ‫داده‬ -:)‫قرمز‬ ‫شده(رنگ‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫که‬ ‫های‬ ‫داده‬ ‫مجموعه‬ [9 + 24 + 264] + [3 + 14 + 1] = 315 ،‫ها‬ ‫داده‬ ‫این‬6.3%‫های‬ ‫داده‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔.‫میدهد‬ ‫تشکیل‬ ‫را‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫های‬ ‫داده‬ ‫صورت‬ ‫این‬ ‫به‬93.7%‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬ ‫و‬6.3%‫میشود‬ )‫باال‬ ‫است.(شکل‬ ‫شده‬ ‫نوشته‬ ،‫دارد‬ ‫آبی‬ ‫رنگ‬ ‫که‬ ‫پاین‬ ‫خانه‬ ‫در‬ ‫که‬
  • 17.
    ‫بخش‬ ‫اول‬ ‫میکنیم.(سطر‬‫محاسبه‬ ‫دارد‬ ‫قرار‬ ‫خاکستری‬ ‫رنگ‬ ‫به‬ ‫های‬ ‫خانه‬ ‫در‬ ‫که‬ ‫های‬ ‫داده‬ ‫حال‬𝑇𝑟𝑎𝑖𝑛𝑖𝑛𝑔) =‫سبز‬ ‫قرمز+رنگ‬ ‫رنگ‬ :‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬ ‫کل‬117 :)‫قرمز‬ ‫(رنگ‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬3 + 14 = 17‫داده‬ ‫این‬ .15.5%‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬ (117.‫میدهد‬ ‫تشکیل‬ ‫را‬ ) :)‫سبز‬ ‫(رنگ‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫درست‬ ‫های‬ ‫داده‬93‫ها‬ ‫داده‬ ‫این‬84.5%( ‫اول‬ ‫سطر‬ ‫های‬ ‫داده‬117‫را‬ ) .‫میدهد‬ ‫تشکیل‬ ‫صدی‬ ‫در‬15.5%‫درصدی‬ ‫و‬84.5%.‫شده‬ ‫نوشته‬ ‫رنگ‬ ‫خاکستری‬ ‫خانه‬ ‫در‬ :‫روال‬ ‫همین‬ ‫به‬ ‫به‬ ‫دارد‬ ‫قرار‬ ‫راست‬ ‫دست‬ ‫در‬ ‫که‬ ‫رنک‬ ‫خاکستری‬ ‫های‬ ‫داده‬ ‫تعداد‬ ‫نمایم‬ ‫جمع‬ ‫سطری‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬ .‫مییاید‬ ‫دست‬ .‫مییاید‬ ‫دست‬ ‫به‬ ‫پائین‬ ‫رنگ‬ ‫خاکستری‬ ‫های‬ ‫داده‬ ‫نمایم‬ ‫جمع‬ ‫ستونی‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬ ‫و‬ ‫ک‬ ‫سه‬ ‫هر‬ ‫درست‬ ‫های‬ ‫داده‬ ‫مجموعه‬ ،‫نمایم‬ ‫جمع‬ ‫قطری‬ ‫شکل‬ ‫به‬ ‫را‬ ‫ها‬ ‫داده‬ ‫اگر‬‫خانه‬ ‫در‬ ‫و‬ ‫آید‬ ‫می‬ ‫بدست‬ ‫الس‬ .‫است‬ ‫شده‬ ‫نوشت‬ ‫آبی‬ ‫یادداشت‬1‫های‬ ‫داده‬ ‫دهنده‬ ‫نشان‬ ‫آن‬ ‫سبز‬ ‫رنگ‬ ‫به‬ ‫اعداد‬ ،‫نوشته‬ ‫رنگ‬ ‫خاکستری‬ ‫های‬ ‫خانه‬ ‫در‬ ‫که‬ ‫های‬ ‫داده‬ : .‫میباشد‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫های‬ ‫داده‬ ‫دهنده‬ ‫نشان‬ ‫آن‬ ‫قرمز‬ ‫رنگ‬ ‫به‬ ‫های‬ ‫داده‬ ‫و‬ ‫درست‬ ‫یادداشت‬2‫شکل‬ ‫های‬ ‫داده‬ ‫بخواهیم‬ ‫اگر‬ :𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫از‬ ‫چو‬ .‫نمایم‬ ‫تحلیل‬ ‫را‬0227‫تعداد‬ ‫به‬ ‫نمونه‬1080 ‫به‬ ‫را‬ ‫نمونه‬𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫های‬ ‫داده‬ ‫کل‬ ‫باید‬ ‫بنآ‬ ‫دادیم‬ ‫اختصاص‬𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑖𝑜𝑛‫را‬1707‫به‬ ‫و‬ ‫گرفته‬ ‫درنظر‬ ‫داد‬ ‫نشاندهنده‬ ‫سبز‬ ‫رنگ‬ ‫که‬ ‫مینمایم‬ ‫محاسبه‬ ‫و‬ ‫تحلیل‬ ‫را‬ ‫ها‬ ‫داده‬ ‫ستونی‬ ‫و‬ ‫سطری‬ ،‫قطری‬ ‫شکل‬‫درست‬ ‫های‬ ‫ه‬ ‫آن‬ ‫در‬ ‫را‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ ‫نادرست‬ ‫دادهای‬ ‫دهنده‬ ‫نشان‬ ‫قرمز‬ ‫رنگ‬ ‫های‬ ‫داده‬ ‫و‬ ‫میباشد‬ ‫گروه‬ ‫آن‬ ‫شده‬ ‫بندی‬ ‫طبقه‬ .‫میدهد‬ ‫نشان‬ ‫گروه‬
  • 18.
    ‫نمودار‬Training Receiver Operating: ‫سیستم‬‫اساسی‬ ‫ایده‬‫دسته‬ ‫و‬ ‫تشخیص‬ ‫های‬‫بیماری‬ ‫بندی‬‫اساس‬ ‫بر‬ ،‫بیماران‬ ‫بیماری‬ ‫احتمال‬ ‫محاسبه‬ ‫ها‬‫نتای‬‫آزمون‬ ‫ج‬ ‫می‬ ‫بیماری‬.‫باشد‬‫تحلیل‬‫های‬ROC‫تشخیص‬ ‫نتایج‬ ‫واقعی‬ ‫دقت‬ ‫کردن‬ ‫مشخص‬ ‫برای‬‫برای‬ .‫است‬ ‫پزشکی‬ ‫های‬ ‫سیستم‬ ‫عملکرد‬ ‫بررسی‬‫تصاویر‬ ‫تشخیصی‬ ‫های‬ROC‫ویژه‬ ‫اهمیت‬ ‫از‬‫برخواردند‬ ‫ای‬.‫تحلیل‬‫های‬ROC‫رویکردی‬ ‫مشخص‬ ‫برای‬ ‫که‬ ‫است‬ ‫استاندارد‬‫تشخیص‬ ‫ویژگی‬ ‫و‬ ‫حساسیت‬ ‫کردن‬‫بکارمی‬ ‫ها‬‫ر‬‫منحنی‬ ،‫منظور‬ ‫این‬ ‫برای‬ .‫وند‬ROC ‫تعریف‬ ‫برای‬‫می‬ ‫بکار‬ ‫تشخیصی‬ ‫سیستم‬ ‫ویژگی‬ ‫و‬ ‫حساسیت‬ ‫رابطه‬ ‫کردن‬.‫رود‬ ‫منحنی‬‫می‬ ‫قرار‬ ‫یک‬ ‫و‬ ‫صفر‬ ‫بین‬ ‫ها‬‫منحنی‬ .‫گیرند‬‫نیمساز‬ ‫همسایگی‬ ‫در‬ ‫که‬ ‫های‬55‫سیستم‬ ‫معرف‬ ‫هستند‬ ‫درجه‬‫های‬ ‫منحنی‬ ‫زیر‬ ‫مساحت‬ ‫که‬ ‫نمودارهای‬ ‫همچنین‬ ‫و‬ ‫هستند‬ ‫نامناسب‬ ‫تشخیصی‬ROC‫مساحت‬ ‫از‬ ‫کمتر‬ ‫یا‬ ‫مساوی‬ ‫و‬ .‫هستند‬ ‫آمیز‬ ‫غیرموفقیت‬ ‫تستی‬ ‫نشاندهنده‬ ‫باشد‬ ‫منحنی‬ ‫باالی‬