নিউরাল নেটওয়ার্কগুলিতে ক্রস-এন্ট্রপি ত্রুটি ফাংশন


115

ইন এমএল নতুনদের জন্য MNIST তারা ক্রস-এনট্রপি সংজ্ঞায়িত

Hy(y):=iyilog(yi)

yi ক্লাসের পূর্বাভাসযোগ্য সম্ভাবনা মান এবং সেই শ্রেণীর জন্য আসল সম্ভাবনা।iyi

প্রশ্ন 1

( ) 0 হতে পারে এটি কি সমস্যা নয় ? এর অর্থ হ'ল আমাদের অবশ্যই খুব খারাপ শ্রেণিবদ্ধ রয়েছে। তবে আমাদের ডেটাসেটে কোনও ত্রুটির কথা চিন্তা করুন, যেমন একটি "সুস্পষ্ট" হিসাবে লেবেলযুক্ত । এটা কি কেবল ক্রাশ হবে? আমরা যে মডেলটি পছন্দ করেছি (শেষে সফ্টম্যাক্স অ্যাক্টিভেশন) মূলত সঠিক শ্রেণীর জন্য সম্ভাব্যতা 0 দেয় না?yilog(yi)13

প্রশ্ন 2

আমি শিখেছি যে ক্রস-এন্ট্রপি হিসাবে সংজ্ঞায়িত করা হয়েছে

Hy(y):=i(yilog(yi)+(1yi)log(1yi))

সঠিক কি? উভয় সংস্করণের জন্য আপনার কি কোনও পাঠ্যপুস্তক উল্লেখ রয়েছে? এই বৈশিষ্ট্যগুলি কীভাবে তাদের বৈশিষ্ট্যগুলিতে আলাদা হয় (নিউরাল নেটওয়ার্কগুলির জন্য ত্রুটি ফাংশন হিসাবে)?



উত্তর:


101

ক্রস-এনট্রপির ব্যাখ্যা করার একটি উপায় হ'ল এটি একটি মডেল অধীনে ডেটার জন্য (বিয়োগ) লগ-সম্ভাবনা হিসাবে দেখা ।yiyi

যথা, ধরুন যে আপনার কাছে কিছু স্থির মডেল (ওরফে "হাইপোথিসিস") রয়েছে, যা শ্রেণীর জন্য ভবিষ্যদ্বাণী করে তাদের অনুমানমূলক ঘটনার সম্ভাবনা । ধরুন যে আপনি এখন মান্য করা (বাস্তবে) ক্লাসের দৃষ্টান্ত , ক্লাসের দৃষ্টান্ত , ক্লাসের দৃষ্টান্ত , ইত্যাদি আপনার মডেল এই ঘটনাকেই সম্ভাবনা অনুযায়ী হল: গ্রহণ করা এবং সাইন পরিবর্তন করা: n{1,2,,n}y1,y2,,ynk11k22knn

P[data|model]:=y1k1y2k2ynkn.
logP[data|model]=k1logy1k2logy2knlogyn=ikilogyi
এন = 1 + + 2 + + + + এন ওয়াই ' আমি আপনি যদি এখন ডান হাতের যোগফলকে পর্যবেক্ষণের সংখ্যার দ্বারা ভাগ করে থাকেন এবং হিসাবে সম্ভাব্যতা চিহ্নিত করেন তবে আপনি ক্রস-এনট্রপি পাবেন: N=k1+k2++knyi=ki/N
1NlogP[data|model]=1Nikilogyi=iyilogyi=:H(y,y)

তদুপরি, একটি মডেল প্রদত্ত ডেটাসেটের লগ-সম্ভাবনাটিকে "এনকোডিং দৈর্ঘ্যের" একটি পরিমাপ হিসাবে ব্যাখ্যা করা যেতে পারে - যদি আপনার এনকোডিং স্কিমটি আপনার অনুমানের উপর ভিত্তি করে তৈরি হয় তবে এই তথ্যটি এনকোডিংয়ের জন্য আপনি যে পরিমাণ বিট ব্যয় করবেন বলে আশা করছেন।

