Pull to refresh
37
Karma
0
Rating
Руслан @redeyser

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

  • Posts
  • Comments

Алиса. Как Яндекс учит искусственный интеллект разговаривать с людьми

Яндекс corporate blogSearch enginesData MiningMachine learningVoice user interfaces
В будущем, как нам кажется, люди будут взаимодействовать с устройствами с помощью голоса. Уже сейчас приложения распознают точные голосовые команды, заложенные в них разработчиками, но с развитием технологий искусственного интеллекта они научатся понимать смысл произвольных фраз и даже поддерживать разговор на любые темы. Сегодня мы расскажем читателям Хабра о том, как мы приближаем это будущее на примере Алисы – первого голосового помощника, который не ограничивается набором заранее заданных ответов и использует для общения нейронные сети.



Несмотря на кажущуюся простоту, голосовой помощник – один из самых масштабных технологических проектов Яндекса. Из этого поста вы узнаете, с какими сложностями сталкиваются разработчики голосовых интерфейсов, кто на самом деле пишет ответы для виртуальных помощников, и что общего у Алисы с искусственным интеллектом из фильма «Она».

Читать дальше →
Total votes 109: ↑104 and ↓5 +99
Views138.7K
Comments 307

News

Show more

Книга «Python для сложных задач: наука о данных и машинное обучение»

Издательский дом «Питер» corporate blogPythonData MiningProfessional literatureMachine learning
imageПривет, Хаброжители! Данная книга — руководство по самым разным вычислительным и статистическим методам, без которых немыслима любая интенсивная обработка данных, научные исследования и передовые разработки. Читатели, уже имеющие опыт программирования и желающие эффективно использовать Python в сфере Data Science, найдут в этой книге ответы на всевозможные вопросы, например: как считать этот формат данных в скрипт? как преобразовать, очистить эти данные и манипулировать ими? как визуализировать данные такого типа? как при помощи этих данных разобраться в ситуации, получить ответы на вопросы, построить статистические модели или реализовать машинное обучение?

Ниже под катом обзор книги и отрывок «Гистограммы, разбиения по интервалам и плотность»
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Views39.5K
Comments 20

Изучаем блокчейн на практике

Productivity Inside corporate blogCryptographyPayment systemsPython
Translation
Tutorial
Вы читаете эту статью потому, что, как и я, с горячим интересом наблюдаете за возрастающей популярностью криптовалюты. И вам хочется понять, как работает блокчейн — технология, которая лежит в ее основе.

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

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


Читать дальше →
Total votes 26: ↑24 and ↓2 +22
Views50.5K
Comments 9

Открытый курс машинного обучения. Тема 1. Первичный анализ данных с Pandas

Open Data Science corporate blogPythonData MiningData visualizationMachine learning


Курс состоит из:


  • 10 статей на Хабре (и то же самое на Медиуме на англ.)
  • 10 лекций (Youtube-канал на русском + более свежие лекции на англ.), подробное описание каждой темы – в этой статье
  • воспроизводимых материалов (Jupyter notebooks) в репозитории mlcourse.ai и в виде Kaggle Dataset (нужен только браузер)
  • отличных соревнований Kaggle Inclass (не на "стаканье xgboost-ов", а на построение признаков)
  • домашних заданий по каждой теме (в репозитории — список демо-версий заданий)
  • мотивирующего рейтинга, обилия живого общения и быстрой обратной связи от авторов

Текущий запуск курса – с 1 октября 2018 года на английском языке (ссылка на опрос для участия, заполняйте на английском). Следите за объявлениями в группе ВК, вступайте в сообщество OpenDataScience.

Читать дальше →
Total votes 44: ↑43 and ↓1 +42
Views737.3K
Comments 57

Объяснение блокчейна для веб-разработчиков

Information SecurityCryptographyPayment systems
Sandbox

Предисловие переводчика


Предлагаю читателям Хабрахабра перевод статьи «The Blockchain Explained to Web Developers, Part 1: The Theory» за авторством Francois Zaninotto. Эту статью я нашел в блоге компании Marmelab. Статья представляет собой отличное введение в технологию блокчейн «с нуля», но может оказаться интересной и для тех, кто уже «в теме». Она касается не только того, как работает блокчейн, но и перспектив его развития, а также с чего начать, если вы хотите создать свой проект, использующий блокчейн.

Объяснение блокчейна для веб-разработчиков, Часть первая: Теория


Блокчейн – это новая популярная технология. Даже если вы не слышали о ней, вы, вероятнее всего, знаете о Bitcoin. Блокчейн — это одна из фундаментальных технологий на которых основан Bitcoin. Эксперты говорят, что блокчейн вызовет революцию схожую с той, которую некогда вызвал Интернет. Но что это на самом деле и как его можно использовать для создания приложений? Эта статья является первой в серии из трех, рассказывающей о феномене Блокчейна. Мы обсудим теорию, покажем фактический код и поделимся своим опытом, основанным на реальном проекте.
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Views156.1K
Comments 50

