গুগল কীভাবে "আপনি বোঝাতে চেয়েছিলেন?" অ্যালগরিদমের কাজ?


436

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

আমার বুদ্ধিমানভাবে একটি ব্যবহারকারী জিজ্ঞাসা নিতে সক্ষম হবে এবং কেবল কাঁচা অনুসন্ধানের ফলাফলের সাথেই নয় তবে "আপনার অর্থ কি?" প্রতিক্রিয়া যখন খুব সম্ভবত বিকল্প উত্তর থাকে ইত্যাদি

[আমি এএসপি.নেটে বিকাশ করছি (ভিবি - এটি আমার বিরুদ্ধে ধরবেন না!)]

আপডেট: ঠিক আছে, আমি কয়েক মিলিয়ন 'বেতনের ব্যবহারকারী' ব্যতীত এটিকে কীভাবে অনুকরণ করতে পারি?

  • প্রতিটি 'জ্ঞাত' বা 'সঠিক' টার্মের জন্য টাইপগুলি তৈরি করুন এবং লুকআপগুলি সম্পাদন করুন?
  • আরও কিছু মার্জিত পদ্ধতি?

1
এখানে নরভিগ বানান সংশোধকটির VB.NET সংস্করণ। খুব বেশি দেরি না হলে আপনি এই দরকারী খুঁজে পেতে পারেন!
রাল্ফ উইগগাম


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

উত্তর:


366

উত্স থেকে সরাসরি ব্যাখ্যা এখানে (প্রায়)

101 অনুসন্ধান করুন!

ন্যূনতম 22:03 এ

মূল্যবান!

মূলত এবং গুগলের প্রাক্তন সিটিও ডগলাস মেরিলের মতে এটি এরকম:

1) আপনি গুগলে একটি (ভুল বানান) শব্দ লিখুন

2) আপনি যা চেয়েছিলেন তা পান না (কোনও ফলাফলের জন্য ক্লিক করবেন না)

3) আপনি বুঝতে পেরেছেন যে আপনি শব্দটি ভুল বানান করেছেন যাতে আপনি অনুসন্ধান বাক্সে শব্দটি আবার লিখেন।

৪) আপনি যা চান তা পেয়ে যান (আপনি প্রথম লিঙ্কগুলিতে ক্লিক করুন)

এই নিদর্শনটি কয়েক মিলিয়নগুণ বেড়েছে, সবচেয়ে সাধারণ ভুল বানানগুলি কী এবং সবচেয়ে "সাধারণ" সংশোধনগুলি কী তা দেখায়।

এভাবে গুগল প্রায় তাত্ক্ষণিকভাবে প্রতিটি ভাষায় বানান সংশোধন করতে পারে।

এছাড়াও এর অর্থ যদি রাতারাতি প্রত্যেকে "nigth" গুগল হিসাবে রাতের বানান শুরু করে তবে গুগল সেই শব্দটির পরিবর্তে প্রস্তাব দেবে।

সম্পাদনা

@ থমাসরুটার: ডগলাস এটিকে "পরিসংখ্যান মেশিন লার্নিং" হিসাবে বর্ণনা করে।

তারা জানেন যে কে কোয়েরিটি সংশোধন করে, কারণ তারা জানে যে কোন ব্যবহারকারী থেকে কোয়েরি আসে (কুকিজ ব্যবহার করে)

যদি ব্যবহারকারীরা একটি ক্যোয়ারি করে, এবং শুধুমাত্র 10% ব্যবহারকারী একটি ফলাফলের উপর ক্লিক করে এবং 90% পিছনে গিয়ে অন্য কোয়েরি টাইপ করে (সঠিক শব্দ সহ) এবং এবার যে ফলাফলটি 90% ক্লিক করে, তখন তারা জানে যে তারা খুঁজে পেয়েছে একটি সংশোধন

