Обучение тождественной функции
В машинном обучении нужно различать две стадии: построение правильной модели и обучение этой модели. Выбор удачной, даже абсолютно правильной модели, не гарантирует, что она будет хорошо обучаться.
Пример: проблема обучения тождественной функции. Обычные полносвязные сети прямого распространения плохо учатся переводить вход в выход без изменений (y = f(x) = x). Попробуйте.
Решение проблемы довольно простое: нужно «пробросить» вход сети в обход полносвязных слоёв и сложить с выходом полносвязных слоев.
Была сеть вида:
y = f(x, w)
Стала:
y = f(x, w) + x
Такая сеть учится тождественной функции очень быстро.
В машинном обучении нужно различать две стадии: построение правильной модели и обучение этой модели. Выбор удачной, даже абсолютно правильной модели, не гарантирует, что она будет хорошо обучаться.
Пример: проблема обучения тождественной функции. Обычные полносвязные сети прямого распространения плохо учатся переводить вход в выход без изменений (y = f(x) = x). Попробуйте.
Решение проблемы довольно простое: нужно «пробросить» вход сети в обход полносвязных слоёв и сложить с выходом полносвязных слоев.
Была сеть вида:
y = f(x, w)
Стала:
y = f(x, w) + x
Такая сеть учится тождественной функции очень быстро.
Что почитать по машинному обучению на русском
Неплохие книги и лекции по машинному обучению на русском.
1. Бенджио И., Гудфеллоу Я., Курвилль А. Глубокое обучение. ДМК-Пресс, 2018.
2. Николенко С., Кадурин А., Архангельская Е. Глубокое обучение. Питер, 2018.
3. Воронцов К. В. Лекции по машинному обучению. http://www.machinelearning.ru, 2004–2018.
Неплохие книги и лекции по машинному обучению на русском.
1. Бенджио И., Гудфеллоу Я., Курвилль А. Глубокое обучение. ДМК-Пресс, 2018.
2. Николенко С., Кадурин А., Архангельская Е. Глубокое обучение. Питер, 2018.
3. Воронцов К. В. Лекции по машинному обучению. http://www.machinelearning.ru, 2004–2018.
Speech2Face
Ребята из MIT создали сеть, восстанавливающую лицо по голосу. Работа будет представлена на постерной секции CVPR 2019.
https://arxiv.org/abs/1905.09773
Ребята из MIT создали сеть, восстанавливающую лицо по голосу. Работа будет представлена на постерной секции CVPR 2019.
https://arxiv.org/abs/1905.09773
Решение задачи через усложнение
В машинном обучении есть множество задач с простой постановкой, которые сложно решить напрямую.
Пример: сказать, есть ли на изображении кошка. Это задача бинарной классификации — для каждого изображения нужно ответить «да» или «нет».
Кажется, что простая классификационная сеть с задачей легко справится. К сожалению это не так. Если изображения достаточно сложные, присутствуют различные объекты кроме кошек — алгоритм обучения просто «не поймёт», что от него хотят.
Решение простое: вместо того, чтобы решать задачу классификации (говорить есть ли кошка), можно решить задачу детекции (сказать где кошка). Переходом к задаче детекции, мы сообщаем алгоритму дополнительную информацию — подсказываем, что именно от него хотим. Само собой, для такого перехода придётся разметить всех кошек.
Таким образом, более простая (по постановке) задача может быть решена через более сложную.
В машинном обучении есть множество задач с простой постановкой, которые сложно решить напрямую.
Пример: сказать, есть ли на изображении кошка. Это задача бинарной классификации — для каждого изображения нужно ответить «да» или «нет».
Кажется, что простая классификационная сеть с задачей легко справится. К сожалению это не так. Если изображения достаточно сложные, присутствуют различные объекты кроме кошек — алгоритм обучения просто «не поймёт», что от него хотят.
Решение простое: вместо того, чтобы решать задачу классификации (говорить есть ли кошка), можно решить задачу детекции (сказать где кошка). Переходом к задаче детекции, мы сообщаем алгоритму дополнительную информацию — подсказываем, что именно от него хотим. Само собой, для такого перехода придётся разметить всех кошек.
Таким образом, более простая (по постановке) задача может быть решена через более сложную.
Две постановки задач классификации и регрессии
Существует как минимум две постановки задач классификации и регрессии.
1. Функциональная.
По доступным N парам {xⱼ, yⱼ}, необходимо восстановить неизвестную функцию y = f(x). Где:
x — вектор признаков;
y — ответ.
У такой постановки есть ряд недостатков. Например на практике одинаковым векторам признаков могут соответствовать разные ответы. В этом случае x и y не связаны функционально.
2. Вероятностная.
По доступным N парам {xⱼ, yⱼ}, необходимо восстановить неизвестную плотность совместного распределения p(x, y). Где:
x — вектор признаков;
y — ответ.
Такая постановка является более общей и допускает нефункциональную зависимость x и y.
Большинство современных методов машинного обучения, включая сверточные нейронные сети, исходят из вероятностной постановки задачи.
Существует как минимум две постановки задач классификации и регрессии.
1. Функциональная.
По доступным N парам {xⱼ, yⱼ}, необходимо восстановить неизвестную функцию y = f(x). Где:
x — вектор признаков;
y — ответ.
У такой постановки есть ряд недостатков. Например на практике одинаковым векторам признаков могут соответствовать разные ответы. В этом случае x и y не связаны функционально.
2. Вероятностная.
По доступным N парам {xⱼ, yⱼ}, необходимо восстановить неизвестную плотность совместного распределения p(x, y). Где:
x — вектор признаков;
y — ответ.
Такая постановка является более общей и допускает нефункциональную зависимость x и y.
Большинство современных методов машинного обучения, включая сверточные нейронные сети, исходят из вероятностной постановки задачи.
Байесовские нейронные сети не переобучаются?
Последнее время все чаще слышим утверждение, что байесовские нейронные сети не переобучаются. Не просто «меньше склонны к переобучению», а не переобучаются вообще. Вроде как при байесовском выводе даже такого понятия не существует.
Первоисточник утверждения найти не удалось. Если вдруг кто знает — поделитесь (контакт в описании канала).
Проясним ситуацию. Абсолютно все модели переобучаются. Это фундаментальная проблема машинного обучения.
Байесовский вывод действительно позволяет получить более корректные и точные (по сравнению с методом максимального правдоподобия) оценки вероятностей p(y | x). Тем не менее, эти оценки рассчитываются по ограниченной выборке. Очевидно, что они не могут тождественно совпасть с соответствующими значениями для генеральной совокупности.
Последнее время все чаще слышим утверждение, что байесовские нейронные сети не переобучаются. Не просто «меньше склонны к переобучению», а не переобучаются вообще. Вроде как при байесовском выводе даже такого понятия не существует.
Первоисточник утверждения найти не удалось. Если вдруг кто знает — поделитесь (контакт в описании канала).
Проясним ситуацию. Абсолютно все модели переобучаются. Это фундаментальная проблема машинного обучения.
Байесовский вывод действительно позволяет получить более корректные и точные (по сравнению с методом максимального правдоподобия) оценки вероятностей p(y | x). Тем не менее, эти оценки рассчитываются по ограниченной выборке. Очевидно, что они не могут тождественно совпасть с соответствующими значениями для генеральной совокупности.
Метод наименьших квадратов и метод наименьших модулей
Рассмотрим очень простую задачу. Есть вектор чисел x длиной N. Мы хотим аппроксимировать (приблизить) x другим вектором y, у которого все компоненты равны. Иначе говоря N исходных чисел мы хотим приблизить одним.
Запишем оптимизационную задачу:
∑ ℒ(xⱼ − y) → min
ℒ(xⱼ − y) — функция потерь.
Выберем квадратичную функцию потерь:
ℒ(xⱼ − y) = (xⱼ − y)²
Задача оптимизации:
∑ (y − xⱼ)² → min
Взяв производную по y и приравняв к нулю получим решение:
y = ∑ xⱼ / N = mean(x)
Теперь в качестве функции потерь возьмем модуль ошибки:
ℒ(xⱼ − y) = |xⱼ − y|
Задача оптимизации:
∑ |xⱼ − y| → min
Доопределив производную модуля, продифференцировав и приравняв к нулю, получим решение:
y = median(x)
Итак, при выборе двух разных функций потерь, в первом случае приходим к среднему исходных чисел, во втором — к медиане.
Замечательным свойством медианы (в отличие от среднего) является нечувствительность к выбросам — робастность. Единичные очень большие (или очень маленькие) значения xⱼ не приведут к увеличению (или уменьшению) y.
Все рассуждения легко применить и к гораздо более сложным моделям регрессии и классификации.
Вывод: робастность методов аппроксимации можно регулировать простым выбором функции потерь.
Рассмотрим очень простую задачу. Есть вектор чисел x длиной N. Мы хотим аппроксимировать (приблизить) x другим вектором y, у которого все компоненты равны. Иначе говоря N исходных чисел мы хотим приблизить одним.
Запишем оптимизационную задачу:
∑ ℒ(xⱼ − y) → min
ℒ(xⱼ − y) — функция потерь.
Выберем квадратичную функцию потерь:
ℒ(xⱼ − y) = (xⱼ − y)²
Задача оптимизации:
∑ (y − xⱼ)² → min
Взяв производную по y и приравняв к нулю получим решение:
y = ∑ xⱼ / N = mean(x)
Теперь в качестве функции потерь возьмем модуль ошибки:
ℒ(xⱼ − y) = |xⱼ − y|
Задача оптимизации:
∑ |xⱼ − y| → min
Доопределив производную модуля, продифференцировав и приравняв к нулю, получим решение:
y = median(x)
Итак, при выборе двух разных функций потерь, в первом случае приходим к среднему исходных чисел, во втором — к медиане.
Замечательным свойством медианы (в отличие от среднего) является нечувствительность к выбросам — робастность. Единичные очень большие (или очень маленькие) значения xⱼ не приведут к увеличению (или уменьшению) y.
Все рассуждения легко применить и к гораздо более сложным моделям регрессии и классификации.
Вывод: робастность методов аппроксимации можно регулировать простым выбором функции потерь.
Предобучение
Современные нейронные сети содержат миллионы параметров. Чтобы эффективно их обучать нужны огромные тренировочные наборы. К сожалению, для многих задач получение необходимого объема данных с разметкой проблематично.
Эффективным решением является предобучение. Первые слои сети предварительно обучаются на другой задаче, для которой данных достаточно. После этого вся сеть дотренировывается на целевом наборе.
Стандартный подход — предобучение на задаче классификации ImageNet. Как пример, многие state of the art архитектуры детекции текста претренировываются именно на нем.
#dainamicskills
Современные нейронные сети содержат миллионы параметров. Чтобы эффективно их обучать нужны огромные тренировочные наборы. К сожалению, для многих задач получение необходимого объема данных с разметкой проблематично.
Эффективным решением является предобучение. Первые слои сети предварительно обучаются на другой задаче, для которой данных достаточно. После этого вся сеть дотренировывается на целевом наборе.
Стандартный подход — предобучение на задаче классификации ImageNet. Как пример, многие state of the art архитектуры детекции текста претренировываются именно на нем.
#dainamicskills
Регуляризация и нехватка данных
Необходимость использования регуляризации — прямое следствие недостатка данных.
Разберем на примере L₁/L₂ регуляризации. Вспомним откуда она берётся.
Веса сети ищутся из условия максимизации апостериорной вероятности:
p(w | D) → max
где:
D — данные для обучения;
w — вектор параметров модели (веса сети).
Апостериорная вероятность выражается по формула Байеса:
p(w | D) = p(D | w) ⋅ p(w) / p(D)
p(D) не зависит от весов, поэтому из оптимизационной задачи её можно исключить:
p(w | D) ∝ p(D | w) ⋅ p(w) → max
Логарифмируем:
log p(D | w) + log p(w) → max
Второе слагаемое и есть регуляризатор. Если p(w) — гауссова функция, получаем L₂ регуляризацию. Если веса имеют распределение Лапласа, получаем L₁ регуляризацию.
Баланс между вкладами слагаемых log p(D | w) и log p(w) определяется «остротой» распределения p(w) и объемом данных D. Чем больше данных и/или чем «шире» априорное распределение, тем меньше значимость регуляризации.
#dainamicskills
Необходимость использования регуляризации — прямое следствие недостатка данных.
Разберем на примере L₁/L₂ регуляризации. Вспомним откуда она берётся.
Веса сети ищутся из условия максимизации апостериорной вероятности:
p(w | D) → max
где:
D — данные для обучения;
w — вектор параметров модели (веса сети).
Апостериорная вероятность выражается по формула Байеса:
p(w | D) = p(D | w) ⋅ p(w) / p(D)
p(D) не зависит от весов, поэтому из оптимизационной задачи её можно исключить:
p(w | D) ∝ p(D | w) ⋅ p(w) → max
Логарифмируем:
log p(D | w) + log p(w) → max
Второе слагаемое и есть регуляризатор. Если p(w) — гауссова функция, получаем L₂ регуляризацию. Если веса имеют распределение Лапласа, получаем L₁ регуляризацию.
Баланс между вкладами слагаемых log p(D | w) и log p(w) определяется «остротой» распределения p(w) и объемом данных D. Чем больше данных и/или чем «шире» априорное распределение, тем меньше значимость регуляризации.
#dainamicskills
Not Equal
ML ≠ AI
“Deconvolution” ≠ Deconvolution
“1×1 Convolution” ≠ 1×1 Convolution
“Tensor” ≠ Tensor
Inference ≠ Statistical Inference
TensorFlow Skills ≠ ML Skills
Naive Bayes Classifier ≠ Bayes Optimal Classifier
Bayesian Network ≠ Bayesian Neural Network
Deep Learning ≠ Machine Learning
p(y | x) ≠ softmax(f(x))
P ≠ NP
#dainamicskills
ML ≠ AI
“Deconvolution” ≠ Deconvolution
“1×1 Convolution” ≠ 1×1 Convolution
“Tensor” ≠ Tensor
Inference ≠ Statistical Inference
TensorFlow Skills ≠ ML Skills
Naive Bayes Classifier ≠ Bayes Optimal Classifier
Bayesian Network ≠ Bayesian Neural Network
Deep Learning ≠ Machine Learning
p(y | x) ≠ softmax(f(x))
P ≠ NP
#dainamicskills
Простое vs сложное
При решении задач машинного обучения часто не задумываясь просто берут модель посложнее (более общую). Логика такая: простая модель — частный случай более сложной, возьмём сложную, чтобы наверняка.
В ряде случаев подобный подход не оправдан. В качестве примера рассмотрим два популярных метода линейной классификации: линейный дискриминантный анализ (ЛДА) и логистическую регрессию.
На практике чаще используют логистическую регрессию, так как она исходит из более слабых предположений о распределении данных. Тем не менее, если предположения ЛДА о распределениях выполняются, он показывает лучшие результаты.
Простой пример, когда логистическая регрессия перестаёт работать — классы в обучающей выборке линейно разделимы. В этом случае веса регрессии устремляются в бесконечность. Такое часто происходит при нехватке обучающих прецедентов. ЛДА, благодаря более сильным предположениям о распределении данных, продолжает работать даже на малых обучающих выборках.
Вывод: чем больше информации о распределении данных учтено в модели — тем лучше.
#dainamicskills
При решении задач машинного обучения часто не задумываясь просто берут модель посложнее (более общую). Логика такая: простая модель — частный случай более сложной, возьмём сложную, чтобы наверняка.
В ряде случаев подобный подход не оправдан. В качестве примера рассмотрим два популярных метода линейной классификации: линейный дискриминантный анализ (ЛДА) и логистическую регрессию.
На практике чаще используют логистическую регрессию, так как она исходит из более слабых предположений о распределении данных. Тем не менее, если предположения ЛДА о распределениях выполняются, он показывает лучшие результаты.
Простой пример, когда логистическая регрессия перестаёт работать — классы в обучающей выборке линейно разделимы. В этом случае веса регрессии устремляются в бесконечность. Такое часто происходит при нехватке обучающих прецедентов. ЛДА, благодаря более сильным предположениям о распределении данных, продолжает работать даже на малых обучающих выборках.
Вывод: чем больше информации о распределении данных учтено в модели — тем лучше.
#dainamicskills
Human Replay Spontaneously Reorganizes Experience
Несколько лет назад в машинном обучении произошла настоящая революция. В кратчайшие сроки были получены фантастические результаты. Многие ученые предсказывают создание настоящего AI в ближайшие 10 лет.
Тем не менее способность к обобщению информации у человека все ещё гораздо выше. Минимальная входная информация в совокупности с опытом может приводить к построению сложнейших выводов.
Приятного прочтения!
https://www.cell.com/cell/fulltext/S0092-8674(19)30640-3
Несколько лет назад в машинном обучении произошла настоящая революция. В кратчайшие сроки были получены фантастические результаты. Многие ученые предсказывают создание настоящего AI в ближайшие 10 лет.
Тем не менее способность к обобщению информации у человека все ещё гораздо выше. Минимальная входная информация в совокупности с опытом может приводить к построению сложнейших выводов.
Приятного прочтения!
https://www.cell.com/cell/fulltext/S0092-8674(19)30640-3
Дискриминативные и генеративные модели
В машинном обучении существует два типа моделей: дискриминативные и генеративные.
Дискриминативные модели пытаются воспроизвести процесс отображения некоторого входного вектора x в вероятность появления выхода y. Иначе говоря аппроксимируется условная вероятность p(y | x).
Генеративные модели аппроксимируют вероятность совместного появления входа x и выхода y: p(x, y).
Для любого наступившего (фиксированного) значения x, зная совместную вероятность p(x, y), можно рассчитать условную вероятность:
p(y | x) = p(x, y) / p(x) ∝ p(x, y)
Таким образом генеративные модели являются более общими. Зная совместную вероятность, для любого x можно вычислить условную.
Важное свойство генеративных моделей заключается в том, что с их помощью можно не только классифицировать существующие объекты, но и порождать новые. Т. е. если с помощью дискриминативных моделей мы можем только классифицировать существующие фотографии кошек и собак, то с помощью генеративных мы можем рисовать новые фото кошек и новые фото собак.
Простейший пример дискриминативной модели — логистическая регрессия. Генеративной — линейный дискриминантный анализ (ЛДА). Восстановив ЛДА-модель, можно вывести и (соответствующую ей) формулу логистической регрессии. При этом с помощью логистической регрессии нельзя сгенерировать новые данные, а с помощью ЛДА-модели — можно.
#dainamicskills
В машинном обучении существует два типа моделей: дискриминативные и генеративные.
Дискриминативные модели пытаются воспроизвести процесс отображения некоторого входного вектора x в вероятность появления выхода y. Иначе говоря аппроксимируется условная вероятность p(y | x).
Генеративные модели аппроксимируют вероятность совместного появления входа x и выхода y: p(x, y).
Для любого наступившего (фиксированного) значения x, зная совместную вероятность p(x, y), можно рассчитать условную вероятность:
p(y | x) = p(x, y) / p(x) ∝ p(x, y)
Таким образом генеративные модели являются более общими. Зная совместную вероятность, для любого x можно вычислить условную.
Важное свойство генеративных моделей заключается в том, что с их помощью можно не только классифицировать существующие объекты, но и порождать новые. Т. е. если с помощью дискриминативных моделей мы можем только классифицировать существующие фотографии кошек и собак, то с помощью генеративных мы можем рисовать новые фото кошек и новые фото собак.
Простейший пример дискриминативной модели — логистическая регрессия. Генеративной — линейный дискриминантный анализ (ЛДА). Восстановив ЛДА-модель, можно вывести и (соответствующую ей) формулу логистической регрессии. При этом с помощью логистической регрессии нельзя сгенерировать новые данные, а с помощью ЛДА-модели — можно.
#dainamicskills
Predicting the Generalization Gap in Deep Neural Networks
Как известно, все ML-модели в той или иной степени переобучаются. Оценка обобщающей способности — одна из фундаментальных и важнейших проблем машинного обучения. По обучающей выборке необходимо оценить точность алгоритма на всех возможных данных (генеральной совокупности). Одни из первых оценок были получены Владимиром Вапником и Алексеем Червоненкисом.
В эпоху глубоких нейронных сетей сложность моделей возросла на порядки, а задача оценки обобщающей способности стала еще актуальнее.
Новый метод от Google:
https://ai.googleblog.com/2019/07/predicting-generalization-gap-in-deep.html
Статья:
https://openreview.net/pdf?id=HJlQfnCqKX
Как известно, все ML-модели в той или иной степени переобучаются. Оценка обобщающей способности — одна из фундаментальных и важнейших проблем машинного обучения. По обучающей выборке необходимо оценить точность алгоритма на всех возможных данных (генеральной совокупности). Одни из первых оценок были получены Владимиром Вапником и Алексеем Червоненкисом.
В эпоху глубоких нейронных сетей сложность моделей возросла на порядки, а задача оценки обобщающей способности стала еще актуальнее.
Новый метод от Google:
https://ai.googleblog.com/2019/07/predicting-generalization-gap-in-deep.html
Статья:
https://openreview.net/pdf?id=HJlQfnCqKX
Googleblog
Predicting the Generalization Gap in Deep Neural Networks
Про оценки и красоту решений
Машинное обучение — это построение оценок. Оцениваются вероятности, параметры распределений, многие другие случайные величины.
Оценить одну и ту же величину, как правило, можно разными способами.
Рассмотрим очень простой пример, известный из университета: оценка дисперсии случайной величины. Все мы помним, что есть смещенная и несмещенная оценки — выборочная и исправленная выборочная дисперсии.
Многие привыкли, что несмещенная оценка — это правильнее, точнее, оптимальнее. Само название «исправленная» намекает на улучшение. А вот и нет…
Разберёмся. Обычная выборочная дисперсия случайной величины u считается так:
S² = ∑ (uⱼ − ū)² / n
Математическое ожидание S² не совпадает с истинной дисперсией:
𝔼[S²] ≠ σ²
Чтобы математическое ожидание оценки совпало с оцениваемой величиной, добавляют поправку на смещение:
Q² = S² ⋅ n / (n − 1)
Теперь математическое ожидание Q² совпадает с истинной дисперсией:
𝔼[Q²] = σ²
Кажется, что теперь все OK... А вот и нет, не все!
Дело в том, что оценка Q (как и S) — случайная величина, и у нее есть распределение. Величина 𝔼[Q²] — всего лишь одна характеристика этого распределения. Одна, но не единственная. Можно посчитать 𝔼[Q], 𝔼[Q³] и бесконечно много других характеристик.
Почему же из всех характеристик решили выровнять матожидание именно 𝔼[Q²]? Почему не выравнивают 𝔼[Q]? Просто потому, что так проще — есть формула. Никаких других причин нет.
Пойдем дальше. Что если сформулировать задачу следующим образом.
Есть случайная величина x с нормальным распределением 𝒩(x | μ, σ). Есть ее наблюдения: (x₁, x₂, …). Нужно найти такие μ’ и σ’, чтобы вероятность появления (x₁, x₂, …) из распределения 𝒩(x | μ’, σ’) была максимальной.
Оптимальной оценкой дисперсии для такой задачи будет обычная (смещенная) выборочная дисперсия, а не исправленная. Проверьте!
Вывод: при выборе решения нужно двигаться от постановки задачи, а не от «красоты» свойств этого решения.
#dainamicskills
Машинное обучение — это построение оценок. Оцениваются вероятности, параметры распределений, многие другие случайные величины.
Оценить одну и ту же величину, как правило, можно разными способами.
Рассмотрим очень простой пример, известный из университета: оценка дисперсии случайной величины. Все мы помним, что есть смещенная и несмещенная оценки — выборочная и исправленная выборочная дисперсии.
Многие привыкли, что несмещенная оценка — это правильнее, точнее, оптимальнее. Само название «исправленная» намекает на улучшение. А вот и нет…
Разберёмся. Обычная выборочная дисперсия случайной величины u считается так:
S² = ∑ (uⱼ − ū)² / n
Математическое ожидание S² не совпадает с истинной дисперсией:
𝔼[S²] ≠ σ²
Чтобы математическое ожидание оценки совпало с оцениваемой величиной, добавляют поправку на смещение:
Q² = S² ⋅ n / (n − 1)
Теперь математическое ожидание Q² совпадает с истинной дисперсией:
𝔼[Q²] = σ²
Кажется, что теперь все OK... А вот и нет, не все!
Дело в том, что оценка Q (как и S) — случайная величина, и у нее есть распределение. Величина 𝔼[Q²] — всего лишь одна характеристика этого распределения. Одна, но не единственная. Можно посчитать 𝔼[Q], 𝔼[Q³] и бесконечно много других характеристик.
Почему же из всех характеристик решили выровнять матожидание именно 𝔼[Q²]? Почему не выравнивают 𝔼[Q]? Просто потому, что так проще — есть формула. Никаких других причин нет.
Пойдем дальше. Что если сформулировать задачу следующим образом.
Есть случайная величина x с нормальным распределением 𝒩(x | μ, σ). Есть ее наблюдения: (x₁, x₂, …). Нужно найти такие μ’ и σ’, чтобы вероятность появления (x₁, x₂, …) из распределения 𝒩(x | μ’, σ’) была максимальной.
Оптимальной оценкой дисперсии для такой задачи будет обычная (смещенная) выборочная дисперсия, а не исправленная. Проверьте!
Вывод: при выборе решения нужно двигаться от постановки задачи, а не от «красоты» свойств этого решения.
#dainamicskills
Заблуждение | Колмогоров
Иногда приходится слышать следующее утверждение: нейронной сети с одним скрытым слоем достаточно для представления любой непрерывной функции в заданном диапазоне. В доказательство ссылаются на теорему Колмогорова.
К сожалению это заблуждение. Представление функции, описанное Колмогоровым — не персептрон. Читайте внимательнее.
#dainamicskills
Иногда приходится слышать следующее утверждение: нейронной сети с одним скрытым слоем достаточно для представления любой непрерывной функции в заданном диапазоне. В доказательство ссылаются на теорему Колмогорова.
К сожалению это заблуждение. Представление функции, описанное Колмогоровым — не персептрон. Читайте внимательнее.
#dainamicskills
Расстояние Махаланобиса
В статистике существует обобщение евклидова расстояния для векторов случайных величин. Называется это обобщение расстоянием Махаланобиса. Задается следующей формулой:
d(x, y) = √ t(x − y) S⁻¹ (x − y)
x, y — вектора-столбцы случайных величин, взятые из одного распределения;
t() — оператор транспонирования;
S — ковариационная матрица.
Как видно, расстояние учитывает ковариацию компонент векторов и является инвариантным к масштабу. Если все компоненты всех векторов из распределения умножить на K, расстояние d(x, y) не изменится.
Расстояние Махаланобиса имеет широчайшее применение в задачах классификации, регрессии и кластерном анализе.
Рассмотрим пример.
Каждый человек описывается двумя характеристиками: рост и вес. Нужно оценить величину различия для пар случайных людей. То есть для любых двух людей сказать, насколько они различаются.
Обычное евклидово расстояние для такой задачи плохо подходит так как: 1) характеристики коррелируют между собой; 2) характеристики разнородны, измеряются в разных величинах. Использование расстояния Махаланобиса решает обе проблемы.
Есть один нюанс, о котором нельзя забывать — расстояние Махаланобиса было введено для случая многомерного нормального распределения случайных величин. Именно в этом случае оно дает оптимальные результаты. Применение расстояния к векторам, распределенным не гауссово, может привести к совершенно некорректным оценкам.
#dainamicskills
В статистике существует обобщение евклидова расстояния для векторов случайных величин. Называется это обобщение расстоянием Махаланобиса. Задается следующей формулой:
d(x, y) = √ t(x − y) S⁻¹ (x − y)
x, y — вектора-столбцы случайных величин, взятые из одного распределения;
t() — оператор транспонирования;
S — ковариационная матрица.
Как видно, расстояние учитывает ковариацию компонент векторов и является инвариантным к масштабу. Если все компоненты всех векторов из распределения умножить на K, расстояние d(x, y) не изменится.
Расстояние Махаланобиса имеет широчайшее применение в задачах классификации, регрессии и кластерном анализе.
Рассмотрим пример.
Каждый человек описывается двумя характеристиками: рост и вес. Нужно оценить величину различия для пар случайных людей. То есть для любых двух людей сказать, насколько они различаются.
Обычное евклидово расстояние для такой задачи плохо подходит так как: 1) характеристики коррелируют между собой; 2) характеристики разнородны, измеряются в разных величинах. Использование расстояния Махаланобиса решает обе проблемы.
Есть один нюанс, о котором нельзя забывать — расстояние Махаланобиса было введено для случая многомерного нормального распределения случайных величин. Именно в этом случае оно дает оптимальные результаты. Применение расстояния к векторам, распределенным не гауссово, может привести к совершенно некорректным оценкам.
#dainamicskills
Winners of ACL 2019 Best Paper Awards
= THE BEST DEMO PAPER =
OpenKiwi: An Open Source Framework for Quality Estimation.
Fabio Kepler, Jonay Trenous, Marcos Treviso, Miguel Vera and André F. T. Martins
= OUTSTANDING PAPERS =
Emotion-Cause Pair Extraction: A New Task to Emotion Analysis in Texts.
Rui Xia and Zixiang Ding
A Simple Theoretical Model of Importance for Summarization.
Maxime Peyrard
Transferable Multi-Domain State Generator for Task-Oriented Dialogue Systems.
Chien-Sheng Wu, Andrea Madotto, Ehsan Hosseini-Asl, Caiming Xiong, Richard Socher and Pascale Fung
We need to talk about standard splits.
Kyle Gorman and Steven Bedrick
Zero-shot Word Sense Disambiguation using Sense Definition Embeddings.
Sawan Kumar, Sharmistha Jat, Karan Saxena and Partha Talukdar
= THE BEST SHORT PAPER =
Do you know that Florence is packed with visitors? Evaluating state-of-the-art models of speaker commitment.
Nanjiang Jiang and Marie-Catherine de Marneffe
= THE BEST LONG PAPER =
Bridging the Gap between Training and Inference for Neural Machine Translation.
Wen Zhang, Yang Feng, Fandong Meng, Di You and Qun Liu
#dainamicnews
= THE BEST DEMO PAPER =
OpenKiwi: An Open Source Framework for Quality Estimation.
Fabio Kepler, Jonay Trenous, Marcos Treviso, Miguel Vera and André F. T. Martins
= OUTSTANDING PAPERS =
Emotion-Cause Pair Extraction: A New Task to Emotion Analysis in Texts.
Rui Xia and Zixiang Ding
A Simple Theoretical Model of Importance for Summarization.
Maxime Peyrard
Transferable Multi-Domain State Generator for Task-Oriented Dialogue Systems.
Chien-Sheng Wu, Andrea Madotto, Ehsan Hosseini-Asl, Caiming Xiong, Richard Socher and Pascale Fung
We need to talk about standard splits.
Kyle Gorman and Steven Bedrick
Zero-shot Word Sense Disambiguation using Sense Definition Embeddings.
Sawan Kumar, Sharmistha Jat, Karan Saxena and Partha Talukdar
= THE BEST SHORT PAPER =
Do you know that Florence is packed with visitors? Evaluating state-of-the-art models of speaker commitment.
Nanjiang Jiang and Marie-Catherine de Marneffe
= THE BEST LONG PAPER =
Bridging the Gap between Training and Inference for Neural Machine Translation.
Wen Zhang, Yang Feng, Fandong Meng, Di You and Qun Liu
#dainamicnews
Advances in Conversational AI
Способность к ведению диалога — важнейшее свойство интеллектуальных агентов будущего. На сегодняшний день ни один чат-бот не в состоянии вести «качественную» беседу на произвольную тему. Тест Тьюринга остаётся непройденным. Тем интереснее наблюдать за прогрессом в этой области...
https://ai.facebook.com/blog/advances-in-conversational-ai/
Способность к ведению диалога — важнейшее свойство интеллектуальных агентов будущего. На сегодняшний день ни один чат-бот не в состоянии вести «качественную» беседу на произвольную тему. Тест Тьюринга остаётся непройденным. Тем интереснее наблюдать за прогрессом в этой области...
https://ai.facebook.com/blog/advances-in-conversational-ai/
Facebook
Advances in Conversational AI
Facebook AI has made scientific progress in improving nuanced conversational skills, including consistency, specificity, and empathy.
Video Understanding Using Temporal Cycle-Consistency Learning
Довольно оригинальный подход к решению задачи распознавания действий на видео. Для обучения используются циклические последовательности фреймов.
https://ai.googleblog.com/2019/08/video-understanding-using-temporal.html?m=1
Довольно оригинальный подход к решению задачи распознавания действий на видео. Для обучения используются циклические последовательности фреймов.
https://ai.googleblog.com/2019/08/video-understanding-using-temporal.html?m=1
Googleblog
Video Understanding Using Temporal Cycle-Consistency Learning
Откуда берется MSE?
При решении задач регрессии чаще всего «по умолчанию» используют mean squared error (MSE). То есть в качестве меры близости идеального вектора y и предсказанного y’ используют величину:
MSE = ∑ (yⱼ − y’ⱼ)² / n
Чем эта величина меньше, тем лучше.
Никогда не задумывались почему именно квадраты? Почему не модули и не четвертая степень?
Чаще всего выбор MSE объясняют простой геометрической интерпретацией. Два вектора представляются в виде точек в n-мерном евклидовом пространстве и измеряется расстояние между ними. Не смотря на красивую интерпретацию, никакого статистического смысла у такого объяснения нет.
Все дело в модели. При решении регрессионных задач обычно используется модель с нормальным аддитивным шумом:
y = f(x, θ) + ε
x — вектор независимых переменных;
y — зависимая переменная;
θ — вектор параметров модели;
ε — случайная величина с нормальным распределением 𝒩(ε | 0, σ).
Перепишем в терминах вероятностей:
p(y | x, θ) = 𝒩(y | f(x, θ), σ)
После того, как модель задана, делается предположение о независимости появления каждого из наблюдений и применяется метод максимального правдоподобия (Maximum likelihood estimation, MLE). Находятся такие параметры модели θ, при которых появление наблюдений наиболее вероятно.
Так вот, для заданной выше модели, максимизация правдоподобия эквивалентна минимизации среднеквадратической ошибки. Проверить не сложно, попробуйте расписать MLE и прологарифмировать.
Вывод: MSE — следствие применения MLE и регрессионной модели с аддитивным гауссовским шумом. Никакие геометрические интерпретации здесь ни при чем.
#dainamicskills
При решении задач регрессии чаще всего «по умолчанию» используют mean squared error (MSE). То есть в качестве меры близости идеального вектора y и предсказанного y’ используют величину:
MSE = ∑ (yⱼ − y’ⱼ)² / n
Чем эта величина меньше, тем лучше.
Никогда не задумывались почему именно квадраты? Почему не модули и не четвертая степень?
Чаще всего выбор MSE объясняют простой геометрической интерпретацией. Два вектора представляются в виде точек в n-мерном евклидовом пространстве и измеряется расстояние между ними. Не смотря на красивую интерпретацию, никакого статистического смысла у такого объяснения нет.
Все дело в модели. При решении регрессионных задач обычно используется модель с нормальным аддитивным шумом:
y = f(x, θ) + ε
x — вектор независимых переменных;
y — зависимая переменная;
θ — вектор параметров модели;
ε — случайная величина с нормальным распределением 𝒩(ε | 0, σ).
Перепишем в терминах вероятностей:
p(y | x, θ) = 𝒩(y | f(x, θ), σ)
После того, как модель задана, делается предположение о независимости появления каждого из наблюдений и применяется метод максимального правдоподобия (Maximum likelihood estimation, MLE). Находятся такие параметры модели θ, при которых появление наблюдений наиболее вероятно.
Так вот, для заданной выше модели, максимизация правдоподобия эквивалентна минимизации среднеквадратической ошибки. Проверить не сложно, попробуйте расписать MLE и прологарифмировать.
Вывод: MSE — следствие применения MLE и регрессионной модели с аддитивным гауссовским шумом. Никакие геометрические интерпретации здесь ни при чем.
#dainamicskills