এটি পর্যবেক্ষণ থেকে অনুসরণ করা হয় যে সম্ভাবনা সহ একটি স্বতন্ত্র ইভেন্টের কমপক্ষে বিটগুলি এটি এনকোড করার জন্য (দক্ষ কোডিং অনুমান করে) প্রয়োজন, এবং ফলস্বরূপ অভিব্যক্তি আক্ষরিকভাবে এনকোডিংয়ের প্রত্যাশিত দৈর্ঘ্য , যেখানে ইভেন্টগুলির এনকোডিংয়ের দৈর্ঘ্যগুলি "হাইপোথাইজাইজড" বিতরণ ব্যবহার করে গণনা করা হয়, যখন প্রত্যাশাটি আসলটির উপরে নেওয়া হয়।yilog2yi

iyilog2yi,

অবশেষে, "প্রত্যাশিত এনকোডিংয়ের দৈর্ঘ্যের পরিমাপ" বলার পরিবর্তে আমি অনানুষ্ঠানিক শব্দটি "অবাক করার পরিমাপ" ব্যবহার করতে চাই। যদি কোনও বিতরণ থেকে একটি প্রত্যাশিত ইভেন্ট এনকোড করতে আপনার প্রচুর পরিমাণে বিট প্রয়োজন হয় তবে বিতরণটি আপনার জন্য "সত্যিই অবাক করা"।

এই অন্তর্দৃষ্টিগুলি মাথায় রেখে, আপনার প্রশ্নের উত্তরগুলি নীচে দেখা যাবে:

  • প্রশ্ন 1 । হ্যাঁ. এটি একই সাথে যখনই সম্পর্কিত ননজারো হয় তখনই এটিyi সমস্যা । এটি এমন পরিস্থিতির সাথে মিলে যায় যেখানে আপনার মডেল বিশ্বাস করে যে কোনও শ্রেণির সংঘটন হওয়ার শূন্যতা রয়েছে এবং তবুও শ্রেণিটি বাস্তবে পপ আপ হয়। ফলস্বরূপ, আপনার মডেলটির "আশ্চর্য" অসীম দুর্দান্ত: আপনার মডেলটি সেই ইভেন্টটির জন্য অ্যাকাউন্ট করে নি এবং এখন এটির এনকোড করার জন্য অসীম অনেক বিট প্রয়োজন। এজন্য আপনি আপনার ক্রস-এন্ট্রপি হিসাবে অনন্ততা পান।

    এই সমস্যাটি এড়াতে আপনার নিশ্চিত হওয়া দরকার যে আপনার মডেলটি ঘটতে পারে এমন কিছুর আগে অসম্ভব হওয়ার বিষয়ে ফুসকুড়ি অনুমান করে না। বাস্তবে, লোকেরা তাদের হাইপোথিসিস মডেল হিসাবে সিগময়েড বা "সফটম্যাক্স" ফাংশন ব্যবহার করার প্রবণতা রাখে, যা প্রতিটি বিকল্পের জন্য কমপক্ষে কিছু সুযোগ ছাড়ার পক্ষে যথেষ্ট রক্ষণশীল।

    আপনি যদি অন্য কোনও হাইপোথিসিস মডেল ব্যবহার করেন তবে এটি নিয়মিত করা (আপনার নাম "স্মুথ") আপনার উপর নির্ভর করবে যাতে এটি জিরোগুলিকে যেখানে করা উচিত নয় অনুমান করা যায় না।

  • প্রশ্ন 2 । এই সূত্রে, কেউ সাধারণত কে হয় বা হিসাবে ধরে নেয় , অন্যদিকে হ'ল সম্পর্কিত মডেলের সম্ভাব্যতা অনুমান। আপনি যদি ঘনিষ্ঠভাবে তাকান, আপনি দেখতে পাবেন যে এটি বাইনারি ডেটার জন্য কেবল একটি , এই উত্তরের দ্বিতীয় সমীকরণের সমতুল্য।yi01yilogP[data|model]

    সুতরাং, কঠোরভাবে বলতে গেলে, যদিও এটি এখনও লগ-সম্ভাবনা, এটি সিন্টেক্সিকভাবে ক্রস-এন্ট্রপির সমতুল্য নয়। কিছু লোক ক্রস-এনট্রপি হিসাবে এই জাতীয় অভিব্যক্তিটির উল্লেখ করার অর্থ কী তা হ'ল এটি হ'ল ডেটাসেটে পৃথক পয়েন্টগুলির জন্য বাইনারি ক্রস-এনট্রোপির সমষ্টি : যেখানে এবং এর সাথে সম্পর্কিত বাইনারি বিতরণ এবং হিসাবে ব্যাখ্যা করতে হবে ।

    iH(yi,yi),
    yiyi(yi,1yi)(yi,1yi)