এগুলি দুটি পৃথক সম্পর্কিত "সম্পর্কিত" প্রশ্নগুলি আছে কিনা তা তারা জানতে পারে, কারণ তাদের দেখানো সমস্ত লিঙ্কের তথ্য রয়েছে।

তদ্ব্যতীত, তারা এখন বানান পরীক্ষায় প্রসঙ্গটি অন্তর্ভুক্ত করছে, তাই তারা প্রসঙ্গের উপর নির্ভর করে আলাদা শব্দও প্রস্তাব করতে পারে।

গুগল ওয়েভের এই ডেমোটি দেখুন (@ 44 মি 06 এস) যা দেখায় যে স্বয়ংক্রিয়ভাবে বানানটি সংশোধন করতে প্রসঙ্গটি কীভাবে বিবেচিত হয়।

এখানে কিভাবে এটি যে প্রাকৃতিক ভাষা প্রক্রিয়াকরণ কাজ ব্যাখ্যা করা হয়।

এবং অবশেষে এখানে মিশ্রণটিতে স্বয়ংক্রিয় মেশিন অনুবাদ (@ 1 ঘন্টা 12 মি 47s) যুক্ত কী করা যায় তার দুর্দান্ত একটি ডেমো রয়েছে ।

আমি সরাসরি লিখিত সামগ্রীতে এড়াতে ভিডিওগুলিতে মিনিট এবং সেকেন্ডের অ্যাঙ্কর যুক্ত করেছি, যদি তারা কাজ না করে তবে পৃষ্ঠাটি পুনরায় লোড করার চেষ্টা করুন বা হাতে হাত দিয়ে স্ক্রোলিং করার চেষ্টা করুন।


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

51
যদি সবাই "রাত" ভুল বানান শুরু করে ... আমি বিশ্বাস করি তারা ইতিমধ্যে "ফ্লিকার" সন্ধানকারী লোকদের সাথে এটিতে ছুটে এসেছেন।
ম্যাক্স ল্যাববার্ট

42
প্রত্যেকের সাথে কিছু ভুল বানানের সমস্যা ইতিমধ্যে আরও তীব্র অর্থে ঘটেছে: গুগলে 'ফুসিয়া' টাইপ করার চেষ্টা করুন। গুগল বলেছে "আপনি কি ফুসিয়া বলতে চাইছেন?" সঠিক বানানটি আসলে "ফুসিয়া" তবে কোনও কারণে কোনও এটি সঠিকভাবে বানান করতে পারে না। অভিধান ডট কম এ সমস্যাটি আরও ভয়াবহ; যদি আপনি তাদের অনুসন্ধানে "ফুসিয়া" টাইপ করেন তবে এটি আপনাকে "ফুসিয়া জন্য কোনও ফল দেয় না you আপনি 'ফুচিয়া' বলতে চাইছেন?" (উদাহরণস্বরূপ, আপনি কী টাইপ করেছেন তার অর্থ কি?)
ডেইজি সোফিয়া হলম্যান

8
আমি বিশ্বাস করি না যে তারা কেবল ভুল বানান ডেটা ব্যবহার করে - অবশ্যই কিছু লেভেনস্টেইনের দূরত্ব বা একই রকম চলছে - 'প্ল্যাক' অনুসন্ধান করুন (এবং এক বা একাধিক শব্দ) এবং এটি সর্বদা 'কালো' সংশোধন হয়ে যায়, এটি একটি খুব সম্ভবত সম্ভাব্য ভুল বানান / typo
প্লাসপ্লাস

4
@ জাকুব আমি মনে করি যে তারা 4+ বছর আগে এই মন্তব্যটি করার পরে তারা সমস্যাটি স্থির করেছেন। প্রকৃতপক্ষে, গুগলও সমস্যাটি স্থির করেছে। ফুচিয়া অনুসন্ধানে স্বয়ংক্রিয়ভাবে ফুচিয়ার ফলাফল অন্তর্ভুক্ত রয়েছে।
ডেইজি সোফিয়া হলম্যান

