Dmatryusофрения
41 subscribers
291 photos
10 videos
15 files
148 links
Пишу о книгах, лидерстве, технологиях, opensource, своих проектах и наверное чем-то ещё. Ну и репосты IT приколямб.
Download Telegram
#review

Посмотрел за последние 2 дня 2 олдовые черно-белые картины: "Собачье Сердце" и "17 Мгновений Весны".


Начнём с первого.

Фильм довольно близко к книге излагает. Признаться честно, в школе я не прочитал книгу полностью, но прочитал первые 30 минут фильма, впрочем, учительница сама говорила, что можно ограничится фильмом. Я отвечал по нему отлично и получил несколько соответствующих оценок по литературе.

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

Есть несколько дискуссионных аспектов по содержанию, но основная его идея понятна, и она совсем не про превращение собаки в человека, а про проблемы идеалогии и её смены.

В целом я оценил бы картину на 8 гипотоламусов из 10, и с удовольствием её пересматриваю раз в несколько лет.


17 Мгновений Весны я посмотрел впервые.

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

У сериала не редко встречаются проблемы с логикой связи сцен. То есть сами сцены логичны, но события между ними невозможны (наверное поэтому остаются за кадром), а некоторые персонажи ведут себя не последовательно и не разумно, а их мотивация может быть только предметом домыслов.

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

Заглавная музыкальная тема великолепна, но весьма поилипчивая, и, если смотреть залпом (как делал я), успевает надоесть.

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

Некоторые декорации сделаны плохо, а актёры побочных ролей играют не очень хорошо, ломая 4 стену. Это портит погружение.

В кино очень много пьют и курят. Просто заметная деталь, забавно, что стриминг это никак не коментирует, в отличии от Собачьего Сердца, где на этом меньше акцента. Ещё из забавного - рейтинг 12+ при этом всём, ещё и с довольно жестокими сценами.

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

Знаю, что есть цветная версия. Интересно посмотреть, как это выглядит чисто технологически и сравнить с тем, как нейронки автоматически попытались бы воссоздать цвет. Уверен, что если бы картина изначально снималась в цвете - она была бы очень красивой.

Не очень приятно, что в конце не завершили арку всех персонажей и не случилось катарсиса. Как бы то, что Берлин возьмут было известно с самого начала. Для нас же важнее персональные истории, а не глобальный финал, который мы и так знаем.

Моя итоговая оценка: 12 мгновений из 17
🤔1👌1💯1
Forwarded from Data Secrets
Крутая статья от Microsoft: Differential Transformer

Трансформеры склонны аллоцировать внимание на нерелевантный контекст (в статье это называют шумом), и это приводит к проблемам с извлечением информации и, как следствие, к галлюцинациям и потерям в точности. Это известная проблема.

Microsoft предложили изящное решение: вместо одной attention мапы они создают две, дублируя keys и queries, а затем легким движением руки... вычитают их друг из друга, тем самым нивелируя шум в attention scores.

Такой подход сразу повышает аттеншен к релевантным деталям: эксперименты показали, что трансформеры с таким diff вниманием лучше обычных справляются с задачами на длинном контексте (вроде известной задачи иголки в стоге сена). Кроме того подход еще и уменьшает количество выбросов в активациях модели, что упрощает ее квантование.

Статья полностью – здесь
🤔1🏆1
Forwarded from The Accursed Share
work-work balance🥴
Forwarded from Data Secrets
OpenAI выяснили, влияет ли ваше имя на ответы, которые дает вам ChatGPT

Обычно подобные исследования проверяют, например, насколько ИИ склонен к стереотипам относительно какого-то третьего лица, не участвующего в диалоге (например, скрининг резюме группы людей). А OpenAI решили проверить, есть ли у бота предубеждения, которые он переносит непосредственно на собеседника.

Внезапно оказалось, что (почти) нет: GPT-like модели в среднем в менее чем 1% случаев дают различные стереотипные ответы людям с разными именами. Стереотипными различиями считается, когда, например, юзеру с женским именем в ответ на расплывчатый вопрос без уточнения деталей, такой как "подскажи классное название для моего видео на YouTube", модель заговорит о рецептах или косметике, а на такой же запрос от мужчины предложит что-то про технику.

