আকিনেটর ডট কম এবং নাইভ বেয়েস শ্রেণিবদ্ধ


12

প্রসঙ্গ: আমি ইউনি পাঠ্যক্রমের পরিসংখ্যানের কিছু (অর্ধ-ভুলে যাওয়া) অভিজ্ঞতার সাথে একজন প্রোগ্রামার। সম্প্রতি আমি http://akinator.com এ হোঁচট খেয়েছি এবং এটিকে ব্যর্থ করার চেষ্টা করে কিছু সময় ব্যয় করেছি। আর কে ছিল না? :)

আমি কীভাবে এটি কাজ করতে পারে তা খুঁজে বের করার সিদ্ধান্ত নিয়েছি। সম্পর্কিত ব্লগ পোস্টগুলি গুগল করা এবং পড়ার পরে এবং ফলাফলের মিশ্রণে আমার (সীমিত) কিছু জ্ঞান যুক্ত করার পরে আমি নীচের মডেলটি নিয়ে আসছি (আমি নিশ্চিত যে আমি ভুল স্বরলিপিটি ব্যবহার করব, দয়া করে এর জন্য আমাকে হত্যা করবেন না):

সাবজেক্ট (এস) এবং প্রশ্ন (প্রশ্ন) রয়েছে। ভবিষ্যদ্বাণীকারীর লক্ষ্য হ'ল সাবজেক্টটি নির্বাচন করা যা ব্যবহারকারী এতক্ষণে সংগৃহীত প্রশ্নাবলী এবং উত্তর দেওয়া হয়েছে এমন বিষয়ে সাবজেক্ট হওয়ার সম্ভাবনা সবচেয়ে বেশি।

খেলা জি একটি সেট হতে এর প্রশ্ন জিজ্ঞাসা ও উত্তর দেওয়া যাক: ।{q1,a1},{q2,a2}...{qn,an}

তারপর predictor জন্য খুঁজছেন হয় ।P(S|G)=P(G|S)P(S)P(G)

সাবজেক্টের আগে ( ) কেবলমাত্র খেলাগুলির সংখ্যার দ্বারা বিভাজনকে অনুমান করা হয়েছিল কতবার বিষয় হতে পারে।P(S)

এই ধারণাটি গ্রহণ করে যে সমস্ত উত্তর স্বাধীন, আমরা গেমকে এইভাবে সাবজেক্ট এস এর সম্ভাবনা গণনা করতে পারি:

P(G|S)=i=1..nP({qi,ai}|S)

আমরা গণনা করতে পারি যদি ব্যবহারকারীর প্রদত্ত বিষয়ের বিষয়ে কোন প্রশ্ন ও উত্তর দেওয়া হয়েছিল তা যদি আমরা পর্যবেক্ষণ করি:P({qi,ai}|S)

P(q,a|S)=answer a was given to question q in the game when S was the subjectnumber of times q was asked in the games involving S

এখন, বিষয়গুলির উপর একটি সম্ভাব্যতা বন্টনকে সংজ্ঞায়িত করে এবং যখন আমাদের পরবর্তী প্রশ্নটি নির্বাচন করা দরকার তখন আমাদের একটি নির্বাচন করতে হবে যার জন্য এই বিতরণের এনট্রপিতে প্রত্যাশিত পরিবর্তন সর্বাধিক:P(S|G)

