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

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

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

Новая технология «Wi-Fi backscatter» позволяет создавать модули связи, которым не нужно активное питание

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


Само собой, речь идет не о холодильниках и микроволновках, а о миниатюрных устройствах, модулях связи нового типа. Группа инженеров из Университета Ваншингтона работают сейчас над проектом «Wi-Fi backscatter» позволяющим значительно снизить затраты энергии для систем «Интернета вещей», и позволить модулям беспроводной связи в разного рода устройствах работать, не потребляя энергию аккумулятора устройства.

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

Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии6

Настройка интеграции Calltouch и Google Analytics с помощью Google Tag Manager

Время на прочтение6 мин
Количество просмотров12K
Пришлось столкнуться с задачей настройки интеграции Calltouch и Google Analytics на сайте нескольких клиентов. Сложность заключалась в том, что ранее у них был настроен Google Analytics с помощью Google Tag Manager.

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


Пример отчета по событиям с Calltouch

Поскольку на сайте клиента была выполнена настройка Google Analytics с помощью Google Tag Manager, то вариант внедрения, предлагаемого сервисом Calltouch, оказался неприемлем. Возник вопрос по интеграции с помощью Google Tag Manager.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии2

Энергонезависимый дом: год успешного эксперимента

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

Проект Net-Zero Energy Residential Test Facility — это дом, построенный на территории Национального Института Стандартов и Технологий в Вашингтоне, округ Колумбия. Ученые и исследователи симулировали в этом милом домике жизнь семьи из четырех человек. В результате за год дом нагенерировал 13 577 кВт⋅ч энергии, что на 491 кВт⋅ч превышает изначально запланированный результат.

Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии80

A/B тест — это просто

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


A/B тестирование — это мощный маркетинговый инструмент для повышения эффективности работы вашего интернет-ресурса. С помощью A/B тестов повышают конверсию посадочных страниц, подбирают оптимальные заголовки объявлений в рекламных сетях, улучшают качество поиска.

Мне часто приходится сталкиваться с задачами организации A/B тестирования в различных интернет-проектах. В этой статье хочу поделиться необходимыми базовыми знаниями для проведения тестов и анализа результатов.
Читать дальше →
Всего голосов 28: ↑24 и ↓4+20
Комментарии13

О формуле Байеса, прогнозах и доверительных интервалах

Время на прочтение9 мин
Количество просмотров69K
На Хабре много статей по этой теме, но они не рассматривают практических задач. Я попытаюсь исправить это досадное недоразумение. Формула Байеса применяется для фильтрации спама, в рекомендательных сервисах и в рейтингах. Без нее значительное число алгоритмов нечеткого поиска было бы невозможно. Кроме того, это формула явилась причиной холивара среди математиков.

image

Читать дальше →
Всего голосов 86: ↑83 и ↓3+80
Комментарии19

API консоли Javascript

Время на прочтение15 мин
Количество просмотров36K
Разработчикам удобно пользоваться консолью для отладки, но ещё удобнее, если будет оболочка, в которой учтены особенности реализации консоли в различных браузерах, поэтому тема обёрток для консоли устойчиво существует.

Рассмотрим ранее опубликованные решения, затем сделаем обзор методов консоли с помощью перевода недавней статьи Axel Rauschmayer-а, разработчика и консультанта с более чем 15-летним стажем, затем я опубликую некоторые свои решения, которые оказались удачными в процессе эволюции и отладки на ряде проектов.
UPD 2015: обновление таблицы команд до актуального состояния, Github (ru, en; разворачивание на javascript).
ой, сколько букв
Всего голосов 51: ↑50 и ↓1+49
Комментарии30

Набор сенсоров McThings: подключаем все и вся к «Интернету вещей»

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


McThings — набор универсальных сенсоров и программного обеспечения для измерения большого количества параметров окружающей среды (температура, вибрация, звуки и т.п.) и интеграции бытовой/электротехники в облако. Вся система состоит из набора сенсоров McModule, которые по беспроводной связи обмениваются данными с центральным коммуникатором, называемым McRouter. Модули McModule можно подключать и к сторонним сенсорам/детекторам, делая обычные устройства «умными».

Сенсоры потребляют очень мало энергии, так что от обычной «таблетки» работают годы. McRouter позволяет подсоединить сенсоры к Сети (максимально доступное количество McModule, с которыми работает коммутатор — 250 штук), сделав доступной интеграцию с IFTTT, Facebook, Twitter, SMS, E-mail и прочими сервисами.

Управлять центральным устройством, McRouter, можно с IPhone, Android-смартфона, ПК или Mac.

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

Вероятностные модели: от наивного Байеса к LDA, часть 1

