رگرسیون طبقه ای با مقیاس بهینه در SPSS — راهنمای کاربردی
تحلیل و روشهای رگرسیونی برای ایجاد مدلهای آماری در «یادگیری ماشین» (Machine Learning) به کار میروند. یکی از روشهای رگرسیونی که برای مدلسازی روی متغیرهای طبقهای مورد استفاده قرار میگیرد، Optimal Scaling یا روش رگرسیون طبقهای با مقیاس بهینه نام دارد که خوشبختانه در SPSS نیز به عنوان یک روش تحلیلی گنجانده شده است. در این نوشتار به رگرسیون طبقه ای با مقیاس بهینه در SPSS خواهیم پرداخت و به کمک یک مثال، نحوه اجرای آن را در این نرم افزار کاربردی فرا میگیریم.
برای آشنایی بیشتر با رگرسیون خطی برای متغیرهای طبقهای نوشتار رگرسیون خطی با متغیرهای طبقه ای در SPSS — راهنمای گام به گام را بخوانید. همچنین خواندن نوشتارهای رگرسیون چندگانه در SPSS — راهنمای کاربردی و رگرسیون خطی چندگانه (Multiple Linear Regression) — به زبان ساده نیز خالی از فایده نیست.
رگرسیون طبقه ای با مقیاس بهینه در SPSS
قبل از هر چیز تفاوت بین مدل رگرسیون با متغیرهای پیشگو طبقهای و رگرسیون با متغیر پاسخ طبقهای را متذکر میشویم. در مدل رگرسیون با متغیرهای پیشگو طبقهای، از متغیرهای گسسته و اسمی یا ترتیبی برای پیشبینی مقدار متغیر وابسته استفاده میشود. فرض بر این است که متغیر وابسته از نوع عددی و دارای مقادیر پیوسته است. ولی در مدل رگرسیون با متغیر پاسخ طبقهای، قرار است براساس متغیرهای پیشگو، مدلی برای طبقهبندی کردن مشاهدات ایجاد کنیم. در حقیقت متغیر پاسخ، شماره گروه یا طبقه هر مشاهده را نشان میدهد.
در اینجا زمانی که از رگرسیون طبقهای با مقیاس بهینه صحبت میکنیم، نوع اول مدل رگرسیونی مد نظر است. به این معنی که قرار است به واسطه متغیرهای پیشگو که به صورت طبقهای (ترتیبی یا اسمی) ایجاد شدهاند، مدل رگرسیونی برای پیشبینی مقدار متغیر پاسخ (عددی - مقیاس) ایجاد شود.
هدف رگرسیون طبقه ای با مقیاس بهینه، توصیف رابطه بین متغیر پاسخ (Response) و مجموعهای از متغیرهای پیشگو (Predictive) است. با بدست آوردن یک مدل توسط رگرسیون طبقهای با مقیاس بهینه، میتوان رابطه بین متغیر پاسخ را با ترکیبهای مختلف از سطوح متغیرهای پیشگو مشخص کرد.
در این نوشتار براساس یک فایل نمونه به نام carpet.sav که در مجموعه فایلهای آموزشی SPSS نیز وجود دارد، رگرسیون طبقه ای با مقیاس بهینه در SPSS یا Optimal Scaling را به کار میبریم. البته میتوانید این فایل را با قالب فشرده از اینجا دریافت کنید.
معرفی فایل آموزشی
یک شرکت علاقمند به تاسیس یک کارگاه قالیشویی است و میخواهد به عنوان یکی از برنامههای امکانسنجی، تاثیر پنج عامل را برای ترجیح استفاده از خدمات قالیشویی را مدلبندی کند. این شرکت اطلاعات مربوط به سه شرکت قالیشویی دیگر به نامهای K2r ،Glory و Bissell را دریافت کرده است و میخواهد براساس آن مدل ترجیحات مشتری را بسازد.
پنج متغیر اصلی (پیشگو) برای این موضوع طبق جدول زیر مشخص شدهاند. ترکیب بعضی از این عوامل باعث بوجود آمدن ۲۲ الگو مختلف شده است. از ۱۰ مشتری نظرخواهی شده و میزان علاقمندی به هر یک از این ترکیبها اندازهگیری شده و با میانگینگیری از امتیازات این ۱۰ مشتری، هر یک از الگوها، امتیازدهی شدهاند.
ردیف | نام متغیر | برچسب متغیر | سطوح متغیر | شرح |
۱ | package | Package design | A*, B* , C* | طراحی بستهبندی |
۲ | brand | Brand name | K2r, Glory, Bissell | نام شرکت قالیشویی |
3 | price | Price | $1.19, $1.39, $1.59 | قیمت شستشو برای هر متر مربع |
۴ | seal | Good Housekeeping seal | No, yes | متغیر دو وضعیتی (مهر خانهدار خوب) |
۵ | money | Money-back guarantee | No, yes | تضمین بازگشت پول در صورت نارضایتی |
6 | pref | Preference | 1 to 22 | میانگین امتیاز ۱۰ مشتری |
همانطور که مشخص است متغیرهای ردیف ۱ تا ۵، به عنوان متغیرهای پیشگو به کار رفته و متغیر pref نیز نقش متغیر پاسخ را ایفا میکند. هر چه مقدار متغیر pref کمتر باشد، نشانگر برتری الگوی به کار رفته است زیرا این متغیر نشانگر رتبه ترکیب خدمات ارائه شده است.
تصویر زیر اطلاعات مربوط به متغیرهای موجود در این فایل را نشان میدهد.
اجرای رگرسیون طبقه ای با مقیاس بهینه در SPSS
زمانی که با متغیرهای پیشگو از نوع طبقهای مواجه هستیم، اجرای رگرسیون به دو حالت صورت میگیرد. اگر بتوان یک رابطه خطی بین متغیرهای پیشگو و متغیر وابسته ایجاد کرد، مدل رگرسیون خطی مناسب است. این شیوه ایجاد مدل رگرسیونی در نوشتار رگرسیون خطی با متغیرهای طبقه ای در SPSS — راهنمای گام به گام مورد بحث قرار گرفته است. ولی اگر یک رابطه غیرخطی بین متغیرهای پیشگو طبقهای و متغیر وابسته وجود داشته باشد، بهترین گزینه برای مدلسازی، رگرسیون طبقه ای بامقیاس بهینه یا همان Optimal Scaling است.
اگر در رگرسیون خطی با متغیرهای طبقهای، نمودار مربوط به باقیماندههای استاندارد شده برحسب مقادیر متغیر پیشگوی استاندارد شده رسم شود، باید الگو مشخص مشاهده نشود. در غیر اینصورت به نظر میرسد که با افزایش یا کاهش مقدار متغیر مستقل، باقیماندهها نیز افزایش یا کاهش دارند. وجود مشکل ناهمواریانسی را نشان داده یا موید این امر است که باید از یک مدل غیرخطی یا رگرسیون Optimal Scaling استفاده کرد.
برای مثال در تصویر زیر باقیماندههای مدل رگرسیون خطی را با توجه به متغیر Package design ترسیم کردهایم. این نمودار به خوبی شکل U را نشان میدهد. در نتیجه به نظر میرسد که باید با تغییر مقیاس، ناهمواریانسی را از بین ببریم.
برای اجرای رگرسیون طبقهای مقیاس بهینه از فهرست Analysis گزینه Regression و دستور را اجرا میکنیم.
قرارگیری متغیرهای مربوط به مدل نیز طبق تصویر زیر صورت میگیرد.
توجه داشته باشید که متغیر pref با استفاده از میانگینگیری از رتبههای مشتریان ساخته شده و باید مقیاس آن به صورت عدد باشد. در نتیجه با استفاده از دکمه Define Scale آن را تغییر مقیاس میدهیم.
البته از آنجایی که مقیاس متغیرهای پیشگو نیز از ابتدا به درستی تعیین شده است، آنها را براساس Numeric مقیاسبندی میکنیم. به این ترتیب پنجره انتخاب متغیرها در رگرسیون Optimal Scaling به صورت زیر در خواهد آمد. فقط توجه داشته باشید که متغیر package را به مقیاس Nominal تبدیل کنید.
برای نمایش تحلیلها و ضرایب مدل رگرسیونی با فشردن دکمه Output، پنجره تنظمیات را ظاهر کرده و گزینهها را مطابق با تصویر زیر انجام دهید.
با انتخاب گزینه Multiple R مقدار ضریب تعیین محاسبه شده و ظاهر میشود. همچنین Coefficients نیز مقدار ضرایب مدل رگرسیونی را برای هر یک از متغیرهای پیشگو نمایش میدهد. انتخاب هر یک از گزینههای Correlations of original variables و correlations of transformed variables، ضریب همبستگی بین متغیر پاسخ و متغیرهای پیشگو را در حالت عادی و تغییر مقیاس یافته، محاسبه و نمایش میدهد.
برای بازگشت به پنجره اصلی از دکمه Continue استفاده کنید. همچنین برای ظاهر شدن مقادیر پیشبینی شده توسط مدل از دکمه Save استفاده کرده و تنظیمات را مطابق با تصویر زیر انجام دهید.
با فشردن دکمه Continue و بازگشت به پنجره اصلی، دکمه Plot را کلیک کرده تا نمودارهای لازم برای تحلیل رگرسیون طبقه ای با مقیاس بهینه را مشخص کنید. در پنجره ظاهر شده، نمودارها مربوط به متغیرهای نوع بستهبندی (Package) و قیمت (Price) را مشخص کردهایم زیرا به نظر میرسد که این دو متغیر بیشترین تاثیر را در نظر مشتری داشته باشند.
پس از بازگشت از این پنجره به پنجره اصلی رگرسیون، دکمه OK را کلیک کنید تا خروجی ظاهر شود.
نکته: اگر میخواهید این دستورات و گزینهها را در محیط Syntax و کدنویسی SPSS به کار ببرید کافی است از کد زیر استفاده کنید.
1CATREG VARIABLES=pref package brand price seal money
2 /ANALYSIS=pref(LEVEL=NUME) WITH package(LEVEL=NOMI) brand(LEVEL=NUME) price(LEVEL=NUME)
3 seal(LEVEL=NUME) money(LEVEL=NUME)
4 /MISSING=pref(LISTWISE) package(LISTWISE) brand(LISTWISE) price(LISTWISE) seal(LISTWISE)
5 money(LISTWISE)
6 /MAXITER=100
7 /CRITITER=.00001
8 /PRINT=R COEFF OCORR CORR ANOVA
9 /INITIAL=NUMERICAL
10 /PLOT=TRANS(package price)(20)
11 /SAVE=TRDATA RES
12 /REGULARIZATION=NONE
13 /RESAMPLE=NONE.
تفسیر خروجی رگرسیون طبقه ای با مقیاس بهینه در SPSS
در خروجی، ابتدا توضیحاتی در مورد تعداد مشاهدات و مقادیر گمشده توضیح داده شده، سپس قسمت اصلی خروجی طبق درخواست شما، ظاهر میشود. همانطور که در گزینههای مربوط به Output مشخص کردید، ضریب همبستگی متغیرهای پیشگو، قبل و بعد از تغییر مقیاس ظاهر شدهاند.
همبستگی قبل و بعد از تبدیل
در ادامه با قسمت اول خروجی رگرسیون طبقه ای بامقیاس بهینه آشنا میشویم. ابتدا ضرایب همبستگی بین متغیرها پیشگو به همراه مقادیر ویژه (Eigenvalue) آنها دیده میشود.
واضح است که ضریب همبستگی هر متغیر با خودش برابر با ۱ است. به همین علت قطر اصلی این جدولها، همگی دارای مقدار ۱ هستند. این جدول نشان میدهد که مشکل همخطی در بین متغیرهای پیشگو وجود ندارد زیرا در اکثر مواقع میزان همبستگی نامحسوس است.
از طرفی ضریب تعیین یا همان R Square به عنوان ملاکی برای صحت مدل رگرسیونی نیز در جدول بعدی ظاهر شده است. همانطور که مشاهده میشود، تقریبا حدود ۹۵ درصد از تغییرات متغیر پاسخ توسط مدل رگرسیونی طبقه ای با مقیاس بهینه توصیف شده است. همچنین جدول تحلیل واریانس ANOVA نیز گواهی دیگر بر مناسب بودن مدل رگرسیونی است.
ضرایب مدل رگرسیونی
در جدول بعدی ضرایب استاندارد شده مدل رگرسیونی برای هر یک از متغیرهای پیشگو دیده میشود. در رگرسیون طبقهای هر یک از متغیرها ابتدا استاندارد شده سپس در مدل رگرسیونی به کار میروند به همین دلیل فقط ضرایب استاندارد شده ظاهر شدهاند.