Способ и устройство для определения сходства, а также терминал



Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал
Способ и устройство для определения сходства, а также терминал

Владельцы патента RU 2664002:

Сяоми Инк. (CN)

Изобретение относится к области обработки текстов на естественных языках. Техническим результатом является более точное определение сходства между двумя строками символов. Способ определения сходства между строками символов включает выполнение разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, каждая из которых включает по меньшей мере одно слово; определение редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности; и определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации об операциях для преобразования первой последовательности во вторую последовательность. Для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают их разбиение на первую последовательность и вторую последовательность, и таким образом редакционное расстояние для преобразования первой строки символов во вторую строку символов определяют на основе отдельных слов в строке символов, вместо отдельных символов в строке символов. 2 н. и 14 з.п. ф-лы, 11 ил.

 

Перекрестные ссылки на связанные заявки

[0001] Настоящая заявка ссылается на приоритет заявки на патент Китайской Народной Республики №201510882468.2, на которой она основана и которая была зарегистрирована 3 декабря 2015 г.. При этом содержание упомянутой заявки полностью включено в настоящий документ путем ссылки.

Область техники

[0002] Настоящее изобретение относится, в общем, к области обработки текстов на естественных языках, а именно, к способу и устройству для определения сходства, а также к терминалу.

Предпосылки создания изобретения

[0003] В области обработки текстов на естественных языках основная проблема - это создание способа определения сходства между строками символов, который мог бы найти применение во множестве различных сценариев применения, например, при кластеризации текстов или при извлечении информации и т.п. Соответственно, метод определения сходства между строками символов находится в фокусе интереса очень многих исследователей.

[0004] На существующем уровне развития техники сходство между строками символов определяют при помощи вычисления редакционного расстояния между двумя строками символов. А именно, две строки символов разбивают, соответственно, на отдельные символы; затем над символами одной из строк выполняют операции удаления, вставки или замены, чтобы преобразовать эту строку в другую строку символов; после чего вычисляют минимальное количество операций, необходимое для преобразования одной строки символов в другую, и это минимальное количество операций принимают за редакционное расстояние между двумя строками символов; наконец, в соответствии с редакционным расстоянием вычисляют сходство между двумя строками символов.

Сущность изобретения

[0005] В настоящем изобретении предложены способ и устройство для определения сходства, а также терминал.

[0006] В соответствии с первым аспектом настоящего изобретения предложен способ определения сходства, включающий:

выполнение разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, причем первая последовательность и вторая последовательность, каждая, включают по меньшей мере по одному слову;

определение редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности; и

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

[0007] В соответствии со вторым аспектом вариантов осуществления настоящего изобретения предложено устройство для определения сходства, включающее:

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

первый модуль определения, сконфигурированный для определения редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности; и

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

[0008] В соответствии с третьим аспектом вариантов осуществления настоящего изобретения предложен терминал, включающий:

процессор; и

память, сконфигурированную для хранения инструкций, исполняемых упомянутым процессором;

при этом процессор сконфигурирован:

для выполнения разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, причем первая последовательность и вторая последовательность, каждая, включают по меньшей мере по одному слову;

для определения редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности; и

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

[0009] Технические решения, предложенные в вариантах осуществления настоящего изобретения, позволяют, по меньшей мере частично, получить следующие полезные результаты:

[0010] для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают первую последовательность и вторую последовательно, и таким образом, редакционное расстояние для преобразования первой строки символов во вторую строку символов может быть определено на основе отдельных слов в первой последовательности и второй последовательности, вместо отдельных символов в первой строке символов и второй строке символов.

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

[0011] Нужно понимать, что и предшествующее общее описание, и подробное описание, приведенное ниже, являются исключительно иллюстративными и пояснительными и не ограничивают настоящее изобретение.

Краткое описание чертежей

[0012] На приложенных чертежах, которые входят в состав настоящего описания и являются его неотъемлемой частью, проиллюстрированы варианты осуществления, соответствующие настоящему изобретению. Приложенные чертежи, вместе с описанием, служат для разъяснения замысла настоящего изобретения.

[0013] Фиг. 1 представляет собой блок-схему алгоритма, иллюстрирующую способ определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0014] Фиг. 2 представляет собой блок-схему алгоритма, иллюстрирующую способ определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0015] Фиг. 3 представляет собой блок-схему, иллюстрирующую устройство для определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0016] Фиг. 4 представляет собой блок-схему, иллюстрирующую второй модуль определения в соответствии с одним из примеров осуществления настоящего изобретения.

[0017] Фиг. 5 представляет собой блок-схему, иллюстрирующую второй блок определения в соответствии с одним из примеров осуществления настоящего изобретения.

[0018] Фиг. 6 представляет собой блок-схему, иллюстрирующую второй блок определения в соответствии с одним из примеров осуществления настоящего изобретения.

[0019] Фиг. 7 представляет собой блок-схему, иллюстрирующую устройство для определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0020] Фиг. 8 представляет собой блок-схему, иллюстрирующую устройство для определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0021] Фиг. 9 представляет собой блок-схему, иллюстрирующую устройство для определения сходства в соответствии с одним из примеров осуществления настоящего изобретения.

[0022] Фиг. 10 представляет собой блок-схему, иллюстрирующую терминал в соответствии с одним из примеров осуществления настоящего изобретения.

[0023] Фиг. 11 представляет собой блок-схему, иллюстрирующую сервер в соответствии с одним из примеров осуществления настоящего изобретения.

Подробное описание изобретения

[0024] Далее настоящее изобретение будет описано более подробно с помощью конкретных примеров его осуществления, которые проиллюстрированы на приложенных чертежах. В приведенном ниже описании осуществляются ссылки на приложенные чертежи, где, если не указано обратное, аналогичными обозначениями на различных чертежах обозначены одинаковые или аналогичные элементы. Реализации примеров осуществления настоящего изобретения, изложенные в приведенном ниже описании, не являются всеми возможными реализациями, соответствующими настоящему изобретению. Напротив, они являются исключительно примерами устройств и способов, которые соответствуют аспектам, связанным с настоящим изобретением и изложенным в приложенной формуле изобретения.

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

[0026] На шаге S101 выполняют разбиение на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, причем первая последовательность и вторая последовательность, каждая, включают по меньшей мере по одному слову.

[0027] На шаге S102 определяют редакционное расстояние между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности.

[0028] На шаге 103 определяют сходство между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации о различных операциях для преобразования первой последовательности во вторую последовательность.

[0029] В способе, предложенном в вариантах осуществления настоящего изобретения, для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают их разбиение на первую последовательность и вторую последовательность, и таким образом определяют редакционное расстояние для преобразования первой строки символов во вторую строку символов на основе отдельных слов в первой последовательности и второй последовательности, вместо отдельных символов в первой строке символов и второй строке символов. Каждое слово в строке символов может включать по меньшей мере один символ. Таким образом, сходство может быть определено согласно редакционному расстоянию в сочетании с корреляцией между символами в строке символов, что позволяет определять сходство более точно.