Самой стереотипной моделью оказалась GPT-3.5, самой честной – GPT-4 Turbo. Больше всего боты проявляли предвзятость в теме искусства и развлечений, а найм, кстати, оказался чуть ли не на последнем месте.

Самое интересное, что для самого анализа и сводки статистики тоже применялась LLM. Н – несмещенные оценки
😁2🏆1
команда xAI установила 100 000 ускорителей Nvidia H200 за 19 дней

По словам Дженсена Хуанга это что-то на невозможном — обычно весь процесс занимает четыре года. При этом большая часть времени уходит на планирование, а в оставшийся год оборудование доставляют и устанавливают.

Команда Маска же ВЕСЬ этот процесс уложила буквально в три недели. Они построили здание для процессоров, оснастили предприятие системами жидкостного охлаждения и питания для обеспечения работы GPU. Параллельно инженеры Маска общались с ребятами из Nvidia по поводу доставки, установки и настройки оборудования.

Более того, в этот срок они даже успели запустить первый тренировочный прогон ИИ от xAI на суперкластере.

Глава Nvidia называет Маска сверхчеловеком, но, знаете, интересно, а сколько раз сотрудники выгорели и полетели кукухой за такой срок?

@your_tech
🤔2
#dataset

Вау! Чуть меньше поводов генерить синтетику.
Forwarded from LightAutoML framework (.caroline.)
🚀Команда Сбера🚀выложила в open-source самый большой датасет, содержащий мультимодальные банковские данные ЮЛ.

🔥Multimodal Banking Dataset (MBD)🔥

Датасет состоит из обезличенных исторических данных, содержащих следующую информацию по клиентам ЮЛ за 12-24 месяцев:
📌транзакционная активность (transactions);
📌эмбеддинги диалогов (dialogs);
📌гео-активность (geostream).

Таргет: предсказать для каждого пользователя взятие каждого из четырех продуктов в течение месяца после отчетной даты. Исторические данные за 2022 находятся в targets.

Датасет на HuggingFace:

🖥https://huggingface.co/datasets/ai-lab/MBD (14,6 GB, основной датасет)
🖥https://huggingface.co/datasets/ai-lab/MBD-mini (3,38 GB, уменьшенная версия, 10% клиентов из основного датасета)

Датасет опубликован под лицензией Creative commons 4.0, доступен для использования в научных работах, экспериментах итд.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2🤔1
#random

Почитал тут о языке Julia. Выглядит интересно.

Язык программирования Julia был разработан в 2009 году, и его релиз вышел в 2012 году. Создатели Julia — Джефф Безансон, Стефан Карпински, Вирал Шах и Алан Эдельман. Основной целью разработки было создание языка, который бы сочетал высокую производительность с простотой использования, характерной для таких языков, как Python или R. Они стремились решить проблему, которая часто возникает при научных и численных вычислениях: необходимость писать прототипы на удобных, но медленных языках и затем переписывать их на более производительных, таких как C или Fortran.

Интересные особенности, которые я отметил:

1. Заточка под численные методы
2. Нативная интеграция с C
3. Опциональная строгая типизация

Язык совсем не подходит для разработки приложений. Только для вычислений. Есть мнение, что он решает проблему 2 языков: где изначально код пишется на Python, а потом переписывается на C с оптимизациями; но при этом создаёт проблему полутора языков, когда код, вызываемый из C все равно надо оптимизировать, как и вызывающий его. По мне 1.5 меньшее зло, чем 2.
Солидарен с Яном
Forwarded from Data Secrets
This media is not supported in your browser
VIEW IN TELEGRAM
А вот Ян Лекун по поводу ризонинга настроен не так оптимистично, как стартапы. Вот что он сказал на своей недавней лекции:

"Языковые модели НЕ МОГУТ рассуждать или планировать — даже такие модели, как o1 от OpenAI. Нам кажется, что они рассуждают, но на самом деле они просто выполняют интеллектуальный поиск.

Это не значит, что LLM бесполезны. Они очень полезны. Но тем не менее, они не – не путь к суперинтеллекту, несмотря на то, что говорят некоторые в США."


