Как стать автором
Обновить
78
0
Лахман Константин @klakhman

Computer Vision

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

Трансформеры в Поиске: как Яндекс применил тяжёлые нейросети для поиска по смыслу

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

Привет, Хабр. Меня зовут Саша Готманов, я руковожу группой нейросетевых технологий в поиске Яндекса. Сегодня на YaC 2020 мы впервые рассказали о внедрении трансформера — новой нейросетевой архитектуры для ранжирования веб-страниц. Это наиболее значимое событие в нашем поиске за последние 10 лет. 

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

Читать далее
Всего голосов 75: ↑73 и ↓2+71
Комментарии65

Строим роботанк с управлением по Wifi, камерой, пушкой, блекджеком и т.д

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

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

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

UPD: добавлено видео.

Читать дальше →
Всего голосов 87: ↑82 и ↓5+77
Комментарии71

Идеальная передача и универсальные ссылки в C++

Время на прочтение9 мин
Количество просмотров154K
Недавно на isocpp.org была опубликована ссылка на статью Eli Bendersky «Perfect forwarding and universal references in C++». В этой небольшой статье есть простой ответ на простой вопрос — для решения каких задач и как нужно использовать rvalue-ссылки.
Узнать этот ответ
Всего голосов 56: ↑56 и ↓0+56
Комментарии27

Машинное обучение как сервис — бесплатно и в облаке

Время на прочтение1 мин
Количество просмотров19K
Мы уже писали о машинном обучении как сервисе в облаке Microsoft Azure здесь. И, совсем недавно, Microsoft решили открыть (как ранее с Azure Web Sites) возможность бесплатного тестирования этого тестирования без аккаунта Microsoft Azure, без кредитной карты. Отличная возможность посмотреть, что умеет Machine Learning в облаке.


Читать дальше →
Всего голосов 42: ↑25 и ↓17+8
Комментарии15

ZeroMQ: сокеты по-новому

Время на прочтение7 мин
Количество просмотров79K
В любом среднем или крупном приложении, будь оно desktop или web, для бизнеса или для личного пользования, программисту необходимо решить важную архитектурную задачу — как будут общаться между собой потоки, процессы, модули, ноды, кластера, и прочие части эко-системы его приложения.

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

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

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

Однако, в этом мире бесплатный сыр только в мышеловке. Поэтому я постарался по мере сил и опыта выяснить, чем придется поплатиться за удобство, какие я нашел плюсы и минусы при применении данной библиотеки.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии17

Quotient filter

Время на прочтение5 мин
Количество просмотров16K
Quotient filter — это вероятностная структура данных, позволяющая проверить принадлежность элемента множеству. Она описана в 2011 г. как замена фильтру Блума. Ответ может быть:
— элемент точно не принадлежит множеству;
— элемент возможно принадлежит множеству.

Читать дальше →
Всего голосов 45: ↑43 и ↓2+41
Комментарии16

Лучшие плагины для Sublime Text

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

WebInspector


Мощный инструмент для дебаггинга JavaScript, полноценный инспектор кода для Sublime. Фичи: установка брейкпоинтов прямо в редакторе, показ интерактивной консоли с кликабельными объектами, остановка с показом стек трейса и управление шагами дебаггера. Все это работает на ура! А еще есть Fireplay от Mozilla, который позволяет подключаться к Firefox Developer tools и максимально простой дебаггер JSHint.



Читать дальше →
Всего голосов 116: ↑114 и ↓2+112
Комментарии101

Доклады конференции CppCon 2014

