Pull to refresh
59
0
bugman @bugman

Make software to happen

Send message

Решаем проблему галлюцинаций LLM с помощью алгоритма фрактального синтеза ответа

Level of difficultyEasy
Reading time8 min
Views8.7K

Мы с командой разрабатываем FractalGPT — проект самообучающегося ИИ на базе больших языковых моделей(LLM) и логического вывода (reasoning). В этой статье мы расскажем о разработанном нами новом подходе, который называется fractal answer synthesis. Фрактальный синтез ответа позволяет существенно уменьшить уровень «галлюционирования» LLM и, как следствие, является важным шагом к решению проблемы фактологии генеративных нейросетей. По сути подход позволяет перейти от простого векторного представления текста(базы знаний) к его фрактальному представлению — более сложной структуре, инкапсулирующей внутри себя дополнительные «смыслы», которые в содержатся в тексте. В статье мы кратко описали преимущества и недостатки подхода, показали алгоритм построения «фрактального графа», представили принципиальную схему алгоритма и результаты тестирования на нашей базе знаний — статьях и книгах.

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments18

Всё, что вам нужно — это внимание (часть 2)

Level of difficultyHard
Reading time15 min
Views9.9K
Источник

Примечание переводчика: Это вторая часть перевода статьи Attention is all you need, с которой началось развитие больших языковых моделей, в том числе чат-бота ChatGPT. Первую часть можно найти здесь.
Читать дальше →
Total votes 30: ↑28 and ↓2+40
Comments0

FRED-T5. Новая SOTA модель для русского языка от SberDevices

Reading time10 min
Views21K

Уже много времени прошло с момента публикации наших последних языковых моделей ruT5, ruRoBERTa, ruGPT-3. За это время много что изменилось в NLP. Наши модели легли в основу множества русскоязычных NLP-сервисов. Многие коллеги на базе наших моделей выпустили свои доменно-адаптированные решения и поделились ими с сообществом. Надеемся, что наша новая модель поможет вам поднять метрики качества, и ее возможности вдохновят вас на создание новых интересных продуктов и сервисов.

Появление ChatGPT и, как следствие, возросший интерес к методам обучения с подкреплением обратной связью от человека (Reinforcement Learning with Human Feedback, RLHF), привели к росту потребности в эффективных архитектурах для reward-сетей. Именно от «интеллекта» и продуктопригодности reward-модели зависит то, насколько эффективно модель для инструктивной диалоговой генерации будет дообучаться, взаимодействуя с экспертами. Разрабатывая FRED-T5, мы имели в виду и эту задачу, поскольку от качества её решения будет во многом зависеть успех в конкуренции с продуктами OpenAI. Так что если ваша команда строит в гараже свой собственный ChatGPT, то, возможно, вам следует присмотреться и к FRED’у. Мы уже ранее рассказывали в общих чертах об этой модели, а сейчас, вместе с публичным релизом, настало время раскрытия некоторых технических подробностей.

Появление новых, более производительных GPU и TPU открывает возможности для использования в массовых продуктах и сервисах всё более емких моделей машинного обучения. Выбирая архитектуру своей модели, мы целились именно в ее пригодность к массовому realtime-инференсу, поскольку время выполнения и доступное оборудование — это основные факторы, лимитирующие возможность создания массовых решений на основе нейросетевых моделей. Если вы уже используете в своем решении модель ruT5, то подменив ее на FRED-T5 вы, вероятно, получите заметное улучшение значений ваших целевых метрик. Конечно, в скором будущем мы обучим еще более емкие варианты модели FRED-T5 и проверим их возможности — мы планируем и дальнейшее развитие линейки энкодер-декодерных моделей для обработки русского языка.

Читать далее
Total votes 31: ↑30 and ↓1+39
Comments30

Far Fields mic (Mic array) — незаметный герой в умной колонке

Reading time6 min
Views10K

В этой статье я хочу рассказать о своем давнем увлечении — изучении и работе с far fields mic (mic array) — массивами микрофонов.


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

Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments38

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все

Reading time20 min
Views378K

Три месяца назад здесь на Хабре была опубликована статья “Интернет-цензура и обход блокировок: не время расслабляться”, в которой простыми примерами показывалось, что практически все популярные у нас для обхода блокировок VPN- и прокси-протоколы, такие как Wireguard, L2TP/IPSec, и даже SoftEther VPN, SSTP и туннель-через-SSH, могут быть довольно легко детектированы цензорами и заблокированы при должном желании. На фоне слухов о том, что Роскомнадзор активно обменивается опытом блокировок с коллегами из Китая и блокировках популярных VPN-сервисов, у многих людей стали возникать вопросы, что же делать и какие технологии использовать для получения надежного нефильтрованного доступа в глобальный интернет.