Нейросети: как искусственный интеллект помогает в бизнесе и жизни

Data MiningAlgorithmsMachine learning
Читайте оригинал статьи в Блоге DTI.

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



Машины теперь способны решать все больше процессов, за которые раньше отвечали люди. Кроме того, делают это качественнее и во многих случаях дешевле. О том, что это значит для рынка труда, в июле этого года говорил Герман Греф, выступая перед студентами Балтийского федерального университета им. Канта:
Мы перестаём брать на работу юристов, которые не знают, что делать с нейронной сетью. <...> Вы — студенты вчерашнего дня. Товарищи юристы, забудьте свою профессию. В прошлом году 450 юристов, которые у нас готовят иски, ушли в прошлое, были сокращены. У нас нейронная сетка готовит исковые заявления лучше, чем юристы, подготовленные Балтийским федеральным университетом. Их мы на работу точно не возьмем.”

Продолжая освещать #технобудущее, команда DTI подготовила все, что необходимо знать для первого погружения в нейронные сети: как они устроены, почему все больше компаний предпочитают нейросети живым сотрудникам и какой потенциал по оптимизации различных процессов несет эта технология.
Читать дальше →
Total votes 19: ↑9 and ↓10 -1
Views59.5K
Comments 1

Как написать свой первый Linux device driver

CDevelopment for Linux
Sandbox
Здравствуйте, дорогие хабрачитатели.

Цель данной статьи — показать принцип реализации драйверов устройств в системе Linux, на примере простого символьного драйвера.

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

Это моя первая статья, пожалуйста не судите строго!

P.S

Получилось слишком много букв, поэтому я принял решение разделить статью на три части:

Часть 1 — Введение, инициализация и очистка модуля ядра.
Часть 2 — Функции open, read, write и trim.
Часть 3 — Пишем Makefile и тестируем устройство.

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

Итак, начнем.
Читать дальше →
Total votes 59: ↑52 and ↓7 +45
Views43.7K
Comments 41

Наглядное объяснение чисел с плавающей запятой

ProgrammingAlgorithmsMathematics
Translation
image

В начале 90-х создание трёхмерного игрового движка означало, что вы заставите машину выполнять почти не свойственные ей задачи. Персональные компьютеры того времени предназначались для запуска текстовых процессоров и электронных таблиц, а не для 3D-вычислений с частотой 70 кадров в секунду. Серьёзным препятствием стало то, что, несмотря на свою мощь, ЦП не имел аппаратного устройства для вычислений с плавающей запятой. У программистов было только АЛУ, перемалывающее целые числа.

При написании книги Game Engine Black Book: Wolfenstein 3D я хотел наглядно показать, насколько велики были проблемы при работе без плавающей запятой. Мои попытки разобраться в числах с плавающей запятой при помощи каноничных статей мозг воспринимал в штыки. Я начал искать другой способ. Что-нибудь, далёкое от $(-1)^S * 1.M * 2^{(E-127)}$ и их загадочных экспонент с мантиссами. Может быть, в виде рисунка, потому что их мой мозг воспринимает проще.

В результате я написал эту статью и решил добавить её в книгу. Не буду утверждать, что это моё изобретение, но пока мне не приходилось видеть такого объяснения чисел с плавающей запятой. Надеюсь, статья поможет тем, у кого, как и у меня, аллергия на математические обозначения.
Читать дальше →
Total votes 76: ↑73 and ↓3 +70
Views128.5K
Comments 44

tig — улучшаем продуктивность работы с git

GitVersion control systems

Всем привет! Хочу рассказать о консольной утилите, которая значительно увеличила мою продуктивность работы с Git, и, надеюсь, ускорит и вашу также. Называется она tig и была написана канадским программистом Джонасом Фонсека (Jonas Fonseca) ещё в далёком 2006-м году, но по настоящий день она активно развивается и поддерживается в великолепном состоянии. Я хочу показать её функционал (внимание, есть относительно тяжелые gif-ки внутри) и поделиться самыми удобными способами использования.


Читать дальше →
Total votes 107: ↑105 and ↓2 +103
Views38.9K
Comments 46

36 материалов о нейросетях: книги, статьи и последние исследования

Neurodata Lab corporate blogProgrammingAlgorithmsProfessional literatureMachine learning
Что делать, если хочется побольше узнать про нейронные сети, методы распознавания образов, компьютерное зрение и глубокое обучение? Один из очевидных вариантов — подыскать для себя какие-либо курсы и начать активно изучать теорию и решать практические задачи. Однако на это придется выделить значительную часть личного времени. Есть другой способ — обратиться к «пассивному» источнику знаний: выбрать для себя литературу и погрузиться в тему, уделяя этому всего полчаса-час в день.

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

Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Views89.9K
Comments 9

