Представление пространства состояний и цели в проблеме сегментации слова - PullRequest
0 голосов
/ 30 марта 2019

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

Скажем, данное слово "ineedyou", тогда мой результат сегментации слова должен быть "Я нуждаюсь в тебе".

Для этой задачи мне дана функция беглости (скажем, f), которая берет слово и говорит, насколько часто это слово встречается в корпусе.

Значит, f ('i') + f ("нужно") + f ("ты")

Я использую Унифицированный поиск стоимости (UCS), чтобы решить эту проблему, но мне трудно установить свои состояния, действия и целевое состояние.

Я решил проблему, установив, что мои состояния - это набор, где запятая представляет пробел, так что мое начальное состояние (ineedyou), и если мое действие заключается в вставке пробела после буквы «i», тогда мое следующее состояние будет («я», «нуждаюсь»).

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

state_s0 = ('ineedyou')

action_a0 = 1

Теперь мое действие будет представлять собой пробел в последнем элементе кортежа.

state_s1 = ('i', 'needyou')

action_a1 = 2

state_s2 = ('i', 'ne', 'dyou')

В качестве цели для моего UCS я установил кортеж ('i', 'need', 'you'), и он работает совершенно нормально, однако, как мне решить эту проблему без необходимости устанавливать ('i', «нужно», «ты») как цель вручную?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...