في بعض البرامج، تعتبر ميزة المدقق الإملائي (أو التدقيق الإملائي) ميزة برمجية للتحقق من الأخطاء الإملائية في النص. غالبًا ما يتم تضمين ميزات التدقيق الإملائي في البرامج أو الخدمات، مثل برامج معالجة النصوص أو برامج عميل البريد الإلكتروني أو برامج القاموس الإلكتروني أو محركات البحث.
Eye have a spelling chequer,
It came with my Pea Sea.
It plane lee marks four my revue
Miss Steaks I can knot sea.
Eye strike the quays and type a whirred
And weight four it two say
Weather eye am write oar wrong
It tells me straight a weigh.
Eye ran this poem threw it,
Your shore real glad two no.
Its vary polished in its weigh.
My chequer tolled me sew.
A chequer is a bless thing,
It freeze yew lodes of thyme.
It helps me right all stiles of righting,
And aides me when eye rime.
Each frays come posed up on my screen
Eye trussed too bee a joule.
The chequer pours o'er every word
Two cheque sum spelling rule.
The original version of this poem was written by Jerrold H. Zar in 1992. An unsophisticated spell checker will find little or no fault with this poem because it checks words in isolation. A more sophisticated spell checker will make use of a قالب اللغة to consider the context in which a word occurs.
التصميم
يقوم المدقق الإملائي الأساسي بالعمليات التالية:
يقوم بمسح النص واستخراج الكلمات الواردة فيه.
ثم يقارن كل كلمة بقائمة معروفة من الكلمات ذات الهجاء الصحيح (المقصود بالقائمة المعروفة هو القاموس). قد يحتوي هذا على قائمة كلمات فقط، أو قد يحتوي أيضًا على معلومات إضافية، مثل نقاط الواصلة أو السمات المعجمية والنحوية.
خطوة إضافية هي خوارزمية تعتمد على اللغة للتعامل مع علم الصرف باللغة. حتى بالنسبة للغة ذات التأثير الخفيف مثل اللغة الإنجليزية، سيحتاج المدقق الإملائي إلى النظر في أشكال مختلفة من نفس الكلمة، مثل الجمع، والأشكال اللفظية، والاختصارات، والملكيات. بالنسبة للعديد من اللغات الأخرى، مثل تلك التي تحتوي على التراص والانحراف والاقتران الأكثر تعقيدًا، فإن هذا الجزء من العملية أكثر تعقيدًا.
من غير الواضح ما إذا كان التحليل الصرفي — يسمح بالعديد من الأشكال المختلفة للكلمة اعتمادًا على دورها النحوي — يوفر فائدة كبيرة للغة الإنجليزية، على الرغم من أن فوائدها للغات الاصطناعية للغاية مثل الألمانية أو المجرية أو التركية واضحة.
كملحق لهذه المكونات، ستسمح واجهة المستخدم بالبرنامج للمستخدمين بالموافقة على الاستبدالات أو رفضها وتعديل تشغيل البرنامج.
يستخدم النوع البديل من المدققات الإملائية معلومات إحصائية فقط، مثل n-grams ، للتعرف على الأخطاء بدلاً من الكلمات ذات الهجاء الصحيح. يتطلب هذا النهج عادة الكثير من الجهد للحصول على معلومات إحصائية كافية. تتضمن المزايا الرئيسية الحاجة إلى مساحة تخزين أقل وقت التشغيل والقدرة على تصحيح الأخطاء في الكلمات غير المدرجة في القاموس.[1]
في بعض الحالات، تستخدم المدقق الإملائي قائمة ثابتة من الأخطاء الإملائية والاقتراحات لتلك الأخطاء الإملائية؛ غالبًا ما يستخدم هذا النهج الأقل مرونة في طرق التصحيح الورقية، مثل انظر أيضًا إدخالات الموسوعات.
كما تم استخدام خوارزميات التجميع للتدقيق الإملائي [2] بالدمج مع المعلومات الصوتية للكلمات.[3]
التاريخ
في عام 1961، رأى ليه إيرنست، الذي رأس البحث في هذه التقنية الناشئة، أنه من الضروري تضمين المدقق الإملائي الأول الذي وصل إلى قائمة من 10000 كلمة مقبولة.[4]
ثم قام رالف غورين، وهو طالب دراسات عليا في جامعة Earnest في ذلك الوقت، بإنشاء أول برنامج مدقق إملائي حقيقي مكتوب كبرنامج تطبيقات (بدلاً من البحث) للنص الإنجليزي العام: SPELL لـ DEC PDP-10 في مختبر الذكاء الاصطناعي بجامعة ستانفورد، في فبراير 1971.[5] كتب غورين برنامج SPELL بلغة التجميع من أجل إجراء أسرع، وقام بعمل أول مصحح إملائي من خلال البحث في قائمة الكلمات عن التهجئات الصحيحة المعقولة التي تختلف بحرف واحد أو تحويل الحروف المتجاورة وتقديمها إلى المستخدم.
جعل رالف غورين برنامجه SPELL متاحًا للجمهور، كما تم مع معظم برامج (مختبر الذكاء الاصطناعي في ستانفورد SAIL)، وسرعان ما انتشر في جميع أنحاء العالم عبر شبكة وكالة مشاريع الأبحاث المتطورة أو شبكة وكالة مشاريع الأبحاث المتقدمة أو الأربانت ARPAnet، قبل حوالي عشر سنوات من دخول أجهزة الكمبيوتر الشخصية إلى الاستخدام العام.[6] ألهم برنامج SPELL وخوارزمياته وهياكل البيانات برنامج Unix ispell فيما بعد.
كانت المدققات الإملائية الأولى متاحة على نطاق واسع على أجهزة الكمبيوتر المركزية في أواخر السبعينيات.
ثم طور مجموعة من ستة لغويين من جامعة جورجتاون أول نظام تدقيق إملائي لشركة IBM.[7]
ظهرت برامج التدقيق الإملائية الأولى لأجهزة الكمبيوتر الشخصية في عام 1980، مثل "WordCheck" لأنظمة Commodore التي تم إصدارها في أواخر عام 1980 في الوقت المناسب لطباعة الإعلانات في يناير 1981.[9]
وقام مطورون آخرون مثل Maria Mariani [7]وRandom House[10] بنقل حزم برمجيات OEM أو منتجات المستخدم النهائي إلى سوق البرمجيات سريعة التوسع، خاصة لأجهزة الكمبيوتر الشخصية ولكن أيضًا لأجهزة ماكنتوش و VAX ويونكس.
وعلى أجهزة الكمبيوتر الشخصية، كانت هذه المدققات الإملائية عبارة عن برامج مستقلة، يمكن تشغيل العديد منها في وضع TSR من داخل حزم معالجة الكلمات على أجهزة الكمبيوتر ذات الذاكرة الكافية.
ومع ذلك، فإن سوق حزم البرمجيات المستقلة كان قصير الأجل، وبمنتصف الثمانينيات، قام مطورو حزم معالجة الكلمات الشائعة مثل برامج WordStar وووردبيرفكت بدمج المدقق الإملائي في حزمهم، المرخصة في الغالب من الشركات المذكورة أعلاه، الذين قاموا بتوسيع الدعم من مجرد دعم اللغة الإنجليزية إلى دعم عديد من اللغات الأوروبية وحتى الآسيوية بنهاية المطاف.
ومع ذلك، تطلب هذا زيادة التطور في إجراءات قواعد الصرف اللغوية لتلك البرامج، وخاصة فيما يتعلق اللغات المتراصة بكثافة مثل لغات الهنغاريةوالفنلندية.
وبالرغم من أن حجم سوق برامج معالجة الكلمات في بلد مثل أيسلندا لم تبرر الاستثمار في تنفيذ برامج المدقق الإملائي، ومع ذلك فأن شركات البرمجيات مثل WordPerfect سعت مع ذلك إلى توطين برامجها لأكبر عدد ممكن من الأسواق الوطنية كجزء من استراتيجيتها التسويقية العالمية.
متصفحات الويب الأخرى مثل جوجل كروم، كونكيورروالأوبرا وعميل البريد الإلكتروني كاميلوالرسائل الفوريةالعميلبدجن تقدم أيضا دعم التدقيق الإملائي، باستخدام سابقا تطبيقات جنو المفتوحة المصدر مثل آسبل وحاليا Hunspell كمحرك داخلي داخل المتصفح.
ويحتوي نظام التشغيل ماك أو إس الآن على التدقيق الإملائي على مستوى النظام، مما يوسع الخدمة إلى جميع التطبيقات المجمعة وتطبيقات الطرف الثالث تقريبًا.
بعض برامج التدقيق الإملائي الأخرى لديها دعم منفصل للقواميس الطبية للمساعدة في منع الأخطاء الطبية.[11][12][13]
وظائف
برامج التدقيق الإملائي الأولى كانت برامج «تحقق» بدلاً من كونها برامج «تصحيح».
فلم تكن تقدم أي اقتراحات suggestions للكلمات المكتوبة بشكل غير صحيح.
وكان ذلك مفيدًا للأخطاء المطبعية ولكنه لم يكن مفيدًا جدًا للأخطاء المنطقية أو الصوتية. وكان التحدي الرئيسي الذي واجه المطورين هو صعوبة تقديم اقتراحات مفيدة للكلمات التي بها أخطاء إملائية. وهذا يتطلب اختزال الكلمات إلى شكل هيكلي وتطبيق خوارزميات مطابقة الأنماط.
قد يبدو منطقيًا أنه فيما يتعلق بقواميس التدقيق الإملائي، انها تحقق فكرة «كلما كان ذلك أكبر، كلما كان ذلك أفضل» بحيث لا يتم وضع علامة على الكلمات الصحيحة على أنها غير صحيحة.
ولكن من الناحية العملية، يبدو أن الحجم الأمثل للمفردات الخاصة بللغة الإنجليزية هو حوالي 90,000 إدخال، أما إذا كان هناك أكثر من ذلك، فقد يتم تخطي الكلمات التي تحتوي على أخطاء إملائية بشكل خاطئ.
على سبيل المثال ، قد يحدد اللغوي طبقا لعلم الأصول اللغوية أن كلمة baht هي في كثير من الأحيان خطأ إملائي لمدخلة مثل bath أو bat أكثر من الإشارة إلى العملة التايلاندية بات تايلاندي.
وبالتالي، سيشعر القائمين بالكتابة عن العملة التايلندية بالضيق من ظهور علامة الخطأ
تم استخدام المدقق الإملائي لبيئة تشغيل MS-DOS من داخل حزم برامج معالجة الكلمات. بحيث يبدأ من بعد تحضير مستند ليقوم المستخدم فيما بعد بمسح النص بحثًا عن الأخطاء الإملائية.
وفي وقت لاحق، تم تقديم المعالجة المجمعة batch processing في حزم برامج مثل CoAuthor لـ Oracle والتي سمحت للمستخدم بعرض النتائج بعد معالجة المستند وتصحيح الكلمات التي عُرف عنها أنها خاطئة.
و عندما أصبحت الذاكرة (RAM) وقوة المعالجة (Processing) كبيرتان، تم تطوير عمليات إجراء التدقيق الإملائي لتعمل في الخلفية بطريقة تفاعلية، كما كان الحال مع برنامج Spellbound الذي تم إصداره في عام 1987 وMicrosoft Word منذ Word 95.
في السنوات الأخيرة، أصبحj المدققات الإملائية أكثر تعقيدًا بشكل متزايد؛ فالبعض منها الآن قادر على التعرف على الأخطاء النحوية البسيطة، ومع ذلك، حتى في أفضل حالاتها، نادرًا ما يتم التقاط جميع الأخطاء في النص (مثل أخطاء المشترِكات اللفظية التلفظية) وسوف تضع علامة على الكلمات الجديدة والكلمات الأجنبية على أنها أخطاء إملائية.
ومع ذلك، يمكن اعتبار المدقق الإملائي نوعًا من أنواع المساعدة في الكتابة بلغة أجنبية والتي يمكن لمتعلمي اللغة غير الأصليين الاعتماد عليها للكشف عن الأخطاء الإملائية وتصحيحها في اللغة الهدف.[14]
التدقيق الإملائي للغات غير الإنجليزية
اللغة الإنجليزية غير عادية في أن معظم الكلمات المستخدمة في الكتابة الرسمية لها هجاء واحد يمكن العثور عليه في القاموس النموذجي، باستثناء بعض المصطلحات والكلمات المعدلة.
ولكن في كثير من اللغات الأخرى، غالبًا ما تكون الكلمات متسلسلة في مجموعات جديدة من الكلمات.
ففي الألمانية مثلا، غالبًا ما يتم صياغة الأسماء المركبة من الأسماء الأخرى الموجودة. ولذلك لا تفصل بعض البرامج النصية بوضوح كلمة واحدة عن الأخرى، مما يتطلب خوارزميات تقسيم الكلمات.
لذا تعتبر هذه الحالات تحديات فريدة لبرامج التدقيق الإملائي للغات أخرى غير اللغة الإنجليزية.
المدقق الإملائي الحساس للسياق
كان هناك بحث في تطوير خوارزميات قادرة على التعرف على كلمة بها خطأ إملائي، حتى لو كانت الكلمة نفسها في المفردات، بناءً على سياق الكلمات المحيطة لها.
لا يسمح هذا فقط بالكشف أخطاء في كلمات مثل تلك الموجودة في القصيدة أعلاه (في أول هذه المقالة) ولكنه يخفف من التأثير الضار لتوسيع القواميس، مما يسمح بالتعرف على المزيد من الكلمات.
على سبيل المثال، لن يتم التعرف على baht في نفس الفقرة مثل التايلاندية أو تايلاند على أنه خطأ إملائي لكلمة الحمام bath .
المثال الأكثر شيوعًا للأخطاء التي يتم اكتشافها بواسطة مثل هذا النظام هي الأخطاء المتجانسة، مثل الكلمات الغامقة في الجملة التالية:
Their coming toosea if itsreel.
أنجح خوارزمية حتى الآن هي Andrew Golding و Dan Roth «خوارزمية تصحيح الهجاء التي تستند إلى Winnow»، [15] والتي نشرت في عام 1999، وهي قادرة على التعرف على حوالي 96 ٪ من الأخطاء الإملائية الحساسة للسياق، بالإضافة إلى عدم وجود كلمة عادية اخطاء املائية.