Вопрос о кластеризации документов с помощью карт кохонена
мне бы хотелось узнать, каким образом вектора документов подаются на вход нейронной сети, ведь количество термов (слов) в документах разное, а количество входных нейронов в сети неизменное.
допустим количество входных нейронов у меня 500 штук
есть 100 документов.
я их них выбрасываю стоп слова, цифры, пунктуацию, преобразую к корневой форме.
далее вычисляю веса каждого терма по методу tf*idf, затем нормализую эти веса чтобы они были больше 0, но меньше 1.
о собственно я получаю к примеру такие вещи:
1 док: 0.2 0.4 0.7 0.1 0.4
2 док: 0.7 0.9 0.2
3 док: 0.1 0.4 0.3 0.9 0.5 0.7
...
100 док: 0.5 ... ну и придумайте еще мысленно чисел 499
как мне подавать эти веса на вход нейронной сети? может я упустил какой-то шаг?
всмысле не могу же я подать вектор из 40 признаков на 500 нейронов входного слоя. что подавать на оставшиеся 460 нейронов? не нули же? хрень получится какая-то, если все эти нули будут менять связи между нейронами
или кластеризация с помощью карт кохонена вообще не так делается?
А то не совсем понятно, на кой хрен нужно 500 рецепторов во входном слое.
делается это совсем не так.
нужно было составить словарь уникальных слов во всех документах, и это было бы количеством входных нейронов сети.
каждый документ надо представить в виде вектора, с размерность аналогичной количеству уникальных слов, где элемент равен 0, если данное слово не встречается в документе, и чему-то иному вычисленному по методу tf*idf, в случае если это слово встречается.
подаем этот вектор на вход сети и понеслись аццкие вычисления... 10 дней по подсчетам на обучение должно уйти %)
а не могли бы вы отписываться в теме по ходу вашей работы? интересны результаты и как решали.
постараюсь отписаться одним постом, когда все закончу :P так то все это дело уже успещно разбивает документы на кластеры, надо только редукцию пространства признаков прикрутить. хочу латентно семантический анализ для этого использовать