Укрощаем мультимедиа с помощью ffmpeg

Configuring Linux*nixData compression

Внезапно ваш диск под завязку забит фотографиями и видео, а впереди новые поездки. Что делать, покупать новый, арендовать дисковое пространство на облаке, или может лучше сжать видео файлы через ffmpeg?





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

Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Views66.3K
Comments 33

Нейросеть в 11 строчек на Python

PythonProgrammingAlgorithmsMachine learning
Translation

О чём статья


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

Дайте код!


X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ])
y = np.array([[0,1,1,0]]).T
syn0 = 2*np.random.random((3,4)) - 1
syn1 = 2*np.random.random((4,1)) - 1
for j in xrange(60000):
    l1 = 1/(1+np.exp(-(np.dot(X,syn0))))
    l2 = 1/(1+np.exp(-(np.dot(l1,syn1))))
    l2_delta = (y - l2)*(l2*(1-l2))
    l1_delta = l2_delta.dot(syn1.T) * (l1 * (1-l1))
    syn1 += l1.T.dot(l2_delta)
    syn0 += X.T.dot(l1_delta)


Слишком сжато? Давайте разобьём его на более простые части.
Читать дальше →
Total votes 47: ↑44 and ↓3 +41
Views413.5K
Comments 15

Яндекс открывает технологию машинного обучения CatBoost

Яндекс corporate blogSearch enginesOpen sourcePythonMachine learning
Сегодня Яндекс выложил в open source собственную библиотеку CatBoost, разработанную с учетом многолетнего опыта компании в области машинного обучения. С ее помощью можно эффективно обучать модели на разнородных данных, в том числе таких, которые трудно представить в виде чисел (например, виды облаков или категории товаров). Исходный код, документация, бенчмарки и необходимые инструменты уже опубликованы на GitHub под лицензией Apache 2.0.



CatBoost – это новый метод машинного обучения, основанный на градиентном бустинге. Он внедряется в Яндексе для решения задач ранжирования, предсказания и построения рекомендаций. Более того, он уже применяется в рамках сотрудничества с Европейской организацией по ядерным исследованиям (CERN) и промышленными клиентами Yandex Data Factory. Так чем же CatBoost отличается от других открытых аналогов? Почему бустинг, а не метод нейронных сетей? Как эта технология связана с уже известным Матрикснетом? И причем здесь котики? Сегодня мы ответим на все эти вопросы.

Читать дальше →
Total votes 216: ↑215 and ↓1 +214
Views96.1K
Comments 128

Искусственные нейронные сети простыми словами

Popular scienceArtificial IntelligenceBrain
Sandbox
image

Когда, за бутылкой пива, я заводил разговор о нейронных сетях — люди обычно начинали боязливо на меня смотреть, грустнели, иногда у них начинал дёргаться глаз, а в крайних случаях они залезали под стол. Но, на самом деле, эти сети просты и интуитивны. Да-да, именно так! И, позвольте, я вам это докажу!

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


Можно подумать просто и бескомпромиссно: “Если симпатична и есть о чём поговорить, то влюблюсь. Если ни то и ни другое, то — увольте.”

Но что если дама мне симпатична, но с ней не о чем разговаривать? Или наоборот?
Total votes 60: ↑59 and ↓1 +58
Views198.1K
Comments 92

Нейронные сети для начинающих. Часть 1

Machine learning
Sandbox
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

Поэтому сейчас, когда я достаточно хорошо освоил нейронные сети и нашел огромное количество информации с разных иностранных порталов, я хотел бы поделиться этим с людьми в серии публикаций, где я соберу всю информацию, которая потребуется вам, если вы только начинаете знакомство с нейронными сетями. В этой статье, я не буду делать сильный акцент на Java и буду объяснять все на примерах, чтобы вы сами смогли перенести это на любой, нужный вам язык программирования. В последующих статьях, я расскажу о своем приложении, написанном под андроид, которое предсказывает движение акций или валюты. Иными словами, всех желающих окунуться в мир нейронных сетей и жаждущих простого и доступного изложения информации или просто тех, кто что-то не понял и хочет подтянуть, добро пожаловать под кат.
Читать дальше →
Total votes 70: ↑60 and ↓10 +50
Views1.1M
Comments 63

Нейросети для чайников. Начало

ProgrammingAlgorithms


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

В данной статье (цикле статей?) я попытаюсь осветить тему нейросетей с точки зрения человека непосвященного, простым языком, на простых примерах, раскладывая все по полочкам, а не «массив нейронов образует перцептрон, работающий по известной, зарекомендовавшей себя схеме».

Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 258: ↑226 and ↓32 +194
Views731.1K
Comments 91

Information

Rating
5,848-th
Location
Кемерово, Кемеровская обл., Россия
Date of birth
Registered
Activity