Ранжирование признаков: Ранжирование признаков с помощью Recursive Feature Elimination в Scikit-Learn / Хабр

Ранжирование признаков с помощью Recursive Feature Elimination в Scikit-Learn / Хабр

В преддверии старта курса «Machine Learning. Professional» публикуем перевод полезной статьи.

Также приглашаем посмотреть запись открытого вебинара по теме «Кластеризация».


Отбор признаков – это важная задача для любого приложения с машинным обучением. Особенно важно, когда данные, о которых идет речь, имеют много признаков. Оптимальное количество признаков повышает точность модели. Выделить наиболее важные признаки и найти количество оптимальных можно с помощью определения важности признаков или их ранжирования. В этой статье мы познакомимся с ранжированием признаков.

Recursive Feature Elimination

Первым элементом, необходимым для рекурсивного исключения признаков (recursive feature elimination), является оценщик, например, линейная модель или дерево решений.  

У таких моделей есть коэффициенты для линейных моделей и важности признаков в деревьях решений. Для выбора оптимального количества признаков нужно обучить оценщика и выбрать признаки с помощью коэффициентов или значений признаков. Наименее важные признаки будут удаляться. Этот процесс будет повторяться рекурсивно о тех пор, пока не будет получено оптимальное число признаков.

Применение в Sklearn

В Scikit-learn можно применить рекурсивное исключение признаков с помощью класса sklearn.featureselection.RFE. Класс принимает следующие параметры:

  • estimator оценщик машинного обучения, который может выдать важность признаков за счет атрибутов coef или featureimportances attributes.

  • nfeaturestoselectколичество признаков для выбора. Отбирает половину по умолчанию.

  • stepцелое число, указывает количество признаков, которые будут удалены на каждой итерации, или число в диапазоне от 0 до 1, указывающее процент признаков, подлежащих удалению на каждой итерации.

После обучения можно получить следующие атрибуты:

  • ranking — ранжирование признаков.

  • nfeatures — количество выбранных признаков.

  • supportмассив, указывающий, был выбран признак или нет.

Применение

Как уже было сказано ранее, мы будем работать с оценщиком, который предлагает атрибуты featureimportances или coeff. Давайте рассмотрим небольшой пример. Изначально в наборе данных 13 признаков. Мы будем работать над выделением оптимального количества признаков.

import pandas as pddf = pd.read_csv(‘heart.csv’)df.head()

Давайте получим признаки x и y.

X = df.drop([‘target’],axis=1)
y = df[‘target’]

Мы разделим изначальный набор данных на тестовый и обучающий наборы:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y,random_state=0)

Сделаем несколько импортов:

  • Pipeline – в помощь для кросс-валидации, поможет избежать утечки данных.

  • RepeatedStratifiedKFold – для многократной k-блочной кросс-валидации. 

  • crossvalscore – для скоринга кросс-валидации.

  • GradientBoostingClassifier – оценщик, который мы будем использовать.

  • Numpy – для вычисления среднего всех оценок.

from sklearn.pipeline import Pipeline
from sklearn.model_selection import RepeatedStratifiedKFold
from sklearn.model_selection import cross_val_score
from sklearn.feature_selection import RFE
import numpy as np
from sklearn.ensemble import GradientBoostingClassifier

Первым шагом мы создаем экземпляр класса RFE с указанием оценщика и количества признаков, которые будут отобраны. В нашем случае выберем 6:

rfe = RFE(estimator=GradientBoostingClassifier(), n_features_to_select=6)

Далее мы создаем экземпляр модели, которую хотим использовать:

model = GradientBoostingClassifier()

Мы используем Pipeline для преобразования данных. В Pipeline мы указываем rfe для шага отбора признаков и модель, которая будет использоваться на следующем шаге. 

Затем мы задаем RepeatedStratifiedKFold с 10 сплитами и 5 повторениями. Многократная k-блочная кросс-валидация гарантирует, что количество сэмплов каждого класса будет сбалансированным в каждом блоке. RepeatedStratifiedKFold использует многократную k-блочную кросс-валидацию заданное количество раз с различной рандомизацией на каждом повторении. 

