Arcphoenix – Telegram
Arcphoenix
40 subscribers
23 photos
4 videos
1 file
18 links
Здесь интересные и полезные статьи, новости и мысли вокруг AI, и просто рандомный контент из жизни R&D дата саентиста и энтузиаста в AI.

Стараюсь постить редко, но метко, чтобы не создавать лишний информационный шум в вашей ленте 🕊❤️

Лс: @unfinity
Download Telegram
Вот моя модель сейсмометра.
Во время афтершока, грузик бьётся о сковородку и издаёт звук, чтобы я сразу обратил внимание, особенно в случае сильных толчков. Также установку можно выключить, убрав грузик в шкафчик, чтобы не мешала готовить.

Также для валидации качества модели, я сравнивал свои прогнозы с репортами о землятресениях в Алматы: https://earthquaketrack.com/p/kazakhstan/recent

Моя модель почти не ошибается и не даёт false positives. Из минусов - она не уверена в предсказаниях, поскольку не всегда раскачивается достаточно сильно, чтобы хорошо ударить по сковороде. Future work: нужно будет придумать как увеличить массу груза.
🔥4👍2
Недавно открыл для себя Replicate. Он чем-то похож на Spaces из Hugging Face, с которым лично у меня было немало негативного опыта (по ощущениям, каждая вторая открытая мной демка падала с ошибкой на загрузке). А ещё там лежит миллионы демок, и найти что-то хорошее и работающее бывает сложно.

В Replicate тоже можно гонять сетки в браузере, но реализовано это на порядок удобнее, и модели разбиты по категориям.
Плюс можно инферить всё через API, а апи — это окно новых возможностей для девелоперов всяких приложений.
Все модели в open source, и к ним есть Docker и Cog — т.е. можно быстро спулить образ и инферить локально. (Кстати, Cog это вообще прикольная штука, aka Docker for ML, но об этом в другой раз).

У Replicate интересная бизнес-модель. Сетки можно гонять бесплатно, но ограниченно, и не через API. Для полноценного юзабилити можно привязать карточку и платить за секунды инференса — Pay as you go. Это мега круто в отличии от всяких подписок (особенно если вы GPU-poor).

ML ресерчеры могут деплоить там свои модели на гпу-ресурсах Replicate. Оплата также за секунды инференса. (возможно, я скоро там задеплою одну свою модельку)

Вот списочек некоторых моделей, которые там есть:
- Stable Diffusion, SDXL + десятки файнтюнов
- Instant-ID
- SwinIR (SOTA в super-resolution)
- Всякие модели для image inpainting / editing, style transfer, image restoration
- Большое семейство ControlNet
- 3D Generation (DreamGaussian)
- LLMs: Mixtral 8x7b, llama 2 (70b)
- Некоторые модели можно самому файнтюнить
- Возможно генерить nsfw по API (проверено 😏)

Напомню, что все модели есть в опен сорс. Сервис их просто объединяет в единый удобный интерфейс, экономя наше время на деплой.

P.S: это не реклама, я просто нашел это полезным для себя)
🔥5
Понравилась статья: https://yandex.ru/pogoda/ru-RU/blog/what_is_climate_change

Как будто прочитал правила игры в Civilization VI с дополнением Gathering Storm, посвещенное климатическим изменениям.
👍1😁1
Кстати я в последнее время уделяю внимание этой теме. Многое меняется от понимания и признания масштабности проблемы изменения климата. Начинаешь думать о будущем, учитывая этот фактор. Например, я теперь точно не буду инвестировать в нефтяную промышленность. Это всё равно что копать под собой могилу в масштабе всего человечества.

Мне тема экологии даже как-то очень нативна. Я с детства люблю природу и не люблю автомобили и мотоциклы. Особенно последние, они шумят так, что хочется бежать))
А когда появились электросамокаты, мне они сразу зашли. Сейчас это моё самое популярное средство передвижения по городу. Метро к счастью не приходится использовать, так как всё нужное мне находится довольно близко.

Задумываюсь о том, чтобы работать в области экологии. Нейросети и ML абсолютно точно помогут человечеству решить многие проблемы кризиса.
1👍1
Привет! Хочу рассказать об одном моем эксперименте о модели эволюции, который я как-то давно провел и благополучно забыл. Но вот на днях он мне случайно попался, и я был очень удивлён своей работой. Решил восстановить его и описать здесь, на что у меня ушло больше двух недель. Надеюсь, что будет интересно. Я буду рад услышать любые мысли!

Ну, погнали!
🔥3
Клеточные автоматы и модель эволюции.
1

