Рубрика «машинное обучение» - 239

image

При выполнении аналитических задач SEO, SMM, маркетинга мы столкнулись с непомерно растущим количеством инструментов для обработки данных. Каждый заточен под свои возможности или доступность для пользователя: Excel и VBA, сторонние SEO-инструменты, PHP и MySQL, Python, C, Hive и другие. Разнообразные системы и источники данных добавляют проблем: счетчики, рекламные системы, CRM, инструменты вебмастера Яндекса и Google, соцсети, HDFS. Необходим инструмент, совмещающий в себе простоту настройки и использования, модули для получения, обработки и визуализации данных, а также работы с различными типами источников. Выбор пал на iPython notebook (с недавних пор Jupyter notebook), представляющий собой платформу для работы со скриптами на 40 языках программирования. Широкое распространение платформа получила для научных вычислений, среди специалистов по обработке данных и машинному обучению. К сожалению для автоматизации и обработки данных маркетинговых задач Jupyter notebook используется крайне редко.
Читать полностью »

интервьюер: Приветствую, хотите кофе или что-нибудь еще? Нужен перерыв?

я: Нет, кажется я уже выпил достаточно кофе!

интервьюер: Отлично, отлично. Как вы относитесь к написанию кода на доске?

я: Я только так код и пишу!

интервьюер: ...

я: Это была шутка.

интервьюер: OK, итак, вам знакома задача "fizz buzz"?

я: ...

интервьюер: Это было да или нет?

я: Это что-то вроде "Не могу поверить, что вы меня об этом спрашиваете."

интервьюер: OK, значит, нужно напечатать числа от 1 до 100, только если число делится нацело на 3, напечатать слово "fizz", если на 5 — "buzz", а если делится на 15, то — "fizzbuzz".

я: Я знаю эту задачу.

интервьюер: Отлично, кандидаты, которые не могут пройти эту задачу, у нас не сильно уживаются.

я: ...

интервьюер: Вот маркет и губка.

я: [задумался на пару минут]

интервьюер: Вам нужна помощь, чтобы начать?

я: Нет, нет, все в порядке. Итак, начнем с пары стандартных импортов:

import numpy as np
import tensorflow as tf

интервьюер: Эм, вы же правильно поняли проблему в fizzbuzz, верно?

я: Так точно. Давайте обсудим модели. Я думаю тут подойдет простой многослойный перцептрон с одним скрытым слоем.

Читать полностью »

Привет! 18 мая в Калифорнии, в Маунтин-Вью, прошла наша ежегодная конференция для разработчиков. На случай, если вы пропустили живую трансляцию (или просто любите текстовый формат) мы подготовили специальный пост со всем самым-самым важным и интересным, что было показано на I/O 2016.

Google I-O 2016 в подробностях: перспективы и технологии - 1
Читать полностью »

Совсем не нейронные сети - 1

Недавно ZlodeiBaal писал о достижениях в сверточных нейронных сетях (CNN) (и, кстати, тут же успешно настроил и обучил сеть для поиска области автомобильного номера).
А я хочу рассказать про принципиально иную и, наверное, более сложную модель, которую сейчас развивает Алексей Редозубов (
AlexeyR), и про то, как мы, конечно проигнорировав некоторые важные элементы, и ее применили для распознавания автомобильных регистрационных знаков!

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

Может ли машина научить английскому языку? - 1

Биткоин-бот имени Дональда Трампа, победа AlphaGo над одним из сильнейших игроков в го Ли Седолем, изучение английского языка — что объединяет эти три ситуации? Везде в той или иной степени присутствует машинное обучение.

Компьютер может не только генерировать сюжетную канву, как Scheherazade, или отвечать на письма вместо пользователей, как Google Smart Reply, но и создавать идеальные учебники английского языка.
Читать полностью »