Время на прочтение6 мин
Количество просмотров13K
Недавно в городе Белвью (штат Вашингтон) прошла одна из самых больших конференций С++ разработчиков — CppCon 2014. В течение пяти дней ведущие программисты таких компаний как Microsoft, Google, Dropbox, Citrix, Embarcadero, Ubisoft, разработчики стандарта языка, создатели компиляторов С++ и члены комьюнити opensource-продуктов представляли свои доклады, делились мнениями о будущем языка, предлагали новые идеи. Ниже я представлю выборку наиболее понравившихся мне видео с небольшими комментариями от себя. Хочется отметить, что вся конференция просто пропитана духом возрождения С++ в виду распространения стандартов С++11\14, люди рассказывают почему выбор С++ оказался для них верным, как они успешно мигрировали с C#\Java\Objective-C на С++ и не пожалели об этом и т.д.

Удачного просмотра!

Докладчики из Dropbox рассказывают о том, как они разрабатывают на С++ кроссплатформенные мобильные приложения.
Когда-то у Дропбокса были классические мобильные приложения: Java-код для Android и Objetive-C для iOs. Однако со временем команде разработчиков надоело писать одно и то же по 2 раза на разных языках и они пришли к выводу о необходимости создания общей кодовой базы на С++. Со временем оказалось, что какую бы архитектуру не имело приложение (MVC, MVVM или что-нибудь другое), фактически весь код кроме вьюх может быть вынесен в С++. Действительно, на С++ можно реализовать модель данных, контроллеры, бизнес-логику, вспомогательные библиотеки для работы с сетью, базами данных, парсингу и т.д. Всё, что остаётся на долю Java и Objective-C — нарисовать «родные» для данной платформы кнопки\списки\лейбы на вьюхах. И этот подход существенно более прагматичен, чем писать всё дважды.

Первое видео более обзорное, второе более практическое:


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

Интервью Скотта Мейерса в Яндексе. О настоящем и будущем C++

Время на прочтение18 мин
Количество просмотров60K
Скотт Мейерс — один из самых известных и признанных экспертов по C++, автор серии книг «Эффективное использование C++», которые читал почти каждый профессиональный разработчик на C++ и которые оказали заметное влияние на всю экосистему и качество использование языка.

Лично я стал почти его фанатом ещё студентом, когда в начале 2000-х читал статьи Скотта, лежащие в основе его книг (сами книги на тот момент в России ещё не были переведены, а на английские с Амазона у меня, как бедного студента, денег не было).

Поэтому, когда он некоторое время назад приехал в Яндекс, чтобы провести тренинг для наших разработчиков, я не мог не воспользоваться этим шансом, чтобы поговорить с ним. Разговор получился о том, каким он видит будущее C++ и программирования вообще, как отличаются разработчики в разных странах и в разных индустриях, и о нём самом.



Полные тексты оригинала и перевода интервью
Всего голосов 99: ↑94 и ↓5+89
Комментарии43

Нейронные сети, «вредные» советы

Время на прочтение6 мин
Количество просмотров169K
Исторически, искусственные нейронные сети за свою уже более чем полувековую историю испытывали как периоды стремительных взлетов и повышенного внимания общества, так и сменявшие их периоды скепсиса и равнодушия. В хорошие времена ученым и инженерам кажется, что наконец-то найдена универсальная технология, способная заменить человека в любых когнитивных задачах. Как грибы после дождя, появляются различные новые модели нейронных сетей, между их авторами, профессиональными учеными-математиками, идут напряженные споры о большей или меньшей степени биологичности предложенных ими моделей. Профессиональные ученые-биологи наблюдают эти дискуссии со стороны, периодически срываясь и восклицая «Да такого же в реальной природе не бывает!» – и без особого эффекта, поскольку нейросетевики-математики слушают биологов, как правило, только тогда, когда факты биологов согласуются с их собственными теориями. Однако, с течением времени, постепенно накапливается пул задач, на которых нейронные сети работают откровенно плохо и энтузиазм людей остывает.
Читать дальше →
Всего голосов 77: ↑74 и ↓3+71
Комментарии59

IStruct — эволюция продолжается

Время на прочтение2 мин
Количество просмотров64K
Всего около трёх месяцев потребовалось обезьяноподобному роботу iStruct, созданному в Немецком исследовательском центре по искусственному интеллекту (DFKI), для того, чтобы повторить миллионы лет эволюции и перейти к прямохождению.



