প্রদত্ত নামগুলি ভুল বানান করা কীভাবে খুঁজে পাওয়া যায়?


16

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

পটভূমি: আমি একজন রোমানিয়ান-হাঙ্গেরীয়, যিনি একটি পোলিশ-ইউক্রেনীয় একটি শিশুর প্রত্যাশা করছেন এবং আমরা কোন দেশে স্থিতি স্থাপন করতে চাই সে সম্পর্কে আমাদের মন স্থির করেনি। যেমনটি আপনি আশা করতে পারেন, প্রদত্ত নাম নির্বাচন করা অত্যন্ত গুরুত্ব এবং একটি তর্ক বিতর্ক। আমার দিক থেকে, আমি এখনও যে সমস্ত ঝামেলা সহ্য করতে পেরেছিলাম, যখন আমি যখন এক দেশ থেকে অন্য দেশে চলে যাই তখন কেউ আমার নামটি ভুল বানান করে। উদাহরণস্বরূপ, যদি আপনাকে "অ্যাড্রিয়ান" বলা হত তবে আপনি রোমানিয়ায় আশীর্বাদ পাবেন, কেবলমাত্র এটি খুঁজে পাওয়ার জন্য যে আপনি "অ্যাড্রি এন" হয়ে গেছেন, এটি কিছু সরকারী ফ্রেঞ্চ নথি document সুতরাং আমার একমাত্র প্রয়োজন হ'ল এটি ইউরোপের কয়েকটি দেশে বাচ্চার নামটির বানান ভুলভাবে করা সম্ভব না।

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

আরও আনুষ্ঠানিকভাবে: পি (সি, এন) এমন একটি ফাংশন হোক যা দেশে নাম এন এর বানান বানানোর সম্ভাব্যতা ফেরায় । প্রদত্ত সি দেশগুলির একটি সেট এবং p₀ একটি সম্ভাবনা, এটি এন দেওয়া নামের একটি সেট, যেমন যে

সকল nN এবং cC , p (c, n) <p₀ এর জন্য ₀

প্রাথমিক চিন্তা : মূল সমস্যাটি কীভাবে পি (সি, এন) প্রয়োগ করতে হয় । এটি একটি হিউরিস্টিক দিয়ে অনুমান করার চেষ্টা করতে পারে। স্পষ্টতই একটি নাম দুটি ক্ষেত্রে ভুল বানান হওয়ার সম্ভাবনা রয়েছে:

  1. এটি দেশে খুব কম ব্যবহৃত হয়।
  2. এটি অন্য নামের মতো, এটি দেশে খুব কম ব্যবহৃত হয় না।

আমি নিশ্চিত না যে আমি কীভাবে এই দুটি প্রশ্নের দক্ষতার উত্তর দিতে ইন্টারনেট, উদাহরণস্বরূপ, উইকিপিডিয়া ব্যবহার করতে পারি। একটি তালিকায় একটি দেশে কেবল প্রায়শই ব্যবহৃত নামগুলি কীভাবে থাকবে? একইরকম বানানগুলি কীভাবে দেখাবে?


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

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

5
ব্যবহারিক পদ্ধতিটি হ'ল একটি জিইউইডি ব্যবহার করা।
টনিডিজুইডজ

1
দুর্দান্ত এক্সকেসিডি রেফারেন্স। তবে লিটল ববি টেবিলগুলি ভুলে যাবেন না ;-) xkcd.com/327
মাওগ বলেছেন মনিকা

আমি সেই ভাষাগুলিতে স্বরযুক্ত শব্দগুলির তুলনা বিবেচনা করব। আমার জার্মানি সাবলীল, তবে আমি এখনও a
গণ্ডগোল করছি Ma

উত্তর:


15

কিছু পদ্ধতির রয়েছে যা কিছু ভাষার জন্য অন্যের চেয়ে ভাল কাজ করবে। উদাহরণস্বরূপ, সাউন্ডেক্স (এবং আমার পছন্দ মতো অন্য একটি বিবরণ ) নামের ইংরেজি উচ্চারণের জন্য ডিজাইন করা হয়েছিল। সাউন্ডেক্স সহ, এম 240 Michaelহয়ে যায়। এটিতে কয়েকটি পদক্ষেপ রয়েছে:

  1. প্রথম চিঠিটি বিচ্ছিন্ন। ( Mএবং ichael)
  2. সমস্ত স্বর বাকী ( Mএবং chl) থেকে সরানো হয়েছে
  3. ব্যঞ্জনা প্রতিস্থাপন করা হয়
    • c -> 2
    • l -> 4
  4. বাম প্যাড শূন্য।

