Повышение эффективности работы опечаточника

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

этом случае пользователю остается лишь нажать на кнопку "Заменить" или указать на соответствующий пункт списка, что удобно.

 

Где используется исправление опечаток

 

1)Исправление опечаток реализовано в поисковых системах (при введении запросов пользователями)

Google

Функция Google Suggest, которая помогает уточнить поисковый запрос, исправляет опечатки, транслитерирует слова и в случае необходимости меняет раскладку клавиатуры

Яндекс

В Яндексе все поисковые запросы проходят через сервис исправления опечаток, который выявляет и исправляет ошибки во фразах и отдельных словах, а также умеет распознавать текст, набранный в неправильной раскладке клавиатуры и производить его автоматическое исправление.

Rambler

Если в поисковой строке запрос вводится с ошибкой, то в большинстве случаев сервис поисковых подсказок ее распознает и предложит варианты без допущенной ошибки.

2)Существуют программы для исправления раскладки клавиатуры

Punto Switcher - программа для автоматического переключения между различными раскладками клавиатуры в операционных системах семейства Microsoft Windows и Mac OS X. Работая в фоновом режиме, Punto Switcher проводит статистический анализ последовательностей вводимых символов слова, и, если сочетание букв оказывается нетипичным для языка, на котором вводятся символы, Punto Switcher переключает язык ввода, стирает напечатанное, эмулируя нажатия клавиши < Backspace , и повторно вводит текст уже с правильной раскладкой клавиатуры.

Keyboard Ninja - это компьютерная программа для операционных систем Microsoft Windows, предназначенная для автоматического переключения раскладки клавиатуры при наборе текста и автоматического исправления ошибочно набранного не в той языковой раскладке текста. Например, если набрано ghbdtn, программа автоматически исправляет данный текст на привет.

3)Существуют специальные программы для исправления опечаток в тексте

Microsoft Word (часто - MS Word, WinWord или просто Word) - текстовый процессор, предназначенный для создания, просмотра и редактирования текстовых документов, с локальным применением простейших форм таблично-матричных алгоритмов.

OrfoCheck - программа для проверки текстов на опечатки. В отличие от Wordа и других программ проверки орфографии слова проверяются не по словарю правильных слов, а по словарю опечаток.

 

Алгоритмы, используемые опечаточниками

 

Во многих опечаточниках модель ошибок зачастую, основывается на понятии расстояния, введенным Левенштейном, и использует функцию вычисления расстояния между строками на основе алгоритма Вагнера и Фишера.

 

Алгоритм нечеткого поиска

 

Алгоритмы нечеткого поиска являются основой систем проверки орфографии и полноценных поисковых систем вроде Google или Yandex. Например, такие алгоритмы используются для функций наподобие Возможно вы имели в виду … в тех же поисковых системах.

Задачу нечеткого поиска можно сформулировать так:

По заданному слову найти в тексте или словаре размера n все слова, совпадающие с этим словом (или начинающиеся с этого слова) с учетом k возможных различий.

Например, при запросе Машина с учетом двух возможных ошибок, найти слова Машинка, Махина, Малина, Калина и так далее.

Алгоритмы нечеткого поиска характеризуются метрикой - функцией расстояния между двумя словами, позволяющей оценить степень их сходства в данном контексте. Строгое математическое определение метрики включает в себя необходимость соответствия условию неравенства треугольника (X - множество слов, p - метрика)

 

 

 

В числе наиболее известных метрик - Левенштейна и Дамерау-Левенштейна.

 

Расстояние Левенштейна

 

Расстояние Левенштейна (также редакционное расстояние или дистанция редактирования) между двумя строками в теории информации и компьютерной лингвистике - это минимальное количество операций вставки одного символа, удаления одного символа и замены одного символа на другой, необходимых для превращения одной строки в другую.

Применение

Расстояние Левенштейна и его обобщения активно применяется:

для исправления ошибок в слове (в поисковых системах, базах данных, при вводе текста, при автоматическом распознавании отсканированого текста или речи).

для сравнения текстовых файлов утилитой diff и ей подобными. Здесь роль символов играют строки, а роль строк - файлы.

в биоинформатике для сравнения генов, хромосом и белков.

Редакционным предписанием называется последовательность действий, необходимых для получения из первой строки второй кратчайшим образом. Обычно действия обозначаются так: D (англ. delete) - удалить, I (англ. insert) - вставить, R (replace) - заменить, M (match) - совпадение.

Например, для 2-х строк CONNECT и CONEHEAD можно построить следующую таблицу преобразований:

MMMRRRRI

Найти только расстояние Левенштейна - более простая задача, чем найти ещё и редакционное предписание.

Недостатки

С точки зрения приложений определение расстояния между словами или текстовыми полями по Левенштейну обладает следующими недостатками:

.При перестановке местами слов или частей слов получаются сравнительно большие расстояния;

.Расстояния между совершенно разными короткими словами оказываются небольшими, в то время как расстояния между очень похожими длинными словами оказываю?/p>