pipe = Pipeline([(‘Feature Selection’, rfe), (‘Model’, model)])
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=5, random_state=36851234)
n_scores = cross_val_score(pipe, X_train, y_train, scoring=’accuracy’, cv=cv, n_jobs=-1)
np.mean(n_scores)

Следующий шаг — это использование пайплайна на наборе данных.

pipe.fit(X_train, y_train)

Так мы сможем проверить support и ранжирование. Support указывает на то был выбран признак или нет.

rfe.support_
array([ True, False,  True, False,  True, False, False,  True, False,True, False,  True,  True])

Мы можем поместить это в датафрейм и посмотреть результат.

pd.DataFrame(rfe.support_,index=X.columns,columns=[‘Rank’])

Также можем посмотреть относительное ранжирование.

rf_df = pd.DataFrame(rfe.ranking_,index=X.columns,columns=[‘Rank’]).sort_values(by=’Rank’,ascending=True)rf_df.head()

Вместо того, чтобы вручную настраивать количество признаков, было бы неплохо, если бы мы могли делать это автоматически. Вы можете достичь этого с помощью рекурсивного исключения признаков и кросс-валидации. Здесь вам поможет класс sklearn.featureselection.RFECV. Он принимает следующие параметры:

  • estimatorаналог класса RFE.

  • minfeaturestoselect — минимальное количество признаков для отбора.

  • cv — стратегия разделения для кросс-валидации.

Возвращаемые атрибуты:

  • nfeatures — оптимальное количество признаков, выбранных с помощью кросс-валидации.

  • supportмассив, содержащий информацию о выборе признака.

  • ranking — ранжирование признаков.

  • gridscores — оценка, полученная в результате кросс-валидации.

Первым шагом нужно импортировать класс и создать его экземпляр.

from sklearn.feature_selection import RFECVrfecv = RFECV(estimator=GradientBoostingClassifier())

Далее мы определяем пайплайн и cv. В этом пайплайне мы используем только что созданный rfecv.

pipeline = Pipeline([(‘Feature Selection’, rfecv), (‘Model’, model)])
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=5, random_state=36851234)
n_scores = cross_val_score(pipeline, X_train, y_train, scoring=’accuracy’, cv=cv, n_jobs=-1)
np.mean(n_scores)

Теперь применяем пайплайн и получаем оптимальное количество признаков.

pipeline.fit(X_train,y_train)

Оптимальное количество признаков можно получить с помощью атрибута nfeatures.

print(“Optimal number of features : %d” % rfecv.n_features_)Optimal number of features : 7

Ранжирование и support можно получить также, как и в прошлый раз.

rfecv.support_rfecv_df = pd.DataFrame(rfecv.ranking_,index=X.columns,columns=[‘Rank’]).sort_values(by=’Rank’,ascending=True)
rfecv_df.head()

С помощью gridscores мы можем построить график с оценками, полученными при кросс-валидации.

import matplotlib.pyplot as plt
plt.figure(figsize=(12,6))
plt.xlabel(“Number of features selected”)
plt.ylabel(“Cross validation score (nb of correct classifications)”)
plt.plot(range(1, len(rfecv.grid_scores_) + 1), rfecv.grid_scores_)
plt.show()

Заключение

В задачах регрессии этот метод применяется аналогично. Просто используйте регрессионные показатели вместо показателей точности. Надеюсь, эта статья дала вам некоторое представление о том, как можно выбрать оптимальное количество признаков для ваших задач машинного обучения.


Узнать подробнее о курсе «Machine Learning. Professional» и посмотреть урок по теме «Кластеризация» можно здесь.

Читать ещё:

  • Как я регулярно улучшаю точность моделей обучения с 80% до 90+%

  • Быстрый градиентный бустинг с CatBoost

Ранжирование признаков с помощью Recursive Feature Elimination в Scikit-Learn

В преддверии старта курса «Machine Learning. Professional» публикуем перевод полезной статьи.

Также приглашаем посмотреть запись открытого вебинара по теме «Кластеризация».


Отбор признаков – это важная задача для любого приложения с машинным обучением. Особенно важно, когда данные, о которых идет речь, имеют много признаков. Оптимальное количество признаков повышает точность модели. Выделить наиболее важные признаки и найти количество оптимальных можно с помощью определения важности признаков или их ранжирования. В этой статье мы познакомимся с ранжированием признаков.

Recursive Feature Elimination

Первым элементом, необходимым для рекурсивного исключения признаков (recursive feature elimination), является оценщик, например, линейная модель или дерево решений. 

У таких моделей есть коэффициенты для линейных моделей и важности признаков в деревьях решений. Для выбора оптимального количества признаков нужно обучить оценщика и выбрать признаки с помощью коэффициентов или значений признаков. Наименее важные признаки будут удаляться. Этот процесс будет повторяться рекурсивно о тех пор, пока не будет получено оптимальное число признаков.

Применение в Sklearn

В Scikit-learn можно применить рекурсивное исключение признаков с помощью класса sklearn.featureselection.RFE. Класс принимает следующие параметры:

  • estimator оценщик машинного обучения, который может выдать важность признаков за счет атрибутов coef или featureimportances attributes.

  • nfeaturestoselectколичество признаков для выбора. Отбирает половину по умолчанию.

  • stepцелое число, указывает количество признаков, которые будут удалены на каждой итерации, или число в диапазоне от 0 до 1, указывающее процент признаков, подлежащих удалению на каждой итерации.

После обучения можно получить следующие атрибуты:

  • ranking — ранжирование признаков.

  • nfeatures — количество выбранных признаков.

  • supportмассив, указывающий, был выбран признак или нет.

Применение

Как уже было сказано ранее, мы будем работать с оценщиком, который предлагает атрибуты featureimportances или coeff. Давайте рассмотрим небольшой пример. Изначально в наборе данных 13 признаков. Мы будем работать над выделением оптимального количества признаков.

import pandas as pddf = pd. read_csv(‘heart.csv’)df.head()

Давайте получим признаки x и y.

X = df.drop([‘target’],axis=1)
y = df[‘target’]

Мы разделим изначальный набор данных на тестовый и обучающий наборы:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y,random_state=0)

Сделаем несколько импортов:

  • Pipeline – в помощь для кросс-валидации, поможет избежать утечки данных.

  • RepeatedStratifiedKFold – для многократной k-блочной кросс-валидации. 

  • crossvalscore – для скоринга кросс-валидации.

  • GradientBoostingClassifier – оценщик, который мы будем использовать.

  • Numpy – для вычисления среднего всех оценок.

from sklearn.pipeline import Pipeline
from sklearn.model_selection import RepeatedStratifiedKFold
from sklearn.model_selection import cross_val_score
from sklearn. feature_selection import RFE
import numpy as np
from sklearn.ensemble import GradientBoostingClassifier

Первым шагом мы создаем экземпляр класса RFE с указанием оценщика и количества признаков, которые будут отобраны. В нашем случае выберем 6:

rfe = RFE(estimator=GradientBoostingClassifier(), n_features_to_select=6)

Далее мы создаем экземпляр модели, которую хотим использовать:

model = GradientBoostingClassifier()

Мы используем Pipeline для преобразования данных. В Pipeline мы указываем rfe для шага отбора признаков и модель, которая будет использоваться на следующем шаге. 

Затем мы задаем RepeatedStratifiedKFold с 10 сплитами и 5 повторениями. Многократная k-блочная кросс-валидация гарантирует, что количество сэмплов каждого класса будет сбалансированным в каждом блоке. RepeatedStratifiedKFold использует многократную k-блочную кросс-валидацию заданное количество раз с различной рандомизацией на каждом повторении.  

pipe = Pipeline([(‘Feature Selection’, rfe), (‘Model’, model)])
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=5, random_state=36851234)
n_scores = cross_val_score(pipe, X_train, y_train, scoring=’accuracy’, cv=cv, n_jobs=-1)
np.mean(n_scores)

Следующий шаг — это использование пайплайна на наборе данных.

pipe.fit(X_train, y_train)

Так мы сможем проверить support и ранжирование. Support указывает на то был выбран признак или нет.

rfe.support_
array([ True, False,  True, False,  True, False, False,  True, False,True, False,  True,  True])

Мы можем поместить это в датафрейм и посмотреть результат.

pd.DataFrame(rfe.support_,index=X.columns,columns=[‘Rank’])

Также можем посмотреть относительное ранжирование.

