Я пытаюсь написать алгоритм (который, как я предполагаю, будет полагаться на методы обработки естественного языка), чтобы «заполнить» список поиска термины. Вероятно, у такого рода вещей есть название, о котором я не знаю. Как называется эта проблема и какой алгоритм даст мне следующее поведение?
Входные данные:
docs = [
"I bought a ticket to the Dolphin Watching cruise",
"I enjoyed the Dolphin Watching tour",
"The Miami Dolphins lost again!",
"It was good going to that Miami Dolphins game"
],
search_term = "Dolphin"
Выходные данные:
["Dolphin Watching", "Miami Dolphins"]
По сути, он должен выяснить, что если «Дельфин» вообще появляется, это практически всегда либо в биграммах «Наблюдение за дельфинами», либо «Дельфины Майами». Предпочтительны решения на Python.