Стрим был очень продуктивным! Кто не пришёл - кусайте локти ) Потому что моя часть стрима не записалась, но Никита дал очень крутую вторую часть и она будет выложена в записи по кусочкам! )
П.С. Да, рано либо поздно, мы научимся записывать стримы
П.П.С Этот телеграм канал был задуман изначально так, что все участники модераторы и могут публиковать главные новости. К сожалению я не уследил в последнее время и добавились много человек, которы сейчас будут модераторами.
П.С. Да, рано либо поздно, мы научимся записывать стримы
П.П.С Этот телеграм канал был задуман изначально так, что все участники модераторы и могут публиковать главные новости. К сожалению я не уследил в последнее время и добавились много человек, которы сейчас будут модераторами.
❤3👍3
кого не добавил в модераторы канала и кто хочет? ) без проблем )
Наш канал порадует уже вас скоро как научным, так и спортивным контентом! Не сдуваемся, держим марку! )
1/2
🧠 И снова про интерпретируемость / объяснимость нейрональных вычислений
Разбираем простой пример + цитируем инструмент, чтобы попробовать самому
И в мозге, и в современных больших нейросетях вычисления размазаны по миллиардам нейронов и синапсов. Никакой один нейрон не отвечает за какой-то конкретный процесс в этих вычислениях, а задача разбивается на множество маленьких частей, которые вместе создают итоговый результат.
Это даёт гибкость и мощь, но создаёт серьёзную проблему:
🔬 Anthropic и атрибутационные графы
Команда Anthropic разработала инструмент:
📈 Атрибутационные графы (attribution graphs).
С его помощью можно визуализировать, как модель обрабатывает вход и как приходит к конкретному ответу. Это своего рода «нейровизуализация» для искусственного интеллекта.
🧩 Как это работает?
Внутри модели активируются features (фичи) — внутренние понятия.
Продолжение👇
🧠 И снова про интерпретируемость / объяснимость нейрональных вычислений
Разбираем простой пример + цитируем инструмент, чтобы попробовать самому
И в мозге, и в современных больших нейросетях вычисления размазаны по миллиардам нейронов и синапсов. Никакой один нейрон не отвечает за какой-то конкретный процесс в этих вычислениях, а задача разбивается на множество маленьких частей, которые вместе создают итоговый результат.
Это даёт гибкость и мощь, но создаёт серьёзную проблему:
Как понять, что именно происходит внутри? Почему модель или мозг приняли именно такое решение?
🔬 Anthropic и атрибутационные графы
Команда Anthropic разработала инструмент:
📈 Атрибутационные графы (attribution graphs).
С его помощью можно визуализировать, как модель обрабатывает вход и как приходит к конкретному ответу. Это своего рода «нейровизуализация» для искусственного интеллекта.
🧩 Как это работает?
Внутри модели активируются features (фичи) — внутренние понятия.
Продолжение👇
2/2. начало 👆
Эти фичи делятся на два типа:
🟦 Input features — активируются в ответ на входной текст.
🟥 Output features — напрямую влияют на финальный выбор токена.
Всё это соединено в виде графа, где видно, как сигнал проходит от входа к выходу.
🔬 Как такие features возникают?
Внутри модели существуют features — абстрактные внутренние понятия, которые представляют собой устойчивые паттерны активаций нейронов.
Вот что важно:
❗ Никто не прописывал эту фичу вручную.
Она автоматически сформировалась во время обучения модели.
Как это происходит? Во время тренировки: Модель многократно видит тексты, где рядом встречаются, например: "France — Paris", "French food — Paris restaurants", "capital of France is Paris" и т.д. Внутри модели (в слое внимания) некоторые нейроны/веса начинают стабильно активироваться, когда появляются такие шаблоны. Эти стабильные паттерны "конденсируются" в фичу — вроде "French / Paris".
Эта фича закрепляется потому, что она полезна для предсказаний — она помогает модели угадать следующее слово, связанное с Францией.
Input features — что это? Это такие паттерны активаций, которые возникают в ответ на входной текст.
Например, если модель видит слово «Paris», активируется фича, связанная с географией или столицей Франции.
Эти паттерны не прописаны вручную, а формируются во время обучения — модель сама выделяет важные свойства текста.
Output features — что это?
Это паттерны, которые напрямую влияют на выбор следующего слова (токена).
Они как бы «голосуют» за определённый ответ и формируют итоговую вероятность.
Эти features находятся ближе к выходу модели и управляют тем, что модель в итоге выдаст.
Как мы узнаём о существовании этих features?
👉С помощью методов атрибуции — вычисляем, какой вклад в ответ внес каждый нейрон или группа нейронов.
👉Через абляции — отключаем части модели и смотрим, как меняется поведение.
👉Анализируем активации — ищем повторяющиеся, стабильные паттерны.
👉Создаём визуализации — например, атрибуционные графы, которые показывают цепочки влияния от входа к выходу.
📌 Пример
Ты вводишь: "The capital of France is".
Input feature "French / Paris" активируется. Дальше она передаёт сигнал к более абстрактным фичам, типа:
"capital-of-country", "factual-geography-knowledge", "France → Paris association".
И уже на финальном этапе output features "проталкивают" токен "Paris".
💻 Попробовать самому:
✅ Веб-интерфейс. Просто открой и введи любую фразу:
👉 https://www.neuronpedia.org/gemma-2-2b/graph
(На базе Gemma-2 2B, от Google)
✅ Или прямо в Google Colab. Готовый ноутбук от Anthropic, никаких установок:
👉 https://github.com/safety-research/circuit-tracer/blob/main/demos/circuit_tracing_tutorial.ipynb
Посмотри, какие input features срабатывают на твоём примере и как они влияют на output features. Это настолько наглядно показывает, что происходит "внутри" ИИ, насколько это сегодня вообще возможно показать наглядно.
#Interpretability #DevInterp #MechInterp #Antropic #AttributionGraphs
@easy_about_complex
Эти фичи делятся на два типа:
🟦 Input features — активируются в ответ на входной текст.
🟥 Output features — напрямую влияют на финальный выбор токена.
Всё это соединено в виде графа, где видно, как сигнал проходит от входа к выходу.
🔬 Как такие features возникают?
Внутри модели существуют features — абстрактные внутренние понятия, которые представляют собой устойчивые паттерны активаций нейронов.
Вот что важно:
❗ Никто не прописывал эту фичу вручную.
Она автоматически сформировалась во время обучения модели.
Как это происходит? Во время тренировки: Модель многократно видит тексты, где рядом встречаются, например: "France — Paris", "French food — Paris restaurants", "capital of France is Paris" и т.д. Внутри модели (в слое внимания) некоторые нейроны/веса начинают стабильно активироваться, когда появляются такие шаблоны. Эти стабильные паттерны "конденсируются" в фичу — вроде "French / Paris".
Эта фича закрепляется потому, что она полезна для предсказаний — она помогает модели угадать следующее слово, связанное с Францией.
Input features — что это? Это такие паттерны активаций, которые возникают в ответ на входной текст.
Например, если модель видит слово «Paris», активируется фича, связанная с географией или столицей Франции.
Эти паттерны не прописаны вручную, а формируются во время обучения — модель сама выделяет важные свойства текста.
Output features — что это?
Это паттерны, которые напрямую влияют на выбор следующего слова (токена).
Они как бы «голосуют» за определённый ответ и формируют итоговую вероятность.
Эти features находятся ближе к выходу модели и управляют тем, что модель в итоге выдаст.
Как мы узнаём о существовании этих features?
👉С помощью методов атрибуции — вычисляем, какой вклад в ответ внес каждый нейрон или группа нейронов.
👉Через абляции — отключаем части модели и смотрим, как меняется поведение.
👉Анализируем активации — ищем повторяющиеся, стабильные паттерны.
👉Создаём визуализации — например, атрибуционные графы, которые показывают цепочки влияния от входа к выходу.
📌 Пример
Ты вводишь: "The capital of France is".
Input feature "French / Paris" активируется. Дальше она передаёт сигнал к более абстрактным фичам, типа:
"capital-of-country", "factual-geography-knowledge", "France → Paris association".
И уже на финальном этапе output features "проталкивают" токен "Paris".
💻 Попробовать самому:
✅ Веб-интерфейс. Просто открой и введи любую фразу:
👉 https://www.neuronpedia.org/gemma-2-2b/graph
(На базе Gemma-2 2B, от Google)
✅ Или прямо в Google Colab. Готовый ноутбук от Anthropic, никаких установок:
👉 https://github.com/safety-research/circuit-tracer/blob/main/demos/circuit_tracing_tutorial.ipynb
Посмотри, какие input features срабатывают на твоём примере и как они влияют на output features. Это настолько наглядно показывает, что происходит "внутри" ИИ, насколько это сегодня вообще возможно показать наглядно.
#Interpretability #DevInterp #MechInterp #Antropic #AttributionGraphs
@easy_about_complex
❤2👍1
Как мы писали тут, в пятницу была лекция нобелевского лауреата по физикие за искусственные нейросети Джефри Хинтона. Сам я не был, но вот что постят соседние каналы 👇👇👇
🧠 Пару недель назад мы писали про свежий удивительный результат, касающийся времени и пространства/памяти в вычислениях:
👉 https://t.iss.one/easy_about_complex/1027
🎥 Теперь вышло наглядное и увлекательное видео на YouTube, которое объясняет этот результат простыми словами (на английском):
📺 How to squeeze space into time — видео от ChalkTalk
Рекомендуем к просмотру всем, кто интересуется теорией вычислений и просто красивыми идеями! 🚀
#Complexity #PvsPSPACE #P #PSPACE
👉 https://t.iss.one/easy_about_complex/1027
🎥 Теперь вышло наглядное и увлекательное видео на YouTube, которое объясняет этот результат простыми словами (на английском):
📺 How to squeeze space into time — видео от ChalkTalk
Рекомендуем к просмотру всем, кто интересуется теорией вычислений и просто красивыми идеями! 🚀
#Complexity #PvsPSPACE #P #PSPACE
Telegram
Истории (не)успеха (ИИ)ЕИ
1/3
🧠 Время и пространство в вычислениях: новая перспектива на разделение классов P и PSPACE
В феврале 2025 года Райан Уильямс из MIT представил работу, которая может стать важным шагом в понимании различий между временной и пространственной сложностью…
🧠 Время и пространство в вычислениях: новая перспектива на разделение классов P и PSPACE
В феврале 2025 года Райан Уильямс из MIT представил работу, которая может стать важным шагом в понимании различий между временной и пространственной сложностью…
👍4
🧠 Мы не просто так говорим про математику, физику и информатику - мы создаём машину времени 😁😎😇
Вот тут и тут — мы обсуждали потрясающие, неожиданные научные результаты 2025 года. Современная наука бьёт током: прорывы, новые методы, неожиданные связи.
Но вот вопрос: а какие открытия в прошлом были сопоставимы по масштабу?
Что так же резко сдвигало представление о возможном?
💡 Давайте посмотрим?
Сделаем серию постов, где пройдёмся по историческим открытиям — от более близкого к более далёкому прошлому. Посмотрим, чем жила фундаментальная наука — и как эти открытия повлияли на наш мир.
📆 Начнём, пожалуй, со второй половины XX века — и будем спускаться вниз: по десятилетиям, а потом и векам.
🗞️ Первая остановка — ноябрь 1979 года.
В газете The New York Times выходит статья с заголовком:
“A Soviet Discovery Rocks World of Mathematics”
(«Советское открытие потрясает мир математики»).
Звучит громко.
А вот в чём там прикол — расскажу вам (после)завтра.
Оставайтесь на связи 📡
@easy_about_complex
Вот тут и тут — мы обсуждали потрясающие, неожиданные научные результаты 2025 года. Современная наука бьёт током: прорывы, новые методы, неожиданные связи.
Но вот вопрос: а какие открытия в прошлом были сопоставимы по масштабу?
Что так же резко сдвигало представление о возможном?
💡 Давайте посмотрим?
Сделаем серию постов, где пройдёмся по историческим открытиям — от более близкого к более далёкому прошлому. Посмотрим, чем жила фундаментальная наука — и как эти открытия повлияли на наш мир.
📆 Начнём, пожалуй, со второй половины XX века — и будем спускаться вниз: по десятилетиям, а потом и векам.
🗞️ Первая остановка — ноябрь 1979 года.
В газете The New York Times выходит статья с заголовком:
“A Soviet Discovery Rocks World of Mathematics”
(«Советское открытие потрясает мир математики»).
Звучит громко.
А вот в чём там прикол — расскажу вам (после)завтра.
Оставайтесь на связи 📡
@easy_about_complex
❤2👍2
Начало тут 👆
📚 В этом канале и на стримах (тут и тут) мы уже не раз обсуждали фундаментальные вопросы вычислительной сложности:
Что такое классы P и NP:
- Почему вопрос "P = NP?" — один из величайших нерешённых в математике?
- И что вообще значит «решить задачу за полиномиальное время»?
Теперь давайте посмотрим на задачу, которая стала поворотной точкой между прикладной оптимизацией и теоретической информатикой.
Речь о линейном программировании (или линейной оптимизации) — и прорыве, который произошёл в 1979 году.
🔧 Что такое линейная оптимизация?
Это класс задач, где нужно оптимизировать линейную функцию при наличии линейных ограничений.
То есть: что-то максимизировать или минимизировать, соблюдая заданные условия.
💡 Пример:
Составить рацион питания из доступных продуктов — так, чтобы:
-покрыть все суточные нормы по питательным веществам (ограничения),
- но потратить как можно меньше денег (целевая функция).
С 1947 года такие задачи эффективно решались с помощью симплекс-метода — разработанного Джорджем Данцигом.
📈 На практике метод довольно хорош: миллионы логистических, экономических и инженерных систем полагались (и полагаются) на симплекс.
Но была проблема:
⚠️ в теории симплекс может работать экспоненциально долго. А значит, мы не знали, принадлежит ли линейная оптимизация к классу P (полиномиально вычислимых задач).
💥 1979: появляется Хачиян
И вот, в 1979 году Леонид Хачиян, молодой математик из СССР, предлагает эллипсоидный метод — первый алгоритм, который решает задачу линейного программирования за гарантированное полиномиальное время.
🌀 Идея метода:
начать с большого эллипсоида, содержащего все возможные решения, постепенно сжимать его, отсекая "плохие" части, пока не останется область, содержащая оптимум.
📉 Но на практике метод оказался медленным (см. сноску внизу 🍒). А вот в теории он дал главное:
🔐 Он доказал, что линейная оптимизация ∈ P.
То есть: существует "быстрый алгоритм" (см. сноску внизу 🍒).
🧩 А теперь — мост к комплексити-теории
Вот почему это открытие было настолько важно:
До Хачияна не было известно, попадает ли линейная оптимизация в класс P.
Его работа замкнула круг между прикладной задачей и теоретическим анализом.
Она показала, что не всякая полезная задача сложна. Некоторые — фундаментально решаемы эффективно (см. сноску внизу 🍒).
А ещё — это вдохновило целую волну исследований:
📈 появились внутренние точечные методы (например, метод Кармаркара), которые были не только полиномиальными, но и быстрыми на практике.
📌 Итог
Линейное программирование — редкий случай задачи, которая:
- 🔧 реальная прикладная задача,
- ✅ и точно в классе P.
Да, в реальной жизни симплекс чаще всего быстрее,
но именно эллипсоид Хачияна навсегда изменил теоретическое понимание линейной оптимизации.
🧠 А теперь — маленькая
📌 Подумайте:
метод эллипсоида и полиномиальное время — это гарантия на худший случай, а не обещание быть быстрым всегда.
А симплекс?
Возможно, во многих случаях он просто умеет "угадывать", где находится решение — даже если не обещает ничего формально для всех случаев (см. сноску внизу 🍒).
👉 И в этом — вся красота прикладной математики.
И вся хитрость теории сложности.
@easy_about_complex
#P #NP #PvsNP #LinearProgramming
_
🍒 сноска: есть нюансы! По сути эллипсоидный метод требует полиномиального времени с очень высокой степенью полиномов. Это значит, что эллипсоидный метод Хачияна начнёт бить симплекс-метод по времени вычислений на практике только начиная с какого-то определённого размера оптимизационной задачи и выше? (worst case ✅ average case❓). Вот с каких порядков задачи симплекс-метод начнёт уступать методу эллипсоидов - я сейчас не могу сказать. Надо разбираться в деталях. Я слышал(?), что в в последние годы в больших вычислительных центрах, где реально большие задачи эллипсоид таки бьёт симплекс (worst case?average case?practical cases?). Но это не точно.
📚 В этом канале и на стримах (тут и тут) мы уже не раз обсуждали фундаментальные вопросы вычислительной сложности:
Что такое классы P и NP:
- Почему вопрос "P = NP?" — один из величайших нерешённых в математике?
- И что вообще значит «решить задачу за полиномиальное время»?
Теперь давайте посмотрим на задачу, которая стала поворотной точкой между прикладной оптимизацией и теоретической информатикой.
Речь о линейном программировании (или линейной оптимизации) — и прорыве, который произошёл в 1979 году.
🔧 Что такое линейная оптимизация?
Это класс задач, где нужно оптимизировать линейную функцию при наличии линейных ограничений.
То есть: что-то максимизировать или минимизировать, соблюдая заданные условия.
💡 Пример:
Составить рацион питания из доступных продуктов — так, чтобы:
-покрыть все суточные нормы по питательным веществам (ограничения),
- но потратить как можно меньше денег (целевая функция).
С 1947 года такие задачи эффективно решались с помощью симплекс-метода — разработанного Джорджем Данцигом.
📈 На практике метод довольно хорош: миллионы логистических, экономических и инженерных систем полагались (и полагаются) на симплекс.
Но была проблема:
⚠️ в теории симплекс может работать экспоненциально долго. А значит, мы не знали, принадлежит ли линейная оптимизация к классу P (полиномиально вычислимых задач).
💥 1979: появляется Хачиян
И вот, в 1979 году Леонид Хачиян, молодой математик из СССР, предлагает эллипсоидный метод — первый алгоритм, который решает задачу линейного программирования за гарантированное полиномиальное время.
🌀 Идея метода:
начать с большого эллипсоида, содержащего все возможные решения, постепенно сжимать его, отсекая "плохие" части, пока не останется область, содержащая оптимум.
📉 Но на практике метод оказался медленным (см. сноску внизу 🍒). А вот в теории он дал главное:
🔐 Он доказал, что линейная оптимизация ∈ P.
То есть: существует "быстрый алгоритм" (см. сноску внизу 🍒).
🧩 А теперь — мост к комплексити-теории
Вот почему это открытие было настолько важно:
До Хачияна не было известно, попадает ли линейная оптимизация в класс P.
Его работа замкнула круг между прикладной задачей и теоретическим анализом.
Она показала, что не всякая полезная задача сложна. Некоторые — фундаментально решаемы эффективно (см. сноску внизу 🍒).
А ещё — это вдохновило целую волну исследований:
📈 появились внутренние точечные методы (например, метод Кармаркара), которые были не только полиномиальными, но и быстрыми на практике.
📌 Итог
Линейное программирование — редкий случай задачи, которая:
- 🔧 реальная прикладная задача,
- ✅ и точно в классе P.
Да, в реальной жизни симплекс чаще всего быстрее,
но именно эллипсоид Хачияна навсегда изменил теоретическое понимание линейной оптимизации.
🧠 А теперь — маленькая
загадка:
Как так получается,
что теоретически «быстрый» эллипсоид на практике
почти всегда проигрывает по времени
теоретически «медленному» симплексу?
📌 Подумайте:
метод эллипсоида и полиномиальное время — это гарантия на худший случай, а не обещание быть быстрым всегда.
А симплекс?
Возможно, во многих случаях он просто умеет "угадывать", где находится решение — даже если не обещает ничего формально для всех случаев (см. сноску внизу 🍒).
👉 И в этом — вся красота прикладной математики.
И вся хитрость теории сложности.
@easy_about_complex
#P #NP #PvsNP #LinearProgramming
_
🍒 сноска: есть нюансы! По сути эллипсоидный метод требует полиномиального времени с очень высокой степенью полиномов. Это значит, что эллипсоидный метод Хачияна начнёт бить симплекс-метод по времени вычислений на практике только начиная с какого-то определённого размера оптимизационной задачи и выше? (worst case ✅ average case❓). Вот с каких порядков задачи симплекс-метод начнёт уступать методу эллипсоидов - я сейчас не могу сказать. Надо разбираться в деталях. Я слышал(?), что в в последние годы в больших вычислительных центрах, где реально большие задачи эллипсоид таки бьёт симплекс (worst case?average case?practical cases?). Но это не точно.
Telegram
Истории (не)успеха (ИИ)ЕИ
🧠 Мы не просто так говорим про математику, физику и информатику - мы создаём машину времени 😁😎😇
Вот тут и тут — мы обсуждали потрясающие, неожиданные научные результаты 2025 года. Современная наука бьёт током: прорывы, новые методы, неожиданные связи.
…
Вот тут и тут — мы обсуждали потрясающие, неожиданные научные результаты 2025 года. Современная наука бьёт током: прорывы, новые методы, неожиданные связи.
…
👍5
Друзья, какие темы вы бы хотели на следующие стримы? Можно выбирать несколько опций!
Anonymous Poll
61%
Теория: математика, теоретическая информатика, физика - интересные результаты
54%
Практика 1: введение в машинное обучение, нейросети, большие языковые модели,... Как и с чего начать
46%
Практика 2: машинное обучение в деталях - архитектуры, обучающие данные, интерпретируемость и т.д.
29%
Практика 3: будни разработчиков программного обеспечения - различные технологии и методы
0%
Ваши предложения - в комментариях
4%
Я хочу сам представить тему на одном из следующих стримов и напишу об этом в комментариях
❤2🔥1
Истории (не)успеха (ИИ)ЕИ pinned «Друзья, какие темы вы бы хотели на следующие стримы? Можно выбирать несколько опций!»
🧠 В последнее время мы много говорили о математике, теории сложности, об искусственном и естественном интеллекте и прочих фундаментальных вещах. А вот про повседневную практику софт-разработки — почти не вспоминали.
Хочу это исправить. В ближайших постах планирую рассказать о трёх проектах из более чем дюжины, которыми я занимался за последние 15 лет для крупных и известных компаний. Это не теория, не хобби и не pet-проекты — это рабочие системы, созданные за деньги и реально используемые в серьёзных продуктах.
Начнём с трёх проектов, довольно разных, но каждый — на стыке инженерии и высоких технологий:
🔬 Медицина — софт в приборах для микрохирургии глаза.
Это safety-critical система: пациент не должен ослепнуть из-за бага в коде или перегоревшего транзистора в железе.
🏗️ Машиностроение — системы управления продвинутой индустриальной 3D-печатью.
Пожалуй, самый высокотехнологичный продукт, над которым я когда-либо работал.
🔐 Криптография — гомоморфное шифрование в реальных системах, с реальными пользователями.
Работает ли это на практике или остаётся в теории?
На днях расскажу, как эти проекты были устроены, с какими техническими (и не только) вызовами мы сталкивались и чему я сам из них научился.
📡 Оставайтесь на связи — будет интересно даже тем, кто далёк от программирования.
продолжение следует на днях
#RealWorldProblems #SoftwareEngineering #SoftwareQuality
Хочу это исправить. В ближайших постах планирую рассказать о трёх проектах из более чем дюжины, которыми я занимался за последние 15 лет для крупных и известных компаний. Это не теория, не хобби и не pet-проекты — это рабочие системы, созданные за деньги и реально используемые в серьёзных продуктах.
Начнём с трёх проектов, довольно разных, но каждый — на стыке инженерии и высоких технологий:
🔬 Медицина — софт в приборах для микрохирургии глаза.
Это safety-critical система: пациент не должен ослепнуть из-за бага в коде или перегоревшего транзистора в железе.
🏗️ Машиностроение — системы управления продвинутой индустриальной 3D-печатью.
Пожалуй, самый высокотехнологичный продукт, над которым я когда-либо работал.
🔐 Криптография — гомоморфное шифрование в реальных системах, с реальными пользователями.
Работает ли это на практике или остаётся в теории?
На днях расскажу, как эти проекты были устроены, с какими техническими (и не только) вызовами мы сталкивались и чему я сам из них научился.
📡 Оставайтесь на связи — будет интересно даже тем, кто далёк от программирования.
продолжение следует на днях
#RealWorldProblems #SoftwareEngineering #SoftwareQuality
👍4❤2🔥2
1/2
Как обещал вверху 👆, расскажу о паре реальных проектов в интересных областях, над которыми мне довелось работать в последние годы.
💡 Работал над Callisto Eye — системой для микрохирургии глаза. Прежде всего удаление катаракты и имплантация искусственных линз.
Это умная надстройка к хирургическому микроскопу: она отслеживает положение глаза пациента в реальном времени, даже когда глаз деформируется под действием скальпеля. Система анализирует изображение и прямо в окулярах микроскопа показывает хирургу виртуальные маркеры: где делать разрез, как выровнять искусственную линзу, как точно позиционировать имплант.
Для хирурга это как GPS в тонкой ювелирной работе: меньше риска, больше точности. Особенно важно при сложных операциях на катаракте и астигматизме, где каждый микрон имеет значение.
⚙️ В проекте я отвечал за контроль качества и интенсивно использовал автоматизацию тестов на реальном hardware(см. картинку👆).
Продолжение — про технические и алгоритмические вызовы 👇
Как обещал вверху 👆, расскажу о паре реальных проектов в интересных областях, над которыми мне довелось работать в последние годы.
💡 Работал над Callisto Eye — системой для микрохирургии глаза. Прежде всего удаление катаракты и имплантация искусственных линз.
Это умная надстройка к хирургическому микроскопу: она отслеживает положение глаза пациента в реальном времени, даже когда глаз деформируется под действием скальпеля. Система анализирует изображение и прямо в окулярах микроскопа показывает хирургу виртуальные маркеры: где делать разрез, как выровнять искусственную линзу, как точно позиционировать имплант.
Для хирурга это как GPS в тонкой ювелирной работе: меньше риска, больше точности. Особенно важно при сложных операциях на катаракте и астигматизме, где каждый микрон имеет значение.
⚙️ В проекте я отвечал за контроль качества и интенсивно использовал автоматизацию тестов на реальном hardware(см. картинку👆).
Продолжение — про технические и алгоритмические вызовы 👇
👍6🔥2
Dmytro
1/2 Как обещал вверху 👆, расскажу о паре реальных проектов в интересных областях, над которыми мне довелось работать в последние годы. 💡 Работал над Callisto Eye — системой для микрохирургии глаза. Прежде всего удаление катаракты и имплантация искусственных…
2/2. Продолжение. Начало тут 👆
⚙️ В проекте Callisto Eye я отвечал за контроль качества. Один из главных вызовов — реалистичные автоматические тесты на реальном железе, которые симулируют целый рабочий день хирурга. Они должны были ловить даже мельчайшие сбои: функциональные ошибки, утечки памяти, взаимные блокировки (deadlocks), нарушения в синхронизации потоков, неожиданные задержки в UI — всё, что может проявиться только в долгосрочном, живом сценарии.
Тесты должны были не просто запускать отдельные функции или проверять отклик интерфейса, а наблюдать за поведением всей системы под нагрузкой, максимально приближённой к реальности операционной.
Среди множества задач особенно запомнились две.
Одна — чисто техническая.
Вторая — методологическая и по-настоящему новая.
🧩 Проблема 1: установка софта через CI (Continuous Integration) на кастомном "железе"
Callisto Eye — это не просто приложение, которое можно поставить из пакетного менеджера. Это полноценная ОС + tightly coupled системные компоненты, заточенные под определённый стек железа. Поэтому мы тестировали целые образы жёсткого диска, чтобы полностью воспроизвести окружение, как в операционной. CI должен был уметь автоматически прошивать систему этим образом, с нуля и надёжно — каждый раз. Сетевая загрузка (PXE boot) немного усложняла жизнь и с ней пришлось повозиться, но это хотя бы известная штука.. А вот вторая проблема стала по-настоящему новым вызовом.
🔍 Проблема 2: как быть уверенным, что сами автотесты не врут?
Автотест — это тоже софт. А если в нём баг? Что, если тест "зелёный", а на деле хирург в разгар операции увидит пустой экран?
Цена ошибки — зрение пациента. Поэтому пришлось разработать целую методологию и алгоритмический фреймворк, чтобы верифицировать надёжность самих тестов.
К сожалению, пока не оформил это в полноценную статью — руки не дошли. Хотя я неоднократно выступал на различных конференциях по медицинской технике с этой темой и рассказывал про это устно:
👉 https://medtechstars.eu/schedule/dmitrychibisov/
Из опубликованного — есть только старая статья (там ещё не всё понимание было сформировано, но всё же кое-что есть, если вдруг кому интересно):
📄 https://www.researchgate.net/publication/370595971_Patterns_of_Test_Automation
@easy_about_complex
#RealWorldProblems #SoftwareQuality #TestAutomation #SoftwareDevelopment #MedTech #Engineering
P.S. Следующий пост про real-world-проекты будет из области современного машиностроения и продвинутой индустриальной 3d-печати. Но сначала немного теории и вообще науки 👇👇👇
⚙️ В проекте Callisto Eye я отвечал за контроль качества. Один из главных вызовов — реалистичные автоматические тесты на реальном железе, которые симулируют целый рабочий день хирурга. Они должны были ловить даже мельчайшие сбои: функциональные ошибки, утечки памяти, взаимные блокировки (deadlocks), нарушения в синхронизации потоков, неожиданные задержки в UI — всё, что может проявиться только в долгосрочном, живом сценарии.
Тесты должны были не просто запускать отдельные функции или проверять отклик интерфейса, а наблюдать за поведением всей системы под нагрузкой, максимально приближённой к реальности операционной.
Среди множества задач особенно запомнились две.
Одна — чисто техническая.
Вторая — методологическая и по-настоящему новая.
🧩 Проблема 1: установка софта через CI (Continuous Integration) на кастомном "железе"
Callisto Eye — это не просто приложение, которое можно поставить из пакетного менеджера. Это полноценная ОС + tightly coupled системные компоненты, заточенные под определённый стек железа. Поэтому мы тестировали целые образы жёсткого диска, чтобы полностью воспроизвести окружение, как в операционной. CI должен был уметь автоматически прошивать систему этим образом, с нуля и надёжно — каждый раз. Сетевая загрузка (PXE boot) немного усложняла жизнь и с ней пришлось повозиться, но это хотя бы известная штука.. А вот вторая проблема стала по-настоящему новым вызовом.
🔍 Проблема 2: как быть уверенным, что сами автотесты не врут?
Автотест — это тоже софт. А если в нём баг? Что, если тест "зелёный", а на деле хирург в разгар операции увидит пустой экран?
Цена ошибки — зрение пациента. Поэтому пришлось разработать целую методологию и алгоритмический фреймворк, чтобы верифицировать надёжность самих тестов.
К сожалению, пока не оформил это в полноценную статью — руки не дошли. Хотя я неоднократно выступал на различных конференциях по медицинской технике с этой темой и рассказывал про это устно:
👉 https://medtechstars.eu/schedule/dmitrychibisov/
Из опубликованного — есть только старая статья (там ещё не всё понимание было сформировано, но всё же кое-что есть, если вдруг кому интересно):
📄 https://www.researchgate.net/publication/370595971_Patterns_of_Test_Automation
@easy_about_complex
#RealWorldProblems #SoftwareQuality #TestAutomation #SoftwareDevelopment #MedTech #Engineering
P.S. Следующий пост про real-world-проекты будет из области современного машиностроения и продвинутой индустриальной 3d-печати. Но сначала немного теории и вообще науки 👇👇👇
MedTech Stars - Die große Webkonferenz der Medizintechnik
QM für Medizinprodukte – Nutzen und Kosten der Software-Validierung im MedTech-Umfeld
Die ISO-Norm 13485 verlangt die Validierung von Prozessen und Werkzeugen, die bei der Entwicklung von Medizinprodukten und medizinischer Software eingesetzt werden. Über das „WIE“ einer Werkzeug-Validierung macht die ISO 13485 allerdings keine Aussagen. Deswegen…
👍6🔥3❤1
🎓 Чередуем практику и теорию. Свежее интервью Теренса Тао "Hardest Problems in Mathematics, Physics & the Future of AI"
С теоретическими темами у нас, кажется, удивительно хорошее чутьё на тренды. Пару недель назад после нашего стрима про искусственные vs. биологические нейросети — лекцию на ту же тему прочитал сам нобелевский лауреат Джеффри Хинтон.
Недавно мы рассуждали о вычислимости природы вообще (и тут) с моделированием законов природы машиной Тьюринга (это не такая распостранённая тема в научных кругах на сегодняшний день), краем затронули странности в газовой и гидродинамике, возникающие на разных уровнях описания — от микроскопического к макроскопическому, P?=NP и т.д.. И вот буквально вчера выходит интервью Терренса Тао (Филдсовская медаль, один из крупнейших математиков современности) — где он затрагивает в точности эти же вопросы.
Они у нас списывают, как думаете? 😂 Шучу, скорее всего они вообще о нашем существовании не подозревают. Но факт остаётся: в теоретических темах мы до сих пор как-то стабильно попадаем в точку и раньше всех затрагиваем самые острые темы.
Про некоторые моменты в интервью Теренса Тао я напишу на днях, но рекомендую посмотреть, самое то перед сном (интервью на английском):
👉https://www.youtube.com/watch?v=HUkBz-cdB-k
📌 P.S. Кто планирует заглядывать на наши открытые лайв-стримы и дискуссии, и кто этого ещё не сделал, проголосуйте пожалуйста - какой круг тем вам был бы интересен и напишите в комментариях, что именно в этом круге тем вы бы хотели обсудить или услышать:
👉 https://t.iss.one/easy_about_complex/1073
Активнее, друзья! Пишите ваши мнения и приглашайте своих друзей!
С теоретическими темами у нас, кажется, удивительно хорошее чутьё на тренды. Пару недель назад после нашего стрима про искусственные vs. биологические нейросети — лекцию на ту же тему прочитал сам нобелевский лауреат Джеффри Хинтон.
Недавно мы рассуждали о вычислимости природы вообще (и тут) с моделированием законов природы машиной Тьюринга (это не такая распостранённая тема в научных кругах на сегодняшний день), краем затронули странности в газовой и гидродинамике, возникающие на разных уровнях описания — от микроскопического к макроскопическому, P?=NP и т.д.. И вот буквально вчера выходит интервью Терренса Тао (Филдсовская медаль, один из крупнейших математиков современности) — где он затрагивает в точности эти же вопросы.
Они у нас списывают, как думаете? 😂 Шучу, скорее всего они вообще о нашем существовании не подозревают. Но факт остаётся: в теоретических темах мы до сих пор как-то стабильно попадаем в точку и раньше всех затрагиваем самые острые темы.
Про некоторые моменты в интервью Теренса Тао я напишу на днях, но рекомендую посмотреть, самое то перед сном (интервью на английском):
👉https://www.youtube.com/watch?v=HUkBz-cdB-k
📌 P.S. Кто планирует заглядывать на наши открытые лайв-стримы и дискуссии, и кто этого ещё не сделал, проголосуйте пожалуйста - какой круг тем вам был бы интересен и напишите в комментариях, что именно в этом круге тем вы бы хотели обсудить или услышать:
👉 https://t.iss.one/easy_about_complex/1073
Активнее, друзья! Пишите ваши мнения и приглашайте своих друзей!
YouTube
Terence Tao: Hardest Problems in Mathematics, Physics & the Future of AI | Lex Fridman Podcast #472
Terence Tao is widely considered to be one of the greatest mathematicians in history. He won the Fields Medal and the Breakthrough Prize in Mathematics, and has contributed to a wide range of fields from fluid dynamics with Navier-Stokes equations to mathematical…
❤3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Небольшое превью-головоломка к следующему посту про практику и реальные индустриальные задачи 😎
До этого проекта я был уверен, что все индустриальные задачи это только механика+электроника+софт. Во время работы над этим проектом осознал, что к этой троице можно добавить еще и химию/материаловедение )
Это была наша новая рубрика. Не знаю даже как её назвать. Первый вариант названия #ДасИстФантастиш. Второй вариант названия - #Оху@ть
Кто за первый вариант ставьте - ❤️
Кто за второй вариант ставьте - 😇
До этого проекта я был уверен, что все индустриальные задачи это только механика+электроника+софт. Во время работы над этим проектом осознал, что к этой троице можно добавить еще и химию/материаловедение )
Это была наша новая рубрика. Не знаю даже как её назвать. Первый вариант названия #ДасИстФантастиш. Второй вариант названия - #Оху@ть
Кто за первый вариант ставьте - ❤️
Кто за второй вариант ставьте - 😇
❤3😇1
1/2
🧠💥 Математика, которая может взорваться — загадка уравнений Навье–Стокса
Это одна из тем, про которые говорил Теренс Тао в своём интервью в субботу.
Представьте: вы плеснули водой — она закружилась, вспенилась, но в конце концов всё улеглось. А теперь вообразите, что это не всегда так. Что в какой-то момент движение воды начинает концентрироваться, сжиматься и разгоняться настолько, что скорость её частиц становится бесконечной. Это — сингулярность, "взрыв", и до сих пор неизвестно, может ли он реально возникнуть.
💸 Именно этот вопрос — будет ли решение уравнений Навье–Стокса оставаться гладким в любой момент времени, или же, при определённых начальных и граничных условиях, случится разрыв? — и лежит в основе одной из Задач тысячелетия. За её решение — миллион долларов. А суть в следующем: уравнения Навье–Стокса описывают поведение жидкостей и газов, но они настолько сложны и нелинейны, что могут вести себя непредсказуемо.
🧑🏫Тао подошёл к этой проблеме нестандартно...
продолжение 👇
🧠💥 Математика, которая может взорваться — загадка уравнений Навье–Стокса
Это одна из тем, про которые говорил Теренс Тао в своём интервью в субботу.
Представьте: вы плеснули водой — она закружилась, вспенилась, но в конце концов всё улеглось. А теперь вообразите, что это не всегда так. Что в какой-то момент движение воды начинает концентрироваться, сжиматься и разгоняться настолько, что скорость её частиц становится бесконечной. Это — сингулярность, "взрыв", и до сих пор неизвестно, может ли он реально возникнуть.
💸 Именно этот вопрос — будет ли решение уравнений Навье–Стокса оставаться гладким в любой момент времени, или же, при определённых начальных и граничных условиях, случится разрыв? — и лежит в основе одной из Задач тысячелетия. За её решение — миллион долларов. А суть в следующем: уравнения Навье–Стокса описывают поведение жидкостей и газов, но они настолько сложны и нелинейны, что могут вести себя непредсказуемо.
🧑🏫Тао подошёл к этой проблеме нестандартно...
продолжение 👇
👍3❤1