Версия // Общество // Инфографика на этой неделе: парадокс дней рождения и машинное обучение

Инфографика на этой неделе: парадокс дней рождения и машинное обучение

5965

Данные наглядно. Парадокс дня рождения


https://ru.depositphotos.com/
В разделе

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

Парадокс дней рождения

Источник: The Pudding, Russell Goldenberg

Интересная работа про парадокс дня рождения. Как вы думаете, сколько человек должно быть в комнате, чтобы хотя бы у двух из них совпали дни рождения?

В этой работе вам предлагается найти ответит на этот вопрос в игровой форме.

Начало эксперимента
Начало эксперимента

Сначала читателю предлагают ввести свою настоящую дату рождения. Когда я принимал участие, то подумал — какая разница, какую дату я введу, настоящую или нет. Но по завершению эксперимента я понял, почему нужна настоящая дата. Напишу про это в конце статьи.

А теперь, внимание, если вы хотите принять участие, то лучше сейчас пройдите по ссылке, введите дату рождения и посмотрите что будет происходить, а потом возвращайтесь читать. Дальше будут спойлеры.

В комнату «заходят читатели», которые вводили свою дату рождения перед вами
В комнату «заходят читатели», которые вводили свою дату рождения перед вами

Так вот, спойлер: удивительно, что несмотря на то, что в году 365 дней, достаточно, чтобы в комнате было 23 человека, чтобы вероятность совпадения дней рождения хотя бы у двух человек превысила 50%.

Еще один интересный факт: если в комнате 57 человек, то вероятность такого совпадения уже выше 99%. Попробуйте провести эксперимент в детском саду у детей, в школе, институте или на работе. Возможно, всем участникам будет интересно, особенно, если даты действительно совпадут.

На первый взгляд, в это трудно поверить, поэтому вся эта история называется «парадокс дней рождения». Но, на самом деле, все можно объяснить математически.

В комнату «заходят» читатели, которые вводили свою дату рождения перед вами
В комнату «заходят» читатели, которые вводили свою дату рождения перед вами

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

Чтобы подтвердить теорию эксперимент повторяется тысячу раз, сравнивая даты рождения 23-х человек. Интересно, что сравниваются даты рождения реальных участников.

Тысячу раз сравнили дни рождения 23 человек, получилось 577 совпадений
Тысячу раз сравнили дни рождения 23 человек, получилось 577 совпадений

В конце эксперимента, нам показывают гистограмму с датами рождения, которые вводили все участники. Часто пикам соответствуют первые числа месяца: 1 мая, 1 июля, 1 августа. Кажется, что некоторые участники вводили не настоящую дату рождения просто меняя месяц. Тогда данные искажаются и гистограмма теряет смысл. Самые большие пики — это 1 января и 15 ноября. 1 января — самая простая дата, которую можно выбрать. 15 ноября — дата рождения разработчика, с этой датой в начале эксперимента сравнивается день рождения каждого участника. Кажется, что многие участники вводили такую же дату, чтобы посмотреть, что произойдет.

Гистограмма с днями рождения всех участников
Гистограмма с днями рождения всех участников

Еще интересно посмотреть как меняется вероятность совпадения дней рождения в зависимости от количества человек.

Если в комнате 50 человек, вероятность совпадения дней рождения хотя бы у двух человек приближена к 100 процентам
Если в комнате 50 человек, вероятность совпадения дней рождения хотя бы у двух человек приближена к 100 процентам

Машинное обучение

Читателю предлагается интерактивное объяснение, которое показывает принцип машинного обучения. Машинное обучение — это процесс, при котором компьютер учится на основе данных отвечать на вопросы, касающиеся этих данных, для того, чтобы полученную модель обучения применить к новым, неиспользованным раннее данным и ответить на вопросы по ним.

Читателю предлагают посмотреть как можно создать модель машинного обучения, которая научит компьютер отличать дома в Нью-Йорке от домов в Сан-Франциско, используя данные о высоте, стоимости и т. п. И каковы будут результаты, если эту модель применить к данным с другими городами.

Поскольку Сан-Франциско — холмистый город, чтобы различить два города можно использовать высоту дома. Судя по данным, дом выше 73 метров (239,5 футов) должен быть классифицирован как дом из Сан-Франциско.

Добавление еще одного параметра увеличит точность. Например, данные показывают, что среди домов ниже 73 метров те, которые стоят более $19 116 за квадратный метр, находятся в Нью-Йорке.

Дома, построенные Сан-Франциско показаны зелеными точками, в Нью-Йорке — синими
Дома, построенные Сан-Франциско показаны зелеными точками, в Нью-Йорке — синими

В зеленом и синем квадрате оказались дома, построенные в Сан-Франциско и Нью-Йорке, соответственно, то есть все совпало. Но есть еще дома, которые оказались в белом квадрате.

Одним из примеров метода машинного обучения является дерево решений. Дерево решений использует операторы «если-то». Например, если высота дома выше некоторого числа, то дом, вероятно, находится в Сан-Франциско. Получается как бы вилка, которая делит данные на две ветви на основе некоторого значения. Это значение между ветвями называется точкой разделения. Дома слева от этой точки классифицируются одним способом, а справа — другим.

Чтобы улучшить результаты каждой ветви, нужно добавить другие параметры и повторить разделение несколько раз. Ниже анимация, на которой дома многократно делятся на синие (Нью-Йорк) и зеленые (Сан-Франциско) на основе высоты, стоимости за квадратный фут, общей стоимости, количеству спален, года постройки и т. п.

Дерево решений. Дома в Нью-Йорке показаны синим цветом, в Сан-Франциско — зеленым

(Дерево решений. Дома в Нью-Йорке показаны синим цветом, в Сан-Франциско — зеленым)

Дополнительные ветви повышают точность предсказания дерева. Можно добавлять их до тех пор, пока предсказания дерева не станут на 100% точными, так что в конце каждой ветви дома будут идеально правильно разделены на Сан-Франциско или Нью-Йорке. Можно, но не стоит.

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

В конце анимации, которую мы только что посмотрели видно, что совпадение при использовании новых, тестовых данных ниже 100%.

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

Один из способов устранения ошибок от чрезмерной подгонки — ограничение максимального размера ветви. Деревья становятся менее пушистыми, а модели обучения — более точными.

Сокращение количества ошибок путем уменьшения ветвей

(Сокращение количества ошибок путем уменьшения ветвей)

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

Но даже при их оптимальном количестве ветвей дерево решений — это не самая эффективная модель машинного обучения. Хотя деревья очень легко понять, мир более сложен, чем куча утверждений "если-то".

Тем не менее, деревья решений могут быть использованы в совокупности для получения очень сильных результатов.

фото: depositphotos.com

Логотип versia.ru
Опубликовано:
Отредактировано: 08.07.2020 20:10
Комментарии 0
Наверх