104

আমি এই নিবন্ধটি কিছু সময় আগে পেয়েছি: পিটার নরভিগ (গুগল ইনক। এর পরিচালক পরিচালক) রচিত একটি বানান সংশোধনকারী কীভাবে লিখবেন

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

নীচে অ্যালগরিদমের সংক্ষিপ্ত বিবরণ অনুসরণ করা হয়েছে। অ্যালগরিদম দুটি পদক্ষেপ নিয়ে গঠিত, প্রস্তুতি এবং শব্দ পরীক্ষা করা।

পদক্ষেপ 1: প্রস্তুতি - শব্দ ডাটাবেস সেট আপ

আপনি প্রকৃত অনুসন্ধান শব্দ এবং তাদের উপস্থিতি ব্যবহার করতে পারলে সেরা। যদি আপনার কাছে না থাকে তবে পরিবর্তে বড় আকারের পাঠ্য ব্যবহার করা যেতে পারে। প্রতিটি শব্দের উপস্থিতি (জনপ্রিয়তা) গণনা করুন।

পদক্ষেপ 2. শব্দ চেকিং - যাচাই করা শব্দটির অনুরূপ শব্দগুলি সন্ধান করা

অনুরূপ অর্থ হ'ল সম্পাদনার দূরত্ব কম (সাধারণত 0-1 বা 0-2)। সম্পাদনা দূরত্ব হ'ল একটি শব্দকে অন্য শব্দের রূপান্তর করতে প্রয়োজনীয় ন্যূনতম সংখ্যা / মুছে ফেলা / পরিবর্তনগুলি / অদলবদল।

পূর্ববর্তী পদক্ষেপ থেকে সর্বাধিক জনপ্রিয় শব্দটি চয়ন করুন এবং এটি সংশোধন হিসাবে প্রস্তাব করুন (যদি শব্দটি নিজেই বাদে থাকে)।


6
@ ডেভিড: "" "উদাহরণগুলি অজগরের মধ্যে রয়েছে তবে এটি বোঝাটা পরিষ্কার এবং সহজ" "": আমি আপনার "তবে" ব্যবহারটি বুঝতে পারি না ... আমি পাইথন + নরভিগের লেখার স্টাইলটি "পরিষ্কার এবং বলব" বুঝতে সহজ "প্রত্যাশিত ফলাফল।
জন মাচিন

20
"কিন্তু" সেখানে ছিল কারণ হ্যারি তার প্রশ্নে বলেছিলেন যে তিনি একজন ভিবি.এনইটি বিকাশকারী, তাই আমি ধরে নিয়েছিলাম যে তিনি পাইথন ভাষার প্রতি আত্মবিশ্বাসী নন।
ডেভিড গুয়ালানো

56

"আপনি কি বোঝাতে চেয়েছিলেন" তত্ত্বের জন্য অ্যালগরিদম আপনি তথ্য পুনরুদ্ধারের পরিচিতির অধ্যায় 3 পড়তে পারেন। এটি অনলাইনে বিনামূল্যে পাওয়া যায় । বিভাগ 3.3 (পৃষ্ঠা 52) আপনার প্রশ্নের সঠিক উত্তর দেয়। এবং আপনার আপডেটটির বিশেষভাবে উত্তর দেওয়ার জন্য আপনার কাছে কেবলমাত্র শব্দের একটি অভিধান এবং আর কিছুই নয় (মিলিয়ন মিলিয়ন ব্যবহারকারী)।


10

হুম ... আমি ভেবেছিলাম যে গুগল কিছু গুরুতর এনএলপি (প্রাকৃতিক ভাষা প্রক্রিয়াকরণ) করতে তাদের বিশাল করপাস ডেটা (ইন্টারনেট) ব্যবহার করেছে।

