Как стать автором
Обновить
4
0

Пользователь

Отправить сообщение

«А можно быстрее?»: практические советы по ускорению обучения нейросетей

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров3.6K

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

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

Читать далее
Всего голосов 24: ↑23 и ↓1+30
Комментарии6

Идеальный продукт и его UX/UI дизайн

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров2.7K

Рецензия на книгу «UX/UI дизайн для создания идеального продукта»

Привет! Сегодня расскажу о том, что узнала из книги‑гида Ярослава Шуваева «UX/UI дизайн для создания идеального продукта». Дабы рецензия не вышла совсем уж пространной, решила разделить её на две части. Поговорим о SUS, MVP, концепциях Personas и JTBD, разнице между MVT и A/B‑тестированием, об API, как о факторе, формирующем UX, и многом другом.

Читать далее
Всего голосов 5: ↑4 и ↓1+7
Комментарии1

Как делать простые анимированные онбординги в Lottie без After Effects

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.3K

Привет! Меня зовут Михаил Мурзак, я продуктовый дизайнер в Ozon Seller (сайт и приложение продавца).

Время от времени мы делаем анимированные онбординги крупных фич в мобильном приложении и долгое время использовали для этих целей Adobe After Effects с плагином Bodymovin (для экспорта в Lottie), но каждый раз для меня это было мучением, поэтому я решил пересесть на официальный клиент Lottie и написал этот гайд для коллег.

Теперь, когда Adobe не продлевает лицензии, этот гайд стал ещё более актуальным, и я решил опубликовать его тут.

Читать далее
Всего голосов 20: ↑19 и ↓1+20
Комментарии2

Обзор популярных сервисов локализации в 2024 году: какой выбрать?

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров817

Всем привет!

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

Сегодня перевод играет важную роль для многих отраслей: IT, GameDev, финансы, образование, маркетинг, медицина, техника, химическая промышленность. Каждый день тысячи компаний по всему миру нуждаются в лингвистической поддержке для своих продуктов и услуг, а также автоматизации процесса. Поэтому выбор подходящих инструментов для перевода и локализации так важен.

Читать далее
Всего голосов 6: ↑6 и ↓0+10
Комментарии1

big Big FLOAT! Произвольная точность: сравниваем opensource-программы для научных и математических вычислений

Уровень сложностиСредний
Время на прочтение42 мин
Количество просмотров6.3K


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

Аппаратной точности чисел с плавающей запятой (поддерживаемых современными CPU) в 32, 64 и 80 бит может не хватить. И даже чисел четверной точности может не хватить при многочисленных итерациях, в каждой из которой может происходить потеря точности. Если операции неэлементарны, то мы не сможем применить алгоритмы коррекции ошибок по типу алгоритма Кэхэна.

В этих случаях нам приходят на помощь вещественные числа произвольной точности. В статье мы рассмотрим несколько бесплатных программ с их поддержкой и сравним их.
Каждая программа считает по-своему...
Всего голосов 57: ↑56 и ↓1+76
Комментарии73

Азы больших языковых моделей и трансформеров: декодер

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров7.8K

В этом материале мы поговорим об устройстве компонента‑декодера в системах машинного обучения, построенных по архитектуре «трансформер», уделив особое внимание отличию декодера от энкодера. Уникальной особенностью декодеров является то, что они похожи на циклы. Они, по своей природе, итеративны, что контрастирует с линейными принципами обработки данных, на которых основаны энкодеры. В центре декодера находятся две модифицированные формы механизма внимания: механизм множественного внимания с маскировкой (masked multi‑head attention) и механизм множественного внимания энкодера‑декодера (encoder‑decoder multi‑head attention).

Слой множественного внимания с маскировкой в декодере обеспечивает последовательную обработку токенов. Благодаря такому подходу предотвращается воздействие последующих токенов на сгенерированные токены. Маскировка важна для поддержки порядка следования и согласованности сгенерированных данных. Взаимодействие между выходом декодера (из слоя множественного внимания с маскировкой) и выходом энкодера организовано с помощью механизма множественного внимания энкодера‑декодера. Этот последний шаг даёт декодеру доступ к входным данным.

Мы, кроме того, продемонстрируем реализацию этих концепций с использованием Python и NumPy. Мы создали простой пример перевода предложения с английского языка на португальский. Практическая демонстрация обсуждаемых здесь идей поможет проиллюстрировать работу внутренних механизмов декодера в трансформерах и позволит лучше понять роль декодеров в больших языковых моделях (Large Language Model, LLM).

Читать далее
Всего голосов 25: ↑25 и ↓0+25
Комментарии0

Присоединяйтесь к проекту Rustsn: призыв к разработчикам Rust, интересующимся областью ИИ (LLM)

Уровень сложностиСложный
Время на прочтение2 мин
Количество просмотров3.2K

Несколько дней назад я опубликовал статью Создание инструмента генерации кода с помощью Rust и локальных LLM от Ollama.