Работа над роботами, которых планируется использовать для исследования лунных кратеров на предмет наличия в них льда, началась ещё в начале марта.
Читать дальше →
Всего голосов 61: ↑57 и ↓4+53
Комментарии95

Квадрокоптеры снялись в фильме Цирка Дю Солей и ФТИ Цюриха

Время на прочтение1 мин
Количество просмотров14K
Привет, Хабр!

Пока квадрокоптерами не стали «всадниками Апокалипсиса» и не начали истреблять людей, они могут нас развлекать, в том числе и танцами.

Цирк Дю Солей и Федеральный технологический институт Цюриха совместно сделали проект, итогом которого стал короткометражный фильм об одиноком мастере бытовой техники. После короткого замыкания лампы оживают, исполняя причудливый танец во взаимодействии с человеком. Никаких специальных эффектов в фильме нет — только квадрокоптеры в абажурах.

Под хабракатом — короткометражный фильм «Sparked», «фильм о фильме» и несколько фотографий самого процесса.

image

Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии11

Береги зрение, используй f.lux

Время на прочтение1 мин
Количество просмотров447K
Почти четыре года прошло с момента упоминания на Хабре программы f.lux, настоящего лекарства для тех, у кого устают глаза из-за монитора.



Программа изменяет цветовой профиль монитора, в зависимости от времени суток. Ночью глаза меньше устают от тёплых цветовых тонов (3400 K), днём — от холодных (6500 K), которые больше соответствуют дневному свету.
Читать дальше →
Всего голосов 113: ↑94 и ↓19+75
Комментарии110

Об обучении нейросетей

Время на прочтение3 мин
Количество просмотров13K
image
Это статья уровня 2 (см. ниже).
Статья является логическим продолжением моего рассказа про сверточные нейронные сети и их применения для распознавания изображений.
Прежде чем продолжить хочу дать понимание чем же все таки занимаются люди из области Машинного обучения и какова их глобальная цель. Глобальная цель — это порабощение всех людей машинами создание методов и алгоритмов, способных путем обучения выстраивать сложные и нелинейные модели внешнего мира. В качестве пояснения предлагаю взглянуть на картинку, благодарно позаимствованную из [1]. Сейчас человечество уже умеет создавать алгоритмы, способные учится простым операциям, но что насчет такого вот преобразования — у нас есть изображение сидящего человека которое по сути является сырым вектором значений яркости картинки в каждой точке. И нам необходимо постепенно повышая абстрактность этих сырых данных сделать вывод «человек сидит». Отсюда собственно главный вопрос: Как создать систему способную не только понять простые (пусть и нелинейные) зависимости, но также обучиться сложным, многомерным и многоуровневым иерархиям представлений реального мира?
Читать дальше →
Всего голосов 50: ↑47 и ↓3+44
Комментарии32

Акция на Books.ru

Время на прочтение1 мин
Количество просмотров56K
Не могу не поделиться с общественностью этим. Вот такой вот новостью порадовал меня BOOKS.ru.
Очень много книг по акции технического содержания, вот такой вот отечественный ответ на прошедший не так давно Humble ebook bundle.

А вот собственно и список таких книг!
upd: Пояснение по просьбам трудящихся.
В списке около 166 электронных книг (как правило в формате PDF) за каждую из которых можно заплатить любую сумму которую вы сами захотите.
Т.е. как пишут в подсказке при указании стоимости при покупки:
Введите цену в соответствии с Вашим представлением о стоимости интеллектуального труда.
Всего голосов 92: ↑77 и ↓15+62
Комментарии180

Искуственный интеллект с нечеткой логикой в аркадной игре

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

Введение или как я писал свой первый ИИ


