তাই আমি মডেলিংয়ের বিষয়ে কিছু বই (বা তাদের কিছু অংশ) পড়ছি (অন্যদের মধ্যে এফ। হ্যারেলের "রিগ্রেশন মডেলিং কৌশলগুলি), যেহেতু আমার বর্তমান পরিস্থিতি এখন বাইনারি প্রতিক্রিয়া তথ্যের উপর ভিত্তি করে একটি লজিস্টিক মডেল করা দরকার। আমার ডেটা সেটে আমার ধারাবাহিক, শ্রেণিবদ্ধ এবং বাইনারি ডেটা (ভবিষ্যদ্বাণী) উভয়ই রয়েছে। মূলত আমার কাছে এখনই প্রায় 100 ভবিষ্যদ্বাণী রয়েছে, যা অবশ্যই ভাল মডেলের পক্ষে অনেক বেশি too এছাড়াও, এই ভবিষ্যদ্বাণীকারীদের মধ্যে অনেকগুলিই এক ধরণের সম্পর্কিত, কারণ তারা প্রায়শই একই মেট্রিকের উপর ভিত্তি করে থাকে যদিও কিছুটা আলাদা।
যাইহোক, আমি যা পড়ছি, ইউনিভারিটেড রিগ্রেশন এবং পদক্ষেপ অনুসারে কৌশলগুলি ব্যবহার করা হ'ল ভবিষ্যদ্বাণীকারীদের পরিমাণ হ্রাস করতে আপনি করতে পারেন এমন কিছু খারাপ কাজ। আমি মনে করি লাসো কৌশলটি বেশ ঠিক আছে (যদি আমি এটি সঠিকভাবে বুঝতে পারি) তবে আপনি অবশ্যই এটি 100 টি ভবিষ্যদ্বাণীকের উপর ব্যবহার করতে পারবেন না এবং ভাবেন যে কোনও ভাল ফলাফল আসবে।
তাহলে এখানে আমার বিকল্পগুলি কি? আমাকে কী সত্যিই বসে থাকতে হবে, আমার সমস্ত তত্ত্বাবধায়ক এবং কাজের জায়গায় স্মার্ট ব্যক্তিদের সাথে কথা বলতে হবে এবং শীর্ষস্থানীয় সেরা পাঁচটি ভবিষ্যদ্বাণীক কী হতে পারে / কী হতে পারে (আমরা ভুল হতে পারি), বা কোন পদ্ধতির (এস) আমার উচিত উচিত তা নিয়ে সত্যিই ভাবতে হবে? পরিবর্তে বিবেচনা?
এবং হ্যাঁ, আমি আরও জানি যে এই বিষয়টি প্রচুরভাবে আলোচনা করা হয়েছে (অনলাইনে এবং বইগুলিতে) তবে কখনও কখনও আপনি যখন মডেলিংয়ের ক্ষেত্রে নতুন ধরনের হন তখন কিছুটা অভিভূত হয় বলে মনে হয়।
সম্পাদনা করুন:
প্রথমত, আমার নমুনার আকার +1000 রোগী (যা আমার ক্ষেত্রে প্রচুর) এবং এর মধ্যে 70-170 ইতিবাচক প্রতিক্রিয়া রয়েছে (যেমন 170 টি হ্যাঁ প্রতিক্রিয়া বনাম প্রায় 900 এর একটিতে প্রতিক্রিয়া নেই) । মূলত ধারণাটি তেজস্ক্রিয়তার চিকিত্সার পরে বিষাক্ততার পূর্বাভাস দেওয়া। আমার কাছে কিছু সম্ভাব্য বাইনারি প্রতিক্রিয়া ডেটা রয়েছে (যেমন বিষাক্ততা হয় আপনার কাছে এটি রয়েছে (1), অথবা আপনি না (0)) এবং তারপরে আমার বেশ কয়েকটি ধরণের মেট্রিক রয়েছে। কিছু মেট্রিকগুলি রোগীর জন্য নির্দিষ্ট, যেমন বয়স, ওষুধ ব্যবহৃত, অঙ্গ এবং লক্ষ্যমাত্রা, ডায়াবেটিস ইত্যাদি, এবং তারপরে লক্ষ্যটির জন্য সিমুলেটেড চিকিত্সার ক্ষেত্রের উপর ভিত্তি করে আমার কিছু চিকিত্সা নির্দিষ্ট মেট্রিক রয়েছে। সেখান থেকে আমি বেশ কয়েকটি ভবিষ্যদ্বাণীকে পুনরুদ্ধার করতে পারি, যা আমার ক্ষেত্রে প্রায়শই অত্যন্ত প্রাসঙ্গিক, যেহেতু বেশিরভাগ বিষাক্ততা রেডিয়েশনের পরিমাণ (আইডোজ) প্রাপ্তির সাথে অত্যন্ত সংযুক্ত থাকে। সুতরাং উদাহরণস্বরূপ, আমি যদি ফুসফুসের টিউমারটি চিকিত্সা করি তবে কিছু পরিমাণ ডোজ দিয়ে হৃদয়কে আঘাত করার ঝুঁকি রয়েছে। আমি তখন হিসাব করতে পারি যে হার্টের পরিমাণের পরিমাণ পরিমাণ এক্স-পরিমাণ পরিমাণ ডোজ গ্রহণ করে, যেমন " শুরু করার জন্য কেবল একটি বাছাই করুন (যদিও এটি অতীতের পরীক্ষাগুলি অবশ্যই চেষ্টা করেছিল এবং আমিও এটি করতে চাই) কারণ আমার "ঠিক" জানতে হবে যে ডিগ্রিটিতে আসলে হৃদয়ের বিষের মধ্যে একটি বৃহত্তর সম্পর্ক রয়েছে এবং ভলিউম ডোজ (আবার, উদাহরণস্বরূপ, অন্যান্য অনুরূপ মেট্রিক রয়েছে, যেখানে একই কৌশল প্রয়োগ করা হয়)। হ্যাঁ, এটি আমার ডেটা সেটটি দেখতে কেমন দেখাচ্ছে। কিছু আলাদা মেট্রিক এবং কিছু মেট্রিক যা কিছুটা অনুরূপ। টি শুরু করার জন্য কেবল একটি বাছাই করুন (যদিও এটি পূর্বের পরীক্ষাগুলি অবশ্যই চেষ্টা করেছিল এবং আমিও এটি করতে চাই) কারণ আমার "ঠিক" জানতে হবে যে ডিগ্রিটিতে আসলে হৃদয়ের বিষের মধ্যে একটি বৃহত্তর সম্পর্ক রয়েছে এবং ভলিউম ডোজ (আবার, উদাহরণস্বরূপ, অন্যান্য অনুরূপ মেট্রিক রয়েছে, যেখানে একই কৌশল প্রয়োগ করা হয়)। হ্যাঁ, এটি আমার ডেটা সেটটি দেখতে কেমন দেখাচ্ছে। কিছু আলাদা মেট্রিক এবং কিছু মেট্রিক যা কিছুটা অনুরূপ। আমার ডেটা সেটটি দেখতে কেমন দেখাচ্ছে। কিছু আলাদা মেট্রিক এবং কিছু মেট্রিক যা কিছুটা অনুরূপ। আমার ডেটা সেটটি দেখতে কেমন দেখাচ্ছে। কিছু আলাদা মেট্রিক এবং কিছু মেট্রিক যা কিছুটা অনুরূপ।
আমি তখন যা করতে চাই তা হল একটি ভবিষ্যদ্বাণীপূর্ণ মডেল তৈরি করা যাতে আমি আশাবাদী করতে পারি যে কোন রোগীদের কোনও ধরণের বিষাক্ত হওয়ার ঝুঁকি থাকবে। এবং যেহেতু প্রতিক্রিয়া ডেটা বাইনারি, তাই আমার মূল ধারণাটি ছিল অবশ্যই একটি লজিস্টিক রিগ্রেশন মডেল ব্যবহার করা। আমার মাঠে অন্য লোকেরা যা করেছে তা অন্তত। যাইহোক, এইগুলি অনেকগুলি কাগজপত্রের মধ্য দিয়ে যাওয়ার সময়, যেখানে এটি ইতিমধ্যে সম্পন্ন হয়েছে, সেগুলির কয়েকটি কেবলমাত্র ভুল মনে হয় (কমপক্ষে এফ। হ্যারেলের মতো মডেলিংয়ের নির্দিষ্ট ধরণের বইগুলি পড়ার সময়)। অনেকে ভবিষ্যদ্বাণীকারীদের বাছাই করার জন্য অবিচ্ছিন্ন রিগ্রেশন বিশ্লেষণ ব্যবহার করেন এবং এগুলি মাল্টিভারিয়েট বিশ্লেষণে ব্যবহার করেন (এমন একটি জিনিস যা আমি ভুল না হলে তার বিরুদ্ধে পরামর্শ দেওয়া হয়), এবং অনেকে ভবিষ্যদ্বাণীকারীদের পরিমাণ হ্রাস করার জন্য ধাপে-ভিত্তিক কৌশল ব্যবহার করে। অবশ্যই এটি সব খারাপ নয়। অনেকগুলি লাসো, পিসিএ, ক্রস-বৈধকরণ, বুটস্ট্র্যাপিং ইত্যাদি ব্যবহার করে তবে আমি যা দেখেছি,
বৈশিষ্ট্য নির্বাচন সম্পর্কিত, সম্ভবত এখন আমি এখনই এখানে আছি। আমার মডেলটিতে আমি কীভাবে সঠিক ভবিষ্যদ্বাণী ব্যবহার করতে / বেছে নিতে পারি? আমি এই অবিবাহিত / ধাপে-ভিত্তিক পদ্ধতির চেষ্টা করেছি, তবে প্রতিবারই আমি মনে করি: "এটি ভুল করলেও কেন এটি করা হয়?"। তবে সম্ভবত এটি দেখানোর একটি ভাল উপায়, অন্ততপক্ষে, একটি "ভাল মডেল" কীভাবে সঠিক উপায়ে সম্পন্ন করে একটি "খারাপ মডেল" এর বিরুদ্ধে ভুল পথে চলে। সুতরাং আমি সম্ভবত এটি এখন কিছুটা ভুল উপায়ে করতে পারলাম, আমার যা প্রয়োজন তার জন্য এটি সঠিক উপায়ে করার দিকনির্দেশনা পাচ্ছে।
সম্পাদনার জন্য দুঃখিত, এবং এটি এত দীর্ঘ হয়েছে।
সম্পাদনা 2: আমার ডেটা কেমন দেখায় তার একটি দ্রুত উদাহরণ:
'data.frame': 1151 obs. of 100 variables:
$ Toxicity : Factor w/ 2 levels "0","1": 2 1 1 1 1 1 1 1 1 1 ...
$ Age : num 71.9 64 52.1 65.1 63.2 ...
$ Diabetes : Factor w/ 2 levels "n","y": 1 1 1 1 1 1 1 1 1 1 ...
$ Risk.Category : Ord.factor w/ 3 levels "LOW"<"INTERMEDIATE"<..: 1 1 1 1 2 1 1 1 1 3 ...
$ Organ.Volume.CC : num 136.1 56.7 66 136.6 72.8 ...
$ Target.Volume.CC : num 102.7 44.2 58.8 39.1 56.3 ...
$ D1perc : num 7961 7718 7865 7986 7890 ...
$ D1.5CC : num 7948 7460 7795 7983 7800 ...
$ D1CC : num 7996 7614 7833 7997 7862 ...
$ D2perc : num 7854 7570 7810 7944 7806 ...
$ D2.5CC : num 7873 7174 7729 7952 7604 ...
$ D2CC : num 7915 7313 7757 7969 7715 ...
$ D3perc : num 7737 7379 7758 7884 7671 ...
$ D3.5CC : num 7787 6765 7613 7913 7325 ...
$ D3CC : num 7827 6953 7675 7934 7480 ...
$ D4perc : num 7595 7218 7715 7798 7500 ...
$ D5perc : num 7428 7030 7638 7676 7257 ...
$ DMEAN : num 1473 1372 1580 1383 1192 ...
$ V2000CGY : num 24.8 23.7 25.9 22.3 19.3 ...
$ V2000CGY_CC : num 33.7 13.4 17.1 30.4 14 ...
$ V2500CGY : num 22.5 21.5 24 20.6 17.5 ...
$ V2500CGY_CC : num 30.7 12.2 15.9 28.2 12.7 ...
$ V3000CGY : num 20.6 19.6 22.4 19.1 15.9 ...
$ V3000CGY_CC : num 28.1 11.1 14.8 26.2 11.6 ...
$ V3500CGY : num 18.9 17.8 20.8 17.8 14.6 ...
$ V3500CGY_CC : num 25.7 10.1 13.7 24.3 10.6 ...
$ V3900CGY : num 17.5 16.5 19.6 16.7 13.6 ...
$ V3900CGY_CC : num 23.76 9.36 12.96 22.85 9.91 ...
$ V4500CGY : num 15.5 14.4 17.8 15.2 12.2 ...
$ V4500CGY_CC : num 21.12 8.18 11.76 20.82 8.88 ...
$ V5000CGY : num 13.9 12.8 16.4 14 11 ...
$ V5000CGY_CC : num 18.91 7.25 10.79 19.09 8.03 ...
$ V5500CGY : num 12.23 11.14 14.84 12.69 9.85 ...
$ V5500CGY_CC : num 16.65 6.31 9.79 17.33 7.17 ...
$ V6000CGY : num 10.56 9.4 13.19 11.34 8.68 ...
$ V6000CGY_CC : num 14.37 5.33 8.7 15.49 6.32 ...
$ V6500CGY : num 8.79 7.32 11.35 9.89 7.44 ...
$ V6500CGY_CC : num 11.96 4.15 7.49 13.51 5.42 ...
$ V7000CGY : num 6.76 5.07 9.25 8.27 5.86 ...
$ V7000CGY_CC : num 9.21 2.87 6.1 11.3 4.26 ...
$ V7500CGY : num 4.61 2.37 6.22 6.13 4 ...
$ V7500CGY_CC : num 6.27 1.34 4.11 8.38 2.91 ...
$ V8000CGY : num 0.7114 0.1521 0.0348 0.6731 0.1527 ...
$ V8000CGY_CC : num 0.9682 0.0863 0.023 0.9194 0.1112 ...
$ V8200CGY : num 0.087 0 0 0 0 ...
$ V8200CGY_CC : num 0.118 0 0 0 0 ...
$ V8500CGY : num 0 0 0 0 0 0 0 0 0 0 ...
$ V8500CGY_CC : num 0 0 0 0 0 0 0 0 0 0 ...
$ n_0.02 : num 7443 7240 7371 7467 7350 ...
$ n_0.03 : num 7196 6976 7168 7253 7112 ...
$ n_0.04 : num 6977 6747 6983 7055 6895 ...
$ n_0.05 : num 6777 6542 6811 6871 6693 ...
$ n_0.06 : num 6592 6354 6649 6696 6503 ...
$ n_0.07 : num 6419 6180 6496 6531 6325 ...
$ n_0.08 : num 6255 6016 6350 6374 6155 ...
$ n_0.09 : num 6100 5863 6211 6224 5994 ...
$ n_0.1 : num 5953 5717 6078 6080 5840 ...
$ n_0.11 : num 5813 5579 5950 5942 5692 ...
$ n_0.12 : num 5679 5447 5828 5809 5551 ...
$ n_0.13 : num 5551 5321 5709 5681 5416 ...
$ n_0.14 : num 5428 5201 5595 5558 5285 ...
$ n_0.15 : num 5310 5086 5485 5439 5160 ...
$ n_0.16 : num 5197 4975 5378 5324 5039 ...
$ n_0.17 : num 5088 4868 5275 5213 4923 ...
$ n_0.18 : num 4982 4765 5176 5106 4811 ...
$ n_0.19 : num 4881 4666 5079 5002 4702 ...
$ n_0.2 : num 4783 4571 4985 4901 4597 ...
$ n_0.21 : num 4688 4478 4894 4803 4496 ...
$ n_0.22 : num 4596 4389 4806 4708 4398 ...
$ n_0.23 : num 4507 4302 4720 4616 4303 ...
$ n_0.24 : num 4421 4219 4636 4527 4210 ...
$ n_0.25 : num 4337 4138 4555 4440 4121 ...
$ n_0.26 : num 4256 4059 4476 4355 4035 ...
$ n_0.27 : num 4178 3983 4398 4273 3951 ...
$ n_0.28 : num 4102 3909 4323 4193 3869 ...
$ n_0.29 : num 4027 3837 4250 4115 3790 ...
$ n_0.3 : num 3955 3767 4179 4039 3713 ...
$ n_0.31 : num 3885 3699 4109 3966 3639 ...
$ n_0.32 : num 3817 3633 4041 3894 3566 ...
$ n_0.33 : num 3751 3569 3975 3824 3496 ...
$ n_0.34 : num 3686 3506 3911 3755 3427 ...
$ n_0.35 : num 3623 3445 3847 3689 3361 ...
$ n_0.36 : num 3562 3386 3786 3624 3296 ...
$ n_0.37 : num 3502 3328 3725 3560 3233 ...
$ n_0.38 : num 3444 3272 3666 3498 3171 ...
$ n_0.39 : num 3387 3217 3609 3438 3111 ...
$ n_0.4 : num 3332 3163 3553 3379 3053 ...
$ n_0.41 : num 3278 3111 3498 3321 2996 ...
$ n_0.42 : num 3225 3060 3444 3265 2941 ...
$ n_0.43 : num 3173 3010 3391 3210 2887 ...
$ n_0.44 : num 3123 2961 3339 3156 2834 ...
$ n_0.45 : num 3074 2914 3289 3103 2783 ...
$ n_0.46 : num 3026 2867 3239 3052 2733 ...
$ n_0.47 : num 2979 2822 3191 3002 2684 ...
$ n_0.48 : num 2933 2778 3144 2953 2637 ...
$ n_0.49 : num 2889 2734 3097 2905 2590 ...
এবং যদি আমি table(data$Toxicity)
আউটপুটটি চালিত করি তা হ'ল:
> table(data$Toxicity)
0 1
1088 63
আবার, এটি এক ধরণের বিষের জন্য। আমার সাথে আরও 3 জন রয়েছে।