[0030] В еще одном из вариантов осуществления настоящего изобретения определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации о различных операциях для преобразования первой последовательности во вторую последовательность включает:

получение информации об операции замены среди информации о различных операциях для преобразования первой последовательности во вторую последовательность;

определение количества пар согласно информации об операции замены, где под количеством пар понимается количество пар слов, присутствующих одновременно в первой последовательности и второй последовательности; и

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

[0031] В еще одном из вариантов осуществления настоящего изобретения определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар и стоимости различных операций, количеству слов в первой последовательности и количеству слов во второй последовательности, где упомянутые различные операции включают операцию замены и операцию перестановки, включает:

определение минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

нормализацию минимального семантического редакционного расстояния, в результате чего получают нормализованный результат; и

определение сходства между первой строкой символов и второй строкой символов согласно нормализованному результату.

[0032] В еще одном из вариантов осуществления настоящего изобретения определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар и стоимости различных операций, количеству слов в первой последовательности и количеству слов во второй последовательности, где упомянутые различные операции включают операцию замены, операцию перестановки, операцию вставки и операцию удаления, включает:

определение первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности; и

определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию.

[0033] В еще одном из вариантов осуществления настоящего изобретения способ дополнительно включает:

определение стоимости операции замены и стоимости операции перестановки согласно соотношению между операцией замены и операцией перестановки; и

определение стоимости операции вставки, стоимости операции удаления и стоимости операции замены согласно соотношению между операцией замены, операцией вставки и операцией удаления.

[0034] В еще одном из вариантов осуществления настоящего изобретения способ дополнительно включает:

определение того, что стоимость операции замены, умноженная на 2, больше, чем стоимость операции перестановки, согласно соотношению между операцией замены и операцией перестановки; и

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

[0035] В еще одном из вариантов осуществления настоящего изобретения способ дополнительно включает:

определение того, что стоимость операции вставки равна стоимости операции удавления согласно соотношению между операцией вставки и операцией удаления.

[0036] В еще одном из вариантов осуществления настоящего изобретения определение редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности включает:

определение редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности на основе формулы I, приведенной ниже.

где i-i-e слово в первой последовательности, j-j-e слово во второй последовательности; cost(S) - стоимость операции удаления, cost(C) - стоимость операции вставки, и cost(T) - стоимость операции замены.

[0037] В еще одном из вариантов осуществления настоящего изобретения определение минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки включает:

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

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

[0038] В еще одном из вариантов осуществления настоящего изобретения определение первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки включает:

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

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

[0039] В еще одном из вариантов осуществления настоящего изобретения определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности, включает:

определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности на основе формулы IV, приведенной ниже.

где normFact(S1, S2) - второе семантическое редакционное расстояние, n - количество слов в первой последовательности, m - количество слов во второй последовательности, cost(T) - стоимость операции замены, cost(S) - стоимость операции удаления и cost(C) - стоимость операции вставки.

[0040] В еще одном из вариантов осуществления настоящего изобретения определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию включает:

определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию на основе формулы V, приведенной ниже.

где sim(S1, S2) - сходство между первой строкой символов и второй строкой символов, minCost(S1, S2) - первое семантическое редакционное расстояние, и normFact(S1, S2) - второе семантическое редакционное расстояние.

[0041] Другие возможные варианты осуществления настоящего изобретения могут быть получены путем произвольного комбинирования любых из описанных выше опциональных технических решений и не будут подробно рассмотрены в настоящем документе.

[0042] На основе описания варианта осуществления настоящего изобретения, соответствующего фиг. 1, рассмотрим фиг. 2, которая представляет собой блок-схему алгоритма, иллюстрирующую способ определения сходства в соответствии с одним из примеров осуществления настоящего изобретения. При этом данный способ определения сходства может применяться в терминале. В соответствии с иллюстрацией фиг. 2, способ определения сходства, предложенный в вариантах осуществления настоящего изобретения, включает шаги, описанные ниже.

[0043] На шаге S201 выполняют разбиение на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность.

[0044] Символы в строке символов могут быть не полностью независимыми, но имеющими отношение друг к другу. Некоторые из смежных строк символов могут быть неделимыми. К примеру, в строке «сегодня я собираюсь взобраться на Благоухающую гору », «сегодня » и «Благоухающую гору » являются неделимыми.

Соответственно, когда в вариантах осуществления настоящего изобретения определяют сходство между двумя строками символов, эти две строки символов не будут соответственно разбиты на символы. Вместо этого данные две строки символов будут разбиты на слова, причем каждая из сегментированных строк символов будет включать по меньшей мере одно слово. Для простоты описания, в вариантах осуществления настоящего изобретения две строки символов, сходство между которыми необходимо определить, названы, соответственно, первой строкой символов и второй строкой символов. Первую последовательность получают в результате разбиения на слова первой строки символов, а вторую последовательность получают в результате разбиения на слова второй строки символов. И первая, и вторая последовательность, каждая, включают по меньшей мере по одному слову.

[0045] К примеру, когда первой строкой символов и второй строкой символов являются, соответственно, строки S1 и S2, первая последовательность и вторая последовательность будут иметь вид (S11, S12, S13, …, S1n) и (S21, S22, S23, …, S2m) соответственно. Количество слов в строке S1 равно n, а количество слов в строке S2 равно m.

[0046] Варианты осуществления настоящего изобретения не ограничены конкретными языками первой строки символов и второй строки символов. К примеру, обе строки символов, первая и вторая, могут представлять собой китайский язык, английский язык и т.п. При этом обе строки символов, первая и вторая, могут представлять собой грамматические предложения. К примеру, первой строкой символов может быть «сегодня я иду на Благоухающую гору », а второй строкой символов может быть «я иду на Благоухающую гору сегодня ».

[0047] На шаге S202 определяют стоимость операции замены и стоимость операции перестановки согласно соотношению между операцией замены и операцией перестановки, а также определяют стоимость операции вставки, стоимость операции удаления и стоимость операции замены согласно соотношению между операцией замены, операцией вставки и операцией удаления.

[0048] В традиционном способе определения сходства между строками символов, когда одну строку преобразуют в другую строку символов, используют, как правило, три операции редактирования, а именно: операцию вставки, операцию удаления и операцию замены, причем все три операции имеют одинаковую стоимость. Однако в строке символов некоторые из элементов могут встречаться в различных позициях строки символов и при этом не менять семантическое значение строки символов в целом. К примеру, три следующие строки символов: «сегодня я иду на Благоухающую гору », «я иду на Благоухающую гору сегодня » и «я сегодня иду на Благоухающую гору » имеют одно и то же значение, несмотря на то, что слова находятся в различных позициях строки символов. Соответственно, в вариантах осуществления настоящего изобретения, в дополнение к традиционным операциям вставки, удаления и замены, определена операция перестановки, а также определены различные стоимости для различных операций согласно соотношениям между этими различными операциями.

