randfeatures

Сгенерируйте рандомизированное подмножество функций

Синтаксис

[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-матричном 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] Литий, L., Umbach, D.M., Терри, P., и Тейлор, J.A. (2003). Применение метода GA/KNN к данным о протеомике SELDI. PNAS. 20, 1638-1640.

[2] Лю, H., Motoda, H. (1998). Покажите выбор для открытия знаний и анализа данных, Kluwer академические издатели.

[3] Росс, D.T. et.al. (2000). Систематическое изменение в шаблонах экспрессии гена в человеческих линиях раковых клеток. Генетика природы. 24 (3), 227-235.

Смотрите также

| | | |

Представлено до R2006a