Время на прочтение6 мин
Количество просмотров37K
Продолжаем разговор. Прошлая статья была переходной от предыдущего цикла о графических моделях вообще (часть 1, часть 2, часть 3, часть 4) к новому мини-циклу о тематическом моделировании: мы поговорили о сэмплировании как методе вывода в графических моделях. А теперь мы начинаем путь к модели латентного размещения Дирихле (latent Dirichlet allocation) и к тому, как все эти чудесные алгоритмы сэмплирования применяются на практике. Сегодня – часть первая, в которой мы поймём, куда есть смысл обобщать наивный байесовский классификатор, и заодно немного поговорим о кластеризации.


Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии10

Вероятностные модели: LDA, часть 2

Время на прочтение6 мин
Количество просмотров23K
Продолжаем разговор. В прошлый раз мы сделали первый шаг на переходе от наивного байесовского классификатора к LDA: убрали из наивного байеса необходимость в разметке тренировочного набора, сделав из него модель кластеризации, которую можно обучать ЕМ-алгоритмом. Сегодня у меня уже не осталось отговорок – придётся рассказывать про саму модель LDA и показывать, как она работает. Когда-то мы уже говорили об LDA в этом блоге, но тогда рассказ был совсем короткий и без весьма существенных подробностей. Надеюсь, что в этот раз удастся рассказать больше и понятнее.

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

Графические модели в машинном обучении. Семинар в Яндексе

Время на прочтение14 мин
Количество просмотров17K
Несмотря на огромную популярность аппарата графических моделей для решения задачи структурной классификации, задача настройки их параметров по обучающей выборке долгое время оставалась открытой. В своем докладе Дмитрий Ветров, рассказал об обобщении метода опорных векторов и некоторых особенностях его применения для настройки параметров графических моделей. Дмитрий – руководитель группы Байесовских методов, доцент ВМК МГУ и преподаватель в ШАДе.

Видеозапись доклада.

План доклада:
  • Байесовские методы в машинном обучении.
  • Задачи с взаимозависимыми скрытыми переменными.
  • Вероятностные графические модели
  • Метод опорных векторов и его обобщение для настройки параметров графических моделей.



Сама концепция машинного обучения довольно несложная – это, если говорить образно, поиск взаимосвязей в данных. Данные представляются в классической постановке набором объектов, взятых из одной и той же генеральной совокупности, у каждого объекта есть наблюдаемые переменные, есть скрытые переменные. Наблюдаемые переменные (дальше будем их обозначать X) часто называются признаками, соответственно, скрытые переменные (T) — это те, которые подлежат определению. Для того, чтобы эту взаимосвязь между наблюдаемыми и скрытыми переменными установить, предполагается, что у нас есть обучающая выборка, т.е. набор объектов, для которых известны и наблюдаемые и скрытые компоненты. Глядя на нее, мы пытаемся настроить некоторые решающие правила, которые нам позволят в дальнейшем, когда мы видим набор признаков, оценить скрытые компоненты. Процедура обучения приблизительно выглядит следующим образом: фиксируется множество допустимых решающих правил, которые как правило задаются с помощью весов (W), а дальше каким-то образом в ходе обучения эти веса настраиваются. Тут же с неизбежностью возникает проблема переобучения, если у нас слишком богатое семейство допустимых решающих правил, то в процессе обучения мы легко можем выйти на случай, когда для обучающей выборки мы прекрасно прогнозируем ее скрытую компоненту, а вот для новых объектов прогноз оказывается плохой. Исследователями в области машинного обучения было потрачено немало лет и усилий для того, чтобы эту проблему снять с повестки дня. В настоящее время, кажется, что худо-бедно это удалось.
Конспект доклада
Всего голосов 57: ↑49 и ↓8+41
Комментарии5

Почему в поиске без лингвистики не обойтись?

Время на прочтение19 мин
Количество просмотров23K
Сегодня речь пойдет о том, какую роль в Интернет-поиске играет лингвистика. Чтобы поместить это в контекст, начну с того, как связаны между собой лингвисты и большая поисковая компания, например, «Яндекс» (более 5000 чел.), «Гугл» (более 50 000 чел.), «Байду» (более 20 000). От трети до половины этих людей работают непосредственно на поиск. Лингвисты внутри этих компаний примерно поровну делятся между поиском и остальными направлениями — новостями, переводом и т.д.



Я сегодня буду говорить о той части лингвистов, которая пересекается с поиском. На диаграмме она обозначена штриховкой. Возможно, в Google и других компаниях все устроено немножко иначе, чем у нас, тем не менее, общая картина примерно такая: лингвистика является важным, но не определяющим направлением работы поисковых компаний. Еще одно важное дополнение: в жизни, конечно, границы расплывчаты – невозможно сказать, например, где заканчивается лингвистика и начинается машинное обучение. Каждый лингвист, работающий в поиске, немного занимается программированием, немного — машинным обучением.
Читать дальше →
Всего голосов 70: ↑64 и ↓6+58
Комментарии14

