পাইথনে পরিপূরক নাইভ বেয়েস বাস্তবায়ন করছেন?


9

সমস্যা

আমি অপরাধের উপাত্তের লেবেলযুক্ত ডেটা সেটটিতে নাইভ বেইস ব্যবহার করার চেষ্টা করেছি তবে সত্যই খারাপ ফলাফল পেয়েছে (%% নির্ভুলতা)। নাইভ বয়েস অন্যান্য অ্যালগরিদমগুলির তুলনায় আমি খুব বেশি দ্রুত রান করি তাই আমি কেন স্কোরটি এত কম তা খুঁজে বের করার চেষ্টা করতে চাই।

গবেষণা

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

কিছু গবেষণা করার পরে আমি জাভাতে একটি বাস্তবায়ন খুঁজে পেতে সক্ষম হয়েছি তবে দুর্ভাগ্যক্রমে আমি কোনও জাভা জানি না এবং আমি নিজেকে প্রয়োগ করার জন্য যথেষ্ট পরিমাণে অ্যালগরিদম বুঝতে পারি না।

প্রশ্ন

অজগরটিতে আমি কোথায় একটি বাস্তবায়ন পেতে পারি? যদি এর অস্তিত্ব না থাকে তবে আমি কীভাবে এটি নিজে বাস্তবায়ন করব?

উত্তর:


5

নিষ্পাপ বয়েস ভারসাম্যহীন ডেটাসেট পরিচালনা করতে সক্ষম হওয়া উচিত। মনে রাখবেন বেইস সূত্রটি

পি(Y|এক্স)=পি(এক্স|Y)পি(Y)পি(এক্স)αপি(এক্স|Y)পি(Y)

সুতরাং পি(এক্স|Y)পি(Y) অগ্রিম লাগে পি(Y) হিসেবের মধ্যে.

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

table = # counts for each feature 
PT = (table + 1) / (table + 1).sum(axis=1, keepdims=1)

নোট করুন যে এটি আপনাকে বহুজাতিক নেভিগ বেয়েস দেয় - যা কেবল শ্রেণিবদ্ধ ডেটাতে প্রযোজ্য।

আমি নীচের লিঙ্কটিও প্রস্তাব করতে পারি: http://www.itshared.org/2015/03/naive-bayes-on-apache-flink.html । এটি অ্যাপাচি ফ্লিংকে নাইভ বেয়েস বাস্তবায়নের কথা। এটি জাভা থাকাকালীন, সম্ভবত এটি আপনাকে কিছু তত্ত্ব প্রদান করবে যা আপনাকে অ্যালগরিদম আরও ভালভাবে বুঝতে হবে।


আপনি হয়ত সঠিক হতে পারেন দেখে মনে হচ্ছে নিষ্পাপ বায়েসের কেবল পাঠ্যের শ্রেণিবদ্ধকরণে ভারসাম্যহীন সমস্যা রয়েছে। স্মুথিং কি তা আপনি ব্যাখ্যা করতে পারেন?
তৃণমূল

আপনি কি লিঙ্কটি একবার দেখেছেন? এটি সেখানে ব্যাখ্যা করা হয়েছে। সংক্ষেপে, যখন অনুমানপি(এক্স|Y) কখনও কখনও এক্সপ্রশিক্ষণের সময় এবং স্মুথিংয়ের সময় কখনও দেখা যায় না যে এটি নিশ্চিত করে যে এটি সমস্ত বৈশিষ্ট্যগুলিতে কিছু অতিরিক্ত গণনা (স্থল বা +1 স্মুথিংয়ের ক্ষেত্রে) যোগ করে শ্রেণিবদ্ধের কার্যকারিতা নষ্ট করে না।
আলেক্সি গ্রিগোরভ

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