argmaxj(H[P(S|G)]a=yes,no,maybe...H[P(S|G{qj,a})]

আমি এটি বাস্তবায়নের চেষ্টা করেছি এবং এটি কার্যকর হয়। কিন্তু একথাও ঠিক যে, বিষয় সংখ্যা বেড়ে যায় হিসেবে পুনঃগণনা করার প্রয়োজনীয়তা কারণে কর্মক্ষমতা আয়ু কমতে প্রতিটি পদক্ষেপ পর এবং আপডেট বন্টন নিরূপণ জন্য প্রশ্ন নির্বাচন।P(S|G)P(S|G{qj,a})

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


4
আমি সন্দেহ করি এটি একটি নিষ্পাপ বেইস, বরং কিছু সিদ্ধান্ত গাছ যখন কাউকে চিনতে ব্যর্থ হয় তখনই এটি বাড়ানো হয়।

1
এই জাতীয় সিদ্ধান্ত গাছ আপডেট করা খুব অস্বাস্থ্যকর হবে না? এছাড়াও, আমি দুর্ঘটনাক্রমে ভুল / সৎ-ভুল উত্তরগুলির জন্য অ্যাকাউন্ট করার সহজ কোনও উপায় দেখি না এবং এখনও সিদ্ধান্ত গাছের সাথে শেষ পর্যন্ত
পাই

5
দেখে মনে হচ্ছে বিশ বছরের পুরানো 20-প্রশ্ন গিউসারের পুনর্জন্ম, এখন 20Q.net এ । এখানে একটি জনপ্রিয় ব্যাখ্যাটি হলো কিভাবে এটা কাজ করে mentalfloss.com/blogs/archives/13725
Yaroslav Bulatov

5
মাফ করবেন, তবে আমি মনে করি যে "কৃত্রিম বুদ্ধিমত্তা" এবং "নিউরাল নেটওয়ার্ক" কোনও প্রসঙ্গ ছাড়াই হার্ডি ব্যাখ্যা হিসাবে গণ্য হয়। এবং আমি দেখতে পাচ্ছি না যে কীভাবে কেউ এই জাতীয় জিনিসের জন্য নিউরাল নেট ব্যবহার করতে পারে - উদাহরণস্বরূপ আউটপুট ফাংশনটি কী হবে?
এডপেট

হাই @ অ্যাডপ্ট, প্রশ্নটি জিজ্ঞাসা করার পরে অনেকক্ষণ হয়ে গেছে, তবে আপনি যে বাস্তবায়ন সেখানে ফিরে এসেছিলেন তার জন্য উত্স কোডটি ভাগ করতে পারেন?
প্রিখা

উত্তর:


10

এই গেমটি http : //20q.net- তে 20 টি প্রশ্নের অনুরূপ দেখাচ্ছে যা নির্মাতারা রিপোর্ট করেছেন নিউরাল নেটওয়ার্কের ভিত্তিতে। কনসেপ্টের বিবরণ ভেক্টরগুলিতে বর্ণিত নিউরাল নেটওয়ার্ক এবং 20 টি প্রশ্ন গেমের অনুরূপ এই জাতীয় নেটওয়ার্কের কাঠামো তৈরি করার একটি উপায় এখানে ।

আপনি চাইতেন

  1. "চূড়ান্ত" প্রশ্ন হিসাবে চিহ্নিত কিছু প্রশ্ন সহ একটি নির্দিষ্ট সংখ্যক প্রশ্ন।
  2. প্রতিটি প্রশ্নের জন্য একটি ইনপুট ইউনিট, যেখানে উত্তর 0/1উপস্থাপন করে no/yes। প্রাথমিকভাবে সেট0.5
  3. প্রতি প্রশ্নে একটি আউটপুট ইউনিট, সিগময়েড ০.১ ব্যাপ্তিতে বিভক্ত
  4. লুকানো স্তর সমস্ত ইনপুট ইউনিটকে সমস্ত আউটপুট ইউনিটে সংযুক্ত করে।

যে উত্তরগুলির উত্তর দেওয়া হয়েছে সেগুলির জন্য ইনপুট ইউনিট 0 বা 1 তে সেট করা হয়েছে এবং অনুমানটি হ'ল যে নিউরাল নেটওয়ার্কগুলি বিদ্যমান উত্তরগুলির একটি সেট দেওয়া "হ্যাঁ" উত্তর রয়েছে এমন প্রশ্নের জন্য আউটপুট ইউনিটগুলিকে আউটপুট মান 1 এর কাছাকাছি করার প্রশিক্ষণ দেওয়া হয়েছে।

প্রতিটি পর্যায়ে আপনি এমন প্রশ্নটি বেছে নেবেন যা NNসম্পর্কে কমপক্ষে নিশ্চিত, অর্থাত্ সম্পর্কিত আউটপুট ইউনিটটি নিকটে রয়েছে 0.5, প্রশ্ন জিজ্ঞাসা করবে এবং উত্তরটির সাথে সম্পর্কিত ইনপুট ইউনিট সেট করবে। শেষ পর্যায়ে আপনি নিকটতম মান সহ "চূড়ান্ত প্রশ্ন" তালিকা থেকে একটি আউটপুট ইউনিট চয়ন করেন 1

20 টি প্রশ্নের প্রতিটি গেম 20 টি ডেটাপয়েন্ট দেয় যা আপনি NNব্যাক-প্রসারণের সাথে ওজন আপডেট করতে ব্যবহার করতে পারেন , যেমন আপনি বর্তমান নিউরাল নেটওয়ার্কের ফলাফলগুলি পূর্ববর্তী সমস্ত প্রশ্নের সাথে উত্তর দেওয়া সত্যিকারের উত্তরটির সাথে মেলে তৈরি করার জন্য ওজন আপডেট করেন।


7

আমি সত্যিই এটি একটি শ্রেণিবিন্যাস সমস্যা মনে করি না। 20 টি প্রশ্ন প্রায়শই একটি সংকোচনের সমস্যা হিসাবে চিহ্নিত করা হয় । এটি আসলে আপনার প্রশ্নের শেষ অংশের সাথে আরও ভাল মেলে যেখানে আপনি এনট্রপি সম্পর্কে কথা বলছেন।

এর অধ্যায় 5.7 ( গুগল বই ) দেখুন

কভার, টিএম এবং জয়, এটি (2006) ইনফরমেশন থিওরির উপাদানসমূহ

এবং হাফম্যান কোডিং । এই কাগজটি আমি আরএক্সেভিতে পেয়েছি সেগুলিও আগ্রহী হতে পারে।

গিল, জেটি এবং উ, ডাব্লু। (2010) "বিশটি প্রশ্ন গেমস সর্বদা হ্যাঁ দিয়ে শেষ হয়" http://arxiv.org/abs/1002.4907

সরলতার জন্য হ্যাঁ / কোন প্রশ্ন ধরে নাও (যদিও akinator.com অনুমতি দেয়, সম্ভবত জানি না)। ধরে নিন যে প্রতিটি সম্ভাব্য বিষয় (যা akinator.com জানে) অনন্যভাবে হ্যাঁ / কোন প্রশ্ন এবং উত্তরগুলির ক্রম দ্বারা চিহ্নিত করা যায় - মূলত বাইনারি ভেক্টর।

যে প্রশ্নগুলি (এবং তাদের উত্তর) জিজ্ঞাসা করা হয়েছে সেগুলি বিষয়গুলির স্থানের পুনরাবৃত্ত বিভাজনকে সংজ্ঞায়িত করে। এই বিভাজনটি গাছের কাঠামোর সাথেও মিলে যায়। গাছের অভ্যন্তর শাখা প্রশ্নগুলির সাথে মিলে যায় এবং পাতার বিষয়গুলির সাথে মিল রয়েছে। পাতার গভীরতা হ'ল বিষয়টিকে অনন্যভাবে সনাক্ত করতে প্রয়োজনীয় প্রশ্নের সংখ্যা questions আপনি প্রতিটি সম্ভাব্য প্রশ্ন জিজ্ঞাসা করে প্রতিটি জ্ঞাত বিষয়কে (তুচ্ছভাবে) সনাক্ত করতে পারবেন। এটি আকর্ষণীয় নয় কারণ সম্ভাব্য কয়েকশো প্রশ্ন রয়েছে।

হাফম্যান কোডিংয়ের সাথে সংযোগটি হ'ল গাছটি নির্মাণের জন্য এটি সর্বোত্তম উপায় দেয় (একটি নির্দিষ্ট সম্ভাব্য মডেলের অধীনে) যাতে গড় গভীরতা (প্রায়) ন্যূনতম হয়। অন্য কথায়, এটি আপনাকে জিজ্ঞাসার ক্রম কীভাবে সাজানো যায় (একটি গাছ তৈরি করুন) যাতে আপনার জিজ্ঞাসা করা প্রশ্নাবলীর সংখ্যা গড়ে খুব কম হয় is এটি একটি লোভী পদ্ধতির ব্যবহার করে।

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


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

প্রথম নজরে, 20 টি প্রশ্নের মধ্যে সাদৃশ্য আঁকার ক্ষমতা এবং হাফম্যান কোডিংয়ের জন্য "পরিসীমা প্রশ্নাবলী" জিজ্ঞাসার দক্ষতার উপর জড়িত। তা হচ্ছে, "আপনি কি চরিত্রটি কখনও মহাকাশে এসেছেন?" আমরা "কম্বল" প্রশ্ন জিজ্ঞাসা করি "" তিনি কি কখনও মহাশূন্যে এসেছিলেন, নাকি পুরুষ, বা টাক পড়েছেন, নাকি মুভিতে ছিলেন, বা ... (অন্যান্য 10000 বিকল্প)? " আমি কি সঠিক? যদি তাই হয় তবে আমার সম্ভবত আমার প্রশ্নটি সম্পাদনা করা উচিত যাতে এটি স্পষ্ট হয়ে যায় যে আমি "একের পর এক জিজ্ঞাসা" বৈচিত্র্যের বিষয়ে আগ্রহী
ADEpt

এছাড়াও, 20 টি প্রশ্নের মডেল হিসাবে হাফম্যান কোড ব্যবহার করা বেশিরভাগ নিবন্ধগুলি বোঝায় যে প্রশ্নকর্তা তার নিজের প্রশ্নগুলি তৈরি করতে মুক্ত, যা মূলত " অবজেক্টের কোডওয়ার্ডে বিট "? যাইহোক, আমার ক্ষেত্রে (বা বরং, akinator.com এর ক্ষেত্রে) প্রশ্নের সেট পূর্বনির্ধারিত, এবং এর (স্পষ্টতই) হাফম্যান কোডওয়ার্ডগুলির সাথে কোনও মিল নেই। এখনই আমি দেখতে পাচ্ছি না কীভাবে আমার প্রশ্ন থেকে হাফম্যান কোডগুলিতে রূপান্তর করা যায়। সম্ভবত আপনি বিস্তারিত বলতে পারে? i0
এডেপট

@ ভিকিভি: উত্তর: "আমি মনে করি না এটি সত্যিই একটি শ্রেণিবিন্যাসের সমস্যা 20 পরিসংখ্যানগত অনুমান এবং তথ্য সংক্ষেপণ সরাসরি সম্পর্কিত / একই সমস্যা নয়?
ইয়াং

@ ইয়াং আপনি কি জোর্মা রিসানেনের যুক্তি উল্লেখ করছেন? পরিসংখ্যানগত অনুমান এবং তথ্য সংক্ষেপণ উভয়ই অনিশ্চয়তা বর্ণনা করার জন্য সম্ভাব্য মডেলগুলি ব্যবহার করে তবে তাদের দৃষ্টিভঙ্গি এবং যদি সেই অঞ্চলে গবেষকরা সাধারণত খুব আলাদা হন। আমি উপরে যা বলতে চাই তা হ'ল 20 টি শ্রেণিবিন্যাসের সমস্যাটির পরিবর্তে কমপিউশন (বিশেষত উত্স কোডিং) সমস্যা হিসাবে স্বাভাবিকভাবেই আরও প্রশ্ন তৈরি করা যেতে পারে। … নীচে অবিরত
vqv
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.