Например, я пытаюсь сгруппировать строки о программировании с другими строками о программировании, строки о физике с другими строками о физике и т. Д. По широкому кругу тем. Несмотря на вопиющий теоретический лингвистический аспект проблемы, я собираюсь сделать это с помощью программирования / программного обеспечения.
Краткое изложение: Учитывая большое количество строк, как бы я сгруппировал их по семантической теме?
Конкретное приложение: у меня есть ~ 200 тыс. Пустяковых вопросов, которые я бы хотел разделить на общие группы (автомобили, компьютеры, политика, Канада, еда, Барак Обама и т. Д.).
Что я изучил: в Википедии есть список наборов инструментов для обработки естественного языка (при условии, что то, что я пытаюсь сделать, на самом деле называется NLP), поэтому я рассмотрел некоторые из них, но ни один из них, похоже, не соответствует моим потребностям.
Примечания: было отмечено, что для этого требуются дополнительные знания (например, Porsche - автомобиль, C ++ - язык программирования). Я предполагаю, что данные обучения необходимы, но если у меня есть только список вопросов и ответов, как я могу генерировать данные обучения? И как мне использовать данные тренировок?
Дополнительные примечания: Если текущее форматирование моей справки «Вопросы и ответы» (хотя это выглядит как JSON, это в основном необработанный текстовый файл):
// row 1: is metadata
// row 2: is a very specific kind of "category"
// row 3: is the question
// row 4: is the answer
{
15343
A MUSICAL PASTICHE
Of classical music's "three B's", he was the one born in Hamburg in 1833
Johannes Brahms
}
Но прежде чем кто-то укажет на то, что категория уже существует, обратите внимание, что существует около 200 000 вопросов и ответов и, как правило, столько же «категорий». Я пытаюсь сгруппировать их в более широкие группы, подобные перечисленным выше. Кроме того, это форматирование может быть изменено для всех вопросов очень легко, я делаю это программно.
И еще примечания: на самом деле я не знаю, сколько категорий мне понадобится (по крайней мере, 10-20), потому что я сам не прочитал все вопросы. Я частично ожидал, что конечное число будет определено как-то во время категоризации. В любом случае я всегда могу вручную создать ряд категорий.