HW_3.pdf

‫به نام خدا‬
‫يادگيری ماشين ‪( 40-717‬گروه دوم)‬
‫نيمسال اول ‪94-95‬‬
‫تمرين سری سوم– دستهبندهای خطی‪ ،‬دستهبندهای احتمالی‬
‫مدرس‪ :‬دکتر سليمانی‬
‫موعد تحويل بخش تئوری‪ :‬يکشنبه ‪ 17‬آبان ‪ -94‬ساعت ‪15:30‬‬
‫نمره‪100 :‬‬
‫موعد تحويل بخش پيادهسازی و گزارش آن‪ :‬جمعه ‪ 15‬آبان ‪ -94‬ساعت ‪23:59‬‬
‫سوال ‪ 22( 1‬نمره)‪ :‬دستهبند خطی‬
‫‪ 7(.1.1‬نمره) درستی عبارات زیر را بررسی نمایید‪( .‬موارد درست را اثبات نمایید و موارد نادرست را تصحیح نمایید‪).‬‬
‫أ‪.‬‬
‫نمونههای کامال جدایی پذیر خطی‪ ،‬جداپذیر خطی نیز هستند‪.‬‬
‫ب‪ .‬نمونههای جدایی پذیر خطی‪ ،‬دو به دو خطی جداپذیر هستند‪.‬‬
‫ج‪ .‬اگر از توابع ‪ discriminant‬خطی برای دستهها استفاده شود‪ ،‬ناحیه مربوط به هر دسته محدب خواهد شد‪.‬‬
‫‪ 10(.2.1‬نمره) فرض کنید که دنبال پیدا کردن برداری در فضای دادهها هستیم که اگر دادههای دو دستهی مختلف را به آن‬
‫راستا بیفکنیم‪ ،‬بتوان به خوبی آنها را از هم جدا نمود‪ .‬برای این منظور چند تعبیر وجود دارد‪:‬‬
‫أ‪.‬‬
‫میانگین دو دسته ( ‪ µ1‬و ‪ )µ2‬را به دست آوریم و به دنبال راستایی باشیم که فاصلهی این میانگینها در آن‬
‫راستا بیشینه گردد‪ .‬در این صورت یک قید ‪ 𝑤 𝑇 𝑤 = 1‬هم در مسئله وجود دارد‪ .‬ابتدا توضیح دهید که مفهوم‬
‫و علت این قید چیست؟ سپس نشان دهید که راستای موردنظر به صورت ) ‪ 𝑤 ∝ (µ2 − µ1‬به دست میآید‪.‬‬
‫ب‪ .‬میانگین به تنهایی برای تابع هدف کافی نیست و الزم است به پراکندگی دادهها در هر دسته نیز توجه داشت‪.‬‬
‫از این رو واریانس دادهها نیز اهمیت پیدا میکند که در هر دسته کم باشد‪ .‬با درنظر گرفتن هر دو اهداف گفته‬
‫شده (بیشینه فاصلهی میانگینها و حداقل پراکندگی دادهها در هر دسته)‪ ،‬تابع هدف نهایی را بر حسب بردار‬
‫𝑤 بنویسید‪.‬‬
‫ج‪ .‬تابع هدف قسمت "ب" را بهینه نمایید و از آن رابطهی ‪ w‬نهایی (راستای هدف) را به دست آورید‪.‬‬
‫د‪ .‬فرض کنید که دادههای مسئله‪ ،‬نقاط زیر در فضای دو بعدی باشند‪ .‬راستای بهینه در یک بعد را با استفاده از‬
‫‪ Fisher’s Linear Discriminant‬محاسبه نمایید‪.‬‬
‫})‪𝐶1 = {(1,1), (1,2), (2,1), (2,4), (3,1), (3,3‬‬
‫})‪𝐶2 = {(2,2), (3,4), (4,2), (5,1), (5,4), (5,5‬‬
‫‪ 5( .3.1‬نمره) فرض کنید که در سوال قبل‪ ،‬دادهها به جای دو دسته‪ ،‬از چند دسته باشند‪ .‬به این مسئله ‪ LDA‬چند دستهای‬
‫میگویند‪ .‬ماتریس ‪ W‬را برای تبدیل ورودی به یک فضای جدید در نظر بگیرید‪ .‬اگر به دنبال تبدیلی باشیم که مجموع‬
‫مجذور فواصل زوج دادههای داخل یک دسته را کم و مجموع مجذور زوج دادههای بین دستههای مختلف زیاد باشد‪،‬‬
‫میتوانیم تابع هدف را نسبت مجموع مجذور فواصل بین دستهای به مجموع مجذور فواصل داخل دستهای در نظر‬
‫𝑇‬
‫)𝑊 𝐵𝑆 𝑊(𝑟𝑡‬
‫𝑊(𝑟𝑡 = )𝑤(𝐽 در میآید که ‪ Sw‬ماتریس پراکندگی درون دسته‪-‬‬
‫بگیریم‪ .‬نشان دهید که این تابع هدف به صورت )𝑊 𝑆 𝑇‬
‫𝑤‬
‫ای و ‪ SB‬با ماتریس پراکندگی بین دستهای را نشان میدهد‪ .‬روابط مربوط به این دو ماتریس را هم مشخص نمایید‬
‫(راهنمایی ) 𝑇𝑎𝑎(𝑟𝑡 = ‪.)‖𝑎‖22‬‬
‫سوال ‪ 30( 2‬نمره)‪ :‬دستهبند احتمالی و قانون بيز‬
‫‪ 4( .1.2‬نمره) بردار ورودی 𝒙 دارای 𝑑 تا ویژگی دودویی مستقل از هم است‪ 𝐾 .‬تا کالس مختلف داریم که ) 𝑗𝐶(𝑃 احتمال‬
‫پیشین برای کالس 𝑗𝐶 را بیان میکند‪ 𝑝𝑖𝑗 .‬را به صورت زیر تعریف مینماییم‪:‬‬
‫) 𝑗𝐶|‪𝑝𝑖𝑗 = 𝑃(𝑥𝑖 = 1‬‬
‫𝐾 ‪𝑖 = 1, … , 𝑑 𝑗 = 1, … . ,‬‬
‫اگر قانون تصمیمگیری را به این صورت تعریف نماییم که "دادهی 𝒙 به کالس 𝑘𝐶 متعلق است‪ ،‬اگر به ازای 𝑘 ≠ 𝑗∀‬
‫داشته باشیم )𝒙( 𝑗𝑔 > )𝒙( 𝑘𝑔"‪ .‬نشان دهید که اگر )𝒙( 𝑗𝑔 به صورت زیر تعریف شود‪:‬‬
‫𝑑‬
‫𝑑‬
‫𝑗𝑖𝑝‬
‫𝑛𝑙 𝑖𝑥 ∑ = )𝒙( 𝑗𝑔‬
‫) 𝑗𝐶(𝑃𝑛𝑙 ‪+ ∑ ln(1 − 𝑝𝑖𝑗 ) +‬‬
‫𝑗𝑖𝑝 ‪1 −‬‬
‫‪𝑖=1‬‬
‫‪𝑖=1‬‬
‫حداقل خطای احتمال با این قانون تصمیمگیری به دست میآید‪.‬‬
‫‪ 26( .2.2‬نمره) یک مسئلهی دستهبندی دودستهای را در نظر بگیرید‪ .‬فرض کنید که احتمال پیشین دستهی اول 𝜋 = ) ‪ 𝑃(𝐶1‬و‬
‫دستهی دوم 𝜋 ‪ 𝑃(𝐶2 ) = 1 −‬باشد‪ .‬در صورتی که توزیع شرطی دستهها به صورت زیر تعریف شده باشد‪:‬‬
‫) ‪ 𝑃(𝑥|𝐶2 ) ≈ 𝑁(µ2 , Σ2‬و‬
‫أ‪.‬‬
‫) ‪𝑃(𝑥|𝐶1 ) ≈ 𝑁(µ1 , Σ1‬‬
‫(‪ 3‬نمره) رابطهی مربوط به مرز دو دسته را برای قانون تصمیم بیز بر حسب پارامترها و بردار ورودی 𝑥 به‬
‫دست آورید‪.‬‬
‫ب‪ 3( .‬نمره) برای دادههای یک بعدی معادلهی مرز دستهبند بیز را برحسب پارامترهای میانگین و انحراف‬
‫استاندارد دو دسته و احتمال پیشین دستهها بنویسید؟ آیا ناحیهی مربوط به یک دسته در این حالت میتواند‬
‫غیرمحدب باشد‪.‬‬
‫ج‪ 2( .‬نمره) اگر ‪ Σ1 = Σ2‬فرض شود رابطهی مرز در این حالت خاص به چه صورت در میآید؟‬
‫د‪ 4( .‬نمره) نشان دهید اگر 𝐼 ‪ Σ1 = Σ2 = 𝜎 2‬آنگاه دستهبند بیز برای هر داده دستهای را انتخاب میکند که‬
‫میانگین آن به نقطه موردنظر نزدیک تر است‪ .‬بردار نرمال مرز دو دسته را در این حالت مشخص نمایید‪.‬‬
‫ه‪.‬‬
‫(‪ 6‬نمره) برای بند (ج) اگر ‪ N‬تا دادهی آموزش ‪ {(𝑥 (𝑖) , 𝑦 (𝑖) )}𝑁𝑖=1‬را در اختیار داشته باشیم‪ ،‬با استفاده از‬
‫تخمین ‪ ،ML‬پارامترهای ‪ µ1‬و ‪ µ2‬و ‪ Ʃ‬و ‪ π‬را به دست آورید‪ .‬تخمین پارامترها برای بند (ا) نسبت به بند (ب)‬
‫چه تغییراتی خواهد داشت؟‬
‫و‪ 3( .‬نمره) چنانچه در حالت کلی صورت مساله از ماتریس هزینه زیر برای کمینه کردن ریسک بیز‪ ،‬استفاده‬
‫شود مرز دستهبندی به دست آمده در قسمت قبل چه تغییری میکند؟‬
‫‪0‬‬
‫[=𝐿‬
‫‪3‬‬
‫ز‪ 3( .‬نمره) برای قسمت (ب) نشان دهید که بردار‬
‫‪5‬‬
‫]‬
‫‪0‬‬
‫وزن 𝑤‪-‬ای‬
‫وجود دارد که )𝑥 𝑇 𝑤(𝜎 = )𝑥| ‪ 𝑃(𝐶1‬و این بردار‬
‫وزن را برحسب پارامترهای توزیعهای باال مشخص نمایید‪.‬‬
‫ح‪ 2( .‬نمره) آیا در حالت کلی که ‪ Σ1 = Σ2‬برقرار نباشد هم )𝑥| ‪ 𝑃(𝐶1‬را میتوان به صورت مشخص شده در‬
‫بند (ز) نوشت؟‬
‫سوال ‪ 20( 3‬نمره)‪ :‬دستهبندهای ‪ Naïve Bayes‬و‬
‫‪Logistic Regression‬‬
‫‪ 6( .1.3‬نمره نمره) میدانیم که روش رگرسیون الجیستیک برای دادههای دودستهای همانند مدلسازی تابع پسین با یک‬
‫توزیع برنولی است‪ .‬در ارتباط با این روش به سواالت زیر پاسخ دهید‪:‬‬
‫أ‪.‬‬
‫(‪ 2‬نمره) چنانچه از تخمین ‪ ML‬برای پیدا کردن پارامترها استفاده شود‪ ،‬تابع هدف معادل این دستهبند را به‬
‫دست آورید‪.‬‬
‫ب‪ 4( .‬نمره) مشتق تابع هدف نسبت به ‪ )∇𝑤 𝐽(𝑤)( w‬را با روش گرادیان به دست آورید و با رابطهی به دست‬
‫آمده از اعمال روش گرادیان روی تابع هدف ‪ SSE‬برای رگرسیون خطی‪ ،‬به صورت شهودی مقایسه نمایید‪.‬‬
‫‪ 3( .2.3‬نمره) میدانیم که روش رگرسیون الجیستیک برای دادههای چنددستهای همانند مدلسازی تابع پسین )𝑥|𝑦(𝑃 با یک‬
‫)𝑘=𝑦(𝑃)𝑘‬
‫)𝑥(𝑃= 𝑦|𝑥(𝑃 = )𝑥|𝑘 = 𝑦(𝑃 به صورت ‪ soft-max‬در بیاید ارتباط‬
‫توزیع چندجملهای است‪ .‬برای اینکه توزیع‬
‫پارامترهای 𝐾𝑤 ‪ 𝑤1 , … ,‬در ‪ soft-max‬را با پارامترهای توزیع پیشین )𝑦(𝑃 و توزیعهای شرطی دستهها‬
‫)𝑘 = 𝑦|𝑥(𝑃‬
‫مشخص نمایید‪.‬‬
‫‪ 3( .3.3‬نمره) فرض کنید که در یک مسالهی دستهبندی با 𝐾 دسته‪ ،‬فضای ورودی شامل 𝑑 ویژگی دودویی باشد‪ .‬دو رویکرد‬
‫دستهبندی احتمالی ‪ generative‬در حالت کلی و ‪ Naïve Bayes‬را از نظر تعداد پارامترهای موردنیاز باهم مقایسه نمایید‪.‬‬
‫‪ 8( .4.3‬نمره) در شکلهای زیر در حالت پیوسته منحنیهای آبی و نارنجی‪ ،‬کانتورهای ‪ 𝑃(𝑥|𝐶1 ) = 0.5‬و‬
‫‪𝑃(𝑥|𝐶2 ) = 0.5‬‬
‫را نشان میدهند (همچنین احتمال پیشین دستهها در بندهای ب و ج برابر در نظر گرفته میشود) و در حالت گسسته‬
‫احتمال نقاط همرنگ با هم برابر و احتمال نقاط آبی دوبرابر نقاط قرمز است‪ .‬با استدالل بررسی نمایید که آیا فرض‬
‫استقالل شرطی که در دستهبند ‪ Naïve Bayes‬استفاده میشود‪ ،‬در هر کدام از این سه مورد برقرار است یا نه؟ چنانچه‬
‫این شرط برقرار است مرز تقریبی که توسط این دستهبند برای دو دسته به دست میآید را ذر شکل مشخص نمایید‪.‬‬
‫(محور افقی ویژگی ‪ x1‬و محور عمودی ویژگی ‪ x2‬است‪).‬‬
‫سوال ‪ 28( 4‬نمره)‪ :‬پيادهسازی دستهبندهای ‪ Naïve Bayes‬و‬
‫‪Logistic Regression‬‬
‫*در طول این بخش از این تمرین برای جلوگیری از کوچک شدن بیش از حد پارامترها در صورت لزوم از فضای لگاریتمی استفاده‬
‫نمایید‪ .‬به این معنا که به جای محاسبهی احتماالت و تصمیمگیری روی آنها که حاصل ضرب یک سری اعداد کوچک است و‬
‫باعث میشود جواب نهایی دقت عددی الزم را نداشته باشد‪ .‬بنابراین در تمام موارد ‪ log‬احتماالت را محاسبه و با هم مقایسه‬
‫نمایید‪.‬‬
‫شبکههای اجتماعی در چند سال اخیر رشد قابل توجهی داشتهاند‪ .‬رفتار افراد در این شبکهها قابل کاوش به منظور استخراج‬
‫اطالعات غیرمشهود در بین آنهاست‪ .‬میتوان با بررسی رفتار افراد عضو یک شبکه‪ ،‬موقعیت اجتماعی هر یک از ایفاکنندگان نقش‪-‬‬
‫ها را کشف نمود و یا گروه‪ 1‬یا دستههای مختلفی میتوان در یک شبکهی اجتماعی تشخیص داد‪ .‬در یک تعریف از مفهوم گروه‬
‫آمده است‪" :‬اعضایی از یک شبکه را متعلق به یک گروه میدانند که عالقمندیها و رفتار مشابه دارند و اغلب نقش یکسانی ایفا‬
‫میکنند"‪ .‬شناسایی گروههای یک شبکه برای ارائهی خدمات در آن بستر اهمیت دارد‪ .‬به این صورت که میتوان خدمات یکسانی‬
‫به افراد یک گروه ارائه کرد‪.‬‬
‫در این مسئله‪ ،‬شبکهی اجتماعی در اختیار داریم که هر یک از اعضا میتوانند به مطالب درج شده روی آن شبکه رای دهند‪ .‬تعداد‬
‫‪ 1593‬خبر مختلف از یک شبکه جمعآوری شده است‪ .‬هر یک از اعضای شبکه با خواندن هر خبر‪ ،‬امتیازی (یک عدد گسسته) به‬
‫آن داده است‪ .‬در صورتی که فرد خبر را مشاهده نکرده یا امتیازی به آن نداده باشد‪ ،‬عدد صفر درج شده است‪ .‬اعضای این شبکه به‬
‫گروه راست (‪ )+1‬و چپ (‪ )-1‬قابل تفکیک هستند‪ .‬شرکت ‪ X‬برای پخش اخبار خود روی این شبکه‪ ،‬قصد دارد که به هر یک از‬
‫این دو گروه افراد‪ ،‬اخبار متفاوت و متناسب با جهتگیری فکریشان ارائه دهد‪ .‬به این منظور الزم است که از روی اطالعات مرکز‬
‫دادهی این شبکه ی اجتماعی (که پیوست تمرین است)‪ ،‬با استفاده از رفتار افراد در آن (نوع رای دهی به انواع اخبار) ابتدا گروه آن‪-‬‬
‫ها را کشف نماید‪ ،‬سپس اخبار متناسب به هر گروه را فقط به اعضای آن ارسال نماید‪ .‬از اینرو‪ ،‬به سراغ انواع دستهبندها میرویم‬
‫تا بهترین مدل برای این مجموعهداده را انتخاب نماییم‪.‬‬
‫‪ 12( .1.4‬نمره) پیادهسازی دستهبند رگرسیون الجیستیک‪:‬‬
‫أ‪.‬‬
‫(‪ 5‬نمره) دستهبند رگرسیون الجستیک را پیادهسازی نمایید‪.‬‬
‫ب‪ 3( .‬نمره) دستهبند رگرسیون الجستیک دارای جملهی منظمساز ‪ ||𝑤||22‬را پیادهسازی نمایید‪.‬‬
‫ج‪ 4( .‬نمره) دو دستهبند فوق را بر روی دادههای این شبکه اجرا نمایید‪] .‬برای مدل قسمت ب مقدار ‪ λ‬مناسب را با‬
‫‪10-‬‬
‫‪ fold CV‬به دست آورید (} ‪ )λ ∈ {10−5 , 10−4 , 10−3 , 10−2 , 10−1 , 100 , 101 , 102‬و از آن استفاده نمایید‪ [.‬با‬
‫گزارش خطای آموزش و تست و تحلیلهای خود بهترین مدل از دستهبند رگرسیون الجیستیک برای این شبکه به‬
‫همراه پارامترهای آن را گزارش کنید که افراد این جامعه را بتواند به دو گروه تقسیم نمایید‪.‬‬
‫‪ 16( .2.4‬نمره) برای سادگی فرض کنید رای افراد در هر گروه این شبکه به هر یک از اخبار‪ ،‬مستقل از رای آنها به اخبار دیگر‬
‫است (که در زمان یا زمانهای قبل دیده است)‪ .‬با توجه به این فرض‪ ،‬میخواهیم از دستهبند ‪ Naïve Bayes‬استفاده کنیم‪:‬‬
‫أ‪.‬‬
‫(‪ 4‬نمره) ابتدا پارامترهای مدل که باید تخمین زده شوند را مشخص کنید‪ .‬سپس روابط مربوط به تخمین این‬
‫پارامترها را با تخمین ‪ ML‬مشخص نمایید‪.‬‬
‫ب‪ 5( .‬نمره) وجود دادههای آموزش محدود چگونه میتواند باعث ایجاد مشکل در استفاده از دستهبند ‪ Naïve Bayes‬با‬
‫پارامترهای تخمین زده شده در بند قبل شود‪ .‬برای رفع این مشکل یک راهکار مناسب پیشنهاد کنید‪.‬‬
‫ج‪ 7( .‬نمره) دستهبند ‪ Naïve Bayes‬حاصل را پیادهسازی نمایید‪ .‬سپس خطای آموزش و تست آن را بر روی مجموعه‪-‬‬
‫دادهی فوق را گزارش کنید‪.‬‬
‫‪Community/Group/Class‬‬
‫‪1‬‬