- ব্যঞ্জনবর্ণ ধর্মান্তর দলীয়করণ তাদের ফোনেটিক সাদৃশ্যের উপর ভিত্তি করে B, F, Pএবং Vসব থেকে মানচিত্র 1

এবং সময়ের সাথে সাথে এর বিভিন্নতা রয়েছে । এটি বিশেষভাবে বংশগতিতে কার্যকর যেখানে একটি নামের বানান সময়ের সাথে সাথে পরিবর্তন হতে পারে তবে উচ্চারণ একই রকম থাকে।


ম্যাচ রেটিংয়ের মতো অ্যাপ্রোচও রয়েছে যা এয়ারলাইনস নামগুলির জন্য উন্নত করেছিল (আমেরিকান বংশানুসারে নয়))

ম্যাচ রেটিং পদ্ধতির এনকোডিং (এমআরএ) হ'ল:

  1. সমস্ত অ-নেতৃস্থানীয় স্বরবর্ণ মুছুন ( Michaelহয়ে Mchlএবং Anthonyহয়ে Anthny)
  2. যে কোনও দ্বিগুণের দ্বিতীয় ধ্রুবকটি সরান
  3. যদি স্ট্রিংটি 6 টি অক্ষরের বেশি হয় তবে প্রথম তিনটি এবং শেষ তিনটি নিয়ে বাকি স্ট্রিংটি 6 টি অক্ষরে কমিয়ে আনুন।

এর সম্পূর্ণ বিবরণটি আর্কাইভ.আরজে পাওয়া যাবে - নোট করুন যে এটি "ছোট নয়" (মুদ্রিত ফর্মটি 214 পৃষ্ঠা)।

তুলনা কতকাল লেখা উপর ভিত্তি করে একটি ম্যাচিং থ্রেশহোল্ড আছে।

আছে অন্য ফনেটিক আলগোরিদিম খুব


সুতরাং, আমি আপনাকে যা করতে উত্সাহিত করব তা হয় সাউন্ডেক্সটি যেমন হয় তেমনই ম্যাচ রেটিং পদ্ধতির মতো করে নিন, বা রোমানিয়ান ব্যঞ্জনবর্ণ এবং পোলিশ ব্যঞ্জনবর্ণের উপর ভিত্তি করে সাউন্ডেক্সকে সংশোধন করুন ।

মনে রাখবেন যে soundex সঙ্গে, ব্যঞ্জনবর্ণ হয় দলবদ্ধ (ইন পোলিশ, m, n, ɲসব অনুনাসিক ব্যঞ্জনবর্ণ দলবদ্ধ করা হয়, এবং আপনি সম্ভবত গ্রুপ, ওষ্ঠ্য ডেন্টাল, এবং ঝাঁঝর plosives হবে - তারা অঘোষ হতে পারে অথবা একসাথে স্বরিত - মঞ্জুর, আমি না পোলিশ জানুন তাই জানেন না যে আমি কেবল এমন জিনিস বলছি যা সেখানে সত্য নয়))

তারপরে ডাটাবেসের সমস্ত নাম দুটি পৃথক পৃথক সাউন্ডএক্স সিস্টেমে আবদ্ধ করুন এবং বিভিন্ন ভাষায় নামগুলির মধ্যে সংঘর্ষগুলির মধ্যে সর্বনিম্ন সেট রয়েছে কি তা সন্ধান করুন find এটি আপনাকে স্বতন্ত্র নাম দেয়। সুতরাং যে Smithহিসাবে প্রদর্শিত হবে না Smyth


তবে এটি কেবলমাত্র "অন্যান্য নামগুলির সাথে সংঘর্ষের সম্ভাব্য নাম এবং দুর্ঘটনার শিকার হওয়ার সমাধান করে" ves এটি "নামটি সঠিকভাবে শুনেছেন, ভুলভাবে লেখা হয়েছে" এর অন্য কোনওভাবে সম্বোধন করে না এবং এর জন্য, সাধারণের দিকে তাদের মনোযোগ কেন্দ্রীভূত করা উচিত।

