Шаг 115.
Введение в машинное обучение с использованием Python.
Типы данных и конструирование признаков. Категориальные переменные

    На этом шаге мы рассмотрим сложности, связанные с такими типами данных.

    В качестве примера мы будем использовать данные о доходах взрослого населения США, полученные из переписи населения 1994 года. Задача, которую мы будем решать при работе с набором данных adult, заключается в том, чтобы спрогнозировать наличие у работника дохода более 50000 $ и менее 50000 $. Признаками этого набора данных являются возраст работника, тип занятости (частное предприятие, наемный работник, госслужащий и т.д.), образование, пол, продолжительность рабочей недели, род занятий и многое другое. Таблица 1 показывает первые несколько записей в наборе данных.

Таблица 1. Первые несколько записей набора данных adult
  age workclass education gender hours-per-week occupation income
0 39 State-gov Bachelors Male 40 Adm-clerical <=50K
1 50 Self-emp-not-inc Bachelors Male 13 Exec-managerial <=50K
2 38 Private HS-grad Male 40 Handlers-cleaners <=50K
3 53 Private 11th Male 40 Handlers-cleaners <=50K
4 28 Private Bachelors Female 40 Prof-specialty <=50K
5 37 Private Masters Female 40 Exec-managerial <=50K
6 49 Private 9th Female 16 Other-service <=50K
7 52 Self-emp-not-inc HS-grad Male 45 Exec-managerial >50K
8 31 Private Masters Female 50 Prof-specialty >50K
9 42 Private Bachelors Male 40 Exec-managerial >50K
10 37 Private Some-college Male 80 Exec-managerial >50K

    Задача сформулирована в виде классификационной задачи с двумя классами доход<=50 тыс. и доход>50 тыс. Можно было бы также спрогнозировать точное значение дохода и это уже была бы регрессионная задача. Однако это было бы гораздо более сложной задачей, а данное разбиение дохода долларов интересно само по себе.

    В этом наборе данных age и hours-per-week являются непрерывными признаками, обработка которых нам уже знакома. Однако признаки workclass, education, sex и occupation являются категориальными. Вместо диапазона все они имеют фиксированный список возможных значений и обозначают качественный признак, а не непрерывный.

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

  y = w[0] * x[0] + w[1] * x[1] + ... + w[p] * x[p] > 0
где w[i] и b коэффициенты, вычисленные на обучающей выборке, а x[i] - входные признаки. Эта формула имеет смысл, когда x[i] являются числовыми значениями, но не тогда, когда x[2] соответствует "Masters" или "Bachelors". Очевидно, что нам нужно подготовить данные таким способом, чтобы можно было применить логистическую регрессию. В следующих шагах мы расскажем, как можно решить эту проблему.

    На следующем шаге мы рассмотрим прямые данные.




Предыдущий шаг Содержание Следующий шаг