উদাহরণস্বরূপ, পুরো ইন্টারনেট থেকে তাদের কাছে এতগুলি ডেটা রয়েছে যে তারা তিন-শব্দের ক্রমটি সংঘটিত হতে পারে ( ট্রাইগ্রাম হিসাবে পরিচিত ) count সুতরাং যদি তারা কোনও বাক্য দেখতে পান: "গোলাপী ফ্রুগার কনসার্ট", ​​তারা দেখতে পেতেন এটিতে বেশ কয়েকটি হিট রয়েছে, তবে তাদের কর্পাসে খুব সম্ভবত "গোলাপী * কনসার্ট" সন্ধান করুন।

তারা স্পষ্টতই ডেভিড গুয়ালানো যা বলছিলেন তার একটি প্রকরণই করেছেন, তবে অবশ্যই এই লিঙ্কটি পড়ুন। গুগল অবশ্যই কর্পাস হিসাবে জানে এমন সমস্ত ওয়েব পৃষ্ঠাগুলি ব্যবহার করে যাতে এর অ্যালগরিদমকে বিশেষভাবে কার্যকর করে তোলে।


7

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


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

6

সাধারণত একটি উত্পাদন বানান সংশোধক একটি বানানের পরামর্শ দেওয়ার জন্য বিভিন্ন পদ্ধতি ব্যবহার করে। কিছু:

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

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

  • চরিত্রের অবস্থানের ভিত্তিতে সম্ভাব্য কীবোর্ড ভুল সম্পর্কিত হিউরিস্টিক্স ব্যবহার করুন। যাতে "hwllo" "হ্যালো" হওয়া উচিত কারণ 'ডাব্লু' 'ই' এর কাছাকাছি।

  • শব্দগুলি সূচক এবং সম্ভাব্য সংশোধনগুলি অনুসন্ধান করতে একটি ফোনেটিক কী (সাউন্ডেক্স, মেটাফোন) ব্যবহার করুন। অনুশীলনে এটি সাধারণত এন-গ্রাম সূচক ব্যবহার করার চেয়ে উপরে বর্ণিত হিসাবে খারাপ ফলাফলগুলি প্রদান করে।

  • প্রতিটি ক্ষেত্রে আপনাকে তালিকা থেকে সেরা সংশোধন করতে হবে। এটি লেভেনস্টাইন, কীবোর্ড মেট্রিক ইত্যাদির মতো একটি দূরত্বের মেট্রিক হতে পারে

  • বহু-শব্দযুক্ত বাক্যাংশের জন্য, কেবলমাত্র একটি শব্দই ভুল বানানযুক্ত হতে পারে, সেক্ষেত্রে আপনি বাকী শব্দগুলি একটি সেরা ম্যাচ নির্ধারণের প্রসঙ্গে হিসাবে ব্যবহার করতে পারেন।


6

লেভেনস্টেইন দূরত্ব ব্যবহার করুন , তারপরে শব্দের সূচীতে একটি মেট্রিক ট্রি (বা স্লিম ট্রি) তৈরি করুন। তারপরে একটি নিকটবর্তী নিকটবর্তী ক্যোয়ারী চালান, এবং আপনি ফলাফল পেয়েছেন।


4

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

সুতরাং,

  1. আপনার একটি অভিধান প্রয়োজন (ইংরেজি বা আপনার ডেটার উপর ভিত্তি করে)

  2. একটি শব্দ ট্রেলিস উত্পন্ন করুন এবং আপনার অভিধানটি ব্যবহার করে ট্রানজিশনের জন্য সম্ভাবনাগুলি গণনা করুন।

  3. আপনার ট্রেলিস ব্যবহার করে সর্বনিম্ন ত্রুটির দূরত্ব গণনা করতে একটি ডিকোডার যুক্ত করুন। অবশ্যই দূরত্ব গণনা করার সময় আপনার সন্নিবেশ এবং মুছে ফেলার যত্ন নেওয়া উচিত। মজার বিষয় হ'ল QWERTY কীবোর্ড দূরত্ব সর্বাধিক করে তোলে যদি আপনি একে অপরের কাছাকাছি কীগুলি আঘাত করেন (

  4. নূন্যতম দূরত্ব রয়েছে এমন শব্দটি ফিরিয়ে দিন।

  5. তারপরে আপনি এটি আপনার ক্যোয়ারী ডাটাবেসের সাথে তুলনা করতে পারেন এবং অন্যান্য নিকটতম ম্যাচের জন্য আরও ভাল ফলাফল আছে কিনা তা পরীক্ষা করতে পারেন।