Стандартный план любого хакатона
Microsoft Azure Machine Learning Hackathon
R, один из популярнейших языков программирования среди data scientist'ов, получает все большую и большую поддержку как среди opensource-сообщества, так и среди частных компаний, которые традиционно являлись разработчиками проприетарных продуктов. Среди таких компаний – Microsoft, чья интенсивно увеличивающая поддержка языка R в своих продуктах/сервисах, привлекла к себе и мое внимание.

Одним из «локомотивов» интеграции R с продуктами Майкрософт является облачная платформа Microsoft Azure. Кроме того, появился отличный повод повнимательнее взглянуть на связку R + Azure – это проходящий в эти выходные (21-22 мая) хакатон по машинному обучению, организованный Microsoft.

Хакатон – мероприятие, где кофе время чрезвычайно ценный ресурс. В контексте этого я ранее писал о best practices обучения моделей в Azure Machine Learning. Но Azure ML – это не инструмент для прототипирования; это скорее сервис для создания продукта с SLA со всеми вытекающими отсюда затратами как на время разработки, так и на стоимость владения.

R же прекрасно подходит для создания прототипов, для копания (mining) в данных, для быстрой проверки своих гипотез – то есть
всего того, что нам нужно на такого типа соревнованиях! Ниже я расскажу, как использовать всю мощь R в Azure – от создания прототипа до публикации готовой модели в Azure Machine Learning.
Читать полностью »

У меня тут синхронизируется VM надолго, поэтому есть время рассказать про то, что я недавно читал.
Например, про GoogLeNet.
GoogLeNet — это первая инкарнация так называемой Inception architecture, которая референс всем понятно на что:

image
(кстати, ссылка на него идет первой в списке референсов статьи, чуваки жгут)

Она выиграла ImageNet recognition challenge в 2014-м году с результатом 6.67% top 5 error. Напомню, top 5 error — метрика, в которой алгоритм может выдать 5 вариантов класса картинки и ошибка засчитывается, если среди всех этих вариантов нет правильного. Всего в тестовом датасете 150K картинок и 1000 категорий, то есть задача крайне нетривиальна.

Чтобы понять зачем, как и почему устроен GoogLeNet, как обычно, немного контекста.

Читать полностью »

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

image

Читать полностью »

Аппаратный ускоритель нейросети подключается по USB - 1

Американская компания Movidius известна как разработчик аппаратного ускорителя нейросетей Myriad 2 VPU и поставщик микросхем для системы искусственного интеллекта GoogleNet.

После оптимизации и подготовки бинарника в фирменном фреймворке Fathom Deep Learning Software Framework нейросеть эффективно работает на ускорителе Myriad 2 с энергопотреблением менее 1 Вт. Такие микросхемы идеально подходят для роботов, мультикоптеров, смартфонов, видеокамер наблюдения, шлемов дополненной реальности — любых гаджетов, где пригодится распознавание объектов, распознавание речи, трекинг объектов, навигация и т.д.

Одновременно с фреймворком Fathom компания Movidius сегодня на саммите Embedded Vision Summit в Калифорнии впервые показала публике ускоритель-на-флешке Fathom Neural Compute Stick — первый в мире прибор такого рода. Здесь вообще всё сразу готово к применению. Флэшка со встроенным ускорителем Myriad 2 просто вставляется в любое устройство с USB-портом.
Читать полностью »

Продолжаю рассказывать об интересных докладах на MBC Symposium (MBC, кстати, расшифровывается как Mind Brain Computation).

image

Surya Ganguli — человек из теоретического neuroscience, то есть, занимается тем, чтобы понять, как работает мозг, на основе измерений импульсов нейронов на различных уровнях.

И вот тут независимо от neuroscience в мире случается deep learning, и у нас получается некую искусственную систему чему-то научить.
В отличие от мозга, в котором у нас ограниченное разрешение, сложность с повторяемостью, итд итп, про deep network-то мы знаем абсолютно все, про все веса, про все состояния. Возникает вопрос — если мы собираемся разобраться, как работает мозг, может попробуем для начала понять как и почему работает вот такая маленькая система?

Без надежд, что мозг работает также, скорее с прицелом разработать какие-то методы, которые могут быть применимы потом.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js