Лекун также ссылается на исследователя по имени Subbarao Kambhampati, у которого есть целая серия статей про то, что LLM не могут планировать. Серьезно, статьи так и называются: "LLMs Can't Plan", "LLM Still Can't Plan" и так далее в том же духе. Кажется, у него стоит поучиться остаивать свою позицию 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
#thought

О рекрутинге и Leetcode.

Часть 1. Как мы нанимали стажера.

Недавно мы искали стажера и довольно быстро и успешно нашли.

На первом месте был вопрос: "Чем будет заниматься стажер?" В любом проекте есть некий порога входа. В случае стажировки ещё и порог, за который не нужно переступать до поры, так как она ограничена по времени. Поэтому вопрос был не самый простой, и мы взяли его в несколько подходов, чтобы убедиться, что все делаем правильно.

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

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

Во второй части сформулирую свои мысли по поводу современных практик найма вообще.
🔥4
Вау! Надо будет поиграть с этим!
Forwarded from Data Secrets
Выяснилось, что LLM могут считать, что 9.8 < 9.11, из-за Библии, физики или даже теракта 11 сентября

Исследователи из Transluce – только что анонсированной некоммерческой ИИ лаборатории – создали инструмент Monitor. Это еще одна попытка интерпретировать черный ящик LLM и научиться понимать, как модели обдумывают свои ответы. Основной прикол тут в интерфейсе (см.скрины), такого уровня UX подобные интерпретаторы еще не видели.

Как и предыдущие решения от OpenAI и Anthropic, инструмент основан на архитектуре SAE, то есть на разреженных автоенкодерах, которые распутывают активации LLM и достают из них так называемые интерпретируемые "фичи" (подробнее про то, как устроены такие автоенкодеры писали здесь).

Самое интересное: исследователи прогнали через свою тулзу задачи, на которых LLM традиционно фейлятся, и результаты получились крайне занятные. Например, в той самой задачке, где LLM предлагается сравнить числа 9.8 и 9.11, в ее "мыслях" (в данном случае рассматривают Llama 3.1) внезапно всплывает информация про атаку 11 сентября (9.11) и гравитационную константу (9.8).

Вероятно из-за того, что эти темы появлялись в обучающих данных Llama очень часто, числа 9.8 и 9.11 перестают восприниматься ею как обычные числа: она воспринимает их, как другой вид объектов, путается и несет чепуху.

Но это не все: можно погрузиться глубже и спросить у интерпретатора не просто о том, какие темы вообще активируются при ответе на вопрос, но и о том, какие именно из них заставляют модель сказать "больше". Если это проделать, то получается, что модель начинает думать про Библию. Оказывается, определенные нейроны в этом кластере связаны со стихами из Библии, и выходит, что 9.8 и 9.11 интерпретируются как 9:8 и 9:11 (глава: стих). Это неудивительно: большинство наборов данных для претрейна содержат много копий Библии.

Ученые предположили, что если избавиться от таких тематик, ведущих модель по неверному пути, она все-таки может дать верный ответ. И это заработало! Если с помощью интерпретатора "выключить" вышеперечисленные кластеры нейронов, то модель меняет свое мнение и отвечает правильно: 9.11 меньше 9.8.

Короче, интерпретатор не только занятный в роли песочницы, но и действительно полезный. Исследователи отмечают, что это только прототип для интерфейсов с еще более широкими возможностями. Например, Monitor в его нынешнем виде оставляет построение гипотез пользователю: он позволяет наблюдать, какие идеи лежат в основе вычислений модели, но не объясняет, как модели принимают окончательные решения с помощью этих идей. Агенты-исследователи будущего же смогут не только анализировать решения модели, но и помогать автоматически исправлять галлюцинации.
🔥2🤔2
#thought

О рекрутинге и Leetcode.

Часть 2. Собеседование стажера в бигтех

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

В бигтехе обычно можно выделить 4 этапа собеседования (это не обязательно разные собеседования):
1. Проверка софтскиллов
2. Лайфкодинг и Литкодинг (задачи на алгоритмы)
3. Техстэк и домен
4. Собеседование с командой

2 и 3 этапы проходят независимо и потому могут идти в любом порядке.