1
আপনি কি এমন উত্স সরবরাহ করতে পারেন যেখানে তারা ? এখানে তারা এটিকে বর্তমান শ্রেণীর লেবেলের জন্য এক-গরম বিতরণ হিসাবে সংজ্ঞায়িত করেছে। পার্থক্য কি? yi=kiN
লেনার হোয়েট

1
এমএনআইএসটি টেনসরফ্লো টিউটোরিয়ালে তারা এটিকে ওয়ান-হট ভেক্টরের ক্ষেত্রেও সংজ্ঞায়িত করে।
লেনার হোয়েট

@ লেনারহয়েট যখন , এক হট সমান হবে। আপনি এক-হটকে এর অভিজ্ঞতাগত (বাস্তব) শ্রেণিবদ্ধ সম্ভাবনার উপর ভিত্তি করে কোনও আইটেমের এনকোডিং হিসাবে ভাবতে পারেন। কে আই / এনN=1ki/N
THN

'স্বতন্ত্র ইভেন্টটির প্রয়োজন ... এটি এনকোড করার জন্য' - আপনি কি এই বিটটি ব্যাখ্যা করতে পারেন দয়া করে?
অ্যালেক্স

@ অ্যালেক্স এটি সঠিকভাবে বুঝতে আরও দীর্ঘতর ব্যাখ্যা প্রয়োজন হতে পারে - শ্যানন-ফানো কোডগুলি পড়ুন এবং শ্যানন এনট্রপি সমীকরণের অনুকূল কোডিংয়ের সম্পর্ক। জিনিসগুলি নিঃশব্দ করার জন্য, যদি কোনও ইভেন্টের সম্ভাবনা ১/২ থাকে তবে আপনার সেরা বেটটি একক বিট ব্যবহার করে কোড করা। যদি এটির সম্ভাব্যতা 1/4 থাকে তবে এটিকে এনকোড করার জন্য আপনার 2 বিট ব্যয় করা উচিত In শ্যানন অনুকূল দৈর্ঘ্যের কাছে যান।
কে.টি.

22

আপনি যে প্রথম লগলাস সূত্রটি ব্যবহার করছেন সেটি হ'ল মাল্টিক্লাস লগ হ্রাসের জন্য, যেখানে সাবস্ক্রিপ্ট একটি উদাহরণে বিভিন্ন শ্রেণি গণনা করে। সূত্রটি ধরে নিয়েছে যে প্রতিটি উদাহরণে একটি একক 1 এবং বাকী সমস্ত 0 হয়।y iiyi

এর অর্থ সূত্রটি কেবলমাত্র লক্ষ্য শ্রেণিতে ত্রুটি ক্যাপচার করে। এটি ত্রুটিগুলির কোনও ধারণাকে অস্বীকার করে যা আপনি "মিথ্যা পজিটিভ" বিবেচনা করতে পারেন এবং সত্য শ্রেণীর পূর্বাভাস সম্ভাবনা ব্যতীত ভবিষ্যদ্বাণী করা সম্ভাবনাগুলি কীভাবে বিতরণ করা হয় তা বিবেচনা করে না।