Доброго времени суток. Я написал свой первый искуственный интеллект много лет назад, когда учился в колледже. Тогда это был ИИ для змейки в необычной для змеек игре — Serpent's Madness (ссылка ведет на мой сайт игры), в которой последние могут двигаться в любом направлении. Скриншот ниже демонстрирует это:



Тогда это был детерминированный алгоритм, т.е. алгоритм с четкой последовательностью действий, когда на каждом шаге можно точно сказать, что будет на следующем. Выглядел он приблизительно так
Читать дальше →
Всего голосов 65: ↑55 и ↓10+45
Комментарии21

Нейронная сеть против DDoS'а

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

Предисловие


Некоторые из вас наверняка недавно проходили Stanford'ские курсы, в частности ai-class и ml-class. Однако, одно дело просмотреть несколько видео-лекций, поотвечать на вопросики quiz'ов и написать десяток программ в Matlab/Octave, другое дело начать применять полученные знания на практике. Дабы знания полученые от Andrew Ng не угодили в тот же тёмный угол моего мозга, где заблудились dft, Специальная теория относительности и Уравнение Эйлера Лагранжа, я решил не повторять институтских ошибок и, пока знания ещё свежи в памяти, практиковаться как можно больше.

И тут как раз на наш сайтик приехал DDoS. Отбиваться от которого можно было админско-программерскими (grep / awk / etc) способами или же прибегнуть к использованию технологий машинного обучения.

Далее пойдёт рассказ о создании нейронной сети на Python 2.7 / PyBrain и её применении для защиты от DDoS'а.

Читать дальше →
Всего голосов 177: ↑174 и ↓3+171
Комментарии46

Иерархическая Темпоральная Память (НТМ) и алгоритмы ее самообучения

Время на прочтение2 мин
Количество просмотров13K
Привет всем Хабражителям, кто интересуется вопросами искусственного интеллекта! Всех с Прошедшими праздниками! Пора двигаться дальше.

В конце прошлого года я закончил перевод последней версии документа о «Hierarchical Temporal Memory» (HTM), который теперь можно найти рядом с оригиналом на сайте Numenta.com.

Что это такое и зачем оно все? Это последняя разработка весьма небезысвестного Джеффа Хокинса сотоварищи, моделирующая работу отдельных слоев коры головного мозга. Эта штуковина позволяет (если не накосячить все сделать правильно) выделять из входного потока данных сходные события, их последовательности, проводить их распознавание и предсказание. Всех, кого интересуют подробности, милости прошу под хабракат.

Читать дальше →
Всего голосов 86: ↑77 и ↓9+68
Комментарии39

Lego Mindstorms NXT 2.0 — краткое знакомство

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

Лет эдак в 10-11, после долгих и беззаботных лет игры с контрукторами Lego, я узнал о существовании великолепного набора Mindstorms, который позволял создавать самых настоящих роботов без специализованных знаний электроники, электротехники и даже программирования. Я сразу же заинтересовался данной серией, но тогда моим мечтам обладать Mindstorms по различным (в основном — финансовым) причинам не суждено было сбыться.
Сейчас мне 20 и в честь юбилея друзья (спасибо им!) решили окунуть меня назад в детство и таки дать возможность полепить собственных роботов. Правда, в этот раз всё будет серьёзнее, чем в моих детских мыслях — мы будем действительно программировать Mindstorms под Debian GNU/Linux.
Читать дальше →
Всего голосов 56: ↑53 и ↓3+50
Комментарии44

Стажировка в Google 2 (Часть 1)

Время на прочтение7 мин
Количество просмотров18K
Когда-то я уже писала про то, как мне удалось постажироваться в Google в Швейцарии. Тогда же я обещала отчет о своей следующей стажировке — во второй раз в Googleplex в Калифорнии. И вот это время пришло — моя вторая стажировка подходит к концу, и мне есть что рассказать!: о)

Disclaimer: Мой личный опыт, как всегда, не претендует на универсальность.

Читать дальше →
Всего голосов 194: ↑184 и ↓10+174
Комментарии92
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность