Заметки о машинном обучении Python (9): информационная энтропия дерева решений

алгоритм

Это пятый день моего участия в августовском испытании обновлений, подробности о мероприятии:Испытание августовского обновления

9.1 Информационная энтропия

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

В 1948 году Шеннон упомянул в своей знаменитой статье «Математические принципы коммуникации»: «Информация — это то, что используется для устранения случайной неопределенности». Например, мы хотим знать, какой сегодня день недели, без какой-либо информации это может быть любой день с понедельника по воскресенье. Но если кто-то скажет вам, что сегодня выходные, это может быть только суббота или воскресенье, что устраняет неуверенность в том, что это может быть с понедельника по пятницу.

Но приведенные выше понятия слишком расплывчаты, существует ли формула, которая может количественно оценить количество информации о событии? Да, он объем информации:

H(x)=log2p(x)H(x) = -log_2p(x)

Эта формула выведена Шенноном на основе свойств следующих трех частей информации:

  1. Монотонность: событие с более высокой вероятностью возникновения дает меньше информации. Например, «солнце встает на востоке», что является определенным событием с вероятностью 1,H(x)=0H(x)=0, не устраняет никакой неопределенности.
  2. Неотрицательность: количество информации не может быть отрицательным.
  3. Аддитивность: если система состоит из нескольких несвязанных подсистем, ее информация должна быть равна сумме информации каждой подсистемы.

мы определяем событияxix_iВероятность рождения равнаp(xi)p(x_i), то ожидание всей информации о событиях в системе:

H(x)=1np(xi)log2p(xi)H(x) = - \sum_1^np(x_i)log_2p(x_i)

здесь искусственно определено0log20=00log_20=0.

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

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

2021-08-25_19-44.png

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

9.2 KL-дивергенция и кросс-энтропия

Дивергенция KL — это понятие в теории информации, используемое для количественной оценки разницы между двумя распределениями вероятностей P и Q:

Dkl(PQ)=P(x)(log2P(x)log2Q(x))D_{kl}(P||Q) = \sum P(x)(log_2P(x)-log_2Q(x))

Чем больше разница между двумя распределениями, тем больше дивергенция KL.

Обратите внимание, что приведенная выше формула относится к использованию P в качестве эталона, чтобы увидеть, насколько велика разница между Q и P, обычноDkl(PQ)Dkl(QP)D_{kl}(P||Q) \ne D_{kl}(Q||P). Доказано неравенством ДженсенаDkl(PQ)0D_{kl}(P||Q) \ge 0, знак равенства имеет место, когда P=Q.

Раскрываем скобки и видим:

Dkl(PQ)=(P(x)log2Q(x))(P(x)log2P(x))D_{kl}(P||Q) = \sum (-P(x)log_2Q(x))-(-P(x)log_2P(x))

Вторая половина этой формулыP(x)log2P(x)-P(x)log_2P(x)Представляет информационную энтропию После определения системы ее информационная энтропия остается неизменной. передняя частьP(x)log2Q(x)-P(x)log_2Q(x)Это перекрестная энтропия Чем меньше перекрестная энтропия, тем меньше расхождение KL и тем меньше разница между двумя распределениями. Вот почему перекрестную энтропию можно использовать в качестве функции потерь для глубокого обучения. Вычисление с отрицательным знаком здесь связано с тем, что логарифм вероятности является неположительным числом, а отрицательный знак эквивалентен вычитанию двух неотрицательных чисел, что легко понять.

использованная литература

Зная ответ: Что такое информационная энтропия

b станция вверх Ван Вуд изучает науку