[0049] Варианты осуществления настоящего изобретения не ограничены в отношении конкретных значений стоимости различных операций. Однако при практической реализации операция перестановки может быть подразделена на две операции замены. Соответственно, в вариантах осуществления настоящего изобретения стоимость операции замены и стоимость операции перестановки могут быть определены согласно соотношению между операцией замены и операцией перестановки. К примеру, соотношение между стоимостью операции замены и стоимостью операции перестановки в вариантах осуществления настоящего изобретения может удовлетворять следующему выражению: 2 × стоимость операции замены > стоимость операции перестановки, а именно

где cost(T) - стоимость операции замены и cost(J) - стоимость операции перестановки.

[0050] Операция замены может быть подразделена на операцию удаления и операцию вставки. Соответственно, в вариантах осуществления настоящего изобретения стоимость операции вставки и стоимость операции удаления могут быть определены согласно соотношению между операцией замены, операцией вставки и операцией удаления. К примеру, соотношение между стоимостью операции замены, стоимостью операции перестановки и стоимостью операции удаления в вариантах осуществления настоящего изобретения может удовлетворять следующему выражению: стоимость операции вставки + стоимость операции удаления > стоимость операции замены. Также, может быть определено, что стоимость операции замены больше, чем максимальное значение стоимости операции вставки и стоимости операции удаления. К примеру, это соотношение может быть выражено следующей формулой:

где cost(S) - стоимость операции удаления и cost(C) - стоимость операции вставки.

[0051] Также, когда сходство является симметричным, и когда вставка символа в первую строку символов эквивалента удалению символа из второй строки символов, может быть определено, что стоимость операции вставки равна стоимости операции удаления, согласно соотношению между операцией вставки и операцией удаления. Очевидно, в случае, когда сходство является несимметричным, может также быть определено, что стоимость операции вставки как равна, так и не равна стоимости операции удаления, причем варианты осуществления настоящего изобретения в этом отношении не ограничены.

[0052] На шаге S203 формируют заранее заданный алгоритм определения редакционного расстояния согласно стоимости операции замены, стоимости операции удаления и стоимости операции вставки.

[0053] К примеру, заранее заданный алгоритм определения редакционного расстояния может быть представлен формулой I.

где i-i-e слово в первой последовательности, j-j-e слово во второй последовательности; cost(S) - стоимость операции удаления, cost(C) - стоимость операции вставки и cost(T) - стоимость операции замены.

[0054] Из формулы I можно видеть, что заранее заданный алгоритм определения редакционного расстояния в вариантах осуществления настоящего изобретения может представлять собой алгоритм динамического программирования, при этом заранее заданный алгоритм определения редакционного расстояния может быть получен согласно стоимости операции удаления, стоимости операции вставки и стоимости операции замены, заранее заданным в вариантах осуществления настоящего изобретения.

[0055] Следует отметить, что шаги S202 и S203 - это шаги, которые выполняют перед определением сходства, но при этом их не нужно выполнять всякий раз, когда необходимо определить сходство между двумя строками символов, если гарантировано, что стоимость различных операций и заранее заданный алгоритм определения редакционного расстояния, уже определены перед определением сходства.

[0056] На шаге S204 определяют редакционное расстояние между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности.

[0057] Под редакционным расстоянием между двумя строками символов понимают минимальное количество операций редактирования, необходимых для преобразования одной строки символов в другую, где каждая операция редактирования соответствует некоторой стоимости. За редакционное расстояние может быть принята общая стоимость преобразования. В вариантах осуществления настоящего изобретения операции редактирования, доступные для преобразования между строками символов, могут включать операцию замены, операцию вставки, операцию удаления и операцию перестановки.

[0058] На примере заранее заданного алгоритма определения редакционного расстояния по формуле 1, в вариантах осуществления настоящего изобретения, когда редакционное расстояние между первой строкой символов и второй строкой символов определяют согласно такому заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности, редакционное расстояние между первой строкой символов и второй строкой символов может быть определено при помощи рекурсивного вычисления на основе формулы I согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности. Принцип вычисления редакционного расстояния на основе формулы I аналогичен принципу вычисления редакционного расстояния на основе существующих алгоритмов динамического программирования и, следовательно, не будет описан в вариантах осуществления настоящего изобретения более подробно.

[0059] На шаге S205, определяют сходство между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации о различных операциях для преобразования первой последовательности во вторую последовательность.

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

[0061] В вариантах осуществления настоящего изобретения для различных операций определены различные стоимости. При этом, в отношении определения редакционного расстояния между двумя строками символов, стоимости различных операций, необходимых для преобразования первой строки символов во вторую строку символов, непосредственно влияют на редакционное расстояние. Следовательно, сходство между первой строкой символов и второй строкой символов может быть определено согласно редакционному расстоянию и информации о различных операциях, необходимых для получения редакционного расстояния, при этом информация об операциях включает стоимость, и при этом стоимость различных операций для получения редакционного расстояния заранее задана на шаге S202.

[0062] К примеру, если операции для преобразования первой строки символов во вторую строку символов включают две операции вставки, одну операцию удаления, одну операцию перестановки и одну операцию замены, редакционное расстояние d между первой строкой символов и второй строкой символов равно , когда сходство между первой строкой символов и второй строкой символов определяют согласно редакционному расстоянию, стоимости операции вставки, стоимости операции удаления, стоимости операции перестановки и стоимости операции замены.

[0063] К примеру, определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации о различных операциях для преобразования первой последовательности во вторую последовательность включает, без ограничения перечисленным, шаги S2051-S2053, рассмотренные ниже.

[0064] На шаге S2051, после получения редакционного расстояния, получают информацию об операции замены среди информации о различных операциях для преобразования первой последовательности во вторую последовательность.

[0065] В ходе операции замены некоторое слово в первой строке символов заменяют на другое слово. В вариантах осуществления настоящего изобретения, при определении редакционного расстояния, выполняют статистический расчет на основе информации об операции замены в ходе преобразования, и информацию об операции замены записывают в заданный набор. В одном из вариантов осуществления настоящего изобретения информация об операции замены включает слово, замененное в ходе операции замены, и позицию замененного слова в соответствующей последовательности. Соответственно, данные, записанные в заданный набор, включают замененное слово и позицию замененного слова в первой последовательности. К примеру, если допустить, что первая строка символов представляет собой «я иду на Благоухающую гору сегодня », первой последовательностью будет «я - иду на - Благоухающую гору - сегодня ». Замененными словами будут «Благоухающую гору » и «иду на », а информация об операции замены, записанная в заданный набор, будет включать «иду на-2 , Благоухающую гору-5 ». Соответственно, при получении редакционного расстояния, информация об операции замены может быть получена из заданного набора, среди информации о различных операциях для преобразования первой строки символов во вторую строку символов, из заданного набора. А именно, эта информация включает слова, замененные в ходе различных операций замены и позиции каждого из замененных слов в первой последовательности.