Проект Rustns призван упростить жизнь разработчикам Rust за счет автоматизации утомительных задач. Мой инструмент генерирует фрагменты кода Rust из объяснений пользователя, компилирует их, разрешает зависимости, генерирует тесты.
Изначально проект задумывался как универсальное решение для генерации кода для самых популярных языков программирования, включая Java, Python и TypeScript. Я стремился создать инструмент, который бы облегчил работу разработчиков, предоставляя возможность генерировать код сразу на нескольких языках. Однако, приступив к реализации мультиязычности, я столкнулся с серьёзными трудностями.

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

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

Вот упрощенная диаграмм работы проекта:

Читать далее
Всего голосов 8: ↑5 и ↓3+6
Комментарии6

Распределённый инференс llama.cpp через RPC

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров4K

Приветствую, хабровчане!

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

Погуглив некоторое время узнал, что проект LocalAI уже относительно давно поддерживает такую возможность, недолго думая я раскатал на нескольких компьютерах данный проект, после чего выполнил все необходимые настройки связав все инстансы в единую систему и, мягко говоря, был разочарован, уж слишком "фатально-недостаточным" оказалось данное решение, Docker-образ собран неоптимально, он был огромный по весу и только под amd64, неотключаемый веб-интерфейс шел в комплекте с проектом, скупой выбор моделей, некоторые из доступных LLM не работали в режиме RPC, все эмбеддинговые модели тоже отказывались запускаться в таком режиме, и так далее и тому подобное.

Повозившись ещё немного, полез в исходники и обнаружил упоминание проекта llama.cpp, затем нашёл вызов бинарника rpc-server. И вот я оказался на странице llama.cpp/examples/rpc и всё заверте...

Читать далее
Всего голосов 19: ↑19 и ↓0+26
Комментарии15

Как зелёная сова отхватила себе место на мировой арене: история успеха Duolingo

Время на прочтение5 мин
Количество просмотров7K

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

Читать далее
Всего голосов 9: ↑6 и ↓3+8
Комментарии18

BPMN 2.0 универсальный подход при построении диаграмм

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров8K

Я написал этот гайд для использования аналитиками в компании (мы интегратор решений 1С в медицине), как настольная шпаргалка и некий базовый «стандарт унификации» формируемых диаграмм данного типа.

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

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

Читать далее
Всего голосов 15: ↑13 и ↓2+13
Комментарии16

Большие и чёрные (ящики): что мы знаем о том, как «думают» нейросети?

Уровень сложностиСредний
Время на прочтение30 мин
Количество просмотров50K

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

Узнать →
Всего голосов 147: ↑146 и ↓1+174
Комментарии81

Ассемблер для программистов на языках высокого уровня: Hello World

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров22K

Если вы начинали изучение программирования с JavaScript, Rust, C или любого другого высокоуровневого языка, то ассемблерный код может показаться вам непонятным или даже пугающим.

Рассмотрим следующий код:

section .data
  msg db "Hello, World!"

section .text
  global _start

_start:
  mov rax, 1
  mov rdi, 1
  mov rsi, msg
  mov rdx, 13
  syscall

  mov rax, 60
  mov rdi, 0
  syscall

К счастью, по второй строке мы можем понять, что он делает.

Здесь нет ничего привычного нам: мы не видим ни условных операторов, ни циклов, нет никакого способа создавать функции… Да даже у переменных нет имён!

С чего же вообще начать?

Это небольшое введение предназначено для того, чтобы познакомить имеющих опыт в программировании с миром ассемблера. Мы обсудим основы языка и сопоставим их с конструкциями высокоуровневого программирования.

Завершив прочтение этого руководства, вы сможете ориентироваться в ассемблерном коде, будете знать, где искать информацию, и даже сможете самостоятельно писать простые программы.
Читать дальше →
Всего голосов 61: ↑57 и ↓4+69
Комментарии41

Лайфхаки для быстрой проверки гипотез: упрощаем пользовательские интервью

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров553

Привет! Меня зовут Елена Аладина, я growth hack lead в Альфа-Банке. В этой статье вы найдете лайфхаки, которые помогут упростить и ускорить процесс получения обратной связи по вашим гипотезам.

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

Читать далее
Всего голосов 5: ↑2 и ↓3+3
Комментарии0

Создание инструмента генерации кода с помощью Rust и локальных LLM от Ollama

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров3.6K

Это реакция на выпуск ChatGPT o-preview. Попытка добавить логику в LLM с открытым исходным кодом, которые можно запустить дома на скромном GPU или даже на CPU

Сейчас я работаю над инструментом на основе Rust, который автоматизирует генерацию, компиляцию и тестирование кода с использованием больших языковых моделей (LLM). Идея заключается в том, чтобы взаимодействовать с LLM для генерации кода на основе предоставленных пользователем объяснений, компилировать код, разрешать зависимости и запускать тесты, чтобы убедиться, что все работает так, как ожидается.

Я хотел бы оптимизировать процесс кодирования функций на основе описаний на естественном языке. Я хотел создать систему, в которой я мог бы ввести объяснение того, что должна делать функция, и чтобы инструмент обрабатывал все остальное от генерации кода до тестирования.

