Как обсуждалось здесь, знаете ли вы какие-либо инструменты, которые обеспечивают алгоритм центроида для классификации текста в java?
Алгоритм Centroid для классификации текста, инструменты?
Ответы (1)
scikit-learn включает это как класс NearestCentroid
. Он также включает реализацию L2-нормализованного tf-idf.
[Отказ от ответственности: я разработчик scikit-learn.]
person
Fred Foo
schedule
19.05.2012
Спасибо, но вы знаете что-нибудь в Java?
- person samsamara; 19.05.2012
@ user601: нет, извини. Хотя это не очень сложно реализовать.
- person Fred Foo; 19.05.2012
Привет, если предположить, что мои учебные экземпляры [1,5,1,0],[0,1,3,2]; тогда центр тяжести будет [1,6,4,2]/2 = [0,5,3,2,1], верно?
- person samsamara; 27.05.2012
Если это единственные две выборки определенного класса и вы используете евклидово расстояние, то да.
- person Fred Foo; 27.05.2012
Разве это не просто средний показатель? Как здесь участвует евклидово расстояние при построении центроида?
- person samsamara; 27.05.2012
Да, это средний показатель. Вам нужна метрика расстояния, когда вы хотите предсказать (классифицировать невидимые экземпляры) с помощью результирующей модели. Тогда среднее соответствует евклидову расстоянию, а медиана соответствует манхэттенскому (L1) расстоянию.
- person Fred Foo; 28.05.2012
хорошо спасибо! Мне просто интересно, что, если я использую K-средства и позволю количеству центроидов, построенных равным 1 (т.е. k = 1), построить центроид, а когда появятся невидимые экземпляры, я использую этот центроид для вычисления расстояний с невидимым экземпляром? Это неправильно?
- person samsamara; 31.05.2012
@ user601: k-средних с k = 1 не имеет смысла; он помещает весь тренировочный набор в один класс. Классификация с кластеризацией k-средних, где k›2 имеет смысл, но игнорирует маркировку вашего набора данных.
- person Fred Foo; 01.06.2012
да, с k = 1, я строю единый центр тяжести всех тренировочных экземпляров, который используется для расчета расстояния с тестовыми экземплярами. Должен работать как алгоритм центроида в этой ссылке, верно?
- person samsamara; 01.06.2012
@ user601: с k = 1 существует только один класс/кластер. Решение не принимается. Кроме того, вам, конечно, не нужны k-средние, чтобы найти единственный центроид множества точек данных. Просто усредните их.
- person Fred Foo; 01.06.2012
Я очень ценю вашу помощь. Спасибо.
- person samsamara; 01.06.2012