[0066] При этом в вариантах осуществления настоящего изобретения дополнительно определяют операцию перестановки, согласно соотношению между операцией замены и операцией перестановки, которое заранее задано и соответствует выражению 2cost(T)-cost(J)>0. Соответственно, можно видеть, что стоимость двух операций замены больше, чем стоимость одной операции перестановки. Следовательно, когда есть возможность преобразовать первую строку символов во вторую строку символов при помощи одной операции перестановки, выполнение двух операций замены не является предпочтительным. Соответственно, в дополнение к замененным словам в первой последовательности и позициям каждого из замененных слов в первой последовательности, записанным в заданном наборе, может быть дополнительно определен факт наличия во второй последовательности каких-либо комбинаций из двух слов, входящих в заданный набор. Если во второй последовательности имеется хотя бы одна такая комбинация из двух слов, то эта комбинация из двух слов и позиции каждого слова из этой комбинации во второй последовательности будут также записаны в заданный набор.

[0067] К примеру, если первая строка символов представляет собой «я иду на Благоухающую гору сегодня », первая последовательность представляет собой «я - иду - на Благоухающую гору-сегодня », замененными словами являются «Благоухающую гору » и «иду », вторая строка символов представляет собой «сегодня я иду на Благоухающую гору » и вторая последовательность представляет собой «сегодня-я-иду-на Благоухающую гору ». Поскольку замененные слова «Благоухающую гору » и «иду » присутствуют и в первой, и во второй последовательностях, данными, записанными в заданный набор, могут быть «иду-S12», «Благоухающую гору-S15; «иду-0S23, «Благоухающую гору-S25».

[0068] В вариантах осуществления настоящего изобретения «Благоухающую гору » и «иду » определены как совпадающие слова между первой строкой символов и второй строкой символов. Из приведенного выше примера очевидно, что под совпадающими словами понимаются любые комбинации из двух слов, присутствующие одновременно в первой последовательности и во второй последовательности.

[0069] На шаге SS2052 согласно информации об операции замены определяют количество пар.

[0070] Под количеством пар понимают количество совпадающих слов в первой последовательности и второй последовательности, т.е. количество комбинаций из двух слов, присутствующих одновременно в первой последовательности и во второй последовательности. Как можно видеть из приведенного выше описания данных, которые записывают в заданный набор, количество пар может быть определено на основе данных, записанных в заданный набор.

[0071] К примеру, если данные, записанные в заданный набор представляют собой «иду-S12», «Благоухающую гору-S15»; «иду-S23», «Благоухающую гору-S25», «я-S11», «на-S14; «я-S21», «на-S24», может быть определено, что количество пар равно 2.

[0072] На шаге S2053 определяют сходство между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар и стоимости различных операций, количеству слов в первой последовательности и количеству слов во второй последовательности.

[0073] К примеру, в вариантах осуществления настоящего изобретения, когда сходство между первой строкой символов и второй строкой символов определяют согласно редакционному расстоянию, количеству пар и стоимости различных операций, количеству слов в первой последовательности и количеству слов во второй последовательности, различные операции могут включать операцию замены и операцию перестановки.

[0074]Согласно типам различных операций, шаг S2053 может быть реализован при помощи шагов S20531-S20533, рассмотренных ниже.

[0075] На шаге S20531 определяют минимальное семантическое редакционное расстояние между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки.

[0076] К примеру, минимальное семантическое редакционное расстояние между первой строкой символов и второй строкой символов определяют согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе формулы 2, приведенной ниже.

[0077] где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

[0078] На шаге S20532 минимальное семантическое редакционное расстояние нормализуют, в результате чего получают нормализованный результат.

[0079] К примеру, минимальное семантическое редакционное расстояние может быть нормализовано с использованием максимального семантического редакционного расстояния между первой строкой символов и второй строкой символов. Максимальное семантическое редакционное расстояние может иметь вид формулы IV, приведенной ниже.

[0080] где normFact(S1, S2) - максимальное семантическое редакционное расстояние, n - количество слов в первой последовательности, и m - количество слов во второй последовательности.

[0081] Минимальное семантическое редакционное расстояние minCost(S1, S2) нормализуют, в результате чего получают нормализованный результат minCost(S1, S2)/noimFact(S1, S2). В результате нормализации минимального семантического редакционного расстояния значение minCost(S1, S2)/normFact(S1, S2) может быть отображено на диапазон от 0 до 1, благодаря чему упрощается интуитивное определение сходства.

[0082] На шаге S20533 сходство между первой строкой символов и второй строкой символов определяют согласно нормализованному результату.

[0083] К примеру, сходство между первой строкой символов и второй строкой символов определяют, согласно нормализованному результату, на основе формулы V, приведенной ниже.

[0084] где sim(S1, S2) - сходство между первой строкой символов и второй строкой символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, normFact(S1, S2) - максимальное семантическое редакционное расстояние, и minCost(S1, S2)/normFact(S1, S2) - нормализованный результат.

[0085] А именно, в вариантах осуществления настоящего изобретения, когда сходство между первой строкой символов и второй строкой символов определяют согласно редакционному расстоянию, количеству пар и стоимости различных операций, количеству слов в первой последовательности и количеству слов во второй последовательности, различные операции включают по меньшей мере одно из следующего: операцию замены, операцию перестановки, операцию вставки и операцию удаления. Исходя из этого, данный шаг может быть реализован при помощи шагов S20534-S20536, описанных ниже.

[0086] На шаге S20534 определяют первое семантическое редакционное расстояние между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки.

[0087] Первое семантическое редакционное расстояние может быть минимальным семантическим редакционным расстоянием между первой строкой символов и второй строкой символов.

[0088] К примеру, минимальное семантическое редакционное расстояние между первой строкой символов и второй строкой символов определяют согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки при помощи формулы III, приведенной ниже, но без ограничения данным конкретным примером.

[0089] где S1 и S2, по отдельности, - первая строка символов и вторая строка символов, minCost(S1, S2) - первое семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, ncost(J) - стоимость операции перестановки.

[0090]Как можно видеть из формулы III и формулы II, первое семантическое редакционное расстояние может быть минимальным семантическим редакционным расстоянием между первой строкой символов и второй строкой символов. В формуле II и формуле III только minCost(S1, S2) имеет отличающееся значение.

[0091] На шаге S20535 определяют второе семантическое редакционное расстояние между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности.

[0092] Второе семантическое редакционное расстояние может быть максимальным семантическим редакционным расстоянием между первой строкой символов и второй строкой символов.

[0093] К примеру, второе семантическое редакционное расстояние между первой строкой символов и второй строкой символов определяют согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности с использованием формулы IV, приведенной ниже, но без ограничения данным конкретным примером.

[0094] где normFact(S1, S2) - максимальное семантическое редакционное расстояние, n - количество слов в первой последовательности и m - количество слов во второй последовательности.

[0095] Здесь normFact(S1, S2) - нормализующий коэффициент, используемый для отображения значения minCost(S1, S2)/normFact(S1, S2) на диапазон от 0 до 1, благодаря чему упрощается интуитивное определение сходства.

[0096] На шаге S20536 определяют сходство между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию.

[0097] К примеру, сходство между первой строкой символов и второй строкой символов может быть определено на основе формулы V, приведенной ниже.

[0098] где sim(S1, S2) - сходство между первой строкой символов и второй строкой символов.

[0099] К примеру, когда minCost(S1, S2) равно 1,5 и normFact(S1, S2) равно 2,5, сходство между S1 и S2 равно 1-1,5/2,5=0,4.

[00100] Согласно способу, предложенному в вариантах осуществления настоящего изобретения, для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают их разбиение на первую последовательность и вторую последовательность, и таким образом реализуют определение редакционного расстояния для преобразования первой строки символов во вторую строку символов на основе отдельных слов в первой последовательности и второй последовательности, вместо отдельных символов в первой строке символов и второй строке символов. Каждое слово в строке символов может включать по меньшей мере один символ. Таким образом, сходство может быть определено согласно редакционному расстоянию в сочетании с корреляцией между символами в строке символов, что позволяет определять сходство более точно.

[00101] Фиг. 3 представляет собой блок-схему, иллюстрирующую устройство для определения сходства в соответствии с одним из примеров осуществления настоящего изобретения. В соответствии с фиг. 3, устройство для определения сходства включает модуль 301 разбиения на слова, первый модуль 302 определения и второй модуль 303 определения.

[00102] Модуль 301 разбиения на слова сконфигурирован для выполнения разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, причем первая последовательность и вторая последовательность, каждая, включают по меньшей мере по одному слову.

[00103] Первый модуль 302 определения сконфигурирован для определения редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности.

[00104] Второй модуль 303 определения сконфигурирован для определения сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию и информации о различных операциях для преобразования первой последовательности во вторую последовательность.

[00105] Согласно устройству, предложенному в вариантах осуществления настоящего изобретения, для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают их разбиение, соответственно, на первую последовательность и вторую последовательность, и таким образом редакционное расстояние для преобразования первой строки символов во вторую строку символов может быть определено на основе отдельных слов в строке символов, вместо отдельных символов в строке символов. При этом каждое слово в строке символов может включать по меньшей мере один символ, и сходство, таким образом, может быть определено согласно редакционному расстоянию в сочетании с корреляцией между символами в строке символов, что позволяет определять сходство более точно.

[00106] В другом варианте осуществления настоящего изобретения, показанном на фиг. 4, второй модуль 303 определения включает:

блок 3031 получения, сконфигурированный для получения информации об операции замены среди информации о различных операциях для преобразования первой последовательности во вторую последовательность;

первый блок 3032 определения, сконфигурированный для определения количества пар согласно информации об операции замены, где под количеством пар понимается количество комбинаций из двух слов, присутствующих одновременно в первой последовательности и второй последовательности; и

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

[00107] В еще одном варианте осуществления настоящего изобретения, показанном на фиг. 5, упомянутые различные операции включают операцию замены и операцию перестановки, при этом второй модуль 3033 определения включает:

первый подблок 30331 определения, сконфигурированный для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

подблок 30332 нормализации, сконфигурированный для нормализации минимального семантического редакционного расстояния, в результате чего получают нормализованный результат; и

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

[00108] В еще одном варианте осуществления настоящего изобретения, показанном на фиг. 6, упомянутые различные операции включают по меньшей мере одно из следующего: операцию замены, операцию перестановки, операцию вставки и операцию удаления, при этом второй блок 3033 определения включает:

третий подблок 30334 определения, сконфигурированный для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

четвертый подблок 30335 определения, сконфигурированный для определения второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности; и

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

[00109] В еще одном из вариантов осуществления настоящего изобретения, показанном на фиг. 7, устройство дополнительно включает:

третий модуль 304 определения, сконфигурированный для определения стоимости операции замены и стоимости операции перестановки согласно соотношению между операцией замены и операцией перестановки; и

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

[00110] В еще одном из вариантов осуществления настоящего изобретения, показанном на фиг. 8, устройство дополнительно включает:

пятый модуль 306 определения, сконфигурированный для определения того, что 2 × стоимость операции замены > стоимость операции перестановки, согласно соотношению между операцией замены и операцией перестановки; и

шестой модуль 307 определения, сконфигурированный для определения того, что стоимость операции вставки + стоимость операции удаления > стоимость операции замены, согласно соотношению между операцией замены, операцией вставки и операцией удаления.

[00111] В еще одном из вариантов осуществления настоящего изобретения, показанном на фиг. 9, устройство дополнительно включает:

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

[00112] В еще одном из вариантов осуществления настоящего изобретения первый модуль 302 определения сконфигурирован для определения редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности на основе формулы I, приведенной ниже.

где, i-i-e слово в первой последовательности, j-j-e слово во второй последовательности; cost(S) - стоимость операции удаления, cost(C) - стоимость операции вставки и cost(T) - стоимость операции замены.

[00113] В еще одном варианте осуществления настоящего изобретения первый подблок 30331 определения сконфигурирован для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе формулы II, приведенной ниже:

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

[00114] В еще одном варианте осуществления настоящего изобретения третий подблок 30334 определения сконфигурирован для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе формулы III, приведенной ниже:

где S1 и S1, соответственно, - первая строка символов и вторая строка символов, S1 - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, S1 - стоимость операции перестановки, S1 - стоимость операции замены и S1.

[00115] В еще одном из вариантов осуществления настоящего изобретения четвертый подблок 30335 определения сконфигурирован для определения второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно любому из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности, на основе формулы IV, приведенной ниже:

где normFact(S1, S2) - второе семантическое редакционное расстояние, n - количество слов в первой последовательности, m - количество слов во второй последовательности, cost(T) - стоимость операции замены, cost(S) - стоимость операции удаления и cost(C) - стоимость операции вставки.

[00116] В еще одном из вариантов осуществления настоящего изобретения пятый подблок 30336 определения сконфигурирован для определения сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию, на основе формулы V, приведенной ниже:

где sim(S1, S2) - сходство между первой строкой символов и второй строкой символов, minCost(S1, S2) - первое семантическое редакционное расстояние, и normFact(S1, S2) - второе семантическое редакционное расстояние.

[00117] Другие возможные варианты осуществления настоящего изобретения могут быть получены путем произвольного комбинирования любых из описанных выше опциональных технических решений и не будут подробно рассмотрены в настоящем документе.

[00118] Устройство для определения сходства, предложенное в вариантах осуществления настоящего изобретения, соответствующих фиг. 3-9, может быть сконфигурировано для исполнения способа определения сходства, предложенного в вариантах осуществления настоящего изобретения, соответствующих фиг. 1 или фиг. 2. При этом конкретные методы исполнения операций модулями устройства были подробно описаны в вариантах осуществления настоящего изобретения, относящихся к способу, и следовательно, не будут подробно рассмотрены повторно.

[00119] Фиг. 10 представляет собой блок-схему терминала 600 в соответствии с одним из примеров осуществления настоящего изобретения. Терминал может быть сконфигурирован для исполнения способа определения сходства, предложенного в вариантах осуществления настоящего изобретения, соответствующих фиг. 1 или 2. Например, терминал 600 может представлять собой мобильный телефон, компьютер, терминал цифрового вещания, устройство приема и передачи сообщений, игровую приставку, планшетное устройство, медицинское устройство, тренажерное оборудование, карманный персональный компьютер (КПК) и т.п.