Сравнение сервисов для автодополнения адресов в форме

Время на прочтение3 мин
Количество просмотров93K
Автодополнение адреса


На Хабре не раз поднимался вопрос автодополнения адресов в форме (раз, два, три).

Но вот и перед мной появилась задача реализовать такое автодополнение для небольшого интернет магазина. Критерии были такие:
  • Автодополнение адресов только Москвы
  • Автодополнение адреса одной строкой
  • Решение должно быть бесплатно (лимит запросов не менее 1000 в сутки)
  • Возможность подключить без дополнительных JS библиотек. (Я использую AngularJS Bootstrap-UI, в котором есть директива Typeahead, реализующая автодополнение формы)
  • Стопроцентный uptime не обязателен


Но какой источник данных выбрать? Я выбрал целых четыре, и решил их сравнить: в одном углу ринга заморские Google Geocode и Google Autococomplete, а в другом отечественные КЛАДР в облаке и DaData подсказки.

DISCLAIMER: Автор никак не причастен к разработчикам ни одного из представленных сервисов.
Интересно? Тогда прошу под кат
Всего голосов 56: ↑53 и ↓3+50
Комментарии56

Новая Яндекс.Метрика через API: конструктор отчётов и поддержка API других стандартов

Время на прочтение4 мин
Количество просмотров24K
Яндекс.Метрика полностью перестроила свой API. Теперь можно не ограничиваться запросом стандартных наборов отчетов в поисках чего-то полезного, а сразу задавать конкретный вопрос, ответ на который вам нужен.

Первый API Метрики появился через некоторое время после веб-интерфейса и был дополнительной функциональностью к нему. В нём были доступны базовые функции Метрики: набор основных отчётов по принципу один метод = один отчёт. Инструмент полезный, но негибкий, поскольку вместо точных ответов на ваши вопросы предлагал фиксированный набор столбцов в отчете без возможности сразу отфильтровать нужное.



Сейчас мы изменили свой подход, и работа Метрики полностью базируется на новом API. То есть он стал основой сервиса, а не каким-то дополнительным инструментом к нему. API работает по другим принципам: в нём доступен набор измерений и метрик, из которых можно построить любой отчёт по сайту, даже если его нет в веб-интерфейсе. Так что вы теперь сможете не просто изучать данные в отчетах, но и создавать свои аналитические решения. Кроме того, мы поддержали совместимость с разными стандартами API, в том числе Google Analytics.

Так как работа сервиса Яндекс.Метрика полностью базируется на новом API, в нём сразу появляются все новые инструменты и функции сервиса. Например, сегментация данных, которая через некоторое время станет доступна пользователям веб-интерфейса с запуском Метрики 2.0.
Что умеет новый API, и чем он полезен владельцу сайта
Всего голосов 66: ↑61 и ↓5+56
Комментарии22

Обзор наиболее интересных материалов по анализу данных и машинному обучению №2 (16 — 23 июня 2014)

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

В очередном обзоре наиболее интересных материалов, посвященных теме анализа данных и машинного обучения, достаточно большое внимание уделено популярному набору алгоритмов машинного обучения Deep Learning и его практическому применению. Несколько статей посвящено тому какие есть пути для собственного развития как специалиста по анализу данных и машинному обучению. Также несколько статей касаются такой темы как Data Engineering и рассматривают такие популярные продукты как Cassandra и Apache Kafka. Но начинается данный выпуск с обзора стартующих в ближайшее онлайн-курсов, связанных с темой анализа данных и машинного обучения.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии1

Обзор шины SPI и разработка драйвера ведомого SPI устройства для embedded Linux (Часть первая, обзорная)

Время на прочтение13 мин
Количество просмотров175K
В этой статье я хочу провести краткий обзор шины SPI (интерфейса, широко распространённого во встраиваемой технике, используемого для подключения различных устройств) и попытаюсь описать процесс создания драйвера протокольного уровня SPI устройства для Linux. Данный документ не претендует на роль полного руководства, а скорее преследует цель указать нужное направление. Так как статья не вошла в размер одного топика, мне пришлось разбить её на две части.

0. Вместо введения


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

Для кого эта статья?
В первую очередь, для новичков, каковым являюсь и я. На форумах по embedded Linux очень часто можно встретить вопрос: «А как на этой плате работать с SPI?». Именно на него я и попытаюсь дать ответ. В качестве примера, я приведу код написанный для работы с моим тестовым SPI устройством.
Читать дальше →
Всего голосов 52: ↑51 и ↓1+50
Комментарии13