4

গুগলের ডিরেক্টর অফ রিসার্চ পিটার নরভিগের দ্বারা প্রয়োগ করা এবং বর্ণিত বানান সংশোধকটি এখানে পেয়েছি সেরা উত্তরটি

এর পেছনের তত্ত্বটি সম্পর্কে যদি আরও জানতে চান তবে আপনি তাঁর বইয়ের অধ্যায়টি পড়তে পারেন ।

এই অ্যালগরিদমের ধারণা পরিসংখ্যান মেশিন শেখার উপর ভিত্তি করে।


3

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


3

অনুমান হিসাবে ... এটি পারে

  1. শব্দ অনুসন্ধান করুন
  2. যদি এটি পাওয়া যায় না তবে শব্দটি "অনুমান" করার চেষ্টা করার জন্য কিছু অ্যালগরিদম ব্যবহার করুন।

হিফিল্ড নেটওয়ার্ক বা পিছনের প্রচার নেটওয়ার্কের মতো এআই থেকে কিছু হতে পারে বা অন্য কিছু "আঙুলের ছাপ সনাক্তকরণ", ভাঙা তথ্য পুনরুদ্ধার করা, বা ডেভিড ইতিমধ্যে উল্লিখিত হিসাবে বানান সংশোধন হতে পারে ...


2

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

আসলে, যদি ভুল বানানটি কার্যকরভাবে সর্বাধিক ঘন ঘন অনুসন্ধান করা হয়, তবে অ্যালগরিদমটি এটি সঠিকটির জন্য গ্রহণ করবে take


1
গুগলের কাছে এটি করার জন্য প্রয়োজনীয় সমস্ত তথ্য রয়েছে তা নিয়ে কেউ সন্দেহ করেনি, তবে গুগল কীভাবে যুক্তিসঙ্গত পরিমাণে এতটা ডেটা সহ এই কাজটি করার জন্য একটি অ্যালগরিদম নিয়ে এসেছিল সে সম্পর্কে বিশদ জানতে চাইছিল। তাদের দিনে গাজিলিয়ন অনুসন্ধান থাকবে - অনুসন্ধান শব্দটি অন্যের, 'সাম্প্রতিক' এর 'বানান সংশোধন' কিনা তা সহজেই কীভাবে তারা সনাক্ত করতে পারে? কোন শব্দগুলি Google কে এই সিদ্ধান্ত নিতে বাধ্য করে যে একটি শব্দটি অন্যটির ভুল বানান? এগুলি বাস্তবায়নের বিশদ যা আগ্রহী হবে।
থোমাস্রুটার

2

টন ডেটা না করে আচরণের নকল করবেন কীভাবে আপনার প্রশ্ন সম্পর্কে - গুগল সংগ্রহ করা টন ডেটা ব্যবহার করবেন না কেন? এর জন্য গুগল সার্ক ফলাফলগুলি ডাউনলোড করুনভুল বানান শব্দের এবং এইচটিএমএলে "আপনার অর্থ কি ছিল:" অনুসন্ধান করুন।

আমার ধারণা আজকাল এটিকে ম্যাশআপ বলা হয় :-)


যতক্ষণ না গুগল আপনার বটটিকে স্ক্র্যাপিং থেকে থামিয়ে দেয়? - বা গুগল আজকাল খেয়াল করবে না?
অ্যান্ড্রু হ্যারি