[00120] В соответствии с иллюстрацией фиг. 10 терминал 600 может включать один или более следующих компонентов: процессорный компонент 602, память 604, компонент 606 электропитания, мультимедийный компонент 608, аудиокомпонент 610, интерфейс 612 ввода-вывода (input/output, I/O), измерительный компонент 614 и компонент 616 связи.

[00121] Процессорный компонент 602, как правило, осуществляет общее управление функционированием терминала 600, например, операциями, связанными с отображением, телефонными вызовами, обменом данными, а также операциями, связанными с работой камеры и операциями по записи данных. Процессорный компонент 602 может включать один или более процессоров 620, исполняющих инструкции с целью выполнения всех шагов описанного выше способа или части этих шагов. Также, процессорный компонент 602 может включать один или более модулей, обеспечивающих возможность взаимодействия между процессорным компонентом 602 и другими компонентами. Например, процессорный компонент 602 может включать мультимедийный модуль, обеспечивающий возможность взаимодействия между мультимедийным компонентом 608 и процессорным компонентом 602.

[00122] Память 604 сконфигурирована для хранения различных типов данных с целью поддержки функционирования терминала 600. Примерами подобных данных могут служить инструкции любых прикладных программ или методов, исполняемых в терминале 600, контактные данные, данные телефонной книги, сообщения, изображения, видеоданные и т.п. Память 604 может быть реализована с использованием энергозависимых или энергонезависимых запоминающих устройств любого типа, а также их комбинаций, например, статической памяти с произвольным доступом (static random access memory, SRAM), электрически перепрограммируемой памяти в режиме «только для чтения» (erasable programmable read-only memory, EPROM), программируемой памяти в режиме «только для чтения» (programmable read-only memory, PROM), памяти в режиме «только для чтения», магнитной памяти, флэш-памяти, магнитного или оптического диска.

[00123] Компонент 606 электропитания обеспечивает электропитание различных компонентов терминала 600. Компонент 606 электропитания может включать систему управления электропитанием, один или более источников питания, а также любые другие компоненты, связанные с производством, управлением и распределением электрической энергии в терминале 600.

[00124] Мультимедийный компонент 608 включает экран, который обеспечивает интерфейс вывода между терминалом 600 и пользователем. В некоторых из вариантов осуществления настоящего изобретения экран может включать дисплей на жидких кристаллах (liquid crystal display, LCD) и сенсорную панель (touch panel, TP). Если экран включает сенсорную панель, то такой экран может быть реализован как сенсорный экран для приема сигналов ввода от пользователя. Сенсорная панель включает один или более датчиков касания, предназначенных для регистрации жестов на сенсорной панели, например, касания, скольжения и т.п. Датчики касания могут не только регистрировать границы траектории касания или скольжения, но также определять временную длительность и величину давления, связанные с операциями касания или скольжения. В некоторых вариантах осуществления настоящего изобретения мультимедийный компонент 608 включает фронтальную камеру и/или тыловую камеру. Когда терминал 600 находится в соответствующем режиме работы, например, в режиме фотографирования или видео, фронтальная камера и/или тыловая камера могут принимать внешние мультимедийные данные. Как фронтальная камера, так и тыловая камера могут представлять собой фиксированные системы оптических линз или иметь возможность изменения расстояния фокусировки и оптического зуммирования.

[00125] Аудиокомпонент 610 сконфигурирован для вывода и/или ввода аудиосигналов. Например, аудиокомпонент 610 включает микрофон (MIC); когда терминал 600 находится в соответствующем режиме работы, например, в режиме вызова, в режиме записи или в режиме распознавания голоса, и при этом микрофон сконфигурирован для приема внешнего аудиосигнала. Принятый аудиосигнал может затем быть сохранен в памяти 604 или передан вовне при помощи компонента 616 связи. В некоторых из вариантов осуществления настоящего изобретения аудиокомпонент 610 включает также громкоговоритель для вывода аудиосигналов.

[00126] Интерфейс 612 ввода/вывода обеспечивает интерфейс между процессорным компонентом 602 и модулями периферийных интерфейсов, при этом модулями периферийного интерфейса могут быть: клавиатура, поворотно-нажимной переключатель («колесо»), кнопки и т.п. Кнопки могут включать, без ограничения перечисленным: кнопку «домой», кнопку регулировки громкости, кнопку «пуск» и кнопку блокировки.

[00127] Измерительный компонент 614 включает один или более датчиков, благодаря которым терминал 600 обладает функциональностью оценки состояния по различным его аспектам. Например, измерительный компонент 614 может обнаруживать состояние «открыто» или «закрыто» терминала 600, относительное расположение компонентов, например, дисплея и клавиатуры терминала 600; измерительный компонент 614 может также обнаруживать изменение положения терминала 600 или одного из компонентов терминала 600, присутствие или отсутствие контакта пользователя с терминалом 600, ориентацию или ускорение/замедление терминала 600 и изменение температуры терминала 600. Измерительный компонент 614 может также включать датчик близости, сконфигурированный для обнаружения присутствия приближенных объектов без физического контакта с ними. Измерительный компонент 614 может дополнительно включать светочувствительный датчик, например, например, комплементарный метал-окисел-полупроводниковый (Complementary Metal Oxide Semiconductor, CMOS) датчик изображений или датчик изображений на устройстве с зарядовой связью (Charge Coupled Device, CCD), сконфигурированные для использования в приложениях формирования изображений. В некоторых из вариантов осуществления настоящего изобретения измерительный компонент 614 может также включать акселерометрический датчик ускорения, гироскопический датчик, магнитный датчик, датчик давления или датчик температуры.

[00128] Компонент 616 связи сконфигурирован для обеспечения связи, проводной или беспроводной, между терминалом 600 и другими устройствами. Терминал 600 может осуществлять доступ к беспроводной сети, основанной на таких стандартах связи, как WiFi, 2G или 3G, или их комбинации. В одном из примеров осуществления настоящего изобретения компонент 616 связи принимает, при помощи широковещательного канала, широковещательный сигнал или соответствующую широковещательную информацию от внешней широковещательной системы управления. В одном из примеров осуществления настоящего изобретения компонент 616 связи включает также модуль ближней бесконтактной связи (near field communication, NFC) для обеспечения связи в ближней зоне. Например, NFC-модуль может быть реализован на базе технологии радиочастотной идентификации (radio frequency identification, RFID), технологии ассоциации передачи данных в инфракрасном диапазоне (infrared data association, IrDA), технологии сверхширокой полосы пропускания (ultra-wideband, UWB), технологии Bluetooth (ВТ) или других технологий.