rf_df = pd.DataFrame(rfe.ranking_,index=X.columns,columns=[‘Rank’]).sort_values(by=’Rank’,ascending=True)rf_df.head()

Вместо того, чтобы вручную настраивать количество признаков, было бы неплохо, если бы мы могли делать это автоматически. Вы можете достичь этого с помощью рекурсивного исключения признаков и кросс-валидации. Здесь вам поможет класс sklearn.featureselection.RFECV. Он принимает следующие параметры:

  • estimatorаналог класса RFE.

  • minfeaturestoselect — минимальное количество признаков для отбора.

  • cv — стратегия разделения для кросс-валидации.

Возвращаемые атрибуты:

  • nfeatures — оптимальное количество признаков, выбранных с помощью кросс-валидации.

  • supportмассив, содержащий информацию о выборе признака.

  • ranking — ранжирование признаков.

  • gridscores — оценка, полученная в результате кросс-валидации.

Первым шагом нужно импортировать класс и создать его экземпляр.

from sklearn.feature_selection import RFECVrfecv = RFECV(estimator=GradientBoostingClassifier())

Далее мы определяем пайплайн и cv. В этом пайплайне мы используем только что созданный rfecv.

pipeline = Pipeline([(‘Feature Selection’, rfecv), (‘Model’, model)])
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=5, random_state=36851234)
n_scores = cross_val_score(pipeline, X_train, y_train, scoring=’accuracy’, cv=cv, n_jobs=-1)
np.mean(n_scores)

Теперь применяем пайплайн и получаем оптимальное количество признаков.

pipeline.fit(X_train,y_train)

Оптимальное количество признаков можно получить с помощью атрибута nfeatures.

print(“Optimal number of features : %d” % rfecv.n_features_)Optimal number of features : 7

Ранжирование и support можно получить также, как и в прошлый раз.

rfecv.support_rfecv_df = pd.DataFrame(rfecv.ranking_,index=X.columns,columns=[‘Rank’]).sort_values(by=’Rank’,ascending=True)
rfecv_df.head()

С помощью gridscores мы можем построить график с оценками, полученными при кросс-валидации.

import matplotlib.pyplot as plt
plt.figure(figsize=(12,6))
plt.xlabel(“Number of features selected”)
plt.ylabel(“Cross validation score (nb of correct classifications)”)
plt.plot(range(1, len(rfecv.grid_scores_) + 1), rfecv.grid_scores_)
plt.show()

Заключение

В задачах регрессии этот метод применяется аналогично. Просто используйте регрессионные показатели вместо показателей точности. Надеюсь, эта статья дала вам некоторое представление о том, как можно выбрать оптимальное количество признаков для ваших задач машинного обучения.


Узнать подробнее о курсе «Machine Learning. Professional» и посмотреть урок по теме «Кластеризация» можно здесь.

Читать ещё:

Выбор функций в машинном обучении: методы ранжирования переменных и выбора подмножества функций | Автор Mehul Ved

Среди важных аспектов машинного обучения — «Выбор функций» и «Извлечение функций». В этом сообщении блога мы продолжим обсуждение темы «Выбор функций в машинном обучении ». Темы для этого поста: Ранжирование переменных или Ранжирование признаков и Методы выбора подмножества признаков .

Выбор функций в машинном обучении: Ранжирование переменных и Выбор подмножества функций Методы

В предыдущем сообщении в блоге я представил основные определения, терминологию и мотивацию в Выбор функций . В качестве краткого ознакомления ссылка на предыдущую публикацию в блоге этой серии приведена ниже:

Выбор и извлечение функций в машинном обучении: обзор

Компании имеют больше данных, чем когда-либо, поэтому крайне важно убедиться, что ваша команда аналитиков раскрывает действие, скорее…

medium.com

Тема 1: Переменное ранжирование

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

Результирующий набор: оценка S(fi) вычисляется на основе обучающих данных, измеряющих некоторые критерии признака fi . По соглашению высокая оценка указывает на ценную (релевантную) характеристику.

Простой метод для выбор признаков с использованием переменного рейтинга заключается в выборе k признаков с наивысшим рангом в соответствии с S . Обычно это не оптимально, но часто предпочтительнее других, более сложных методов. Это вычислительно эффективно — только подсчет и сортировка n баллов.