Летом 2022-го у меня было очень беззаботнее время. Я тогда нигде не работал, меня не волновала политика и война, было много свободного времени, которое я безмятежно проводил на даче вместе с Соней. Я тогда читал разные интересные книжки, в основном что-то из науч поп. Однажды у меня неожиданно возник вопрос — смогу ли я воспроизвести эволюцию?

Вопрос эволюции очень широк и интересует не только биологов, но и философов, культурологов, он поднимается в религиях. Ведь если эволюция работает, то это позволяет нам допустить, что из чего-то простого может создаваться сложное и разумное, что из хаоса и случайности может возникать порядок — и всё это без внешнего воздействия или божественного вмешательства!

Меня очень интересовали эти вопросы, и я решил провести эксперимент и узнать, смогу ли я создать модель эволюции, в которой что-то сложное и разумное порождалось бы буквально из хаоса? Я сразу взялся за дело. Первое, о чем я вспомнил, были 3 важных условия эволюции, которые я когда-то прочитал в книге "Эгоистичный ген" Ричарда Докинза.

Вот они, 3 необходимые условия эволюции:
1) Variation. Разнообразие сущностей.
2) Reproduction. Распространение или размножение.
3) Selection. Отбор сущностей по какому-либо критерию (явному или неявному).

Можно всё это называть разными словами, но в любой модели, в которой 1) что-то будет клонироваться, 2) оно будет каким-то образом изменяться, создавая разнообразие, 3) среда или мир не сможет сохранить всех своих жителей (например, из-за ограниченного пространства / ресурсов / да чего угодно), тем самым одни жители будут уничтожаться, а другие продолжать распространяться и обеспечивать разнообразие.

И чудесным образом, наличие этих условий наделяет любую систему или модель свойствами эволюции. Когда я об этом узнал, то не поверил. Это заставило меня провести свой эксперимент, и я, держа в голове эти 3 принципа эволюции, написал свою простую модель на чистом numpy и манипуляциях с матрицами и кернелами. В следующем посте я покажу, что у меня получилось.
🔥5
Media is too big
VIEW IN TELEGRAM
Клеточные автоматы и модель эволюции.
2

Запуск симуляции моей модели.

Что там происходит?

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

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

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

Скоро я расскажу больше о модели и о том, какую роль здесь играет эволюция.
🔥7
Клеточные автоматы и модель эволюции.
3

Кратко о модели:
Мир можно описать примерно так: все клетки умеют ходить. Каждая ходит по своим внутренним правилам, которые описываются её геном. Ген — это просто числа, матрица 20х5, кодирующая некий набор правил о передвижении (позже, я расскажу более детально). Говоря проще, передвижение клетки зависит только от её гена и смежных с ней клеток. Такое передвижение детерминировано, т.е. не случайно.

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

Что изобрела эволюция?
Как мы видим по ходу симуляции, клетки начинают "придумывать" довольно необычные паттерны поведения. Одни виды начинают доминировать над другими. Так происходит, потому что гены всех клеток постоянно смешиваются, перебираются, и из всех остаются только те, которые "изобрели" полезные паттерны передвижения, вытесняя остальные виды, с менее оптимальными паттернами. Например, клетки, которые не сталкиваются с клетками своего вида и убегают от клеток других видов быстрее заполоняют свободные участки мира.

В середине симуляции, клетки "изобретают" один из самых разумных паттернов — расстановка в шахматном порядке. Можно сказать, это гениальное изобретение эволюции. Гениальное, поскольку, во-первых, так вокруг каждой клетки есть свободные места, что даёт возможность клеткам одного вида постоянно клонироваться. Во-вторых, так клетки не мешают друг другу и не сталкиваются между собой внутри колонии.

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

Почему это эволюция?
Поскольку я не закладывал никаких предпосылок к появлению таких паттернов, то очень удивился, когда обнаружил, что они действительно хороши и оптимальны. Это означает, что механизмы эволюции открыли вполне разумное поведение! Меня это очень вдохновляет! Неужели действительно, из хаоса и случайности внутри закрытой системы может появиться порядок, самоорганизация и разумность? Причем без внешнего воздействия, и без постановки явной Objective function / метрики / лосса, как это делается при обучении нейросеток. Пишите, что вы об этом думаете.

Кстати, я собираюсь выложить код на гитхаб и сделать интерактивную демку. Ставь реакцию, если было бы интересно поиграться!
🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
Всем кто ищет статьи на Arxiv

Давно искал и наконец нашел семантический поиск по архиву: searchthearxiv.com

Семантический означает поиск по смыслу запроса, а не по ключевым словам, как в традиционном поиске.