[00129] В одном из примеров осуществления настоящего изобретения терминал 600 может быть реализован с использованием одной или более заказных интегральных схем (ASIC), цифровых сигнальных процессоров (DSP), цифровых устройств обработки сигналов (digital signal processing devices, DSPD), программируемых логических устройств (programmable logic devices, PLD), электрически программируемых вентильных матриц (field programmable gate arrays, FPGA), контроллеров, микроконтроллеров, микропроцессоров или других электронных компонентов, предназначенных для исполнения описанного выше способа определения сходства, предложенного в вариантах осуществления настоящего изобретения в соответствии с фиг. 1 или 2.

[00130] В одном из вариантов осуществления настоящего изобретения предложен также машиночитаемый носитель, включающий инструкции, например, память 604, включающую инструкции, при этом упомянутые инструкции могут исполняться процессором 620 из состава терминала 600 с целью реализации описанного выше способа определения сходства. К примеру, машиночитаемый носитель может представлять собой память ROM, память с произвольным доступом (Random Access Memory, RAM), память в режиме «только для чтения на компакт-диске (Compact Disc Read-Only Memory, CD-ROM), магнитную ленту, гибкий диск, оптическое запоминающее устройство и т.п.

[00131] Согласно машиночитаемому носителю, предложенному в вариантах осуществления настоящего изобретения, для первой строки символов и второй строки символов выполняют, соответственно, разбиение на слова, в результате чего получают их разбиение на первую последовательность и вторую последовательность, и таким образом определение редакционного расстояния для преобразования первой строки символов во вторую строку символов может быть реализовано на основе отдельных слов в первой последовательности и второй последовательности, вместо отдельных символов в первой строке символов и второй строке символов. При этом каждое слово в строке символов может включать по меньшей мере один символ, и сходство, таким образом, может быть определено согласно редакционному расстоянию в сочетании с корреляцией между символами в строке символов, что позволяет определять сходство более точно.

[00132] В одном из вариантов осуществления настоящего изобретения описанный выше способ определения сходства, предложенный в вариантах осуществления настоящего изобретения, соответствующих фиг. 1 или 2, может также исполняться сервером. Фиг. 11 представляет собой блок-схему, иллюстрирующую сервер в соответствии с одним из примеров осуществления настоящего изобретения. Сервер может быть сконфигурирован для исполнения способа определения сходства, предложенного в вариантах осуществления настоящего изобретения, соответствующих фиг. 1 или 2. В соответствии с иллюстрацией фиг. 11, сервер 700 включает процессорный компонент 722, а также включает один или более процессоров, и ресурс памяти, представленный памятью 732, которая сконфигурирована для хранения инструкций, например, прикладной программы, исполняемой процессорным компонентом 722. Прикладная программа, хранимая в памяти 732 может включать один или более модулей, каждый из которых соответствует набору инструкций. Дополнительно, процессорный компонент 722 сконфигурирован для исполнения инструкций с целью исполнения способа определения сходства, предложенного в вариантах осуществления настоящего изобретения, соответствующих фиг. 1 или 2.

[00133] Сервер 700 может включать также компонент 726 электропитания, сконфигурированный для осуществления управления электропитанием сервера 700, проводный или беспроводной сетевой интерфейс 750, сконфигурированный для подключения сервера 700 к сети, и интерфейс 758 ввода-вывода (I/O). Сервер 700 может функционировать на основе операционной системы, например, Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, и т.п., хранимой в памяти 732.

[00134] Специалистами в данной области техники, по прочтении описания или после практического применения изобретения, описанного в настоящем документе, могут быть найдены другие варианты его осуществления. Настоящая заявка призвана охватить все изменения, применения или модификации настоящего изобретения, не отступающие от его основного замысла, включая все отступления от настоящего изобретения, которые известны на существующем уровне техники или традиционно применяются в данной области техники. Приведенное описание и варианты осуществления настоящего изобретения следует считать исключительно иллюстративными, при этом истинный объем и сущность настоящего изобретения заданы приведенной ниже формулой изобретения.

[00135] Нужно понимать, что настоящее изобретение не ограничено конкретной конструкцией, описанной выше и проиллюстрированной на приложенных чертежах, а также, что в пределах объема настоящего изобретения могут быть выполнены множество различных модификаций и изменений. Предполагается, что объем настоящего изобретения ограничен только приложенной формулой изобретения.

1. Способ определения сходства между строками символов, включающий:

выполнение разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, включающие по меньшей мере по одному слову;

определение редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности на основе приведенной ниже формулы I,

Формула 1:

где i - i-e слово в первой последовательности, j - j-e слово во второй последовательности; cost(S) - стоимость операции удаления, cost(C) - стоимость операции вставки и cost(T) - стоимость операции замены;

получение информации об операции замены среди информации о различных операциях для преобразования первой последовательности во вторую последовательность;

определение количества пар согласно информации об операции замены, где количество пар указывает на количество пар слов, присутствующих одновременно в первой последовательности и второй последовательности; и

определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар и стоимости операций, количеству слов в первой последовательности и количеству слов во второй последовательности, при этом определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операций, количеству слов в первой последовательности и количеству слов во второй последовательности, где упомянутые операции включают по меньшей мере одно из следующего: операцию замены, операцию перестановки, операцию вставки и операцию удаления, включает:

определение первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности; и

определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию,

при этом определение первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки включает:

определение первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе приведенной ниже формулы III,

Формула III:

minCost(S1, S2)=d-p(2cost(T)-cost(J)),

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - первое семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

2. Способ по п. 1, в котором определение сходства между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операций, количеству слов в первой последовательности и количеству слов во второй последовательности, где упомянутые операции включают операцию замены и операцию перестановки, включает:

определение минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

нормализацию минимального семантического редакционного расстояния, в результате чего получают нормализованный результат; и

определение сходства между первой строкой символов и второй строкой символов согласно нормализованному результату.

3. Способ по п. 1 или 2, также включающий:

определение стоимости операции замены и стоимости операции перестановки согласно соотношению между операцией замены и операцией перестановки; и

определение стоимости операции вставки, стоимости операции удаления и стоимости операции замены согласно соотношению между операцией замены, операцией вставки и операцией удаления.

4. Способ по п. 3, также включающий:

определение того, что 2 × стоимость операции замены>стоимости операции перестановки, согласно соотношению между операцией замены и операцией перестановки; и

определение того, что стоимость операции вставки + стоимость операции удаления > стоимости операции замены согласно соотношению между операцией замены, операцией вставки и операцией удаления.

5. Способ по п. 3, также включающий определение того, что стоимость операции вставки равна стоимости операции удавления согласно соотношению между операцией вставки и операцией удаления.

6. Способ по п. 2, в котором определение минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки включает:

определение минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе приведенной ниже формулы II,

Формула II:

minCost(S1, S2)=d-p(2cost(T)-cost(J)),

где S1 и S2 соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

7. Способ по п. 1, в котором определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности, включает:

определение второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности на основе приведенной ниже формулы IV,

Формула IV:

где normFact(S1, S2) - второе семантическое редакционное расстояние, n - количество слов в первой последовательности, m - количество слов во второй последовательности, cost(T) - стоимость операции замены, cost(S) - стоимость операции удаления и cost(C) - стоимость операции вставки.