Мировым лидером в области интернет-цензуры является Китай, поэтому имеет смысл обратить на технологии, которые разработали энтузиасты из Китая и других стран для борьбы с GFW (“великим китайским файрволом”). Правда, для неподготовленного пользователя это может оказаться нетривиальной задачей: существует огромное количество программ и протоколов с похожими названиями и с разными не всегда совместимыми между собой версиями, огромное количество опций, плагинов, серверов и клиентов для них, хоть какая-то нормальная документация существует нередко только на китайском языке, на английском - куцая и устаревшая, а на русском ее нет вообще.

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

Читать далее
Total votes 126: ↑124 and ↓2+153
Comments136

Всё, что вам нужно — это внимание (часть 1)

Level of difficultyHard
Reading time14 min
Views24K
Источник

Примечание переводчика: Недавно на Хабре мы рассказывали о статьях, которые нужно прочитать, если вы хотите заниматься искусственным интеллектом. Среди них была культовая статья Attention is all you need, выпущенная в 2017 году. С неё началось развитие больших языковых моделей, в том числе всем известного чат-бота ChatGPT. Оказалось, что у такой важной статьи нет перевода на русский язык. Мы решили исправить это. Ниже вы найдёте перевод первой части статьи, вторая часть доступна по ссылке.

Краткое содержание


Наиболее распространённые модели преобразования последовательностей основаны на сложных рекуррентных или свёрточных нейронных сетях, которые включают энкодер и декодер. В самых успешных моделях энкодер и декодер соединяются с помощью механизма внимания. В статье авторы предлагают новую простую архитектуру нейронных сетей — Трансформер. Он основан исключительно на механизмах внимания, без рекуррентности или свёрток. Эксперименты на двух задачах машинного перевода показали лучшее качество, а также больше возможностей к распараллеливанию и меньшие временные затраты на обучение. Модель достигает 28.4 по метрике BLEU на задаче перевода с английского на немецкий на данных WMT 2014, что превосходит предыдущий лучший результат на 2 пункта. На задаче перевода с английского на французский на данных WMT 2014 модель достигла наилучшего результата для решения, основанного на одной модели — 41.8 по метрике BLEU — после всего 3.5 дней обучения на 8 GPU, что составляет совсем небольшую часть тех вычислительных мощностей, которые были затрачены на обучение лучшей модели, известной из имеющихся публикаций. Авторы показывают, что Трансформер может также успешно применяться и в других задачах, таких как, например, синтаксический разбор предложений на английском языке с использованием как больших, так и весьма ограниченных наборов данных для обучения.
Читать дальше →
Total votes 41: ↑40 and ↓1+59
Comments5

Как воспитать GPT модель в домашних условиях [LLaMA Update]

Level of difficultyMedium
Reading time11 min
Views59K

Мы решили проверить технологию, на которой основан ChatGPT, посмотреть актуальное состояние open-source GPT-like моделей и ответить на вопрос — можно ли обучить GPT-like модель в домашних условиях?

Для эксперимента выбрали LLaMA и GPT-J и не самый мощный ПК с видеокартой Nvidia GTX 1080TI с 11 GB VRAM. Оказалось, что этого достаточно не только, чтобы загрузить модель, но и дообучить ее (fine-tune). Рассказываем — как мы это сделали.

Читать далее
Total votes 42: ↑40 and ↓2+44
Comments25

Синтезируем голос бабушки, дедушки и Ленина + новости нашего публичного синтеза

Reading time9 min
Views16K


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


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


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


  • На реальных примерах показать возможности генерации голоса на малом числе данных или на данных с неидеальным качеством;
  • Немного порассуждать на тему цифровых памятников (это чем-то похоже на интерактивные или трехмерные фотографии), сделанных из голоса человека;
  • Также немного порассуждать на тему того, какую объективную опасность это представляет для общества;

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

Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments21

Теперь наш публичный синтез в супер-высоком качестве, в 10 раз быстрее и без детских болячек

Reading time8 min
Views51K

hero_image


В нашей прошлой статье про синтез речи мы дали много обещаний: убрать детские болячки, радикально ускорить синтез еще в 10 раз, добавить новые "фишечки", радикально улучшить качество.


Сейчас, вложив огромное количество работы, мы наконец готовы поделиться с сообществом своими успехами:


  • Снизили размер модели в 2 раза;
  • Научили наши модели делать паузы;
  • Добавили один высококачественный голос (и бесконечное число случайных);
  • Ускорили наши модели где-то примерно в 10 раз (!);
  • Упаковали всех спикеров одного языка в одну модель;
  • Наши модели теперь могут принимать на вход даже целые абзацы текста;
  • Добавили функции контроля скорости и высоты речи через SSML;
  • Наш синтез работает сразу в трех частотах дискретизации на выбор — 8, 24 и 48 килогерц;
  • Решили детские проблемы наших моделей: нестабильность и пропуск слов, и добавили флаги для контроля ударения;

