У меня есть папка, которая содержит много документов в .txt обзоров туризма. Я хочу использовать подход с пакетом слов, чтобы преобразовать их в какое-то числовое представление для машинного обучения (Latent Dirichlet Allocation — LDA) в c ++, чтобы обучить систему распознавать тему для каждого документа.
Но почему-то я не знаю, что делать с алгоритмом Bag of Word, и я слышал некоторые инструменты, такие как Scikit-learn. но Scikit-Learn работает в среде Python. Мне интересно, есть ли какие-нибудь инструменты / библиотеки для рекомендаций, которые могут помочь мне решить мой пакет слов модулей? Или есть оболочка C ++ поверх scikit-learn для C ++?
Я пришел на уровень, на котором я не знаю, что делать, некоторые рекомендации будут оценены. благодарю вас 🙂
Хм … конечно, это должно быть достаточно легко для кодирования?
Самым глупым, но гарантированно работающим подходом будет повторение всех документов дважды. Во время первой итерации создайте хэш-карту слов и уникальный индекс (структуру, подобную HashMap), а во время второй итерации выполните поиск в таблице и напечатайте индекс слова, чтобы создать числовое представление данных.
Если вам нужно представление пакета слов, во время второй итерации вы можете создавать хэш-карту (HashMap) каждый раз, когда вы видите новый документ, и увеличивать счетчики каждого индекса слова, и как только вы достигнете конца документа, вы зачитать и распечатать их.
Вы можете взгляните на эти ресурсы для C ++.