আরেকটি অনুমান হ'ল প্রতিটি উদাহরণের পূর্বাভাসের জন্য । একটি সফটম্যাক্স স্তরটি স্বয়ংক্রিয়ভাবে এটি করে - আপনি যদি কিছু আলাদা ব্যবহার করেন তবে এই সীমাবদ্ধতাটি পূরণ করার জন্য আপনাকে আউটপুটগুলি স্কেল করতে হবে।iyi=1

প্রশ্ন 1

( 0 হতে পারে এটি কি সমস্যা নয় ? l o g ( y i )yilog(yi)

হ্যাঁ এটি সমস্যা হতে পারে তবে এটি সাধারণত ব্যবহারিক সমস্যা নয়। এলোমেলোভাবে-সূচনাযুক্ত সফটম্যাক্স স্তরটি 0কোনও শ্রেণিতে সঠিকভাবে আউটপুট দেওয়ার সম্ভাবনা খুব কম । তবে এটি সম্ভব, এটির জন্য এটি মূল্যবান। প্রথমে কোনও জন্য মূল্যায়ন করবেন না , কারণ negative ক্লাসগুলি ত্রুটিতে সর্বদা 0 অবদান রাখে। দ্বিতীয়ত, ব্যবহারিক কোডে আপনি সংখ্যার স্থায়িত্বের মতো কিছুতে মান সীমাবদ্ধ করতে পারেন - অনেক ক্ষেত্রে এটির প্রয়োজন হয় না, তবে এটি বোধগম্য রক্ষণাত্মক প্রোগ্রামিং।log(yi)yi=0log( max( y_predict, 1e-15 ) )

প্রশ্ন 2

আমি শিখেছি যে ক্রস-এন্ট্রপিকে হিসাবে সংজ্ঞায়িত করা হয়েছেHy(y):=i(yilog(yi)+(1yi)log(1yi))

এই ফর্মুলেশনটি প্রায়শই এমন একটি নেটওয়ার্কের জন্য ব্যবহৃত হয় যার একটি আউটপুট দুটি শ্রেণীর পূর্বাভাস দেয় (সাধারণত 1 টির জন্য ধনাত্মক শ্রেণীর সদস্যতা এবং 0 আউটপুটের জন্য নেতিবাচক)। যে ক্ষেত্রে শুধুমাত্র একটি মান থাকতে পারে - তোমাদের উপর সমষ্টি হারাতে পারেন ।ii

আপনি যদি দুটি নেটওয়ার্কের বিরোধী আউটপুট পেতে এবং এই জাতীয় সফটম্যাক্স প্লাস প্রথম লগলাস সংজ্ঞা ব্যবহার করতে এই জাতীয় নেটওয়ার্কটি সংশোধন করেন তবে আপনি দেখতে পাচ্ছেন যে বাস্তবে এটি একই ত্রুটি পরিমাপ কিন্তু দুটি ক্লাসের জন্য ত্রুটি মেট্রিককে একক আউটপুটে ভাঁজ করা।

যদি সদস্যতার পূর্বাভাস দেওয়ার জন্য একাধিক শ্রেণি থাকে এবং ক্লাসগুলি একচেটিয়া না থাকে অর্থাৎ উদাহরণ একই সাথে ক্লাসের কোনও বা সমস্ত হতে পারে, তবে আপনাকে এই দ্বিতীয় সূত্রটি ব্যবহার করতে হবে। অঙ্কের স্বীকৃতির জন্য যেটি হয় না (একটি লিখিত অঙ্কের কেবল একটি "সত্য" শ্রেণি থাকা উচিত)


দ্রষ্টব্য দ্বিতীয় সূত্র উপস্থাপনে কিছু অস্পষ্টতা আছে - এটি তত্ত্বগতভাবে কেবল একটি শ্রেণি ধরে নিতে পারে এবং উদাহরণগুলি গণনা করতে পারি ume i
নিল স্লেটার

আমি দুঃখিত, আমি যা জানতে চেয়েছি তার চেয়ে আলাদা কিছু জিজ্ঞাসা করেছি। আমি কোনও সমস্যা দেখতে পাচ্ছি না , তবে কারণে । আপনি কি দয়া করে আপনার উত্তরটি সামঞ্জস্য করতে পারেন? log(yi)=0yi=0log(yi)
মার্টিন থোমা

@ নীলস্লেটার যদি ক্লাসগুলি পারস্পরিক একচেটিয়া না হত, তবে প্রতিটি ইনপুটটির আউটপুট ভেক্টরে একাধিক 1 থাকতে পারে, আমাদের দ্বিতীয় সূত্রটি ব্যবহার করা উচিত?
মিডিয়া

1
@ মিডিয়া: সত্যই নয়। আপনি যদিও শ্রেণিবদ্ধ শ্রেণিবিন্যাসের মতো জিনিসগুলির দিকে নজর রাখতে চান। । ।
নিল স্লেটার

1
@ জাভি: ওপি-র প্রশ্নে হল মূল সত্য, সুতরাং সাধারণত 0 বা 1। এটি যা সফটম্যাক্স আউটপুট। তবে ভাসমান পয়েন্ট গোল করার কারণে অনুশীলনে শূন্যের শেষ হতে পারে। এটি আসলে ঘটে। yiyiyi
নিল স্লেটার

11

প্রদত্ত , আপনি পেতে আপনার মেশিন লার্নিং পদ্ধতি নিখুত চান যতটা সম্ভব বন্ধ ।ytrueypredictytrue

প্রথম প্রশ্ন:

উত্তরের উত্তরটি আপনার প্রথম সূত্রের পটভূমি ব্যাখ্যা করেছে, তথ্য তত্ত্বে সংজ্ঞায়িত ক্রস এনট্রপি y

তথ্য তত্ত্ব ব্যতীত অন্য মতামত থেকে:

আপনি নিজেরাই পরীক্ষা করতে পারেন যে প্রথম সূত্রে মিথ্যা-ইতিবাচকতার জন্য জরিমানা নেই (সত্যটি মিথ্যা তবে আপনার মডেল ভবিষ্যদ্বাণী করেছেন যে এটি সঠিক), অন্যদিকে মিথ্যা-ইতিবাচকতার জন্য শাস্তি রয়েছে। সুতরাং, প্রথম সূত্র বা দ্বিতীয়টির পছন্দটি আপনার মেট্রিকগুলিতে প্রভাব ফেলবে (আপনার মডেলটি মূল্যায়নের জন্য আপনি কী পরিসংখ্যান পরিমাণ ব্যবহার করতে চান)।

সাধারণ কথায়:

আপনি যদি প্রায় সকল ভাল লোককে আপনার বন্ধু হিসাবে গ্রহণ করতে চান তবে কিছু খারাপ লোককে আপনার বন্ধু হয়ে উঠতে রাজি হন, তবে মানদণ্ডের জন্য প্রথম সূত্রটি ব্যবহার করুন।

আপনি যদি কিছু খারাপ লোককে আপনার বন্ধু হিসাবে গ্রহণ করে নিজেকে শাস্তি দিতে চান তবে একই সময়ে আপনার ভাল-লোকেরা গ্রহণের হার প্রথম শর্তের চেয়ে কম হতে পারে, তবে দ্বিতীয় সূত্রটি ব্যবহার করুন।

যদিও, আমি অনুমান করি আমাদের মধ্যে বেশিরভাগ সমালোচক এবং দ্বিতীয়টি চয়ন করতে চাই (যাতে অনেক এমএল প্যাকেজটি অনুমান করে যে ক্রস এনট্রপি কী)।

দ্বিতীয় প্রশ্ন:

প্রতি ক্লাসে নমুনা প্রতি ক্রস এনট্রপি:

ytruelog(ypredict)

পুরো ডেটাসেটের পুরো ক্লাসের জন্য ক্রস এনট্রপি:

inkKytrue(k)log(ypredict(k))

সুতরাং, যখন কেবলমাত্র দুটি ক্লাস (কে = 2) থাকবে তখন আপনার দ্বিতীয় সূত্র থাকবে।


5

টিউটোরিয়ালের সফটম্যাক্স ব্যবহারের মাধ্যমে এই সমস্যাগুলি পরিচালনা করা হয়।

1 এর জন্য) আপনি ঠিক বলেছেন যে সফটম্যাক্স একটি শূন্য-আউটপুট গ্যারান্টি দেয় কারণ এটি এর ইনপুটটিকে প্রসারিত করে। এই গ্যারান্টিটি দেয় না এমন ক্রিয়াকলাপগুলির জন্য (যেমন রিলু), সমস্যাটি এড়াতে প্রতিটি আউটপুটে খুব ছোট একটি ইতিবাচক শব্দ যুক্ত করা সহজ।