Это по-настоящему уникальное и прорывное достижение и мы не собираемся останавливаться. В ближайшее время мы добавим большое количество моделей на разных языках и напишем целый ряд публикаций на эту и смежные темы, а также продолжим делать наши модели лучше (например, еще в 2-5 раз быстрее).


Попробовать модель как обычно можно в нашем репозитории и в колабе.

Читать дальше →
Total votes 130: ↑129 and ↓1+156
Comments101

Распознаём дату и время в естественной речи

Reading time10 min
Views15K


Задача


Привет, Хабр! Увлёкся я навыками для Алисы и стал думать, какую пользу они бы могли принести. На площадке много разных прикольных игр (в том числе мои), но вот захотелось сделать рабочий инструмент, который действительно нужен в голосовом исполнении, а не просто копирует существующего чат-бота с кнопками.


Голос актуален тогда, когда либо руки заняты, либо нужно выполнять много последовательных операций, особенно на экране телефона. Так возникла идея навыка, который по одной команде выделяет из текста указание на дату и время и добавляет событие с этим текстом в Google Calendar. Например, если пользователь скажет Послезавтра в 11 вечера будет красивый закат, то в календарь на послезавтра в 23:00 уходит строка Будет красивый закат.


Под катом описание алгоритма работы библиотеки Hors: распознавателя даты и времени в естественной русской речи. Хорс — это славянский бог солнца.


Github | NuGet

Total votes 48: ↑47 and ↓1+46
Comments35

Neural Network Optimization: океан в капле

Level of difficultyEasy
Reading time14 min
Views16K

Всех приветствую, меня зовут Антон Рябых, работаю в Doubletapp. Вместе с коллегой Данилом Гальпериным мы написали статью про важный этап в процессе обучения нейронных сетей и получения необходимых нам результатов —  оптимизацию модели. Зачем нужно оптимизировать модель, если и так все работает? Но как только вы начнете разворачивать модель на устройстве, которое будет ее обрабатывать, перед вами встанет множество проблем.

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

Оптимизация моделей направлена на уменьшение размера моделей при минимизации потерь в точности и производительности.

Методы оптимизации

Pruning — устранение части параметров нейронной сети.
Quantization — уменьшение точности обрабатываемых типов данных.
Knowledge distillation — обновление топологии исходной модели до более эффективной, с уменьшенным количеством параметров и более быстрым выполнением.
Weight clustering — сокращение количества уникальных параметров в весах модели.
OpenVino, TensorRT — фреймворки, с помощью которых можно оптимизировать модели.

Читать далее
Total votes 28: ↑28 and ↓0+28
Comments3

Приделываем руки к ChatGPT: бот, который исполняет код в рантайме

Level of difficultyEasy
Reading time5 min
Views35K

В предыдущей статье я рассказывал, как можно доучить GPT на собственных взглядах и вкусах. Сегодня попробуем дать GPT возможность поработать программистом по‑настоящему — с запуском кода и отладкой без участия человека. Весь код опубликован в репозитарии.

Как многие уже убедились, ChatGPT хорош, но есть некоторые типы задач, с которыми у него возникают трудности:

1. Он не может получать новые актуальные знания из сети.
2. Он не может выполнить какие‑либо действия.
3. У него сложности с алгоритмическими задачами (перевернуть строку, решить уравнение, произвести вычисления с применением численных методов).

И если задача 1 решается с помощью BingChat, то 2 и 3 мы сегодня будем решать в рамках данного туториала.

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

Дальше много примеров и немного кода...
Total votes 47: ↑46 and ↓1+60
Comments30

Ардуино Тайм трекер додекаэдр

Reading time11 min
Views5.1K

Во время удаленной работы бывает тяжело сохранить прежнюю производительность. Мне в этом деле помогло отслеживание своего потраченного времени. Для этой цели я сделал себе тайм трекер куб. Каждая сторона куба отвечает за тот или иной вид деятельности. Затем, я понял, что шести сторон куба для меня недостаточно и решил сделать больше. Таким образом, я сделал Тайм трекер додекаэдр с 12 сторонами. В данной статье расскажу, как собрать и запрограммировать свой тайм трекер интегрированный с уже существующей системой, используя его API.
Использование существующего тайм трекера дает нам множество преимуществ, можно использовать веб, десктопную или мобильную версию трекера в любой удобный момент. Нам не требуется задумываться над методом и системой хранения данных про наши записи времени и мы можем использовать уже имеющиеся отчеты данной системы. А наш трекер додекаэдр служит дополнением ко всему этому. Ссылка на github страницу моего проекта, где лежит весь нужный код. Ниже я подробно расскажу, как работать с датчиком наклона, распознать на какой стороне лежит додекаэдр, что такое Toggl Track и как работать с его API для отслеживания времени.

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments12

