Each class's probability at every temperature, for the scores above. The dashed line is the
current temperature. Far to the right every class heads for an even 25%; far to the left the top
score takes everything.
মূল ধারণা।
একটি image classifier শেষ হয় প্রতিটি class-এর জন্য একটি সংখ্যা দিয়ে, একটি score (একে
logit-ও বলে)। score যেকোনো মাপের আর যেকোনো চিহ্নের হতে পারে, তাই সেগুলো এখনও সম্ভাবনা নয়।
softmax দুই ধাপে সেগুলোকে সম্ভাবনায় পরিণত করে:
• প্রতিটি score-এর ঘাতে e তুলুন, ez, এতে প্রতিটি সংখ্যা ধনাত্মক
হয়; score-এর প্রতিটি পয়েন্ট একে e দিয়ে গুণ করে, প্রায় 2.72;
• প্রতিটিকে মোট দিয়ে ভাগ করুন, যাতে সব মিলে 100% হয়।
শুরুর score-গুলো, cat 2.0, dog 1.0, car 0.1 আর bird −1.0 দিয়ে, সেটি হয় 7.39, 2.72, 1.11 আর 0.37,
মোট 11.58, তাই cat 63.8%, dog 23.5%, car 9.5% আর bird 3.2%। প্রতিটি সম্ভাবনা প্রতিটি score-এর ওপর নির্ভর
করে: একটি slider টানলে চারটি বার-ই নড়ে।
Temperature।
temperature T softmax-এর আগে প্রতিটি score-কে ভাগ করে: ez/T। 1-এর নিচে
এটি ফাঁকগুলো টেনে বড় করে, তাই ওপরের class আরও নিশ্চিত হয়; 1-এর ওপরে ফাঁকগুলো ছোট করে, তাই সব সমান হয়ে আসে।
এটি কখনও ক্রম বদলায় না: প্রতিটি temperature-এ cat প্রথমই থাকে।
যা চেষ্টা করে দেখার মতো:
1. শুরুর score-গুলো নিয়ে temperature সরান। cat হয় 0.5-এ 86.2%, 1-এ 63.8%, 2-এ 45.1% আর 10-এ 28.8%,
যেখানে সমান ভাগ হলে 25%। 0.2-এ এটি ইতিমধ্যে 99.3%।
2. Add 5 to every score চাপুন। বারগুলো নড়ে না: এখনও 63.8%, 23.5%, 9.5%, 3.2%। softmax শুধু score-গুলোর
মধ্যের ফাঁক নিয়ে মাথা ঘামায়, score-গুলো নিয়ে নয়। আসল কোড এটি কাজে লাগায়: সে আগে সবচেয়ে বড় score বিয়োগ করে,
কারণ e1000 কম্পিউটারে রাখার পক্ষে অনেক বড়, অথচ e0 মাত্র 1।
3. Reset চাপুন, তারপর Double every score। এখন cat 86.2%, dog 11.7%, car 1.9%, bird 0.2%:
ধাপ 1-এ temperature 0.5 ঠিক যা দিয়েছিল। score দ্বিগুণ করা আর temperature অর্ধেক করা একই জিনিস।
4. dog-কে টেনে 2.0-এ নিন, cat-এর সমান। তারা সমান ভাগ পায়, প্রত্যেকে 45.5%, আর car ও bird বাকিটা ভাগ করে নেয়।
সমান score মানে সবসময় সমান সম্ভাবনা।
5. Draw 20 times বারগুলোকে দান হিসেবে ধরে এলোমেলোভাবে একটি class বেছে নেয়। temperature 1-এ cat আসে
প্রায় 64% বার, অর্থাৎ 20-এর মধ্যে মোটামুটি 13। temperature 0.2-এ নামিয়ে আবার টানুন: প্রায় সবই cat। 10-এ
তুলুন: প্রায় সমান মিশ্রণ। একটি image classifier শুধু ওপরের class-টি জানায়, কিন্তু chatbot-রা ঠিক এভাবেই তাদের
পরের শব্দ বেছে নেয়, আর এ কারণেই তাদের temperature সেটিং তাদের নিরাপদ বা বেশি দুঃসাহসী করে তোলে।