2) হিসাবে, এগুলি স্পষ্টতই এক নয়, তবে আমি যে সফটম্যাক্স সূচনা করেছি তা সমস্যার বিষয়টি বিবেচনা করে। আপনি যদি সফটম্যাক্স ব্যবহার না করে থাকেন তবে এর ফলে আপনি বিশাল বায়াস শর্তাদি শিখতে পারবেন যে কোনও ইনপুট জন্য প্রতিটি শ্রেণীর জন্য 1 অনুমান করে। তবে যেহেতু তারা সমস্ত ক্লাস জুড়ে সফটম্যাক্সকে স্বাভাবিক করে তোলে তাই সঠিক শ্রেণীর আউটপুট সর্বাধিকতর করার একমাত্র উপায় হ'ল এটি ভুল শ্রেণীর তুলনায় বৃহত আপেক্ষিক।


"আপনি সঠিক যে সফটম্যাক্স একটি শূন্য-আউটপুট গ্যারান্টি দেয়" - আমি জানি যে এটি তাত্ত্বিকভাবে ক্ষেত্রে। বাস্তবে, এটি কি ঘটতে পারে (সংখ্যাসূচক সমস্যার কারণে) এটি 0 হয়ে যায়?
মার্টিন থোমা

ভাল প্রশ্ন. আমি অনুমান করি যে এক্সপেনশনেশন ফাংশনের জন্য 0.0 আউটপুট করা পুরোপুরি সম্ভব যদি আপনার ইনপুটটি আপনার ফ্লোটের যথার্থতার জন্য খুব ছোট হয়। তবে আমি অনুমান করি যে বেশিরভাগ বাস্তবায়নগুলি অ-শূন্য ইনপুটটির গ্যারান্টি দেওয়ার জন্য ক্ষুদ্র ইতিবাচক শব্দটি যুক্ত করে।
jamesmf