আমার মনে হয় না যে তারা যদি উত্তরগুলি / সেকেন্ড খুব বেশি না করে তবে তারা লক্ষ্য করবে।
মৌরিসিও শেফার

2

উপরের উত্তরগুলি বাদে, আপনি নিজে নিজে কোনও কিছু দ্রুত প্রয়োগ করতে চাইলে, এখানে একটি পরামর্শ -

অ্যালগরিদম

আপনি গিটহাবে এই অ্যালগরিদমের বাস্তবায়ন এবং বিস্তারিত ডকুমেন্টেশন খুঁজে পেতে পারেন ।

  • তুলনামূলক দিয়ে অগ্রাধিকার সারি তৈরি করুন।
  • একটি টার্নে অনুসন্ধান ট্রি তৈরি করুন এবং তাদের ফ্রিকোয়েন্সি সহ সমস্ত ইংরেজি শব্দ ( নরভিগের পোস্ট থেকে ) সন্নিবেশ করুন ।
  • টিএসটি ট্র্যাভার করা শুরু করুন এবং টিএসটি-তে আসা প্রতিটি শব্দের জন্য, ইনপুট_ওয়ার্ড থেকে এর লেভেনস্টাইন দূরত্ব ( এলডি ) গণনা করুন
  • যদি এলডি ≤ 3 করে তবে এটি একটি অগ্রাধিকার সারিতে রাখুন।
  • সর্বশেষে অগ্রাধিকার সারি থেকে 10 টি শব্দ বের করুন এবং প্রদর্শন করুন।

1

আপনি বানান পরীক্ষক বলতে চান? যদি এটি একটি পুরো বাক্যাংশের চেয়ে স্পেল চেকার হয় তবে আমি বানান যাচাইয়ের বিষয়ে একটি লিঙ্ক পেয়েছি যেখানে অজগরটিতে অ্যালগরিদম তৈরি করা হয়েছে। এই লিঙ্কটি পরীক্ষা করুন

ইতিমধ্যে, আমি এমন প্রকল্পেও কাজ করছি যাতে পাঠ্য ব্যবহার করে ডেটাবেস অনুসন্ধান করা অন্তর্ভুক্ত থাকে। আমার ধারণা এটি আপনার সমস্যার সমাধান করবে


1

এটি একটি পুরানো প্রশ্ন এবং আমি অবাক হয়েছি যে কেউ আপাচি সোলার ব্যবহার করে ওপিকে পরামর্শ দেয়নি।

অ্যাপাচি সোলার একটি সম্পূর্ণ পাঠ্য অনুসন্ধান ইঞ্জিন যা অন্যান্য অনেক কার্যকারিতা ছাড়াও বানান যাচাই বা কোয়েরি পরামর্শও সরবরাহ করে। ডকুমেন্টেশন থেকে :

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


0

একটি নির্দিষ্ট ডেটা স্ট্রাকচার রয়েছে - টের্নারি সার্চ ট্রি - যা প্রাকৃতিকভাবে আংশিক ম্যাচ এবং নিকট-প্রতিবেশী ম্যাচগুলিকে সমর্থন করে।


-1

এটি নির্ধারণের সবচেয়ে সহজ উপায় হ'ল গুগল ডায়নামিক প্রোগ্রামিং।

এটি একটি অ্যালগরিদম যা তথ্য পুনরুদ্ধার থেকে ধার করা হয়েছে এবং আধুনিক জৈববৈজ্ঞানিকগুলিতে দুটি জিনের সিকোয়েন্সগুলি কতটা সীমাবদ্ধ তা দেখতে ব্যবহার করা হয়।

অনুকূল সমাধান গতিশীল প্রোগ্রামিং এবং পুনরাবৃত্তি ব্যবহার করে।

এটি প্রচুর সমাধান সহ একটি খুব সমাধান সমস্যা। আপনি কিছু ওপেন সোর্স কোড না পাওয়া পর্যন্ত কেবল গুগল করুন।

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