Próbuję grupować, na przykład, ciągi o programowaniu z innymi ciągami o programowaniu, ciągi o fizyce z innymi ciągami o fizyce itp., Dla szerokiego zakresu tematów. Pomimo rażącego teoretycznego aspektu językowego problemu, zamierzam to zrobić za pomocą programowania / oprogramowania.
Podsumowanie: Biorąc pod uwagę dużą liczbę ciągów, jak miałbym pogrupować je według tematyki semantycznej?
Konkretna aplikacja: mam ~ 200 000 ciekawostek, które chciałbym podzielić na wspólne grupy (samochody, komputery, polityka, Kanada, jedzenie, Barack Obama itp.).
Co sprawdziłem: Wikipedia ma listę zestawów narzędzi do przetwarzania języka naturalnego (zakładając, że to, co próbuję zrobić, nazywa się NLP), więc spojrzałem na kilka, ale żadne nie wydaje się robić czegoś podobnego do moich potrzeb.
Uwagi: Zwrócono uwagę, że robienie tego wymaga dodatkowej wiedzy (np. Porsche jest samochodem, C ++ jest językiem programowania). Zakładam, że dane treningowe są potrzebne, ale jeśli mam tylko listę pytań i odpowiedzi, jak mogę wygenerować dane treningowe? A potem, jak korzystać z danych treningowych?
Więcej notatek: Jeśli bieżące formatowanie mojej pomocy w pytaniach i odpowiedziach (choć wygląda jak JSON, jest to w zasadzie nieprzetworzony plik tekstowy):
// 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
}
Zanim jednak ktoś zauważy, że istnieje już kategoria, zwróć uwagę, że istnieje ~ 200 000 takich pytań i odpowiedzi oraz w zasadzie tyle „kategorii”. Próbuję pogrupować je w szersze grupy, takie jak te wymienione powyżej. Również to formatowanie można bardzo łatwo zmienić na wszystkie pytania, robię to programowo.
I więcej notatek: tak naprawdę nie wiem, ile kategorii potrzebuję (co najmniej 10-20), ponieważ sam nie przeczytałem wszystkich pytań. Po części spodziewałem się, że jakaś liczba skończona zostanie jakoś określona podczas kategoryzacji. W każdym razie zawsze mogę ręcznie utworzyć wiele kategorii.