Сгенерируйте рандомизированное подмножество функций
[IDX, Z] = randfeatures(X, Group, '
PropertyName
', PropertyValue
...)
randfeatures(..., 'Classifier', C)
randfeatures(..., 'ClassOptions', CO)
randfeatures(..., 'PerformanceThreshold',
PT)
randfeatures(..., 'ConfidenceThreshold',
CT)
randfeatures(..., 'SubsetSize', SS)
randfeatures(..., 'PoolSize', PS)
randfeatures(..., 'NumberOfIndices',
N)
randfeatures(..., 'CrossNorm', CN)
randfeatures(..., 'Verbose', VerboseValue)
[IDX, Z] = randfeatures(X, Group, '
выполняет рандомизированный поиск функции подмножеством, подкрепленный классификацией. PropertyName
', PropertyValue
...)randfeatures
случайным образом генерирует подмножества функций, используемых для классификации выборок. Каждый подмножество оценивается с очевидной ошибкой. Сохраняются только лучшие подмножества, и они объединяются в один конечный пул. Величина для каждой функции в пуле дает измерение значимости.
X
содержит обучающие выборки. Каждый столбец X
является наблюдаемым вектором. Group
содержит метки классов. Group
может быть числовым вектором, массивом ячеек из векторов символов или строкового вектора; numel(Group)
должно совпадать с количеством столбцов в X
, и numel(unique(Group))
должно быть больше или равно 2
. Z
- значение классификации для каждой функции. IDX
содержит индексы после сортировки Z
; т.е. первый указывает на наиболее значимую функцию.
randfeatures(..., 'Classifier', C)
устанавливает классификатор. Опции:
'da' (default) Discriminant analysis 'knn' K nearest neighbors
randfeatures(..., 'ClassOptions', CO)
- камера с дополнительными опциями для выбранного классификатора. Когда вы задаете дискриминантную модель анализа ('da'
) как классификатор, randfeatures
использует classify
функция с параметрами по умолчанию. Для классификатора KNN, randfeatures
использование fitcknn
со следующими опциями по умолчанию. {'Distance','correlation','NumNeighbors',5}
.
randfeatures(..., 'PerformanceThreshold',
PT)
устанавливает правильный порог классификации, используемый для выбора подмножеств, включенных в окончательный пул. Для 'da'
модель, по умолчанию это 0.8
. Для 'knn'
модель, по умолчанию это 0.7
.
randfeatures(..., 'ConfidenceThreshold',
CT)
использует апостериорную вероятность дискриминантного анализа, чтобы признать недействительными классифицированные подвекторы с низким доверием. При использовании 'da'
модель, по умолчанию это 0.95.^(number of classes)
. При использовании 'knn'
модель, значение по умолчанию является 1, что означает, что все классифицированные подвекторы должны иметь все k соседи, классифицированные в один и тот же класс, порядок храниться в пуле.
randfeatures(..., 'SubsetSize', SS)
устанавливает количество функций, учитываемых в каждом подмножестве. По умолчанию это 20
.
randfeatures(..., 'PoolSize', PS)
устанавливает целевое количество принятых подмножеств для последнего пула. По умолчанию это 1000
.
randfeatures(..., 'NumberOfIndices',
N)
устанавливает количество индексов выхода в IDX
. Значение по умолчанию совпадает с количеством функций.
randfeatures(..., 'CrossNorm', CN)
применяет независимую нормализацию к наблюдениям для каждой функции. Перекрестная нормализация обеспечивает сопоставимость между различными функциями, хотя это не всегда необходимо, потому что выбранные свойства классификатора могут уже объясняться этим. Опции:
'none' (default) Intensities are not cross-normalized. 'meanvar' x_new = (x - mean(x))/std(x) 'softmax' x_new = (1+exp((mean(x)-x)/std(x)))^-1 'minmax' x_new = (x - min(x))/(max(x)-min(x))
randfeatures(..., 'Verbose', VerboseValue)
, когда Verbose
является true
, отключает подробность. По умолчанию это true
.
Найдите сокращенный набор генов, который достаточен для классификации всех типов рака в наборе данных t-matrix NCI60. Загрузите выборочные данные.
load NCI60tmatrix
Выберите функции.
I = randfeatures(X,GROUP,'SubsetSize',15,'Classifier','da');
Тестовые функции с линейным классификатором дискриминантов.
C = classify(X(I(1:25),:)',X(I(1:25),:)',GROUP); cp = classperf(GROUP,C); cp.CorrectRate
ans = 1
[1] Li, L., Umbach, D.M., Terry, P. and Taylor, J.A. (2003). Применение метода GA/KNN к данным протеомики SELDI. PNAS. 20, 1638-1640.
[2] Liu, H., Motoda, H. (1998). Выбор признаков по открытию знаний и Данных майнингу, Kluwer Academic Publishers.
[3] Росс, Д. Т. et.al. (2000). Систематические изменения шаблонов экспрессии генов в клеточных линиях рака человека. Генетика природы. 24 (3), 227-235.
classify
| classperf
| crossvalind
| rankfeatures
| sequentialfs