Перевод учебника по алгоритмам

Reading time1 min
Views166K


Рад сообщить, что вышел перевод отличнейшего учебника Дасгупты, Пападимитриу, Вазирани «Алгоритмы», над которым я работал последние несколько лет. В книге многие алгоритмы объяснены гораздо короче и проще, чем в других учебниках: с одной стороны, без излишнего формализа, с другой — без потери математической строгости. Откройте книгу на каком-нибудь известном вам алгоритме и убедитесь в этом. =)

В общем, угощайтесь: печатный вариант перевода, электронный вариант перевода (PDF), печатный вариант оригинала, электронный вариант оригинала (PDF).
Читать дальше →
Total votes 323: ↑321 and ↓2+319
Comments109

Будущее игровой индустрии с hi-res 3D сканами людей и Oculus Rift

Reading time2 min
Views86K
Энтузиаст технологий виртуальной реальности Teddy, известный в определённых кругах адаптацией устройства Razer Hydra для работы с Unity Development Kit, помог другому этузиасту 3D сканирования Ли Перри-Смиту (Lee Perry-Smith), известному в определённых кругах своей студией для мгновенного бесконтактного 3D сканирования людей в высоком разрешении.

В результате получилось интересное демо, раскрывающее потрясающие возможности сотрудничества технологий виртуальной реальности и 3D сканирования (местами 16+).



Хочу 18плюс!
Total votes 112: ↑109 and ↓3+106
Comments70

Мой удобный дом

Reading time14 min
Views309K
Относительно недавно здесь был текст про домашнюю автоматику, а в комментариях один товарищ высказал идею, о которой я тоже думаю очень-очень давно. Суть в том, что автоматика должна работать так, чтобы этого, по возможности, вообще не было заметно.

То есть, умный дом — это дом, который может все. А удобный дом — это дом, который все, что может, делает сам.

Давайте сначала я просто похвастаюсь тем, что умеет мой дом сейчас, а вы решите, имеет ли смысл читать про мой местами горький (а местами очень даже ничего) опыт дальше, ок?
Читать дальше →
Total votes 161: ↑160 and ↓1+159
Comments97

DLNA-сервер для дома и семьи

Reading time7 min
Views859K
Как-то так сложилось, что тег DLNA сервер чаще встречается в постах-вопросах, чем в ответах. И если в вопросах установки на домашний Windows-ПК какой-то пользовательский опыт накоплен, то определиться с выбором ПО для домашнего сервера/NAS-а/медиацентра — оказалось непросто. Распределившись по песочницам народ обособленно решает проблемы каждой программы в отдельности. А понять что из них чего стоит и нужно ли оно вообще — лично мне не удалось.

И вот, я вооружившись ссылкой с Википедии Как выбрать DLNA-сервер под Windows, Mac OS X или Linux — опробовал почти всё, что есть под Linux.

Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments65

Как узнать, стоит ли оптимизировать MySQL запросы?

Reading time4 min
Views25K
Мне часто задают один и тот же вопрос: как можно находить запросы, которые необходимо оптимизировать. Ведь, скажем, взглянув на отчет pt-query-digest, мы легко найдем медленные запросы или запросы, которые вызывают большую нагрузку на систему — но как мы поймем, существует или нет возможность сделать выполнение этого запроса быстрее? Полный ответ на этот вопрос определенно потребует комплексного анализа, так как существует много путей оптимизации запросов. Однако, существует одна очень полезная метрика, которую вы можете применить — соотношение между количество возвращенных запросом рядов и пройденными рядами.
Читать дальше →
Total votes 48: ↑35 and ↓13+22
Comments22

Жизнь на собственном сервере

Reading time3 min
Views19K
Покупать готовое устройство для организации домашнего сервера (NAS) может и более простой способ, но точно не самый интересный. А сделать такой сервер можно по разному.

Например, лет 10 назад у меня был старенький системный блок с одним HDD под управлением linux. Его главной задачей было — держать SMB-шару. Позже, с появлением жены, требования к такому серверу изменились: он должен быть маленьким (занимать мало места), не гудеть и не потреблять много электричества. Поэтому систему пришлось менять.



Читать дальше →
Total votes 56: ↑39 and ↓17+22
Comments68
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Chief Technology Officer (CTO), Software Architect
Lead
Git
Linux
Docker
Database
High-loaded systems
SQL
English
Software development
Algorithms and data structures
Development of integration solutions