Критерии ранжирования: критерии корреляции и теоретико-информационные критерии

Переменные критерии ранжирования или критерии ранжирования признаков: критерии корреляции и теоретико-информационные критерии

Критерии ранжирования вызывают некоторые вопросы:

Можно ли автоматически отбрасывать переменные с низким значением? НЕТ!

  1. Можно ли автоматически отбрасывать переменные с низким значением?

Ответ НЕТ!

  • Даже переменные с небольшим баллом могут улучшить разделимость классов
  • Здесь это зависит от корреляции между x1 и x2

Здесь условные распределения классов имеют высокую ковариацию в направлении, ортогональном линии между двумя центрами классов.

Может ли бесполезная переменная (т. е. переменная с малым значением) быть полезной вместе с другими? ДА!

2. Может ли бесполезная переменная (т.е. с малым значением) быть полезной вместе с другими?

Ответ ДА!

• Корреляция между переменными и целью недостаточна для оценки релевантности

• Также необходимо учитывать корреляцию/ковариацию между парами переменных (потенциально сложно)

  • Кроме того, необходимо учитывать разнообразие признаков.

Теоретические критерии информации

3. Могут ли две переменные, бесполезные сами по себе, быть полезными вместе?

Ответ ДА!

Это можно сделать с помощью теоретико-информационных критериев.

Критерии теории информации

  • Взаимная информация также может обнаруживать нелинейные зависимости между переменными
  • Но ее труднее оценить, чем корреляцию
  • доли переменных».

Ранжирование переменных — классификаторы одной переменной

  • Идея: выбрать переменные в соответствии с их индивидуальной предсказательной силой
  • Критерий: Производительность классификатора, построенного с 1 переменной, например. значение самой переменной
  • Прогностическая способность обычно измеряется с точки зрения частоты ошибок (или критериев с использованием коэффициента ложноположительных результатов, коэффициента ложноотрицательных результатов)
  • Кроме того, комбинация SVC может быть развернута с использованием ансамблевых методов (усиление,…) .

Тема 2:

Выбор подмножества функций

Целью Выбор подмножества функций является поиск оптимального подмножества функций. Выбор подмножества признаков Методы можно разделить на три широкие категории

  • Методы фильтрации
  • Методы-оболочки
  • Встроенные методы

