আমি সফলতার সাথে ব্যবহার করেছি তবে কোথাও বর্ণিত কখনও দেখিনি এমন পরামর্শ উত্পন্ন করার জন্য একটি কৌশল হ'ল "খারাপ" হ্যাশ ফাংশন ব্যবহার করে প্রাক-গণনা পরামর্শগুলি (অভিধান তৈরি করার সময়)।
ধারণাটি হ'ল লোকেরা যে ধরনের বানান ত্রুটি তৈরি করে সেগুলি দেখে এবং হ্যাশ ফাংশনগুলি ডিজাইন করা যা তার সঠিক বানান হিসাবে একই বালতিতে একটি ভুল বানান নির্ধারণ করে।
উদাহরণস্বরূপ, একটি সাধারণ ভুল মত, ভুল স্বরবর্ণ ব্যবহার করা definate পরিবর্তে নির্দিষ্ট । সুতরাং আপনি একটি হ্যাশ ফাংশন ডিজাইন করেছেন যা সমস্ত স্বরকে একই বর্ণ হিসাবে বিবেচনা করে। এটি করার একটি সহজ উপায় হ'ল প্রথমে ইনপুট শব্দটিকে "স্বাভাবিককরণ" এবং তারপরে একটি নিয়মিত হ্যাশ ফাংশনটির মাধ্যমে সাধারণীকরণের ফলাফলটি রাখা হয়। এই উদাহরণে, স্বাভাবিককরণের ক্রিয়াটি সমস্ত স্বরগুলি ফেলে দিতে পারে, তাই definite
হয়ে যায় dfnt
। "নরমালাইজড" শব্দটি পরে একটি সাধারণ হ্যাশ ফাংশন দিয়ে হ্যাশ করা হয়।
এই বিশেষ হ্যাশ ফাংশনটি ব্যবহার করে আপনার অভিধানের সমস্ত শব্দ একটি সহায়ক সূচীতে (হ্যাশ টেবিল) sertোকান। এই টেবিলের বালতিগুলিতে দীর্ঘতর সংঘর্ষের তালিকা থাকবে কারণ হ্যাশ ফাংশনটি "খারাপ", তবে সেই সংঘর্ষের তালিকাগুলি মূলত প্রাক-গণিত পরামর্শ।
এখন, যখন আপনি কোনও ভুল বানানযুক্ত শব্দটি খুঁজে পান, আপনি বালতিটির জন্য সংঘর্ষের তালিকাটি সন্ধান করুন যা ভুল সূচকটি মানচিত্রের সূচকগুলিতে ম্যাপ করে। তা দা: আপনার একটি পরামর্শের তালিকা আছে! আপনাকে যা করতে হবে তা হ'ল শব্দটিকে র্যাঙ্ক করা।
অনুশীলনে, অন্য ধরণের ত্রুটি যেমন ট্রান্সপোজড হরফ, একক / ডাবল লেটার এবং এমনকি ফোনেটিক ভুল বানান ধরার জন্য সরলবাদী সাউন্ডেক্স-এর মতো হ্যান্ড ফাংশনগুলির সাথে আপনাকে কয়েকটি সহায়ক ইনডেক্স প্রয়োজন need অনুশীলনে, আমি দীর্ঘতর পথ যেতে সরল উচ্চারণের সন্ধান পেয়েছি এবং তুচ্ছ টাইপগুলি সন্ধান করার জন্য ডিজাইন করা কিছুকে মূলত অপ্রচলিত করেছি।
সুতরাং এখন আপনি সহায়িকা সূচকের প্রতিটিতে ভুল বানান সন্ধান করুন এবং র্যাঙ্কিংয়ের আগে সংঘর্ষের তালিকাগুলিকে একত্রিত করুন।
মনে রাখবেন সংঘর্ষের তালিকায় কেবল শব্দ রয়েছে যা অভিধানে রয়েছে। বিকল্প বানান তৈরি করার চেষ্টা করার পদ্ধতির সাথে (পিটার নরভিগ প্রবন্ধে যেমন) আপনি হাজার হাজার প্রার্থী পেতে পারেন যা আপনাকে অভিধানের বিপরীতে ফিল্টার করতে হবে। প্রাক-গণিত পদ্ধতির সাহায্যে আপনি কয়েক শতাধিক প্রার্থী পেতে পারেন এবং আপনি জানেন যে তারা সবাই সঠিকভাবে বানান করেছেন, তাই আপনি সরাসরি র্যাঙ্কিংয়ে যেতে পারেন ip
আপডেট : আমি এরপরে একটি আলগোরিদিম বর্ণনা খুঁজে পেয়েছি যা এর অনুরূপ, ফারু বিতরণ অনুসন্ধান । এটি এখনও একটি সম্পাদনা-দূরত্ব সীমিত অনুসন্ধান, তবে এটি খুব দ্রুত কারণ প্রাক-গণনা পদক্ষেপটি আমার "খারাপ হ্যাশ ফাংশন" ধারণার মতো কাজ করে। ফারু কেবলমাত্র একটি খারাপ হ্যাশ ফাংশনটির সীমিত ধারণা ব্যবহার করে।