0

( ) 0 হতে পারে এটি কি সমস্যা নয় ?yilog(yi)

হ্যাঁ এটি, যেহেতু , তবে অনুশীলনে problem ব্যবহার করে এই সমস্যাটি এড়ানো যায় ।log(0)log(yi+ϵ)

সঠিক কি?
(ক) বা (খ) ?Hy(y):=iyilog(yi)
Hy(y):=i(yilog(yi)+(1yi)log(1yi))

(ক) বহু-শ্রেণীর পূর্বাভাসের জন্য সঠিক (এটি আসলে একটি দ্বিগুণ সংক্ষেপণ), (খ) দ্বি-শ্রেণীর পূর্বাভাসের জন্য (ক) এর সমান। দুটোই ক্রস-এনট্রপি।

উদাহরণ:

প্রতিটি প্রশিক্ষণ ডেটা ধরুন লেবেল আছে , এবং মডেল অনুমান ।xici{0,1}ci[0,1]

5 ডেটা পয়েন্টের জন্য, সত্য লেবেল এবং মডেল পূর্বাভাস : cici

(ci,ci)={(0,0.1),(0,0.4),(0,0.8),(1,0.8),(1,0.2)} (1),

ভেক্টরগুলি এবং হিসাবে নির্ধারণ করুনyiyi

  • yik:=1 যদি , এবং অন্যথায়, ci=k:=0

  • yik:=p(k|xi) ক্লাস অন্তর্গত হওয়ার সম্ভাবনা যা মডেল দ্বারা অনুমান করা হয়।xik