подмножество признаков (оценочная функция)

  • Стратегия поиска в пространстве возможных подмножеств признаков
  • Трудно найти минимальный оптимальный набор признаков для произвольной целевой концепции. Это потребует хорошей эвристики.
  • Методы фильтрации

    • В этом методе выбор подмножеств переменных в качестве шага предварительной обработки, независимо от используемого классификатора
    • Стоит отметить, что Ранжирование переменных является методом фильтра.

    Методы фильтрации: метод выбора подмножества признаков

    Ключевые особенности методов фильтрации для выбора подмножества признаков :

    • Методы фильтрации обычно быстрые
    • Методы фильтрации обеспечивают общий выбор функций, не настраиваемых данным учащимся (универсальные)
    • Методы фильтрации также часто подвергаются критике (набор функций не оптимизирован для используемого классификатора)
    • Методы фильтрации иногда используются в качестве этапа предварительной обработки для других методы.

    Методы-оболочки

    • В Методах-оболочках Ученик считается черным ящиком. Интерфейс черного ящика используется для оценки подмножеств переменных в соответствии с предсказательной силой учащегося при использовании подмножеств.
    • Результаты различаются для разных учащихся
    • Необходимо определить: – как искать в пространстве всех возможных подмножеств переменных? – как оценивать эффективность предсказания ученика?

    Методы-оболочки: метод выбора подмножества признаков

    Встроенные методы

    • Встроенные методы специфичны для данной обучающейся машины
    • Выполняет выбор переменных (неявно) в процессе обучения
    • E.g. WINNOW-алгоритм (линейный блок с мультипликативными обновлениями).

    Резюме

    • Корреляция и взаимная информация между отдельными переменными и целью часто используются в качестве критериев ранжирования переменных.
    • Нельзя автоматически отбрасывать переменные с маленькими оценками — они могут быть полезны вместе с другими переменными.
    • Мы обсудили три метода для Выбор подмножества функций , т.е. фильтры — обертки — встроенные методы.

    Спасибо, что прочитали этот пост в блоге. Любые предложения по дальнейшему улучшению этого будут радостно запрошены.

    StrataHive: машинное обучение, наука о данных, большие данные, аналитика, искусственный интеллект, цифровой маркетинг, пользовательский опыт к приложениям

  • Эффективные методы обнаружения выбросов в машинном обучении
  • Ранжирование функций ансамбля | SpringerLink

    Abstract

    Важным вопросом для машинного обучения и интеллектуального анализа данных является выбор функций, то есть выбор соответствующих функций для того, чтобы сфокусировать поиск обучения. Расслабленная настройка для выбора функций известна как ранжирование функций, при которой функции ранжируются в соответствии с их релевантностью.

    В этой статье предлагается ансамблевый подход к ранжированию признаков, объединяющий ранжирование признаков, извлеченное в ходе независимых прогонов алгоритма эволюционного обучения под названием ROGER . Сходимость ранжирования признаков ансамбля изучается в теоретической перспективе, и для эмпирической проверки разрабатывается статистическая модель, вдохновленная структурой сложности, предложенной в области удовлетворения ограничений. Сравнительные эксперименты демонстрируют надежность подхода к изучению (ограниченного вида) нелинейных понятий, особенно когда количество признаков значительно превышает количество примеров.

    Ключевые слова

    • Выбор функции
    • Релевантная функция
    • Обучение ансамблю
    • Целевая концепция
    • Нерелевантная функция

    Эти авторы, а не ключевые слова, были добавлены машиной. Этот процесс является экспериментальным, и ключевые слова могут обновляться по мере улучшения алгоритма обучения.

    Скачать документ конференции в формате PDF

    Каталожные номера

    1. Би, Дж. , Беннетт, К.П., Эмбрехтс, М., Бренеман, К.М., Сонг, М.: Снижение размерности с помощью разреженных машин опорных векторов. J. of Machine Learning Research 3, 1229–1243 (2003)

      CrossRef
      МАТЕМАТИКА

      Google ученый

    2. Ботта, М., Джордана, А., Сайтта, Л., Себаг, М.: Реляционное обучение как поиск в критической области. J. of Machine Learning Research 4, 431–463 (2003)

      CrossRef
      MathSciNet

      Google ученый

    3. Брэдли, А. П.: Использование площади под ROC-кривой при оценке алгоритмов машинного обучения. Распознавание образов (1997)

      Google ученый

    4. Брейман, Л.: Классификаторы дуги. Анналы статистики 26(3), 801–845 (1998)

      CrossRef
      МАТЕМАТИКА
      MathSciNet

      Google ученый

    5. «>

      Эспозито, Р., Саитта, Л.: Теория Монте-Карло как объяснение бэггинга и бустинга. В: Учеб. IJCAI 2003, стр. 499–504 (2003)

      Google ученый

    6. Ферри, К., Флач, П.А., Эрнандес-Оралло, Дж.: Изучение деревьев решений с использованием площади под кривой ROC. В: Учеб. ICML 2002, стр. 179–186. Морган Кауфманн, Сан-Франциско (2002)

      Google ученый

    7. Фройнд Ю., Шапир Р.Э.: Эксперименты с новым алгоритмом повышения. В: Сайтта, Л. (ред.) Proc. ICML 1996, стр. 148–156. Морган Кауфманн, Сан-Франциско (19 лет)96)

      Google ученый

    8. Джордана, А., Саитта, Л.: Фазовые переходы в реляционном обучении. Машинное обучение 41, 217–251 (2000)

      CrossRef
      МАТЕМАТИКА

      Google ученый

    9. Герра-Сальседо, К. , Уитли, Д.: Генетический подход к выбору признаков для создания ансамбля. В: Учеб. GECCO 1999, стр. 236–243 (1999)

      Google ученый

    10. Гийон И., Елисеев А.: Введение в выбор переменных и признаков. J. of Machine Learning Research 3, 1157–1182 (2003)

      CrossRef
      МАТЕМАТИКА

      Google ученый

    11. Гайон, И., Уэстон, Дж., Барнхилл, С., Вапник, В.: Отбор генов для классификации рака с использованием машин опорных векторов. Машинное обучение 46, 389–422 (2002)

      CrossRef
      МАТЕМАТИКА

      Google ученый

    12. Хогг, Т., Хуберман, Б.А., Уильямс, К.П. (ред.): Искусственный интеллект: специальный выпуск о границах в решении проблем: фазовые переходы и сложность, том. 81(1-2). Эльзевир, Амстердам (1996)

      Google ученый

    13. «>

      Джон, Г. Х., Кохави, Р., Пфлегер, К.: Нерелевантные признаки и проблема выбора подмножества. В: Учеб. ICML 1994, стр. 121–129. Морган Кауфманн, Сан-Франциско (1994)

      Google ученый

    14. Линг С.Х., Хунаг Дж., Чжан Х.: AUC: лучший показатель, чем точность при сравнении алгоритмов обучения. В: Учеб. IJCAI 2003 (2003)

      Google ученый

    15. Пепе, М.С., Лонгтон, Г., Андерсон, Г.Л., Шуммер, М.: Выбор дифференциально экспрессируемых генов из экспериментов с микрочипами. Биометрия 59, 133–142 (2003)

      CrossRef
      MathSciNet
      МАТЕМАТИКА

      Google ученый

    16. Россет, С.: Выбор модели через AUC. В: Учеб. ICML 2004, Морган Кауфманн, Сан-Франциско (2004 г.) (ожидается)

      Google ученый

    17. «>

      Себаг, М., Азе, Дж., Лукас, Н.: Исследования воздействия и анализ чувствительности в интеллектуальном анализе медицинских данных с помощью генетического обучения на основе ROC. В: IEEE-ICDM 2003, стр. 637–640 (2003)

      .
      Google ученый

    18. Себаг, М., Азе, Дж., Лукас, Н.: Эволюционное обучение на основе ROC: приложение для интеллектуального анализа медицинских данных. В: Liardet, P., Collet, P., Fonlupt, C., Lutton, E., Schoenauer, M. (ред.) EA 2003. LNCS, vol. 2936, стр. 384–396. Springer, Heidelberg (2004)

      CrossRef

      Google ученый

    19. Стоппилья, Х., Дрейфус, Г., Дюбуа, Р., Уссар, Ю.: ранжирование случайного признака для выбора переменных и признаков. J. of Machine Learning Research 3, 1399–1414 (2003)

      CrossRef
      МАТЕМАТИКА

      Google ученый

    20. «>

      Vafaie, H., De Jong, K.: Генетические алгоритмы как инструмент для выбора признаков в машинном обучении. В: Учеб. ИКТАИ 1992, стр. 200–204 (1992)

      Google ученый

    21. Ян, Л., Додье, Р. Х., Мозер, М., Вольневич, Р. Х.: Оптимизация производительности классификатора посредством приближения к статистике Уилкоксона-Манна-Уитни. В: Учеб. ICML 2003, стр. 848–855. Морган Кауфманн, Сан-Франциско (2003)

      Google ученый

    Ссылки на скачивание

    Информация об авторе

    Авторы и организации

    1. Факультет математики и компьютерных наук, Свободный университет Амстердама, Нидерланды

      Кейс Йонг и Елена Марчиори

    2. Лаборатория исследований и информатики, CNRS-INRIA, Университет Мари-Юг 9002, Париж-Юг 01, Франция Antoine Cornuéjols & Michèle Sebag

    Авторы

    1. Kees Jong

      Просмотреть публикации автора

      Вы также можете искать этого автора в
      PubMed Google Академия

    2. Jérémie Mary

      Просмотр публикаций автора

      Вы также можете искать этого автора в
      PubMed Google Scholar

    3. Antoine Cornuéjols

      Просмотреть публикации автора

      Вы также можете искать этого автора в
      PubMed Google Scholar

    4. Elena Marchiori

      Просмотр публикаций автора

      Вы также можете искать этого автора в
      PubMed Google Scholar

    5. Michèle Sebag

      Посмотреть публикации автора

      Вы также можете искать этого автора в
      PubMed Google Scholar

    РЕДАКТОР Информация о

    Редакторы и принадлежность

    1. INSA-LYON, LIRIS CNRS UMR5205, F-69621, Villeurbanne, France

      Jean-François BoulishaItraut

      .