Это очень полезно например когда вы не знаете точно, что хотите найти, но представляете какую задачу оно должно решать. В примере на видео я не знал, что моя задача называется "Topic Modeling", я просто ввел текст на естественном языке, и нашлись статьи с названием "Topic Modeling". Также можно искать похожие статьи по заданной. Очень удобно так погружаться в область и искать новое.

Немного о том как работает [1]
Чел взял arXiv Dataset с каггла, который регулярно пополняется статьями, посчитал эмбеддинги моделью text-embedding-ada-002 всего за $ 30 и завернул в vectorstore, сделал web-service и profit! Штука, в которой я давно нуждался готова! Респект автору за работу, а также за open source!
🔥9
Доброе утро! ☀️
Надеюсь вы хорошо спали. А я вот провёл всю ночь в коворкинге, нужно было поработать. Зато впервые за месяц я не проспал утро. Свежее, весеннее утро в Алматы. В 8 утра я вышел из коворкинга, взял самокат и поехал колесить по городу.

Алматы — красивый и разнообразный город. Тут и летние кафешки внутри золотого квадрата Медеуского района, и современные стеклянные здания в районе Достык плазы, да и казахи довольно дружелюбный народ. 🇰🇿
А горы, выглядывающие над современными зданиями Алматы — особое эстетическое чудо. Иногда мы туда выбираемся. Это прикольно. Всего 30 минут на машине и ты уже в горах, где супер чистый воздух и невероятные виды!

Климат здесь теплее, чем в Москве и средней полосе России, а солнечных дней заметно больше. Я живу здесь уже больше года, и в целом мне здесь нравится. Да, тут не идеально, как и везде, но это вполне хороший чекпоинт. Хочется посмотреть и остальной мир, так что скоро будем двигаться дальше!
👍7
Цена бездействия

Мы платим деньги за бездействие, за то, что мы просто живем свою жизнь. Забавно, что самым дорогим расходом оказывается не плата за супер-технологии, крутейшие AI тулы, GPT-4, подписки и тд. Самое дорогое — банальная плата за обычную человеческую жизнь — это аренда квартиры, еда и быт… Материя стоит дорого. Это легко проверить, посмотрев на свои расходы. У меня там первые места занимают квартира и еда, ну и еще траты на путешествия, но это отдельная тема на потом. Это 80% всех расходов.

А теперь важный вопрос в контексте персонального роста: если бы я больше покупал всякие дешевые (относительно быта) AI-инструменты, помощники, репетиторы по английскому, и прочие услуги, сколько импакта это оказало бы на мою жизнь и рост?

Я думаю, довольно значительно.

Напутствие, которое я хочу дать самому себе — не скупиться тратить на то, что может потенциально ускорить развитие и персональный рост. Ведь иначе, получается, мы просто тратим кучу денег, чтобы всего лишь оставаться такими, какие мы есть.
👍5🔥4🤔2
Вчера OpenAI показали новую GPT-4o (Omni), которая уже через пару недель будет доступна и бесплатна для всех! (кроме РФ конечно, гы). Интеллект у неё на уровне GPT-4, но модель в разы быстрее и дешевле, что её даже сделали бесплатной. Это инженерный прорыв!

В презентации не раз упомянули, что OpenAI хотят сделать интеллект, который будет доступен для всех, чтобы люди начинали понимать на что способен AI, а на что его не хватает, и формировали адекватные и объективные мнения, не впадая в панику из-за страха неизвестности. Если у них и правда такая мотивация, это достойный ход!

Многие ожидали, что будут GPT-5 или GPT-4.5, но OpenAI сейчас похоже работают над высвобождением модели из чата и интеграцией в материальную реальность. Они дали модели голос, глаза и эмоции. Модель умеет говорить в реальном времени, используя интонацию, шутить, смеяться, петь, её можно перебивать. Можно даже пошарить свой экран, чтобы модель в реальном времени объяснила голосом какой-нибудь кусок кода. Такой вот цифровой собеседник. Огонь, что сказать! Это кстати не первая попытка. Мы знаем Siri, Алису, и других ассистентов, но они были тупыми, и по сути умели только говорить, но не видеть. Посмотрим откроются ли новые горизонты с GPT-4o.
🔥3
Размышления о GPT-5, Embodied Cognition и RL

