Используем нейросеть для генерации стихов в стиле «Евгения Онегина»
Мне нравится концепция, согласно которой речь – это, в первую очередь, не способ коммуникации, а отражение сознания. В таком случае стихи - это отражение красоты сознания. Но сможет ли нейросеть сгенерировать стихотворения, похожие на рукотворные? Давайте попробуем сделать такой алгоритм.
https://habr.com/ru/companies/amvera/articles/699058/
Алгоритмы и Структуры данных
Мне нравится концепция, согласно которой речь – это, в первую очередь, не способ коммуникации, а отражение сознания. В таком случае стихи - это отражение красоты сознания. Но сможет ли нейросеть сгенерировать стихотворения, похожие на рукотворные? Давайте попробуем сделать такой алгоритм.
https://habr.com/ru/companies/amvera/articles/699058/
Алгоритмы и Структуры данных
Хабр
Используем нейросеть для генерации стихов в стиле «Евгения Онегина»
Мне нравится концепция, согласно которой речь – это, в первую очередь, не способ коммуникации, а отражение сознания. В таком случае стихи - это отражение красоты сознания. Но сможет ли нейросеть...
Мой личный опыт восстановления старых фотографий с помощью нейросетей
Но мало кто знает, что радиоактивное облако распространилось на тысячи километров. К сожалению, это затронуло и деревню моей бабушки недалеко от Гомеля. Жителей эвакуировали далеко не сразу, но когда пришло время уезжать, то фотографии, которые были приклеены на стене пришлось отклеивать варварским способом. Время потрепало эти фотографии, но попробуем восcтановить.
Для примера я взял только две фотографии. На первой, мой двоюродный брат бабушки и какой-то человек на лошади. На второй — мой прадедушка.
Как можно дать вторую жизнь этим фотографиям?
https://habr.com/ru/articles/695962/
Алгоритмы и Структуры данных
Но мало кто знает, что радиоактивное облако распространилось на тысячи километров. К сожалению, это затронуло и деревню моей бабушки недалеко от Гомеля. Жителей эвакуировали далеко не сразу, но когда пришло время уезжать, то фотографии, которые были приклеены на стене пришлось отклеивать варварским способом. Время потрепало эти фотографии, но попробуем восcтановить.
Для примера я взял только две фотографии. На первой, мой двоюродный брат бабушки и какой-то человек на лошади. На второй — мой прадедушка.
Как можно дать вторую жизнь этим фотографиям?
https://habr.com/ru/articles/695962/
Алгоритмы и Структуры данных
Хабр
Мой личный опыт восстановления старых фотографий с помощью нейросетей
Немного о происхождении фотографий. Напомню, что 26 Апреля 1986 года произошла катастрофа на Чернобыльской АЭС. Но мало кто знает, что радиоактивное облако распространилось на тысячи километров. К...
Сферический БПЛА в воздухе
Обычно, когда мы говорим о беспилотных летательных аппаратах (БПЛА) [1], на ум сразу приходит квадрокоптер (или другой представитель класса мультикоптеров, например, гекса- или октокоптер). Но строго говоря, беспилотник не обязательно должен быть мультикоптером – он может быть выполнен в виде любой механической схемы, которая ранее была разработана для пилотируемого полёта.
Например, это может быть летательный аппарат легче воздуха, то есть аэростат (воздушный шар) или дирижабль [2]. Данной статьёй мы открываем цикл публикаций, в котором расскажем в режиме «хроник лаборатории» о ходе нашего сайд-проекта по сборке БПЛА в виде стратостата [3]. Но прежде, чем что-то собирать, нужно хорошо разобраться в предмете, в его теоретической части. Поэтому мы решили начать с того, чтобы изучить динамику вертикального полёта воздушного шара.
https://habr.com/ru/companies/singularis/articles/697440/
Алгоритмы и Структуры данных
Обычно, когда мы говорим о беспилотных летательных аппаратах (БПЛА) [1], на ум сразу приходит квадрокоптер (или другой представитель класса мультикоптеров, например, гекса- или октокоптер). Но строго говоря, беспилотник не обязательно должен быть мультикоптером – он может быть выполнен в виде любой механической схемы, которая ранее была разработана для пилотируемого полёта.
Например, это может быть летательный аппарат легче воздуха, то есть аэростат (воздушный шар) или дирижабль [2]. Данной статьёй мы открываем цикл публикаций, в котором расскажем в режиме «хроник лаборатории» о ходе нашего сайд-проекта по сборке БПЛА в виде стратостата [3]. Но прежде, чем что-то собирать, нужно хорошо разобраться в предмете, в его теоретической части. Поэтому мы решили начать с того, чтобы изучить динамику вертикального полёта воздушного шара.
https://habr.com/ru/companies/singularis/articles/697440/
Алгоритмы и Структуры данных
Хабр
Сферический БПЛА в воздухе
Обычно, когда мы говорим о беспилотных летательных аппаратах (БПЛА) [1] , на ум сразу приходит квадрокоптер (или другой представитель класса мультикоптеров, например, гекса- или октокоптер). Но строго...
Пришло время программистов-самоучек
Среди самых успешных людей в мире есть программисты-самоучки. Так, Барак Обама наградил Маргарет Гамильтон (одну из них) Президентской медалью свободы за ее вклад в работу над лунным проектом «Аполлон». Стив Возняк еще в старших классах купил книгу по Фортрану и сам научился программировать. Впоследствии он изобрел персональный компьютер и стал сооснователем Apple, крупнейшей компании в мире. Самоучками являются и сооснователь Twitter и Square Джек Дорси, и Кевин Систром, сооснователь Instagram, и Дэвид Карп, основатель Tumblr.
https://habr.com/ru/companies/piter/articles/697290/
Алгоритмы и Структуры данных
Среди самых успешных людей в мире есть программисты-самоучки. Так, Барак Обама наградил Маргарет Гамильтон (одну из них) Президентской медалью свободы за ее вклад в работу над лунным проектом «Аполлон». Стив Возняк еще в старших классах купил книгу по Фортрану и сам научился программировать. Впоследствии он изобрел персональный компьютер и стал сооснователем Apple, крупнейшей компании в мире. Самоучками являются и сооснователь Twitter и Square Джек Дорси, и Кевин Систром, сооснователь Instagram, и Дэвид Карп, основатель Tumblr.
https://habr.com/ru/companies/piter/articles/697290/
Алгоритмы и Структуры данных
Хабр
Пришло время программистов-самоучек
И почему к нам стоит присоединиться Миф Среди комментариев к одному из постов с рекламой моей книги «The Self-Taught Programmer» («Computer Science для программиста-самоучки. Все что нужно знать о...
Как математика помогает логистике быть точнее. Опыт ПГК
Цифровые алгоритмы помогают решать реальные бизнес-задачи в самых разных сферах. Логистика — не исключение. Главные инструменты логиста — вовсе не карта, линейка и калькулятор, а сложные IT-системы, которые основаны на математическом моделировании и алгоритмах искусственного интеллекта. Эксперты в этой области ориентируются в цифровых продуктах, умеют их использовать и извлекать выгоду для компании. Почему? Потому что основная задача логиста – экономия. Он критически оценивает существующие процессы и предлагает способы их оптимизации. Ольга Умнова, Product Owner ПГК, и Дмитрий Алимин, руководитель направления в управлении развития цифровых продуктов компании, рассказывают, как ПГК использует математический подход в бизнесе.
https://habr.com/ru/companies/pgk/articles/697278/
Алгоритмы и Структуры данных
Цифровые алгоритмы помогают решать реальные бизнес-задачи в самых разных сферах. Логистика — не исключение. Главные инструменты логиста — вовсе не карта, линейка и калькулятор, а сложные IT-системы, которые основаны на математическом моделировании и алгоритмах искусственного интеллекта. Эксперты в этой области ориентируются в цифровых продуктах, умеют их использовать и извлекать выгоду для компании. Почему? Потому что основная задача логиста – экономия. Он критически оценивает существующие процессы и предлагает способы их оптимизации. Ольга Умнова, Product Owner ПГК, и Дмитрий Алимин, руководитель направления в управлении развития цифровых продуктов компании, рассказывают, как ПГК использует математический подход в бизнесе.
https://habr.com/ru/companies/pgk/articles/697278/
Алгоритмы и Структуры данных
Хабр
Как математика помогает логистике быть точнее. Опыт ПГК
Цифровые алгоритмы помогают решать реальные бизнес-задачи в самых разных сферах. Логистика — не исключение. Главные инструменты логиста — вовсе не карта, линейка и калькулятор, а сложные IT-системы,...
👍2
Как подготовиться к собеседованию в Samsung Advanced Computing Lab
Я работаю проектировщиком аппаратного блока графического процессора в телефонах Samsung, в рамках совместного проекта с AMD. Сейчас наш менеджмент расширяет команду и поощряет инженеров распостранять информацию о новых позициях среди своих знакомых. Я решил написать это пост для более широкой аудитории, так как множество людей, способных пройти интервью на RTL или DV позицию - больше, чем множество моих знакомых. Если вы сможете прислать мне ответ на задачку в моем посте вместе с вашим резюме, я перешлю его нанимающему менеджеру и рекрутеру нашей группы (в комментах прошу ответ не писать). Если резюме им понравится, вам нужно будет пройти стандартное собеседование на несколько часов, с несколькими инженерами, у каждого из которых свой набор задачек.
https://habr.com/ru/articles/693568/
Алгоритмы и Структуры данных
Я работаю проектировщиком аппаратного блока графического процессора в телефонах Samsung, в рамках совместного проекта с AMD. Сейчас наш менеджмент расширяет команду и поощряет инженеров распостранять информацию о новых позициях среди своих знакомых. Я решил написать это пост для более широкой аудитории, так как множество людей, способных пройти интервью на RTL или DV позицию - больше, чем множество моих знакомых. Если вы сможете прислать мне ответ на задачку в моем посте вместе с вашим резюме, я перешлю его нанимающему менеджеру и рекрутеру нашей группы (в комментах прошу ответ не писать). Если резюме им понравится, вам нужно будет пройти стандартное собеседование на несколько часов, с несколькими инженерами, у каждого из которых свой набор задачек.
https://habr.com/ru/articles/693568/
Алгоритмы и Структуры данных
Хабр
Как подготовиться к собеседованию в Samsung Advanced Computing Lab
Я работаю проектировщиком аппаратного блока графического процессора в телефонах Samsung, в рамках совместного проекта с AMD . Сейчас наш менеджмент расширяет команду и поощряет инженеров распостранять...
Алгоритм генерации волн врагов в рогалике
Недавно в ранний доступ в Steam вышла наша игра Clayers: Prologue. Это рогалик в глиняном стиле, где нужно подбирать и смешивать цвета, чтобы убивать врагов. В этой статье разберём наш подход к генерации волн с учётом сложности противников.
https://habr.com/ru/articles/880924/
Алгоритмы и Структуры данных
Недавно в ранний доступ в Steam вышла наша игра Clayers: Prologue. Это рогалик в глиняном стиле, где нужно подбирать и смешивать цвета, чтобы убивать врагов. В этой статье разберём наш подход к генерации волн с учётом сложности противников.
https://habr.com/ru/articles/880924/
Алгоритмы и Структуры данных
Хабр
Алгоритм генерации волн врагов в рогалике
Привет! Недавно в ранний доступ в Steam вышла наша игра Clayers: Prologue . Это рогалик в глиняном стиле, где нужно подбирать и смешивать цвета, чтобы убивать врагов. В этой статье разберём наш подход...
Что делать, если твой временной ряд растёт вширь
Есть мнение, что прогнозирование временных рядов - сложная задача. Но не будем расстраиваться, ведь есть и плюсы - существует ещё большое количество задач, когда рядов сразу несколько, и такие задачи ещё сложнее! Когда начинаем сравнивать, понимаем, что прогнозировать одномерные временные ряды не так уж и сложно. А вот что делать с ситуацией, когда временной ряд обрастает параллельно идущими с ним последовательностями других параметров (многомерный ряд), какие методы и алгоритмы использовать, и что делать, если задача прогнозировать такие ряды есть, а опыта не очень много (спойлер - используйте AutoML, а пока он работает восполните пробел прочитав пару статей по теме), разбираем под катом.
https://habr.com/ru/articles/696336/
Алгоритмы и Структуры данных
Есть мнение, что прогнозирование временных рядов - сложная задача. Но не будем расстраиваться, ведь есть и плюсы - существует ещё большое количество задач, когда рядов сразу несколько, и такие задачи ещё сложнее! Когда начинаем сравнивать, понимаем, что прогнозировать одномерные временные ряды не так уж и сложно. А вот что делать с ситуацией, когда временной ряд обрастает параллельно идущими с ним последовательностями других параметров (многомерный ряд), какие методы и алгоритмы использовать, и что делать, если задача прогнозировать такие ряды есть, а опыта не очень много (спойлер - используйте AutoML, а пока он работает восполните пробел прочитав пару статей по теме), разбираем под катом.
https://habr.com/ru/articles/696336/
Алгоритмы и Структуры данных
Хабр
Что делать, если твой временной ряд растёт вширь
Привет, Хабр! Есть мнение, что прогнозирование временных рядов - сложная задача. Но не будем расстраиваться, ведь есть и плюсы - существует ещё большое количество задач, когда рядов сразу несколько, и...
Как преобразовать правило .gitignore в регулярное выражение
Возникла идея сделать свою систему контроля версий. А чтобы всё было по взрослому, то она должна поддерживать систему исключений. Для чего было бы очень полезно использовать синтаксис git, а именно его правила в файлах .gitignore.
Самое очевидное решение - взять данную функцию из исходников git. Проблема в том, что эта функция "прибита гвоздями" к исходникам git. Т.е. нельзя просто взять и вытащить нужную функцию так как это потянет за собой и множество другого кода.
Поэтому решил что сделаю свою реализацию и выложу в открытый доступ. Однако в результате реализации стал замечать, что этот функционал я уже к своему коду "прибиваю гвоздями". Поэтому вместо готового кода решил выложить алгоритм преобразования правила .gitignore в регулярное выражение. Это позволит любому сделать реализацию на нужном ему языке программирования.
https://habr.com/ru/articles/696330/
Алгоритмы и Структуры данных
Возникла идея сделать свою систему контроля версий. А чтобы всё было по взрослому, то она должна поддерживать систему исключений. Для чего было бы очень полезно использовать синтаксис git, а именно его правила в файлах .gitignore.
Самое очевидное решение - взять данную функцию из исходников git. Проблема в том, что эта функция "прибита гвоздями" к исходникам git. Т.е. нельзя просто взять и вытащить нужную функцию так как это потянет за собой и множество другого кода.
Поэтому решил что сделаю свою реализацию и выложу в открытый доступ. Однако в результате реализации стал замечать, что этот функционал я уже к своему коду "прибиваю гвоздями". Поэтому вместо готового кода решил выложить алгоритм преобразования правила .gitignore в регулярное выражение. Это позволит любому сделать реализацию на нужном ему языке программирования.
https://habr.com/ru/articles/696330/
Алгоритмы и Структуры данных
Хабр
Как преобразовать правило .gitignore в регулярное выражение
Введение Возникла идея сделать свою систему контроля версий. А чтобы всё было по взрослому, то она должна поддерживать систему исключений. Для чего было бы очень полезно использовать синтаксис git , а...
Threshold U-Net: как мы отказались от высокого разрешения и выиграли в скорости бинаризации
Хоть современный ИИ уже почти в состоянии написать симфонию и превратить холст в шедевр, некоторые простые задачи все еще не так просты, если наложить ограничения на решение. Так как главной задачей у нас, в Smart Engines, является распознавание и оцифровка документов, то для нас ограничениями являются скорость работы и возможность запуска системы на вычислительно слабых конечных устройствах. В этой статье мы вспомним об одной классической задаче обработки изображений – бинаризации документов. А также расскажем, как нам удалось существенно оптимизировать нейросетевую модель бинаризации, сохранив исходное качество, и причем тут современные модели детекции текста.
https://habr.com/ru/companies/smartengines/articles/881148/
Алгоритмы и Структуры данных
Хоть современный ИИ уже почти в состоянии написать симфонию и превратить холст в шедевр, некоторые простые задачи все еще не так просты, если наложить ограничения на решение. Так как главной задачей у нас, в Smart Engines, является распознавание и оцифровка документов, то для нас ограничениями являются скорость работы и возможность запуска системы на вычислительно слабых конечных устройствах. В этой статье мы вспомним об одной классической задаче обработки изображений – бинаризации документов. А также расскажем, как нам удалось существенно оптимизировать нейросетевую модель бинаризации, сохранив исходное качество, и причем тут современные модели детекции текста.
https://habr.com/ru/companies/smartengines/articles/881148/
Алгоритмы и Структуры данных
Хабр
Threshold U-Net: как мы отказались от высокого разрешения и выиграли в скорости бинаризации
Хоть современный ИИ уже почти в состоянии написать симфонию и превратить холст в шедевр, некоторые простые задачи все еще не так просты, если наложить ограничения на решение. Так как главной задачей у...
Как в Excel сгенерировать случайную величину произвольного распределения
Недавно меня попросили написать отзыв на автореферат кандидатской диссертации, в которой обсуждалось моделирование случайных величин с использованием Python и C++. Я разбираюсь в моделировании, но не в программировании. Обсуждая работу, я поинтересовался у соискателя, почему он выбрал эти инструменты и не рассматривал ли Excel. Он ответил, что в их среде Excel не используется. «А жаль», — подумал я. Особенно учитывая, что в работе выборки не превышали сотни элементов. Excel легко справляется даже с миллионом и имеет десятки встроенных функций для таких целей.
В этой статье в блоге ЛАНИТ я покажу, как с помощью Excel можно эффективно генерировать случайные величины различных распределений и почему этот инструмент не стоит недооценивать.
https://habr.com/ru/companies/lanit/articles/879446/
Алгоритмы и Структуры данных
Недавно меня попросили написать отзыв на автореферат кандидатской диссертации, в которой обсуждалось моделирование случайных величин с использованием Python и C++. Я разбираюсь в моделировании, но не в программировании. Обсуждая работу, я поинтересовался у соискателя, почему он выбрал эти инструменты и не рассматривал ли Excel. Он ответил, что в их среде Excel не используется. «А жаль», — подумал я. Особенно учитывая, что в работе выборки не превышали сотни элементов. Excel легко справляется даже с миллионом и имеет десятки встроенных функций для таких целей.
В этой статье в блоге ЛАНИТ я покажу, как с помощью Excel можно эффективно генерировать случайные величины различных распределений и почему этот инструмент не стоит недооценивать.
https://habr.com/ru/companies/lanit/articles/879446/
Алгоритмы и Структуры данных
Хабр
Как в Excel сгенерировать случайную величину произвольного распределения
Недавно меня попросили написать отзыв на автореферат кандидатской диссертации, в которой обсуждалось моделирование случайных величин с использованием Python и C++. Я разбираюсь в моделировании, но не...
🔥1
JavaScript: структуры данных и алгоритмы. Часть 8
В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это восьмая часть серии.
Сегодня мы поговорим об алгоритмах сортировки.
Код, представленный в этой и других статьях серии, можно найти в этом репозитории.
Интересно? Тогда прошу под кат.
https://habr.com/ru/companies/timeweb/articles/872326/
Алгоритмы и Структуры данных
В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это восьмая часть серии.
Сегодня мы поговорим об алгоритмах сортировки.
Код, представленный в этой и других статьях серии, можно найти в этом репозитории.
Интересно? Тогда прошу под кат.
https://habr.com/ru/companies/timeweb/articles/872326/
Алгоритмы и Структуры данных
Хабр
JavaScript: структуры данных и алгоритмы. Часть 8
Привет, друзья! В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории . Это восьмая часть серии. Сегодня мы поговорим об алгоритмах сортировки....
Алгоритмы для веб-разработчиков простыми словами (часть 3)
Мы продолжаем разбирать максимально простым языком алгоритмы и структуры данных на JavaScript. Тема нашей сегодняшней статьи — рекурсия. Для многих разработчиков рекурсия кажется чем-то очень сложным и непонятным, но не переживайте, не так страшен черт, как его малюют.
И сегодня мы узнаем, как устроена рекурсия, а также разберем алгоритм сортировки массива под названием Quick Sort или, как еще его называют, быстрая сортировка Хоара. Как вы уже догадались, этот алгоритм рекурсивный.
Если вы еще не читали нашу первую статью (про алгоритмы поиска и Big O нотацию), то можете найти ее здесь.
Ссылку на вторую статью (про алгоритмы сортировки и оценку сложности алгоритмов по скорости и памяти) вы можете найти здесь.
А сейчас давайте перейдем к теме статьи.
https://habr.com/ru/companies/gnivc/articles/696054/
Алгоритмы и Структуры данных
Мы продолжаем разбирать максимально простым языком алгоритмы и структуры данных на JavaScript. Тема нашей сегодняшней статьи — рекурсия. Для многих разработчиков рекурсия кажется чем-то очень сложным и непонятным, но не переживайте, не так страшен черт, как его малюют.
И сегодня мы узнаем, как устроена рекурсия, а также разберем алгоритм сортировки массива под названием Quick Sort или, как еще его называют, быстрая сортировка Хоара. Как вы уже догадались, этот алгоритм рекурсивный.
Если вы еще не читали нашу первую статью (про алгоритмы поиска и Big O нотацию), то можете найти ее здесь.
Ссылку на вторую статью (про алгоритмы сортировки и оценку сложности алгоритмов по скорости и памяти) вы можете найти здесь.
А сейчас давайте перейдем к теме статьи.
https://habr.com/ru/companies/gnivc/articles/696054/
Алгоритмы и Структуры данных
Хабр
Алгоритмы для веб-разработчиков простыми словами
Здравствуйте, друзья! Данным постом мы открываем цикл статей об алгоритмах и структурах данных. В этой статье мы поговорим о том, зачем вообще их нужно знать веб-разработчикам, и затронем тему оценки...
Как стиральная машина управляет двигателем. Часть I — подключение двигателя и алгоритм стабилизации
Данная вступительная статья рассчитана на самый начальный уровень, “продвинутых” в области электроники читателей сможет заинтересовать следующая, где я доберусь до анализа схемотехники реальных машин
https://habr.com/ru/articles/694892/
Алгоритмы и Структуры данных
Данная вступительная статья рассчитана на самый начальный уровень, “продвинутых” в области электроники читателей сможет заинтересовать следующая, где я доберусь до анализа схемотехники реальных машин
https://habr.com/ru/articles/694892/
Алгоритмы и Структуры данных
Хабр
Как стиральная машина управляет двигателем. Часть I — подключение двигателя и алгоритм стабилизации
Данная вступительная статья рассчитана на самый начальный уровень, “продвинутых” в области электроники читателей сможет заинтересовать следующая, где я доберусь до анализа схемотехники реальных машин...
👍1
Ни одна реализация элементарных функций не соответствует стандарту IEEE 754
Введённый в 1985 году стандарт IEEE-754 для чисел с плавающей запятой был предназначен для решения проблемы разнородности реализаций чисел с плавающей запятой, мешавших портируемости кода, а также для повышения стабильности между платформами.
Он получил широкое применение и многократно пересматривался в течение прошедших лет. Если вы когда-нибудь работали с любыми вещественными числами в своих приложениях, то они, вероятно, отвечали этому стандарту.
Моя работа в течение последнего года заключалась в анализе погрешности различных математических функций, накопления этой погрешности и способов её уменьшения при помощи различных программных паттернов. Одной из исследованных мной тем были базовые математические функции, используемые в функциях активации нейронных сетей, а также способы их аппроксимации для повышения производительности. В процессе работы нам пришлось столкнуться с противодействием со стороны людей, активно стремящихся к корректной реализации математических функций и к соответствию их стандартам, в частности, к соблюдению обеспечения корректности одной наименее значимой единицы измерения (unit in last place, ULP) для элементарных функций.
Я был заинтересован в дальнейшей работе по аппроксимации этих функций, поэтому приступил к исследованию того, каким образом они гарантируют корректность, и если они корректны только на 1 ULP, то где располагаются ошибки в области определения функции.
В процессе изучения я обнаружил, что ни одна из популярных математических библиотек, используемых во множестве сфер вычислений, на самом деле не выполняет корректное округление в соответствии с требованиями любой версии IEEE 754 после первой редакции 1985 года.
https://habr.com/ru/companies/ruvds/articles/881698/
Алгоритмы и Структуры данных
Введённый в 1985 году стандарт IEEE-754 для чисел с плавающей запятой был предназначен для решения проблемы разнородности реализаций чисел с плавающей запятой, мешавших портируемости кода, а также для повышения стабильности между платформами.
Он получил широкое применение и многократно пересматривался в течение прошедших лет. Если вы когда-нибудь работали с любыми вещественными числами в своих приложениях, то они, вероятно, отвечали этому стандарту.
Моя работа в течение последнего года заключалась в анализе погрешности различных математических функций, накопления этой погрешности и способов её уменьшения при помощи различных программных паттернов. Одной из исследованных мной тем были базовые математические функции, используемые в функциях активации нейронных сетей, а также способы их аппроксимации для повышения производительности. В процессе работы нам пришлось столкнуться с противодействием со стороны людей, активно стремящихся к корректной реализации математических функций и к соответствию их стандартам, в частности, к соблюдению обеспечения корректности одной наименее значимой единицы измерения (unit in last place, ULP) для элементарных функций.
Я был заинтересован в дальнейшей работе по аппроксимации этих функций, поэтому приступил к исследованию того, каким образом они гарантируют корректность, и если они корректны только на 1 ULP, то где располагаются ошибки в области определения функции.
В процессе изучения я обнаружил, что ни одна из популярных математических библиотек, используемых во множестве сфер вычислений, на самом деле не выполняет корректное округление в соответствии с требованиями любой версии IEEE 754 после первой редакции 1985 года.
https://habr.com/ru/companies/ruvds/articles/881698/
Алгоритмы и Структуры данных
Хабр
Ни одна реализация элементарных функций не соответствует стандарту IEEE 754
Введённый в 1985 году стандарт IEEE-754 для чисел с плавающей запятой был предназначен для решения проблемы разнородности реализаций чисел с плавающей запятой, мешавших портируемости кода, а также для...
Как MLOps помогает обеспечить гибкость машинного обучения и стимулирует инновации
Многие компании внедряли машинное обучение рывками, приобретая и разрабатывая модели, алгоритмы, инструменты и сервисы под конкретные задачи. Этот подход неизбежен на старте, когда бизнес только узнает о возможностях технологий. Но в результате получается сборная солянка из изолированных, запускаемых вручную, нестандартизированных процессов и компонентов. Как следствие, появляются неэффективные громоздкие сервисы, которые приносят меньше пользы, чем могли бы, или полностью блокируют дальнейшее развитие.
https://habr.com/ru/companies/vk/articles/713182/
Алгоритмы и Структуры данных
Многие компании внедряли машинное обучение рывками, приобретая и разрабатывая модели, алгоритмы, инструменты и сервисы под конкретные задачи. Этот подход неизбежен на старте, когда бизнес только узнает о возможностях технологий. Но в результате получается сборная солянка из изолированных, запускаемых вручную, нестандартизированных процессов и компонентов. Как следствие, появляются неэффективные громоздкие сервисы, которые приносят меньше пользы, чем могли бы, или полностью блокируют дальнейшее развитие.
https://habr.com/ru/companies/vk/articles/713182/
Алгоритмы и Структуры данных
Хабр
Как MLOps помогает обеспечить гибкость машинного обучения и стимулирует инновации
Многие компании внедряли машинное обучение рывками, приобретая и разрабатывая модели, алгоритмы, инструменты и сервисы под конкретные задачи. Этот подход неизбежен на старте, когда бизнес только...
Создаём свою библиотеку виджетов на Javascript голыми руками. Часть 0: Классы и модули
На сегодняшний день существуют большое количество JS-фреймворков, библиотек и тому прочее. Казалось бы, выбираешь крупный и надёжный фреймворк, и пишешь свой интерфейс. Но, во-первых, у разных фреймворков различный подход к написанию кода. Каждый предлагает свой синтаксис и свои фичи, по решению различных частных задач, наподобие создания элементов по шаблону, внедрение хуков, ссылок, данных. Во-вторых, у каждого есть свои зависимости. И размер всех зависимостей порой доходит аж до гигабайтов. В итоге, появляется желание написать свой, очередной, лучший фреймворк.
В данной статье перечислены начальные шаги, и проблемы, с которыми Я столкнулся, когда решил написать для себя очередной, универсальный инструмент, для создания интерфейса веб-приложения.
https://habr.com/ru/articles/690852/
Алгоритмы и Структуры данных
На сегодняшний день существуют большое количество JS-фреймворков, библиотек и тому прочее. Казалось бы, выбираешь крупный и надёжный фреймворк, и пишешь свой интерфейс. Но, во-первых, у разных фреймворков различный подход к написанию кода. Каждый предлагает свой синтаксис и свои фичи, по решению различных частных задач, наподобие создания элементов по шаблону, внедрение хуков, ссылок, данных. Во-вторых, у каждого есть свои зависимости. И размер всех зависимостей порой доходит аж до гигабайтов. В итоге, появляется желание написать свой, очередной, лучший фреймворк.
В данной статье перечислены начальные шаги, и проблемы, с которыми Я столкнулся, когда решил написать для себя очередной, универсальный инструмент, для создания интерфейса веб-приложения.
https://habr.com/ru/articles/690852/
Алгоритмы и Структуры данных
Хабр
Создаём свою библиотеку виджетов на Javascript голыми руками. Часть 0: Классы и модули
Вступление На сегодняшний день существуют большое количество JS-фреймворков, библиотек и тому прочее. Казалось бы, выбираешь крупный и надёжный фреймворк, и пишешь свой интерфейс. Но, во-первых, у...
SQL HowTo: укрощаем рекурсию в лабиринте (Advent of Code 2024, Day 16: Reindeer Maze)
В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.
Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.
Сегодняшняя задача заставила попотеть и разработать различные способы оптимизации рекурсивного запроса как по количеству итераций, так и по объему используемой памяти.
https://habr.com/ru/companies/tensor/articles/882034/
Алгоритмы и Структуры данных
В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.
Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.
Сегодняшняя задача заставила попотеть и разработать различные способы оптимизации рекурсивного запроса как по количеству итераций, так и по объему используемой памяти.
https://habr.com/ru/companies/tensor/articles/882034/
Алгоритмы и Структуры данных
Хабр
SQL HowTo: укрощаем рекурсию в лабиринте (Advent of Code 2024, Day 16: Reindeer Maze)
В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024 . Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим...
Несудьба, интегрально-ролевая система
Правила универсальной нарративно-вычислительной ролевой системы, предназначенной как для соло игр, так и вождения партии. Использует калькулятор, теги с идентификаторами и строится на интерпретации ассоциаций.
https://habr.com/ru/articles/882258/
Алгоритмы и Структуры данных
Правила универсальной нарративно-вычислительной ролевой системы, предназначенной как для соло игр, так и вождения партии. Использует калькулятор, теги с идентификаторами и строится на интерпретации ассоциаций.
https://habr.com/ru/articles/882258/
Алгоритмы и Структуры данных
Хабр
Несудьба, интегрально-ролевая система
Правила универсальной нарративно-вычислительной ролевой системы, предназначенной как для соло игр, так и вождения партии. Использует калькулятор, теги с идентификаторами и строится на интерпретации...
Как устроены алгоритмы онлайн-кинотеатра. Разбираем на примере
Вы приходите домой и включаете любимый стриминг. Лента сразу же выдаёт вам несколько фильмов и сериалов, которые… действительно хочется смотреть. Сегодня разберём, как именно рождается эта магия вне Хогвартса, и что сидит под капотом рекомендательного движка онлайн-кинотеатра.
https://habr.com/ru/articles/882000/
Алгоритмы и Структуры данных
Вы приходите домой и включаете любимый стриминг. Лента сразу же выдаёт вам несколько фильмов и сериалов, которые… действительно хочется смотреть. Сегодня разберём, как именно рождается эта магия вне Хогвартса, и что сидит под капотом рекомендательного движка онлайн-кинотеатра.
https://habr.com/ru/articles/882000/
Алгоритмы и Структуры данных
Хабр
Как устроены алгоритмы онлайн-кинотеатра. Разбираем на примере
Вы приходите домой и включаете любимый стриминг. Лента сразу же выдаёт вам несколько фильмов и сериалов, которые… действительно хочется смотреть. Сегодня разберём, как именно рождается эта магия вне...
5 способов нарисовать обводку
Рендеринг обводки (контуров) — это техника, часто используемая в играх или из эстетических, или из геймплейных соображений. Например, в игре Sable контуры применяются для создания стиля, напоминающего комиксы, а Last of Us контуры используются для выделения врагов, когда игрок переходит в режим скрытности.
https://habr.com/ru/articles/879788/
Алгоритмы и Структуры данных
Рендеринг обводки (контуров) — это техника, часто используемая в играх или из эстетических, или из геймплейных соображений. Например, в игре Sable контуры применяются для создания стиля, напоминающего комиксы, а Last of Us контуры используются для выделения врагов, когда игрок переходит в режим скрытности.
https://habr.com/ru/articles/879788/
Алгоритмы и Структуры данных
Хабр
5 способов нарисовать обводку
Введение Рендеринг обводки (контуров) — это техника, часто используемая в играх или из эстетических, или из геймплейных соображений. Например, в игре Sable контуры применяются для создания стиля,...