মধ্যে (1) উদাহরণ রূপান্তরিত হয়: (yi,yi)

(yi,yi)={([1,0],[0.9,0.1]), ([1,0],[0.6,0.4]), ([1,0],[0.2,0.8]), ([0,1],[0.2,0.8]), ([0,1],[0.8,0.2])} ,

(ক) এবং (খ) উভয়ই গণনা করা হয়:

Hy(y)=1/5([log(0.9)+log(0.6)+log(0.2)]ci=0+[log(0.8)+log(0.2)]ci=1)=0.352

ডেরাইভেশন:

ধরুন থেকে পর্যন্ত একাধিক ক্লাস রয়েছে । প্রশিক্ষণের পয়েন্টের জন্য , সমান যা পজিশনে 1 এবং অন্য কোথাও 0। যখন , আমরা চাই মডেলের আউটপুট 1 এর কাছাকাছি হওয়া উচিত Therefore সুতরাং, ক্ষতি- হিসাবে সংজ্ঞায়িত করা যেতে পারে , যা । সমস্ত শ্রেণীর মধ্যে ক্ষতি হিসাবে একত্রিত করা যেতে পারে:1K
(xi,ci)ci=kyi=[0,..,1,0,..]kthyik=1yik=p(k|xi)(xi,k)log(yik)yik1log(yik)0

L(yi,yi)=k=1Kyiklog(yik)

যখন , অন্য সমস্ত শ্রেণীর হিসাবে অক্ষম করা হবে , সুতরাং উদাহরণস্বরূপ যখন সত্য লেবেল , ক্ষতি হবে থাকা:yik=1kk0log(yik)=0yim=1

L(yi,yi)=log(yim)

সমস্ত প্রশিক্ষণ পয়েন্টের উপর চূড়ান্ত সূত্রটি হ'ল:

Hy(y)=(xi,yi)k=1Kyiklog(yik)

বাইনারি শ্রেণিবদ্ধকরণের জন্য, আমাদের (সত্য লেবেল) এবং (মডেল পূর্বাভাস) রয়েছে, সুতরাং (ক) এইভাবে আবার লিখিত হতে পারে:yi0=1yi1yi0=1yi1

Hy(y)=(xi,yi)yi1log(yi1)+yi0log(yi0)=(xi,yi)yi1log(yi1)+(1yi1)log(1yi1)

যা (খ) এর সমান।

ক্রস-এন্ট্রপি (ক) ক্লাস ওভার (একটি সংশ্লেষ)

ক্লাসের উপরে ক্রস-এন্ট্রপি (ক) হ'ল:

Hy(y)=k=1Kyklog(yk) ,

এই সংস্করণটি শ্রেণিবদ্ধকরণ কাজের জন্য ব্যবহার করা যাবে না। পূর্ববর্তী উদাহরণ থেকে ডেটা পুনরায় ব্যবহার করা যাক:

(ci,ci)={(0,0.1),(0,0.4),(0,0.8),(1,0.8),(1,0.2)}

পরীক্ষামূলক শ্রেণীর সম্ভাবনাগুলি : এবং ,y0=3/5=0.6y1=0.4

মডেল দ্বারা অনুমান শ্রেণীর সম্ভাবনাগুলি : এবংy0=3/5=0.6y1=0.4

(ক) হিসাবে গণনা করা হয়: ।y0logy0y1logy1=0.6log(0.6)0.4log(0.4)=0.292

দুটি তথ্য পয়েন্ট এবং মিস-শ্রেণিবদ্ধ কিন্তু এবং সঠিকভাবে অনুমান করা হয়!(0,0.8)(1,0.2)y0y1

: সব 5 পয়েন্ট যেখানে যেমন সঠিকভাবে শ্রেণীবদ্ধ তাহলে ,
(ci,ci)={(0,0.1),(0,0.4),(0,0.2),(1,0.8),(1,0.8)}

(ক) এখনও একই থাকে, যেহেতু আবার হিসাবে অনুমান করা হয় ।y0y0=3/5

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.