উদাহরণস্বরূপ, Michaelমার্কিন যুক্তরাষ্ট্রে 1950 সালের শুরু থেকে 1970 সালের শেষের দিকে খুব সাধারণ নাম ছিল name এটি সত্যই জনপ্রিয় ছিল । যাইহোক, কোনও কারণে, নামটি Micheal1950 এর দশকে এক ধরণের জনপ্রিয় ছিল (এটি শীর্ষে 83 তম সাধারণ নামটি পেয়েছিল) up এবং আমি নিশ্চিত যে Michealপ্রতিনিয়ত নাম দেওয়া লোকেরা তাদের নাম ভুল বানান পেয়েছিল।

সুতরাং, আপনার এমন নামগুলিতে ফোকাস করা উচিত যেখানে একটি নাম রয়েছে যা প্রদত্ত উচ্চারণের জন্য নামের জনপ্রিয়তার উপর প্রভাব ফেলে। বছরের নামের জন্য অন্য ডেটা ভোক্তা এ নেত্রপাত, আপনি দেখতে পারেন যে নাম জ্যাম শুরু ... একটি ছেলের জন্য একটি জগাখিচুড়ি হয় সঙ্গে Jamaal, Jamal, Jamarএবং অন্যদের। উল্লেখ্য, এই নামগুলি কিছুটা ভিন্ন soundexes আছে আমেরিকান ( J540, J540এবং J560- lএবং rযদিও তারা ঘনিষ্ঠভাবে ধ্বনিবিজ্ঞান মধ্যে সম্পর্কিত হয় বিভিন্ন গ্রুপের মধ্যে আছে)। যাইহোক, জাপান থেকে আসা কারও জন্য, ফোনেটিক অঞ্চলে যেখানে lএবং সেখানে কেবল একটি শব্দ রয়েছেrআমেরিকান ইংরাজিতে উচ্চারণ করা হয়। এটি শীর্ষস্থানীয় ব্যঞ্জনবর্ণদের সাথে সাউন্ডেক্স ব্যবহার করে একটি চ্যালেঞ্জও তৈরি করতে পারে যা সম্পর্কে সচেতন হওয়া উচিত (আমি একবার জাপানি মহিলার সাথে কাজ করেছি যিনি নিজেকে জাপানি নামের রোমানাইজেশন হিসাবে লিসা না বলে নিজেকে রিসা ("আর" দিয়ে ডেকেছিলেন)।

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

সুতরাং, একটি নামের জন্য সাউন্ডেক্স দেওয়া, কয়েকটি সংঘর্ষ এবং প্রকৃত বানানটি সংঘর্ষের সেটে রয়েছে। সাধারণত, এটি একটি সাধারণ নাম। সেই হানির তালিকার দিকে তাকালে, Krisztiánসম্ভবত ভুল বানান পাওয়া যাবে, সম্ভবত Zoltánকমই হবে (২০১২ সালের সবচেয়ে জনপ্রিয় শিশুর নাম হাঙ্গেরিতে!)। এটি বলেছিল, আপনি ভুল করতে পারবেন না Michael


2
দুর্দান্ত উত্তর! আমি এটি বাস্তবায়নের চেষ্টা করব এবং আমার কাজ শেষ হয়ে গেলে আমি কোডটি ভাগ করে নেব এবং আপনার উত্তরটি গ্রহণ করব।
ব্যবহারকারী1202136

2
এই ধারণাটি বাস্তবায়নের একটি প্রচেষ্টা। বেশিরভাগ "ব্যবহারকারী পরীক্ষা" পাস হচ্ছে না। :) github.com/cristiklein/idemscripttent-given-names
user1202136

দুর্দান্ত উত্তর মাইকেল! @ user1202136 স্ক্রিপ্টে দুর্দান্ত কাজ! আমি ফলাফলগুলি দেখতে আগ্রহী :)
ক্রিস সাইরাফাইস

1
@ ক্রিসক্রাইফাইস: মাইকের উত্তরটি কেবল দুর্দান্ত হলেও, আমি দেখতে পেয়েছি যে এটি "ব্যবহারকারী পরীক্ষায়" উত্তীর্ণ হওয়ার মতো নাম তৈরি করে নি। আমি অনেক সহজ অ্যালগরিদমের জন্য গিয়েছিলাম, এটি শীর্ষস্থানীয় 100 টি তালিকার তালিকায় স্বতন্ত্র বানানগুলির নাম সন্ধান করার চেষ্টা করে। দয়া করে এখানে ফলাফলগুলি সন্ধান করুন: github.com/cristiklein/idemscripttent-given-names
user1202136

1

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

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