আমরা 240টি প্যারামিটার সেট পরীক্ষা করেছি। সেরাটির Sharpe অনুপাত ছিল 2.1; মধ্যক ছিল 0.1; আর মাত্র 17টি 1.0-এর সীমা পেরিয়েছিল। এই সংখ্যাগুলো নতুন কিছু আবিষ্কারের মতো শোনায়, যতক্ষণ না আপনি জানতে পারেন—প্রতিটি কৌশলের প্রকৃত প্রান্ত শূন্য হলেও এত বিস্তৃত অনুসন্ধানে কাকতালীয়ভাবে একটি আশাব্যঞ্জক বিজয়ী পাওয়া যেতে পারে।
আশ্চর্যজনক সংখ্যাটি হলো 240। ব্যাকটেস্ট রিপোর্টে সাধারণত নির্বাচিত কৌশলটিকে এমনভাবে দেখানো হয়, যেন সেটি একাই এসেছে। গবেষণা এভাবে চলে না। প্যারামিটারে প্রতিটি সামান্য বদল, ফিচার অদলবদল, ইউনিভার্স পরিবর্তন, আর খারাপ ফল দেখার পর আবার চালানো—এসবই নয়েজকে সিগন্যাল বলে মনে হওয়ার আরও একটি সুযোগ দেয়।
আরও বেশি কৌশল চেষ্টা করলে সেরা Sharpe কেন বেড়ে যায়?
ধরা যাক, 240টি স্বাধীন কৌশলের কোনো প্রকৃত প্রান্ত নেই, আর তাদের আনুমানিক Sharpe-গুলো নয়েজপূর্ণ। বেশির ভাগ অনুমান শূন্যের কাছাকাছি থাকবে, কিন্তু সর্বোচ্চটি সাধারণত ইতিবাচক হবে। যত বেশি প্রার্থী পরীক্ষা করবেন, সর্বোচ্চ মানটি প্রকৃত মান থেকে তত দূরে সরে যেতে পারে।
মোটামুটি একটি উদাহরণ হিসেবে ধরুন, প্রতিটি প্রার্থীর আনুমানিক Sharpe-এর স্ট্যান্ডার্ড এরর 0.5। 240টি স্বাধীন নমুনায়, শুধু নির্বাচনের কারণেই সর্বোচ্চ অনুমানটি গড়ের চেয়ে প্রায় 1.4 স্ট্যান্ডার্ড এরর, অর্থাৎ আনুমানিক 0.7 Sharpe বেশি হতে পারে। বাস্তবে কৌশলের প্রার্থীরা পরস্পরের সঙ্গে সম্পর্কিত, তাই এই হিসাব রিপোর্টে সরাসরি প্রয়োগ করার মতো কোনো সংশোধন নয়। এটি দেখায়, বিস্তৃত অনুসন্ধানের পর “বিজয়ী শূন্যের চেয়ে ভালো” কেন দুর্বল প্রমাণ।
আর অনুসন্ধানটি সচরাচর শুধু প্যারামিটার গ্রিডে সীমাবদ্ধ থাকে না। আপনি হয়তো তিনটি সিগন্যাল পরিবার চেষ্টা করেছেন, তাদের কার্ভ দেখার পর দুটি বাদ দিয়েছেন, ট্রেডিং ইউনিভার্স বদলেছেন, তারপর টিকে থাকা কৌশলটি ভিন্ন রিব্যালান্স সময়সূচিতে আবার চালিয়েছেন। পারফরম্যান্সের প্রভাবে নেওয়া এসব সিদ্ধান্ত গবেষণার ইতিহাসের অংশ।
ব্যাকটেস্টের ট্রায়াল হিসেবে কী গণ্য হবে?
কোনো সিদ্ধান্তের ফলাফল আপনার কৌশল নির্বাচনে প্রভাব ফেলতে পারলে সেটিকে ট্রায়াল হিসেবে গুনুন। এতে এমন রানও রয়েছে যা আপনি প্রকাশ করেননি, আর ইকুইটি কার্ভ খারাপ দেখায় বলে যেসব ভ্যারিয়েন্ট আগেই বন্ধ করেছেন সেগুলোও। কোড কম্পাইল না হওয়া পারফরম্যান্স ট্রায়াল নয়; হতাশাজনক Sharpe পাওয়া রান সাধারণত ট্রায়াল।
| গবেষণার কাজ | সাধারণত গণনা করবেন? | কেন |
|---|---|---|
| ফলাফল পর্যালোচনার পর লুকব্যাক 20 থেকে 30 করা | হ্যাঁ | প্রথম ফলাফল পরের প্রার্থী নির্ধারণে প্রভাব ফেলেছে |
| আগে থেকে নির্ধারিত নতুন তারিখের পরিসরে একই স্থির কৌশল চালানো | সাধারণত নতুন নির্বাচন ট্রায়াল নয় | ওই প্রমাণ দেখার আগেই নিয়মটি স্থির করা হয়েছিল |
| কোন সম্পদগুলো জিতেছে তা দেখার পর ইউনিভার্স বদলানো | হ্যাঁ | ইউনিভার্স নির্বাচন আপাত ফলাফলকে উন্নত করতে পারে |
| সিনট্যাক্সের ভুল ঠিক করে অপরিবর্তিত কোড আবার চালানো | না | পারফরম্যান্সের ওপর নির্ভর করে কোনো গবেষণার সিদ্ধান্ত নেওয়া হয়নি |
সীমারেখাটি হলো, আপনি কোনো ফলাফল দেখে সিদ্ধান্ত নিয়েছিলেন কি না। স্মৃতি থেকে তা পুনর্গঠন করা কঠিন হতে পারে, তাই পরীক্ষার লগে প্রতিটি রানের জন্য অনুমান, কোড বা কনফিগারেশনের সংস্করণ, ডেটার সময়সীমা, খরচের অনুমান এবং ফলাফল নথিভুক্ত করা উচিত।
একাধিক পরীক্ষার জন্য কি আমি সংশোধন করতে পারি?
এমন পদ্ধতি আছে যা নির্বাচনজনিত পক্ষপাত অনুমান করে, অথবা অনেক ট্রায়ালের জন্য তাৎপর্য সমন্বয় করে। এগুলো কাজে লাগতে পারে, তবে প্রার্থীরা কীভাবে পরস্পরের সঙ্গে সম্পর্কিত এবং রিটার্নের আচরণ কেমন—সে বিষয়ে কিছু অনুমান দরকার। নামমাত্র p-value বা একক deflated Sharpe অনুমান এমন অনুসন্ধার ফল উদ্ধার করতে পারে না, যার প্রকৃত ইতিহাস আপনার হারিয়ে গেছে।
যে বিষয়গুলো আপনার নিয়ন্ত্রণে, সেগুলো দিয়ে শুরু করুন। প্রকৃত অর্থে অস্পর্শিত কোনো সময়কাল মূল্যায়নের আগে চূড়ান্ত স্পেসিফিকেশন স্থির করুন। প্রার্থীদের সম্পূর্ণ সেট দৃশ্যমান রাখুন। অনেক সম্পর্কিত ভ্যারিয়েন্ট পরীক্ষা করার সময়, প্রতিটিকে স্বাধীন আবিষ্কার বলে ভান না করে, যে সিদ্ধান্ত থেকে ভ্যারিয়েন্টগুলো এসেছে সে অনুযায়ী গোষ্ঠীবদ্ধ করুন। বিজয়ীর পাশাপাশি অনুসন্ধানের তথ্যও জানান: ট্রায়ালের সংখ্যা, নির্বাচনের নিয়ম, এবং চূড়ান্ত মূল্যায়নের ফল দেখে পরে আরও সম্পাদনা করা হয়েছে কি না।
একটি কার্যকর পরীক্ষা: হোল্ডআউটের ফল হতাশাজনক হলে, আপনি কি কৌশল বদলে একই সময়কালকে আবার হোল্ডআউট বলবেন? যদি বলেন, সেটি এখন গবেষণার অংশ। পরবর্তী মূল্যায়নের জন্য আপনার নতুন প্রমাণ দরকার।
একটি AI গবেষণা এজেন্টের লগে কী থাকা উচিত?
একজন মানুষের কর্মস্মৃতিতে যত দ্রুত প্রার্থী ধরে রাখা সম্ভব, তার চেয়ে দ্রুত এজেন্ট নতুন প্রার্থী তৈরি করতে পারে। তাই ট্রায়ালের হিসাব রাখা গবেষণা ব্যবস্থার অংশ, শুধু রিপোর্ট তৈরির কাজ নয়। প্রতিটি প্রার্থী চালানোর আগে সংরক্ষণ করুন; তার মূল পরীক্ষা এবং কেন সেটি তৈরি হয়েছে, তা-ও লিখুন। ব্যর্থ ও বাদ দেওয়া রানগুলো রেখে দিন। কোনো মানুষ বা এজেন্ট কখন পারফরম্যান্স পরীক্ষা করেছে এবং এরপর কী সিদ্ধান্ত নেওয়া হয়েছে, তা নথিভুক্ত করুন।
এরপর নির্বাচন প্রক্রিয়াটি পুনরুৎপাদনযোগ্য করুন: একই প্রার্থীসমষ্টি ও নিয়ম দিলে সেটির একই বিজয়ী বেছে নেওয়া উচিত। ফলাফল দেখার পর এজেন্ট যদি নিজের prompt, objective বা constraints বদলাতে থাকে, সেই পরিবর্তনগুলোও অনুসন্ধানের অংশ।
2.1 Sharpe আরও খতিয়ে দেখার মতো হতে পারে। এর অর্থ নির্ভর করে যে পথে সেটি তৈরি হয়েছে তার ওপর। গবেষণার লগে যখন দেখা যায় যে শিরোনামের জায়গার জন্য 240টি প্রার্থী প্রতিদ্বন্দ্বিতা করেছে, তখন আপনি পরের সঠিক প্রশ্নটি করতে পারেন: ওই সিদ্ধান্তগুলোর কোনোটিই ইতিমধ্যে যে প্রমাণ নিঃশেষ করে ফেলেনি, এমন কী প্রমাণ এখনো বাকি আছে?
← সব পোস্ট