Работа инструмента начинается с того, что запрашивает у пользователя объяснение функции, которую он хочет создать. Затем он взаимодействует с LLM для генерации кода функции, компилирует его и проверяет на наличие ошибок компиляции. Если ошибки обнаружены, инструмент пытается их устранить, возможно, путем добавления зависимостей или переписывания кода. После успешной компиляции кода он генерирует тесты для функции, запускает их и снова обрабатывает любые ошибки, итеративно улучшая код или тесты.

Первый шаг — получить объяснение от пользователя:

Читать далее
Всего голосов 8: ↑8 и ↓0+14
Комментарии13

о1: почему новая GPT от OpenAI — это не хайп, а переход к новой парадигме в ИИ

Уровень сложностиПростой
Время на прочтение27 мин
Количество просмотров83K

Последние пару лет развитие языковых нейросетей как будто бы шло по принципу «больше, длиннее, жирнее»: разработчики пытались раздуть свои модели на как можно большее число параметров и прогнать через них максимальный объем тренировочных данных. 12 сентября OpenAI выпустили новую LLM, которая добавляет в это уравнение еще одно измерение для прокачки: теперь можно масштабировать объем «мыслей», который модель будет тратить в процессе своей работы. В этой статье мы разберемся, чему научилась новая GPT o1, и как это повлияет на дальнейшую эволюцию ИИ.

Давайте выясним →
Всего голосов 219: ↑213 и ↓6+240
Комментарии351

10 советов по Open WebUI, которые помогут в работе с нейросетями

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров3.4K

Open WebUI — веб интерфейс с открытым исходным кодом, предназначенный для работы с различными LLM-интерфейсами, такими как Ollama или другими совместимыми с API от OpenAI. Он продолжает развиваться, но его документация не успевает за всеми этими изменениями. Поэтому мы решили дать 10 советов, которые помогут вам раскрыть потенциал Ollama, Stable Diffusion и самого Open WebUI.

Читать далее
Всего голосов 10: ↑10 и ↓0+14
Комментарии1

Как устроен главный китайский аналог Ютуба

Время на прочтение9 мин
Количество просмотров15K

Ютуб в России лихорадит, и непонятно, чтоб будет дальше. Самое время посмотреть на Китай, где Ютуб давно заблокирован, но у людей есть несколько заменителей. Разбираем самый интересный из них, который больше всего похож на Ютуб. Это Bilibili, и у него необычная история (спойлер - он появился благодаря геймерам и анимешникам), особенности и фичи.

Читать далее
Всего голосов 56: ↑41 и ↓15+36
Комментарии67

Как Toutiao взорвал китайский интернет и породил рекомендательный алгоритм ТикТока

Время на прочтение10 мин
Количество просмотров6.3K

TikTok знают все. ByteDance - тоже, ведь эта компания сделала TikTok. Но мало кто знает, что первый выстреливший продукт ByteDance - отнюдь не приложение с вирусными клипами, а нейроагрегатор новостей Toutiao. Именно в недрах Toutiao возник TikTok и его знаменитый алгоритм, за право над которым китайская компания сейчас воюет с американскими регуляторами.

Как только закон о запрете Тиктока в США вступил в силу, сразу начался цирк с конями. Сначала глава ByteDance выступил с обращением, где призвал американцев “встать на защиту свободы слова”, а еще заявил, что “компания не смирится и будет бороться”. Потом СМИ писали, что китайцы хотят продать Тикток американцам без алгоритма (ага, больно он кому-то нужен без алгоритма...). А совсем недавно технологические медиа начали пробрасывать версию, что ByteDance разработает отдельный алгоритм для ускользающей из рук ByteDance (и КПК) американской версии Тиктока. Видимо, чтобы можно было скинуть отжатый актив без особенных мук китайской совести.

Рискну предположить, что стороны будут еще долго бодаться на счет алгоритма. Неудивительно, ведь рекомендательный движок можно смело назвать главным бриллиантом китайского приложения. Эксперты зачастую называют алгоритм Тиктока настоящим произведением искусства, а техноэнтузиасты регулярно пытаются разобраться в его внутреннем мире.

Многие в курсе, что Тикток - это брат-близнец китайского сервиса Douyin (прямо-таки однояйцевый). В 2016 года хитрые китайцы запустили у себя Douyin, а потом “клонировали” его для западной аудитории. Еще чуть позже ByteDance купил платформу musical.ly, объединил её с Тиктоком, влил мегатонны юаней в маркетинг, и вот мы здесь.

Читать далее
Всего голосов 23: ↑23 и ↓0+27
Комментарии14

Киберпротез. Он нейронов к магнитам

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров905

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

Читать далее
Всего голосов 6: ↑3 и ↓3+1
Комментарии1

Дизайн интерфейсов в России и других странах. Бигтехи и супераппы

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров4.4K

Про UX в России и мире. Мнение о том, что нас ждет завтра.

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

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

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

Открыть статью
Всего голосов 14: ↑13 и ↓1+14
Комментарии5
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность