আমি একটি কোসাইন লোকালটিটিটিভিটিভ সংবেদনশীল হ্যাশ তৈরির চেষ্টা করছি যাতে আমি প্রতিটি সম্ভাব্য জোড়ের তুলনা না করে প্রার্থীদের অনুরূপ জোড়া আইটেমগুলি খুঁজে পেতে পারি। আমি এটি মূলত কাজ করছি, তবে আমার ডেটাতে বেশিরভাগ জুড়ির মনে হয় -0.2 থেকে +0.2 পরিসরে কোসাইন মিল রয়েছে তাই আমি এটি বেশ সূক্ষ্মভাবে পাতলা এবং কোসাইন মিলের সাথে জিনিসগুলি বেছে নেওয়ার চেষ্টা করছি 0.1 এবং তারপরে।
আমি মাইনিং ম্যাসিভ ডেটাসেটস অধ্যায়টি পড়েছি This স্থানীয়-সংবেদনশীল পরিবারকে প্রশস্ত করে প্রার্থী জুটির নির্বাচনের যথার্থতা বাড়ানোর বিষয়ে এই আলোচনা talks আমি মনে করি আমি গাণিতিক ব্যাখ্যাটি প্রায় বুঝতে পেরেছি, তবে আমি কীভাবে এটি ব্যবহারিকভাবে প্রয়োগ করি তা দেখার জন্য আমি সংগ্রাম করছি।
আমার এখন পর্যন্ত যা আছে তা নিম্নরূপ
- আমি 1M ব্যবহারকারীর কিছু নির্বাচন থেকে রেটিং সহ প্রতিটি 1000 টি সিনেমা বলেছি। প্রতিটি মুভি ব্যবহারকারীর স্কোরগুলির বিরল ভেক্টর দ্বারা প্রতিনিধিত্ব করা হয় (সারি সংখ্যা = ব্যবহারকারীর আইডি, মান = ব্যবহারকারীর স্কোর)
- আমি এন এলোমেলো ভেক্টর নির্মাণ। ভেক্টরের দৈর্ঘ্য চলচ্চিত্রের ভেক্টরগুলির দৈর্ঘ্যের সাথে (যেমন ব্যবহারকারীর সংখ্যা) মেলে। ভেক্টরের মানগুলি +1 বা -1 হয়। আমি স্থান সংরক্ষণের জন্য বাইনারি হিসাবে এই ভেক্টরগুলিকে প্রকৃতপক্ষে এনকোড করেছি, +1 টি 1-তে ম্যাপ করা হয়েছে এবং 0-তে ম্যাপ করা হয়েছে
- আমি মুভিটির ডট প্রোডাক্ট এবং প্রতিটি এন এলোমেলো ভেক্টর গ্রহণ করে প্রতিটি সিনেমার জন্য স্কেচ ভেক্টর তৈরি করি (অথবা এর পরিবর্তে, যদি আমি এন র্যান্ডম ভেক্টরগুলিকে অনুভূমিকভাবে রেখে এবং একে অপরের উপরে স্থাপন করে স্কেচ ভেক্টর তৈরি করি তবে স্কেচ মুভিটির জন্য মি আর * মি) রয়েছে, তারপরে ফলাফল ভেক্টরের প্রতিটি উপাদানের চিহ্ন নিয়ে যাব, সুতরাং আমি +1 এবং -1 এস এর প্রতিটি সিনেমার স্কেচ ভেক্টর দিয়ে শেষ করব যা আবার আমি বাইনারি হিসাবে এনকোড করেছি। প্রতিটি ভেক্টর দৈর্ঘ্য এন বিট হয়।
- পরবর্তী আমি নিম্নলিখিতগুলি করে অনুরূপ স্কেচগুলি সন্ধান করি
- আমি স্কেচ ভেক্টরকে বি বিটির বি ব্যান্ডগুলিতে বিভক্ত করেছি
- R বিটের প্রতিটি ব্যান্ড একটি সংখ্যা। আমি সেই নম্বরটি ব্যান্ড নম্বরটির সাথে একত্রিত করি এবং মুভিটি সেই সংখ্যার অধীনে একটি হ্যাশ বালতিতে যুক্ত করি। প্রতিটি মুভি একাধিক বালতিতে যুক্ত করা যায়।
- আমি তারপর প্রতিটি বালতি তাকান। একই বালতিতে থাকা যে কোনও সিনেমা হ'ল প্রার্থী জুটি।
এটি এমএমডিএসের ৩..3.৩ এর সাথে তুলনা করে, আমার এবং পদক্ষেপটি যখন আমি r বিটের ব্যান্ডগুলিতে দেখি - আর এক বিচিত্র মুভিগুলি অ্যান্ড স্টেপ পাস করে যদি আর বিটগুলির একই মান থাকে। আমার OR পদক্ষেপ বালতিতে ঘটে: সিনেমাগুলি উভয় বালতিতে থাকলে প্রার্থী জুটি।
বইটি পরামর্শ দেয় যে আমি আরও ওআর এবং ওআর পদক্ষেপগুলি যুক্ত করে আমার ফলাফলগুলিকে "প্রশস্ত" করতে পারি, তবে কীভাবে এটি ব্যবহারিকভাবে করা যায় তার জন্য আমি ক্ষতিগ্রস্থ হচ্ছি কারণ আরও স্তরগুলির জন্য নির্মাণ প্রক্রিয়াটির ব্যাখ্যাটি বরং যুগলভাবে সমতা যাচাইয়ের ক্ষেত্রে রয়েছে বালতি নম্বর নিয়ে আসছে।
আমাকে কীভাবে এটি করতে হয় কেউ বুঝতে সাহায্য করতে পারে?