Выбор функций в MATLAB

У меня есть набор данных для классификации текста, готовый к использованию в MATLAB. Каждый документ является вектором в этом наборе данных, и размерность этого вектора чрезвычайно высока. В этих случаях люди обычно делают некоторый выбор функций на векторах, таких как те, которые вы действительно нашли инструментарий WEKA. Есть ли что-то подобное в MATLAB? если не можешь предложить и алгоритм для меня...? спасибо

3 ответов


MATLAB (и его наборы инструментов) включают в себя ряд функций, связанных с выбором функций:

  • RANDFEATURES (Bioinformatics Toolbox): генерация рандомизированного подмножества объектов, управляемых классификатором
  • RANKFEATURES (Bioinformatics Toolbox): ранжирование объектов по критериям разделения классов
  • SEQUENTIALFS (Statistics Toolbox): последовательная функция выбор
  • RELIEFF (Statistics Toolbox): алгоритм рельефа-F
  • TREEBAGGER.OOBPermutedVarDeltaError, predictorImportance (Statistics Toolbox): использование методов ансамбля (упакованные деревья решений)

вы также можете найти примеры, демонстрирующие использование реальных наборов данных:

кроме того, существуют сторонние наборы инструментов:

в противном случае вы всегда можете вызвать свои любимые функции из WEKA непосредственно из MATLAB, так как он включает JVM...


выбор функции зависит от конкретной задачи, которую вы хотите сделать с текстовыми данными.

одним из самых простых и грубых методов является использование анализа главных компонентов (PCA) для уменьшения размеров данных. Эти уменьшенные Габаритные данные можно использовать сразу как характеристики для классифицирования.

см. учебник по использованию PCA здесь:

http://matlabdatamining.blogspot.com/2010/02/principal-components-analysis.html

вот ссылка на справку команды Matlab PCA:

http://www.mathworks.com/help/toolbox/stats/princomp.html

используя полученные характеристики, известные машины вектора поддержки (SVM) можно использовать для классификации.

http://www.mathworks.com/help/toolbox/bioinfo/ref/svmclassify.html http://www.autonlab.org/tutorials/svm.html


вы могли бы рассмотреть, используя независимый метод характеристики Вайс и Куликовски, чтобы быстро устранить переменные, которые, очевидно, unimformative:

http://matlabdatamining.blogspot.com/2006/12/feature-selection-phase-1-eliminate.html