1. Софтскиллы. Кажется, что для стажера не критично. Если человек в принципе способен нормально общаться, то ок. Если софтскиллы хорошие, то это большой плюс. Я убеждён, что софтскилл в жизни и работе - разные. К примеру, в жизни у меня с ними, мягко говоря, не хорошо. В работе тоже не идеально, но тест по ним у меня был почти идеальный и по отзывам хорошо (хотя и есть слабые места).

2. Лайфкодинг и Литкодинг. Здесь подробно останавливаться не буду, так как тема для 3 части.

3. Техстэк и домен. Для стажера достаточно, чтобы он был знаком с ними, но глубокого вовлечения не требуется. Так наш основной домен - матстат, а вторичный - финансы. Важны хотя бы поверхностные знания в них, но и желания их расширять. По техстэку pandas и ООП в основном. Понятно, что наш стэк гораздо шире, но для стажировки не требуется вся его широта.

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

Понятно, что такой отбор выстроен отчасти для того, чтобы отбирать из большого числа кандидатов и поставить отбор на поток. Однако это не редко приводит к тому, что отбираются не оптимальные кандидаты, а такие, которые больше времени потратили на подготовку к собеседованию. На мой взгляд основная проблема именно в этапе 2. О чем в следующей части.
#thought

О рекрутинге и Leetcode.

Часть 3. Лайфкодинг и Leetcode.

Я считаю, что это абсолютно бесполезная часть собеседования.

1. Лайфкодинг... То, как человек пишет код в (возможно) стресовой ситуации и ограниченный промежуток времени - не показатель,  а если да, то зачем Вам идти на работу со стресом и жёсткими дедлайнами? Понятно, что новичкам особенно выбирать не приходится, но если возможность выбора все же есть, то лучше не идти в компанию с такими приоритетами.

2. Leetcode. Решение задач с Leetcode показывает в основном то, сколько кандидат решал задачи на Leetcode. Дело, конечно, полезное, но мало что общего имеет с реальными задачами. Классические алгоритмы уже реализованы в либах, а в экзотических задачах обычно важнее её решить, а не решить "единственно верным способом".

3. Абстрактные задачи. В принципе та же фигня, что и с Leetcode. Врядли вам нужно будет на работе минимизировать риск застрелиться при игре в русскую рулетку,  искать фальшивые монеты посредством взвешивания или измерять длинну замкнутого поезда. Понятно, что это может быть связано с реальными задачами, но само по себе в первую очередь говорит о том, знаком ли кандидат с задачей. Единственное... Можно посмотреть на то, как кандидат будет рассуждать,  но не самый эффективный способ.

4. LLM. Почти все эти задачи они решают лучше, чем средний кандидат. Где-то читал, что последняя ChatGPT решает 21 из 22 задач с Leetcode, включая уровень hard. Есть сомнения в достоверности и сурса у меня нет. Тем не менее, это не отменяет проблемы. Это огромный потенциал для читинга. Вы врядли хотите нанять человека, который просто освоил базовый промптинг (если да, то подход хороший).

В следующей части подробнее выскажусь в целом про практику Leetcode в отрыве от рекрутинга.
🥰2
#thought

О рекрутинге и Leetcode.

Часть 4. Leetcode в вакууме.

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

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

2. Скорее всего в реальной работе не нужно "инвертировать бинарное дерево"

3. Leetcode — это не курс по структурам данных и алгоритмам. Для того, чтобы решение задач было полезным, нужно понимать, что делать и почему, а не заучивать патерны.

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

5. Обсуждение задач может оказаться полезнее их решения.

6. Leetcode вырабатывает привычку проверять пограничные случаи... А ещё работа в команде, где есть команда (пусть состоящая из одного человека) тестирования.

7. Leetcode - не плохая платформа, чтобы тренировать навыки работы с новым языком. Конечно, речь не об архитектуре, фреймворках и практиках языка, а больше про понимание синтаксиса и базовых языковых конструкций.

8. Не все структуры данных актуальны для высокоуровневых языков (типа Python). Leetcode в большей степени полезен для тех, кто разрабатывает низкоуровневые алгоритмы или приложения.

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

Вроде основные мысли сформулировал. Следующая часть по планам завершающая цикл. Она будет про то, как я вижу идеальное собеседование.
👍2
Интересно сравнить с Flux