Android + Arduino = ♥

Время на прочтение4 мин
Количество просмотров146K
Не так давно Google открыл API для работы Android устройств с USB. Сегодня пришло время пощупать что же это такое и узнать какие возможности нам открываются.



Читать дальше →
Всего голосов 103: ↑100 и ↓3+97
Комментарии54

Сидим, никого не трогаем, старые наушники починяем

Время на прочтение4 мин
Количество просмотров385K
Вот и наступил момент, когда очередные наушники вышли из строя. Работали бы сто лет, но самое слабое место современных наушников — провод в районе разъёма — опять дало о себе знать. Опять в магазин? Ну уж нет, слишком руки прямые. К тому же придётся искать точно такую модель, что непросто, ибо вкладыши постепенно вытесняются ненавистными (мною) in-ear ухосуйками. А звук у них неожиданно хороший для такого класса наушников.

image

Значит, берём в руки инструмент, и поехали. Под катом фотографий на 800 кБ.
Читать дальше →
Всего голосов 167: ↑144 и ↓23+121
Комментарии125

Собираем лазерный проектор из доступных деталей

Время на прочтение7 мин
Количество просмотров88K
UPD: Добавлены файлы платы с ЦАП на GitHub

Изначально я планировал сделать Лазерную арфу, но пока получился промежуточный результат — устройство, которое можно использовать как лазерный проектор — рисовать лазером различные фигуры, записанные в файлах формата ILDA. Я в курсе, что многие, кто берется за сборку лазерного проектора, в качестве устройства, управляющего гальванометрами (так и не понял как лучше перевести на русский сочетание “galvo scanner"), используют дешевые слегка модифицированные звуковые платы для компьютера. Я пошел иным путем, так как в конечном счете мне нужно будет полностью автономное устройство, которое может работать без компьютера.



Посмотрим из чего состоит мой лазерный проектор. Стоимость всех деталей составила около 8000 руб, из которых больше половины — это 70mW лазерный модуль.
  1. Гальванометры и драйверы к ним для отклонения луча лазера по осям X/Y
  2. 532нм 70mW лазерный модуль с питанием от 5В Dragon Lasers SGLM70
  3. Texas Instruments Stellaris Launchpad
  4. Самодельная плата с ЦАП AD7249BRZ
  5. Блок питания

Читать дальше →
Всего голосов 36: ↑35 и ↓1+34
Комментарии10

Основа для умной комнаты, или как Arduino в общежитии живёт

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

И вновь привет, Хаброжители! Ежедневно читая Хабр, я не раз наталкивался на статьи об Arduino и DIY проектах на его основе. Стоит заметить, что с электроникой я дел не имел, а весь мой опыт заключался в посещении радиокружка на базе подросткового клуба «Огонёк» (г. Петрозаводск). Однажды я собрался и решил сделать на Arduino браслет с сенсорами (температура, давление, пульс) для смартфона (связь по BT) Но сделав ошибку при заказе, я получил лишь сам Arduino и датчик давления. Чтобы протестировать плату я отправился в ближайший магазин радиодеталей за светодиодами, и там на глаза мне попался магнитный датчик закрытия двери. Он натолкнул меня на мысль, что можно было бы немного усовершенствовать жизнь в комнате (не путать с квартирой). Не тратя время, я оформил на Ali заказ с кучей сенсоров и Arduino Mega.
Узнать что было дальше...
Всего голосов 71: ↑61 и ↓10+51
Комментарии89

Как улучшить сегментацию пользовательской активности. Семинар в Яндексе

Время на прочтение8 мин
Количество просмотров5.2K
Известно, что активность пользователей дает разнообразную полезную информацию для поисковой системы. В частности, она помогает понять, какая информация необходима пользователю, выделить его персональные предпочтения, контекст темы, которой пользователь в данный момент интересуется. Большинство предыдущих исследований по данной теме либо рассматривали все действия пользователя за фиксированный период времени, либо делили активность на части (сессии) в зависимости от заранее определенного периода неактивности (таймаута).

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



Пользовательская активность в браузере, поисковике или на конкретном сайте является богатым источником полезной информации: переформулировки запросов, навигация до и после запроса/посещения портала. К сожалению, эта информация никак не структурирована и очень зашумлена. Основной задачей становится обработка, структуризация и очистка сырых данных. я хотел бы предложить метод для автоматического разделения пользовательской активности на логически связанные компоненты.
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии0

Информация

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

Специализация

Systems Analyst, Web Analyst
SQL
Python
Docker
Linux
Git
JavaScript
PowerBi
Web analyst
Data Analysis
DWH