Есть такая теория "Embodied Cognition" (wiki), которая предполагает, что наш опыт взаимодействия с миром (физический контакт, восприятие визуальных образов, звуков) значимо влияет на то, как формируется наше мышление, интеллект, и особенно воображение и способность придумывать поистине новое.
Сейчас лучшая реализация AI - это LLM, т.е. модель которая учится предсказывать следующее слово, на основе предыдущих, и делает это так, чтобы текст был похож на человеческий (благодаря RLHF кстати).
Все LLM-ки это по сути текстовые попугаи, которые пишут очень умный текст и потому кажутся нам интеллектуальными. Но что, если истинный интеллект раскрывается благодаря опыту взаимодействия с окружающей средой? Что, если именно обучение через взаимодействие формирует особое представление о мире, которое мы называем пониманием того, как что устроено (а не запоминание), и в следствие этого появляется изобретательность и разумность в решении задач? Тогда, есть смысл не обучать модели как LLM - предсказывать следующее слово - а напрямую обучать взаимодействию с миром или виртуальной средой. Например, совершать конкретные действия в браузере. Буквально, модель могла бы кликать "мышкой" и видеть всё что там происходит, тем самым получая сигнал из среды, на котором можно обучаться. То есть, такая модель сможет увидеть и понять туда ли она нажала, получила ли результат, который хотела/ожидала. При этом модель, также как LLM, сможет генерировать текст прежде, чем совершить действие. Язык здесь выступает инструментом объяснения и абстрагирования, как логический инференс, прослойка между восприятием и совершением действия.

Идея о взаимодействии агента со средой стара как кибернетика и называется Reinforcement Learning (RL). Но было довольно мало попыток соединить способности LLM с идеями RL и Embodied Cognition.
И тут как раз вышла GPT-4o, в которой OpenAI добавили зрение и слух прямо на уровне архитектуры, что позволило бы получать прямой фидбек из среды, а значит и учиться на нём.

OpenAI стремительно идут вперед, и, наверняка, уже давно исследуют вопросы AGI в такой постановке задачи (и это уже привело к RLHF). Вангую, когда OpenAI сделают GPT-5, это будет частичное воплощение идеи Embodied Cognition в виртуальной среде типа браузера или IDE. Идея давно витает в умах многих людей из DS (судя по количеству агентных систем на базе GPT на гитхабе). Так что мы ещё не достигли предела AGI, и скорее всего он случится в ближайшие годы.


P.S: кстати, про основы RL и RLHF есть отличная лекция от ШАД: Интенсив GPT Week. Лекция 4: "Alignment"
И моя любимая от Сиола -- RLHF Intro: From Zero to Aligned Intelligent Systems
🔥31
Гадание на корреляции

Мышление людей несовершенно. К сожалению, мы от природы подвержены разным "галлюцинациям" в своих рассуждениях (прямо как наши ллм-ки)

Смотрите, допустим, я очень хочу основать успешный стартап. Я ресерчу этот вопрос и натыкаюсь на следующий факт:
"Большинство основателей топовых стартапов имеют PhD", на что я вспоминаю, что у меня нет PhD...
Чувствуете подвох?

Думаю у многих напрашивается вывод о том, что раз нет PhD, то и шансы на успешный стартап невелики. Мы неосознанно делаем логический вывод: "Чтобы сделать успешный стартап, нужно иметь хорошее образование или даже PhD".

Я назвал это Гаданием на корреляции. В исходном утверждении мы заметили корреляцию между успешностью стартапа и образованием, и делаем ложный вывод о том, что без PhD вряд ли получится реализовать идею.
Но тут я скажу вот что: опровергнуть этот вывод настолько легко, что это покажется смешным. Ведь чтобы доказать ложность гипотезы, достаточно всего лишь одного контр-факта (научный подход, dude), например такого: Sam Altman, CEO of OpenAI, бросил учебу в Стэнфорде в свои 20.
Вдогонку можно ещё вспомнить молодость Стива Джобса.


Заметьте, множество подкрепляющих фактов не перевешивает всего один опровергающий. Наш мозг очень любит искать подтверждения (причем как можно больше), когда достаточно всего лишь одного опровержения, чтобы сделать правильный вывод. it's ridiculous!

Мир сложен, корреляции повсюду, а понятные правила и строгие законы как будто были только в школьной физике (и то до начал СТО)... Поэтому в обычной жизни все мы гадаем на корреляции — пытаемся предсказать события, исходы и шансы на успех, исходя из таких непрочных рассуждений. И это приводит к неоптимальным решениям. Ничего не поделать, иногда другого выхода и нет.

Думаю, что осознание этого мозгового bias'а поможет, и мы сможем чаще замечать подобные галлюцинации в своих рассуждениях и не подвергаться тревоге и неуверенности, которые могут стать следствием ложных выводов.

Ну все, теперь ты знаешь, а значит вооружен!
Have a lucky day! 🤗
👍52❤‍🔥2
out-new.png
399.6 KB
Code2flow