8. Способ по п. 1, в котором определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию включает:

определение сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию на основе приведенной ниже формулы V,

Формула V:

sim(S1, S2)=1-minCost(S1, S2)/normFact(S1, S2);

где sim (S1, S2) - сходство между первой строкой символов и второй строкой символов, minCost(S1, S2) - первое семантическое редакционное расстояние и normFact(S1, S2) - второе семантическое редакционное расстояние.

9. Устройство для определения сходства между строками символов, включающее:

модуль разбиения на слова, сконфигурированный для выполнения разбиения на слова для первой строки символов и второй строки символов, соответственно, в результате чего получают первую последовательность и вторую последовательность, включающие по меньшей мере по одному слову;

первый модуль определения, сконфигурированный для определения редакционного расстояния между первой строкой символов и второй строкой символов согласно заранее заданному алгоритму определения редакционного расстояния, первой последовательности и второй последовательности на основе приведенной ниже формулы,

Формула I:

где i - i-e слово в первой последовательности, j - j-e слово во второй последовательности; cost(S), - стоимость операции удаления, cost(C) - стоимость операции вставки и cost(T) - стоимость операции замены; и

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

при этом второй модуль определения включает:

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

первый блок определения, сконфигурированный для определения количества пар согласно информации об операции замены, где количество пар указывает на количество пар слов, присутствующих одновременно в первой последовательности и второй последовательности; и

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

при этом упомянутые операции включают по меньшей мере одно из следующего: операцию замены, операцию перестановки, операцию вставки и операцию удаления, и второй блок определения включает:

третий подблок определения, сконфигурированный для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки;

четвертый подблок определения, сконфигурированный для определения второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно одному из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности; и

пятый подблок определения, сконфигурированный для определения сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию,

при этом третий подблок определения сконфигурирован для определения первого семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе приведенной ниже формулы,

Формула III:

minCost(S1, S2)=d-p(2cost(T)-cost(J)),

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - первое семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены и 2cost(T)-cost(J)>0.

10. Устройство по п. 9, в котором упомянутые операции включают операцию замены и операцию перестановки, при этом второй блок определения включает:

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

подблок нормализации, сконфигурированный для нормализации минимального семантического редакционного расстояния, в результате чего получают нормализованный результат; и

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

11. Устройство по п. 9 или 10, также включающее:

третий модуль определения, сконфигурированный для определения стоимости операции замены и стоимости операции перестановки согласно соотношению между операцией замены и операцией перестановки; и

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

12. Устройство по п. 11, также включающее:

пятый модуль определения, сконфигурированный для определения того, что 2 × стоимость операции замены > стоимости операции перестановки, согласно соотношению между операцией замены и операцией перестановки; и

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

13. Устройство по п. 11, также включающее:

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

14. Устройство по п. 10, в котором первый подблок определения сконфигурирован для определения минимального семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно редакционному расстоянию, количеству пар, стоимости операции замены и стоимости операции перестановки на основе приведенной ниже формулы,

Формула II:

minCost(S1, S2)=d-p(2cost(T)-cost(J)),

где S1 и S2, соответственно, - первая строка символов и вторая строка символов, minCost(S1, S2) - минимальное семантическое редакционное расстояние, d - редакционное расстояние, р - количество пар, cost(J) - стоимость операции перестановки, cost(T) - стоимость операции замены, и 2cost(T)-cost(J)>0.

15. Устройство по п. 9, в котором четвертый подблок определения сконфигурирован для определения второго семантического редакционного расстояния между первой строкой символов и второй строкой символов согласно любому из следующего: стоимости операции вставки и стоимости операции удаления, стоимости операции замены, количеству слов в первой последовательности и количеству слов во второй последовательности, на основе приведенной ниже формулы,

Формула IV:

где normFact(S1, S2) - второе семантическое редакционное расстояние, n - количество слов в первой последовательности, m - количество слов во второй последовательности, cost(T) - стоимость операции замены, cost(S) - стоимость операции удаления и cost(C) - стоимость операции вставки.

16. Устройство по п. 9, в котором пятый подблок определения сконфигурирован для определения сходства между первой строкой символов и второй строкой символов согласно первому семантическому редакционному расстоянию и второму семантическому редакционному расстоянию на основе приведенной ниже формулы V,

Формула V:

sim(S1, S2)=1-minCost(S1, S2)/normFact(S1, S2);

где sim(S1, S2) - сходство между первой строкой символов и второй строкой символов, minCost(S1, S2) - первое семантическое редакционное расстояние и normFact(S1, S2) - второе семантическое редакционное расстояние.



 

Похожие патенты:

Изобретение относится к области технологий сетевой передачи данных. Техническим результатом является повышение эффективности передачи данных в сети.

Изобретение относиться к области адресации кадров протокола к целевым устройствам, а более конкретно к области распределенного получения данных как части управления объектом, и может быть использовано для адресации и приема кадра по совместно используемому каналу, а также для передачи и/или приема кадров.

Группа изобретений относится к полевым устройствам. Технический результат – уменьшение нагрузки на процессор устройства и повышение качества связи с процессором устройства.

Изобретение относится к области сетей беспроводной связи. Техническим результатом является регистрация базовой станции в сети.

Изобретение относится к области связи. Технический результат – уменьшение дублирования маршрута.

Изобретение относится к содействию связи от устройства к устройству. Технический результат – устранение громоздкости назначения маяковых сигналов в сети и передача информации о их назначении в устройства ввиду увеличения возможного количества устройств.

Группа изобретений относится к технологиям осуществления вызовов в видеоконференциях. Техническим результатом является улучшение результатов вызовов по видеоконференцсвязи.

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении скорости передачи данных в сети.

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

Контактный модуль выполнен с возможностью посадки внутри гнезда внутреннего источника питания в корпусе периферийного устройства и содержит узел проводного подключения источника питания, электронику для преобразования электропитания и узел подключения периферийного устройства.

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

Изобретение относится к средствам управления с использованием жестов наведения. Технический результат заключается в расширении арсенала средств того же назначения.

Изобретение относится к медицинской технике, а именно к способам сканирования и последующей обработки полученного изображения для томографического исследования.

Изобретение относится к области вычисления дескрипторов изображения. Технический результат – обеспечение уменьшения размера дескриптора изображения посредством преобразования.

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

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

Изобретение относится к области телекоммуникаций, в частности к протоколу передачи голоса или видеосигнала по интернету (VoIP). Технический результат заключается в обеспечении высокого качества кодирования голоса и видеосигнала.

Изобретение относится к области выбора устройства интерфейса пациента с использованием 3-D моделей. Технический результат – повышение точности выбора подходящего устройства интерфейса пациента для пациента.

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

Изобретение относится к устройству обработки изображений. Технический результат заключается в повышении точности формирования описания изображения.

Изобретение относится к области оптического распознавания символов, а именно к способам распознавания символов на изображениях из видеопотока. Технический результат заключается в повышении качества распознавания изображений документов за счет объединения нескольких кадров.
Наверх