Согласен, кстати это не противоречит тому что я написал. Кроме физики есть системы еще, которые и на новую математику поправки делать начинают, "мир" меняется постоянно. Поэтому чтобы оставаться на месте, нужно постоянно бежать :)
Математика - универсальный язык описания наблюдений. И, в частности, из-за своего универсализма, он гораздо богаче отдельно взятых явлений и/или процессов.
Про реальность все додумки лишние, вязкая философия.
То что математика инструментальна сомнений у инженеров не вызывает. Сомневаются только те, кто не применяет (каждый день). Гуманитарии например.
Прогнозы (если обсуждать что) не всегда сбываются - это часто проблема концептуальных моделей, в которых учтено лишь то что учтено (все хотят интепретируемости, но это далеко не всегда возможно).
Перестановочные симметрии как факт были подмечены +/- давно. Skip Connections делает лосс более гладким, особенно в случае ступенчатых активаций, но главное - не таким резким по ландшафту.
Перестановочные симметрии приводят к избыточности параметрического пространства, и skip connection тоже регуляризация, как и dropout, который это пространство нарезает на подпространства.
Я сейчас к тому, что все так, да. И еще...
Эффект хорошей генерализации, как мне видится, имеет такую причину. Регуляризация от skip connections, в отличие от енкодеров-декодеров, или просто сужающихся сеток, является некоторым аналогом, простите, бустинга, который как известно, тоже аппроксиматор. То есть с каждым стэком инпут дополняется информацией, а не просто интерпретируется в подбираемом латентном пространстве. Подбирается дополнительное пространство к инпуту, как если бы человек говорил "на этой картине изображены Петька и Василий Иванович", а не просто "здесь Петька, а здесь Василий Иванович". И генерализация обуславливается тем, что к концу сетки мы не потеряли информацию о том, что это картина всё-таки (например). у Гудфедлоу это называется медленный признак.
Дискусионно все это конечно... извините за простыню текста.
Хорошо что вытащили алгоритмы из тьмы на свет, но если их сравнивать - некоторые модификации муравьиного имеют сходимость к глобальному оптимуму (время правда не оценить особо), у генетики такого свойства нет. Но генетику для более широкого круга задач адаптировать проще, да.
Возможно вы в курсе, но нынче баловаться принято проворачиванием фарша в обратную сторону, process mining, когда граф переходов (и шанс направления) восстанавливают из данных
чем проще датчик, тем он надежнее... предобработка сегодня одна нужна, завтра другая.
и беспроводных датчиков немного в общем числе.
автору спасибо за статью. хорошая мысль про физмодель в параллели с сеткой. я делал несколько иначе - сопрягал физмодель с коэффициентами и дополнительными слоями, а дальше их бэкпропом и оптимизацией по найденному
достаточно аккаунта google. вводите zip code 03222. или иной из списка no tax. Россия где-то тоже была в списке доступов, так что это не хак (а лайфхак).
Интересно есть ли можно ли надежно понять, что модель плохо учится не из-за криворукой разметки данных, а потому что изначально данные гетерогенные по лейблам?
знал бы прикуп, жил бы в Сочи)) считайте, если достаточно толстая двух-трехслойная нейросеть без переобучения даёт какую-то метрику, если нет каких-то проблем с предобработками и дефектами в коде... больше не выжмете из данных.
Думаю вам знаком датасет breast cancer. что там можно выжать больше, чем выжали?.. а да наверное ничего.
ну и мой коммент ниже, про неустранимую ошибку, так же в силе...
а) кластеризовывать со своей метрикой и смотреть статистику кластеров, в том числе по признакам. кластеры (и расстояния до центроид) можно подавать в классификаторы,
б) интерпретировать модели локально (то есть смотреть что дало вклад в конкретный предикт, shap values например), и смотреть как группируются интерпретации в датасете. объявлять группы чем-то различным.
это все достаточно искусственно. то что вы описали текстом - то что различает эти самые единицы - и есть хорошие разделяющие фичи. так что может сначала научиться выделять их наличие/различие... а там дальше стэкинг.
но я с мед. данными не работал, так что все это навскидку.
У моделей есть не просто да/нет, а некоторое "подобие" вероятности (можно калибровать).
Так вот сэмплы, где модель на грани сомнения, не мешает подвергать пристальному взгляду. Но это имеет смысл для не переобученных (overfitted) моделей.
Еще, на Хабре была статья про разные распределения трэйна и теста. Есть также "просто" поиск аномалий, который разными способами проверяет на соответствие распределению (local outlier factor например).
И предложенный метод тоже применялся и для imagenet вроде, уже не вспомню статью. Докинуло скора после переразметки.
Но есть проблематичное с этим подходом в том, что если в природе существует ненулевая вероятность ошибки, то есть шанс не отличить собаку от кошки, то ошибка модели будет не нулевой, и можно пропустить все же плохие сэмплы (и кроссвалидация не отработает). Особенно на малых датасетах. А миллионные учить долго, особенно с leave one out (проверять на N+1 отложенном сэмпле). Если есть еще и дисбаланс в датасете, то еще сложнее будет ловить отличия моделью.
В итоге, все классификаторы не дотягивают до идеального, да и тот работает с ошибкой (на не детерминированных данных).
спасибо, что подняли тему. действительно, уведомление и эскалация (критичных) инцидентов тема полезная. и правда да, в том что не стоит в таких ситуациях "расшаркиваться", нужно "что", "что делать", "когда придет в порядок". все остальное постфактум.
Согласен, кстати это не противоречит тому что я написал. Кроме физики есть системы еще, которые и на новую математику поправки делать начинают, "мир" меняется постоянно. Поэтому чтобы оставаться на месте, нужно постоянно бежать :)
Математика - универсальный язык описания наблюдений. И, в частности, из-за своего универсализма, он гораздо богаче отдельно взятых явлений и/или процессов.
Про реальность все додумки лишние, вязкая философия.
То что математика инструментальна сомнений у инженеров не вызывает. Сомневаются только те, кто не применяет (каждый день). Гуманитарии например.
Прогнозы (если обсуждать что) не всегда сбываются - это часто проблема концептуальных моделей, в которых учтено лишь то что учтено (все хотят интепретируемости, но это далеко не всегда возможно).
Перестановочные симметрии как факт были подмечены +/- давно. Skip Connections делает лосс более гладким, особенно в случае ступенчатых активаций, но главное - не таким резким по ландшафту.
Перестановочные симметрии приводят к избыточности параметрического пространства, и skip connection тоже регуляризация, как и dropout, который это пространство нарезает на подпространства.
Я сейчас к тому, что все так, да. И еще...
Эффект хорошей генерализации, как мне видится, имеет такую причину. Регуляризация от skip connections, в отличие от енкодеров-декодеров, или просто сужающихся сеток, является некоторым аналогом, простите, бустинга, который как известно, тоже аппроксиматор. То есть с каждым стэком инпут дополняется информацией, а не просто интерпретируется в подбираемом латентном пространстве. Подбирается дополнительное пространство к инпуту, как если бы человек говорил "на этой картине изображены Петька и Василий Иванович", а не просто "здесь Петька, а здесь Василий Иванович". И генерализация обуславливается тем, что к концу сетки мы не потеряли информацию о том, что это картина всё-таки (например). у Гудфедлоу это называется медленный признак.
Дискусионно все это конечно... извините за простыню текста.
открою "секрет" как бороться с заказчиками, которым всегда мало.
прейскурант (в терминах социализма) на базовые коробочные решения при удовлетворении требованиям к харду,
почасовая (подневная) оплата за все что сверху. хочешь быстрее - плати больше,
баги конкретно разработчика (именно баги) год правятся бесплатно.
отрезвляет и подрядчиков, и заказчиков.
Рассмотрите для полноты mmocr.
У меня в проде чудеса показывает. Не за час, но и домен посложнее. Сразу пробуйте топовые модели оттуда. Например detector DRRG + recognizer SAR
Хорошо что вытащили алгоритмы из тьмы на свет, но если их сравнивать - некоторые модификации муравьиного имеют сходимость к глобальному оптимуму (время правда не оценить особо), у генетики такого свойства нет. Но генетику для более широкого круга задач адаптировать проще, да.
Возможно вы в курсе, но нынче баловаться принято проворачиванием фарша в обратную сторону, process mining, когда граф переходов (и шанс направления) восстанавливают из данных
чем проще датчик, тем он надежнее... предобработка сегодня одна нужна, завтра другая.
и беспроводных датчиков немного в общем числе.
автору спасибо за статью. хорошая мысль про физмодель в параллели с сеткой. я делал несколько иначе - сопрягал физмодель с коэффициентами и дополнительными слоями, а дальше их бэкпропом и оптимизацией по найденному
меня еще быстрее :) угарная штука!
достаточно аккаунта google. вводите zip code 03222. или иной из списка no tax. Россия где-то тоже была в списке доступов, так что это не хак (а лайфхак).
p.s. отписаться можно на pay.google.com
знал бы прикуп, жил бы в Сочи)) считайте, если достаточно толстая двух-трехслойная нейросеть без переобучения даёт какую-то метрику, если нет каких-то проблем с предобработками и дефектами в коде... больше не выжмете из данных.
Думаю вам знаком датасет breast cancer. что там можно выжать больше, чем выжали?.. а да наверное ничего.
ну и мой коммент ниже, про неустранимую ошибку, так же в силе...
а) кластеризовывать со своей метрикой и смотреть статистику кластеров, в том числе по признакам. кластеры (и расстояния до центроид) можно подавать в классификаторы,
б) интерпретировать модели локально (то есть смотреть что дало вклад в конкретный предикт, shap values например), и смотреть как группируются интерпретации в датасете. объявлять группы чем-то различным.
это все достаточно искусственно. то что вы описали текстом - то что различает эти самые единицы - и есть хорошие разделяющие фичи. так что может сначала научиться выделять их наличие/различие... а там дальше стэкинг.
но я с мед. данными не работал, так что все это навскидку.
Искать разделяющую фичу... может синтетически как-то, если даже медицине она неизвестна. На правах гипотезы.
У моделей есть не просто да/нет, а некоторое "подобие" вероятности (можно калибровать).
Так вот сэмплы, где модель на грани сомнения, не мешает подвергать пристальному взгляду. Но это имеет смысл для не переобученных (overfitted) моделей.
Еще, на Хабре была статья про разные распределения трэйна и теста. Есть также "просто" поиск аномалий, который разными способами проверяет на соответствие распределению (local outlier factor например).
И предложенный метод тоже применялся и для imagenet вроде, уже не вспомню статью. Докинуло скора после переразметки.
Но есть проблематичное с этим подходом в том, что если в природе существует ненулевая вероятность ошибки, то есть шанс не отличить собаку от кошки, то ошибка модели будет не нулевой, и можно пропустить все же плохие сэмплы (и кроссвалидация не отработает). Особенно на малых датасетах. А миллионные учить долго, особенно с leave one out (проверять на N+1 отложенном сэмпле). Если есть еще и дисбаланс в датасете, то еще сложнее будет ловить отличия моделью.
В итоге, все классификаторы не дотягивают до идеального, да и тот работает с ошибкой (на не детерминированных данных).
спасибо, что подняли тему. действительно, уведомление и эскалация (критичных) инцидентов тема полезная. и правда да, в том что не стоит в таких ситуациях "расшаркиваться", нужно "что", "что делать", "когда придет в порядок". все остальное постфактум.
Да, смысл-то понятен. Но в целом, это близко к синтетике на мой взгляд.
Хотя и лучше нее, хотя бы тем что данные уже сами по себе ближе к решению.
Другое название для синтетики и/или аугментации?
За идею применения нейросетки, да и саму сформулированную задачу в целом - спасибо :)
В продолжение вашего интереса погуглите PredNet, MOT Challenge.
Спасибо! Хорошую статью на свет вытащили, и перевод к оригиналу весьма близок.
Сам (тоже?) использую attention в прогнозировании timeseries. Когда нет факторов за рамками увиденного - даже и не так уж плохо.
Смело :)
Но вот этот вариант как-то мне ближе.
https://landing.ai/ai-transformations/