Нашёл прикольную либу, которая представляет код в виде графа. Генерирует его прямо из питон файла (также поддерживается js, php, ruby). Очень полезно, когда разбираешься в большом объеме кода.

На картинке я представил в виде графа наш класс nn.Inference, который я уже второй день рефакторю.

GitHub:
https://github.com/scottrogowski/code2flow/tree/master
🔥6👍2👀1
Forwarded from fmin.xyz (Даня Меркулов)
This media is not supported in your browser
VIEW IN TELEGRAM
Почему все используют градиентные методы для обучения больших моделей?

🤩 Продемонстрирую наглядно на примере решения задачи Multidimensional Scaling (MDS). В этой задаче нам надо нарисовать на плоскости объекты, про которые мы знаем только насколько каждый из них далеко друг от друга. Т.е. на входе у нас матрица попарных расстояний, а на выходе координаты объектов на плоскости. Причем эти координаты должны быть такими, чтобы соотношения расстояний между объектами оставалось как можно более близким к исходным. В качестве функции потерь выступает сумма квадратов отклонений расстояний между городами при текущих координатах и заданным значением.

f(X) = ∑ₘ ∑ₙ (Dₘₙ − dₘₙ(X))²

🗣 Несмотря на увеличение размерности, вся траектория метода может быть наглядно продемонстрирована на плоскости. Количество переменных в задаче здесь - 2*(количество городов), т.к. для каждого из городов мы ищем 2 координаты на плоскости.

↗️ По очереди запускается обычный градиентный спуск, требующий знания градиента, и метод Нелдера-Мида из scipy (широко используемый безградиентный метод). Сначала задача решается для 6 самых населенных европейских городов, потом для 15 и для 34 (это все города-миллионики Европы из википедии).

🤔 Видно, что чем больше городов на карте (чем больше размерность задачи), тем больше разрыв между градиентным и безградиентным методами. Это одна из главных причин, по которой для решения задач большой размерности нам нужны не только значение минимизируемой функции, но и её производная.

🤔 Оказывается, у градиентных методов (при наборе разумных предположений) количество итераций, необходимое до сходимости метода, не зависит напрямую от размерности задачи. То есть если вы рассмотрите корректно настроенный градиентный спуск на десятимерной задаче, то ему нужно будет, скажем, не более 20 итераций для сходимости. А если вы возьмёте условно ту же задачу, но 100500-мерную, то ему нужны будут те же 20 итераций. Конечно, стоимость одной итераций растет с ростом размерности задачи, но хотя бы их количество явно не растет.

🤩 Ставь реакцию, если видишь свой город.
💩 Код для построения анимации
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9🐳3
Когда не знаешь чего хочешь в жизни.

Раньше было время, когда я знал чего хотел, и действительно хотел. Нерационально, интуитивно. Это самый простой и приятный период жизни. Я знал, что мне нравится изучать и учиться. Так я познал мир Deep Learning и нейросеток. Я изучал с огромным интересом и удовольствием, и всё складывалось само собой, всё давалось с лёгкостью, хотя и было много работы и бессонных ночей! Но всё это было в кайф.

Прошло 4 года, сейчас я работаю в классном европейском стартапе. И теперь кажется у меня есть всё. Всё, кроме того интереса, как тогда. Все дни похожи один на другой. Жизнь стабилизировалась после нескольких судьбоносных событий, решений, и исходов. Но теперь в воздухе витает вопрос - а что дальше?
- Тишина.
Нет больше понятных целей, увлечений, стремлений. Я спрашиваю себя, чего я хочу? Какие у меня цели в жизни? Но ответы не приходят, а любые варианты ответов какие-то серые, немотивирующие, недостаточные, чтобы взяться их делать.

Тогда я предложил себе найти ориентиры неявные, абстрактные. Потому что я заметил, что начинаю упускать или не видеть возможности. Ведь иногда нам приходят возможности извне - кто-то что-то предложил, куда-то позвал, или я увидел интересную вывеску. Это всегда шанс нарваться на новые приключения, которых ты не ждешь. Чтобы не было "баннерной слепоты" к возможностям, нужно хотя бы иметь неявные, неточные ориентиры, которые помогут принимать решения в таких ситуациях. Например - идти туда, и делать то, что страшно, то, что кажется сложным, невозможным. То, в чем я ещё недостаточно хорош. Идти туда, где дискомфорт. Дискомфорт заставляет двигаться, меняться, не стоять на месте. Стоять на месте - это именно то, чего я больше всего сейчас не хочу.
Таковы мои ориентиры.

Выходит, задача "как понять чего ты хочешь" решается от обратного. Когда не знаешь чего хочешь, подумай о том, чего ты не хочешь!
13🔥2