effective autism
Open in Telegram
@kefirski + autism Веду любимые каналы твоего лида
Show moreRussia811 560The category is not specified
279
Subscribers
No data24 hours
No data7 days
No data30 days
Posts Archive
К слову о задротстве, я часто вспоминаю ситуацию с GANами. В какой-то момент все заебались от того, что их ганы не работают, и модные чуваки выкатили WGAN (от списка авторов в этот момент дымится шишка). В статье чуваки обсасывали вопрос, что хорошие картинки в пространстве всех картинок занимают примерно нихуя места, из-за чего обычные ганы встают на колени. Чтобы этого не происходило достаточно взять старый советсткий Earth Mover Distance (опять сука optimal transport) и учить дискриминатор измерять этот самый EM.
Все бы нихуя, но добиться этого нихуя не очевидно как, потому как нужно теперь обеспечить Липшицевость критика (чувствуете как повернулась игра уже?). В самом WGAN предлагали ублюдский способ обеспечить её через клипинг значений весов и честно признавались, что способ ебаный
Weight clipping is a clearly terrible way to enforce a Lipschitz constraint.Дальше еще выходило несколько попыток сделать более модную Липшецевость – например через резугляризацию градиента (очень эффективный способ очевидно). Финальной точкой задротства стал Spectral Norm GAN, но на нем началось самое веселое. В статье просто рассуждали, что Липшицевость дискриминатора – это заебись. А про Earth Mover distance, для которого вся эта ебанина с Липшецевостью затеивалась уже как-то забыли. Но да похуй. Так вот, суть была в том, что можно взять слои (например линейные) и считать для них спектральную норму, а затем эту норму регуляризовывать – тогда у нас будет пиздатая константа Липшица. Если бегло прикинуть хуй к носу, то как считать эту норму достаточно понятно (пикрелейтед), метод работает заебись и что может пойти не так? А то, что спектральную норму для сверток считали точно так же, как и просто для линейных слоев, хотя нужно заменить matmul на операцию свертки во время вычисления нормы. Если пофиксить эту ошибку, то SN-GAN работать переставал. Что делать с этим не ясно – то ли вены резать, то ли хуй знает.
Bayesian methods
ruined a whole generation of researchers. Я, когда был еще в универе, дико угарал по всему, в названии чего было "баесовский", "вариационный" и прочее. Мне казалось, что, чем больше в методе дикого задротства, тем он круче.
При всем том, бóльшая часть всех этих методов очень хуево состарилась. Не мудрено, что если метод замедлял обучение раза в два из-за кучи дополнительных присяданий с математикой, а в результате предлагал ноль целых хуй десятых прироста качества, то использовать его желания было мало. Но практическая польза не ебет адептов байеса – вот порассуждать байесовский ли метод или все-таки нет – вот это да, это надо. Ведь если ваш байесовский метод не до конца байесовский, то все его поклонники автоматом после смерти попадают в список близких друзей в контактах Эпштейна, поэтому споры вокруг этих методов разгорались нихуя не шуточные.
Я хочу верить, что сложная злоебучая математика порой приводит к нескольким методам, в которых вся эта злоебучесть улетучивается и скрывается за парой формул, которые может осилить любой андреград, а метод становится полезным. Апогеем байесовского дроча, как мне кажется, стал какой-нибудь VAE. Всё остальное – дроч ради дроча.
А сейчас, если хочется позаниматься суходрочкой, то всегда можно поизучать optimal transport, тем более что его апогей применимости как раз недавно вышел.
Хэйтеры скажут, что Каррас писал про диффузии и до этого, и выдроченности там тоже хоть отбавляй. Хули сказать – повсюду обман
+2
Tero Karras
совершенно безумный персонаж. Искренне не понимаю, как он варит весь свой рисерч.
Многие его знают как автора всяких там стайлганов, но на самом деле он в целом угарает по какой-то совершенно злоебучей графике уже сто лет в обед. В целом, получается логично, что он продолжает дико задрачивать эту самую графику, просто через модные генеративные модели.
Здесь скорее важно даже не то "что" он делает, а "как". Тот же самый StyleGan – если открыть статью, то может создаться (иллюзорное) ощущение, что в целом все дохуя логично и понятно. Вот у меня есть какой-то стиль, сделали go brrr и обусловили им генератор. Модная high-level архитектура, вот и получили хороший FID.
Однако если пойти чуть-чуть дальше первых картинок и табличек в статье (хотя бы почитать, что там происходит после референсов, а может даже открыть код), то кто-то обязательно очень сильно удивится, а некоторые даже охуееют.
Деталей того, насколько стайлган был задрочен уйма:
We replace ... with bilinear sampling, which we implement by low-pass filtering the activations with a separable 2nd order binomial filter ...Чиво блядь? Как к этому пришли? Как вообще выглядел процесс поиска архитектуры и ее улучшения, что в какой-то момент кто-то (интересно блять кто) пришел на очередной созвон и сказал – "Ебать, придумал темку, давайте хуйнем блюром по нашим хидденам, отвечаю закачаетесь". И таких моментов внутри модели полно. Любой, кто открывал код стайлгана и пытался искренне понять, а что там происходит, знает, насколько там много таких неочевидных моментов. Мне всегда казалось, что степень выдроченности статей Карраса – это какая-то ебаная черная магия. Это нельзя поместить в Лувр или Эрмитаж, но это искусство высшей категории. Раз уж Каррас последние года ебашит конкретные генеративные модели, стоило ожидать, что он выкатит что-то и про диффузии. И он ясен хуй выкатил. Я правда до сих пор не решил, что мне нравится больше – Config A или Config B. А ведь еще Config C есть.
Внимательные читатели среди моих двух подписчиков могут спросить "а зачем вообще было бы переносить RNN в гиперболическое пространство?".
На это я спрошу в ответ "вы как в интернет на зоне вышли?"
Hyperbolic DL
Последнее время я неприлично много думаю о рекуррентных моделях, и о том, как их улучшать. В шизофазичных поисках вспомнил про гиперболические пространства.
Помню, году в 2018 область немного сошла с ума по этой теме, и было ощущение, что если написать статью про произвольное вкорячивание случайной модели в Шар Пуанкаре, то можно по специальной квоте (для ментально больных) залететь на ICLR или (тогда еще) NIPS. Справедливости ради, были работы, которые намекали, что вот тут-то мы нащупали реальную тему (раз, два).
Правда, на проверку оказалось, что большинство бенефитов гиперболических пространств иллюзорны, а недостатки очевидны – огромные затраты на хранение чисел после запятой и куча присяданий вокруг отображений в касательное пространство и обратно, которые мало того, что тратят лишнюю энергию на нагревание вселенной, так еще и создают экстра ментальный оверхед (так бляяядь, логарифм, арккосинус, тангенс, ебана, экспонента обратно в шар – падажжи ебана). Так что тему благополучно достаточно быстро забыли, кроме небольших групп особым образом сумасшедших людей, которые до сих пор пытаются что-то там придумывать.
Так вот – я сидел и думал, чем себя занять на новогодних каникулах (выбирал между BG3 и поделать какую-нибудь странную хуйню), и подумал "а вдруг все это развитие гиперболической мысли вела к тому, чтобы их вкорячили в рекурентные модели".
Здесь нужно сделать небольшое отступление – хотя обычные рекуррентные модели оказались прокляты, в последнее время можно заметить их ренессанс с появлиением State Space Models (S4, S5, S6 нахуй, тысячи их). Одно из ключевых дизайн решений, которое позволило их использовать в настоящем, а не игрушечном как в 2014, скейле, – это послать активацию между шагами рекуррентной модели нахуй далеко и надолго. Сделав вычисления между шагами линейными, можно немного помахать руками, и выяснить, что теперь unroll нашей рекуррентной модели необязательно считать в цикле – вместо этого можно расчехлить ассоциативный scan, и мощным, уверенным движением руки начать их считать параллельно.
Возвращаясь к проклятому гиперболическому пространству, я сначала очень обрадовался своей гениальнейшей идее вкорячить его в State Space Models, но потом очень резко огорчился – все дело в том, что никакой суммы векторов в этом пространстве нет. Вместо этого сделали фанатский мод – gyrovectors. Делался этот мод для вполне конкретных целей – описать, как складывать скорости объектов в нашей вселенной, учитывая, что почему-то достаточно сложно вылететь за пределы скорости света. Как итог, никакой ассоциативности суммы в эту надстройку над гиперболическими пространствами не завезли (если быть точным, какую-то завезли, но она в хуй не уперлась), а значит в линейные рекуррентные сети его с ассоциативным scan не вкорячить.
Ну и в целом хуй с ним, спокойнее жить будет.
