Pull to refresh
1
0
Send message

Строим надёжный процессинг данных — лямбда архитектура внутри Google BigQuery

Reading time 5 min
Views 23K
В этой статье хочу поделиться способом, который позволил нам прекратить хаос с процессингом данных. Раньше я считал этот хаос и последующий ре-процессинг неизбежным, а теперь мы забыли что это такое. Привожу пример реализации на BiqQuery, но трюк довольно универсальный.

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

В последствии данные обрабатываются до состояния пригодного к употреблению разнообразными пользователями. Это могут быть внутренние дашборды; отчёты партнёрам; результаты, которые идут в продакшн и влияют на поведение продукта. Эти операции могут быть довольно сложными и включать несколько источников данных. Но по большей части мы с этим справляется внутри BigQuery с помощью SQL+UDF. Результаты сохраняются в отдельные таблицы там же.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Comments 2

MLOps-платформа Dognauts для разработки и эксплуатации ML-моделей. Часть 1: предыстория создания

Level of difficulty Medium
Reading time 10 min
Views 2.2K

Добрый день! Меня зовут Евгений Овчинцев, я работаю в компании Neoflex и в настоящее время являюсь архитектором продукта Dognauts. В данной серии статей я планирую рассказать о том, как создавался и развивался продукт: почему принимались те или иные решения, с какими проблемами пришлось столкнуться и что из всего этого получилось. 

Читать далее
Total votes 6: ↑5 and ↓1 +4
Comments 1

Знакомство с трансформерами. Часть 1

Reading time 13 min
Views 23K

Трансформеры (transformers) — это очень интересное семейство архитектур машинного обучения. Существует много хороших учебных материалов по этой теме (например — вот и вот), но в последние несколько лет трансформеры, в основном, становились всё проще. Поэтому сейчас гораздо легче, чем раньше, объяснить принципы их работы. Этот материал представляет собой попытку, что называется, «на пальцах», объяснить то, как работают современные трансформеры.

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

Для того чтобы понять примеры кода, понадобятся практические знания фреймворка PyTorch. Но эти примеры можно и пропустить без вреда для понимания остального материала.

Здесь можно найти видеолекции о трансформерах. А в этом репозитории имеется реализация простого трансформера с использованием PyTorch.

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

Как заставить работать бинарный классификатор чуточку лучше

Reading time 6 min
Views 47K
Disclaimer: пост написан по мотивам данного. Я подозреваю, что большинство читателей прекрасно знает, как работает Наивный Байесовский классификатор, поэтому предлагаю лишь мельком хотя бы глянуть на то, о чём там говорится, перед тем как переходить под кат.

Решение задач с помощью алгоритмов машинного обучения давно и прочно вошло в нашу жизнь. Это произошло по всем понятным и объективным причинам: дешевле, проще, быстрее, чем явно кодить алгоритм решения каждой отдельной задачи. До нас, обычно, доходят «черные ящики» классификаторов (вряд ли тот же ВК предложит вам свой корпус размеченных имен), что не позволяет ими управлять в полной мере.
Здесь я бы хотел рассказать о том, как попробовать добиться «лучших» результатов работы бинарного классификатора, о том какие характеристики бинарный классификатор имеет, как их измерять, и как определить, что результат работы стал «лучше».
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 9

Полноценное Python приложение на Android

Reading time 4 min
Views 164K


В этой статье я хотел бы рассказать о том, как создать полноценное приложение на Python для Android. Нет, это не очередной мануал для создания скрипта для sl4a, это мануал по созданию полноценного приложения с UI, возможностью собрать apk и выложить на Android Market. Заодно я хотел бы похвалиться своим первым приложением на google.play, это не hello world, а полезное приложение для фотографов, хотя и узко специализированное.
Читать дальше →
Total votes 109: ↑106 and ↓3 +103
Comments 45

Загадка фликкер-шума разгадана

Reading time 10 min
Views 68K


Давным-давно, когда диоды были ещё вакуумными, J. В. Johnson впервые наблюдал мерцательный эффект в токе электронных ламп, который он так и назвал – мерцательным или фликкер-шумом. Прошло ровно 90 лет с тех пор, а фликкер-шум продолжают обнаруживать в самых разнообразных системах – от полупроводниковых приборов до разлива рек, от физики до социологии, но объяснить природу его происхождения так никто и не смог.
Читать дальше →
Total votes 88: ↑82 and ↓6 +76
Comments 129

B1 Basis Band: часы-биорегистратор. Геймификация здорового образа жизни (первый обзор на русском)

Reading time 8 min
Views 107K
Мечта, пожалуй, любого айтишника — автоматизировать жизнь и поставить мониторинг на все на свете. До всего на свете еще далеко, а часы, позволяющие записывать целый ряд биопоказателей и отсылать их в «облако» для обработки и анализа, уже есть, и мне довелось их недавно приобрести.

.

Гаджет B1 Basis Band, один из номинантов выставки CES-2012, — это первый портативный биорегистратор, следящий за здоровьем с помощью датчиков, измеряющих сердечный ритм человека, влажность кожи, движение, температуру. Они следят за временем, потраченным на сон, считают количество сожжённых калорий. Данные через USB и bluetooth передаются на компьютер или мобильный телефон и заносятся в онлайн-профиль. В дальнейшем будем этот биорегистратор называть часами для простоты. Тем более, он еще и правда часы.

B1 Basis band продолжает линейку Fitbit, Jawbone, Nike Fuelband, дополняя привычное совершенно новыми функциями, которых еще ни в одних портативных устройствах не было. Стоит ли покупка потраченных денег?

Читать дальше →
Total votes 56: ↑49 and ↓7 +42
Comments 102

Концепт UI для Windows 8

Reading time 1 min
Views 26K
Дизайнер Sputnik8 (Phyek) на форумах The Verge вынес на суд публики концепт дизайна для десктопной версии Windows 8 (все скриншоты кликабельны).



На скриншотах изображены разные версии Explorer, браузера IE (с переделанными сайтами Windows.com и Bing), Media Center/Player и Skype. Автор подчёркивает, что он не стремился строго соблюдать новый стиль Metro, в общем, его работа — это скорее фантазия на тему, как может выглядеть Windows 8.
Читать дальше →
Total votes 210: ↑182 and ↓28 +154
Comments 208

Я, пират

Reading time 17 min
Views 277K


Все-таки красные у меня глаза или нет? Кажется не очень. Может так и должно быть? Я внимательно разглядывал себя в зеркало. Нет, всё-таки красные, хоть и не так сильно. Может не стоит уже с утра проверять почту и ходить по всем этим сайтам? Ну напишут там что-то, а я не прочитаю, ну и что такого? Нет, каждый раз просыпаюсь и первым делом туда…

Так начинался фантастический рассказ — антиутопия про один день из жизни программиста в недалёком будущем, написанный мной в 2010 году. Меня просили продолжить, и через какое-то время появились идеи, но всё никак не было времени их реализовать. Однако в связи с последними событиями начинает казаться, что придуманный мной сюжет того гляди может стать реальностью. Поэтому сегодня представляю вам вторую главу. Рисунок был сделан в прошлом году совсем по другому поводу, но он хорошо подошел сюда как иллюстрация.
Читать дальше →
Total votes 228: ↑205 and ↓23 +182
Comments 70

Shuttle KD20 — домашний мини-NAS

Reading time 3 min
Views 71K
Рано или поздно приходит время, когда в качестве домашнего компьютера многие начинают использовать компактные устройства. Вот и я — избавился, наконец, от громоздкого midi-tower и пересел на моноблок.
Объем и отказоустойчивость дисковой подсистемы подобных устройств оставляют желать лучшего, поэтому появляется потребность во внешней системе хранения данных. Под данными подразумеваю фото, видео, дистрибутивы — в общем все то, что не нужно постоянно, но должно быть под рукой. Диски у меня были — вынул из старого компа, оставалось подобрать платформу для NAS.
Почитал статьи на хабре, в основном рекомендуют полноценные системы на mini-ITX материнках — стоимость таких решений от 10 тысяч рублей без учета дисков. Но мне нужно было решение проще, что-нибудь вроде внешнего сетевого диска, но с отказоустойчивостью RAID-массива.
Решил попробовать mini-NAS Shuttle KD20
Total votes 29: ↑23 and ↓6 +17
Comments 62

Деанонимизация через генетическую информацию

Reading time 11 min
Views 52K
Краткая суть:
В Сети в открытом доступе некоторое время назад появились базы данных с генетической информацией людей (информацией разного уровня детализации — от полных последовательностей (сиквенса) всего генома до ограниченной информации по коротким тандемным повторам Y-хромосомы (Y-STRs). Например, энтузиасты делятся информацией о своих Y-STRs (гаплотип) на генеалогических сайтах для выяснения родственных связей и поиска дальних родственников, эти данные не анонимны. Так же в свободном доступе находится анонимная медицинская генетическая информация, например из научного проекта "1000 геномов человека" (проект по полной расшифровке геномов тысячи разных людей), где анонимность доноров ДНК поддерживается по этическим причинам.

Здесь начинается самое интересное. Генеалогические базы данных (даже весьма плохо заполненные, но тем не менее) позволяют деанонимизировать людей. Например, показано, что в случае искусственного оплодотворения спермой от анонимного донора, использование генеалогических баз данных позволяет узнать по крайней мере фамилию настоящего биологического отца ребенка (то есть через очень дальних родственников, засветившихся в базе, узнать, из какой семьи был донор), а при наличии дополнительной информации, такой, как место проживания и т.п., позволяет однозначно идентифицировать биологического отца. Недавно было показано, что находящиеся в свободном доступе анонимные генетические данные, плюс дополнительная информация о возрасте и т.п., позволяют точно установить личности примерно 50 анонимных доноров ДНК из проекта «1000 геномов человека». Это весьма настораживающее достижение, так как полная генетическая информация этих людей, находящаяся в открытом доступе, содержит данные об их предрасположенности к тем или иным заболеваниям и т.д., она может быть корыстно использована страховыми компаниями и подобными организациями.



Если Вам интересны детали и подробности, добро пожаловать под кат.
Читать дальше →
Total votes 66: ↑66 and ↓0 +66
Comments 133

Браузеры генома

Reading time 5 min
Views 60K
Не последнюю роль в биоинформатике занимает визуализация. Учёные в этой области работают с огромными объёмами информации, которую хорошо бы как-то охватить взглядом и представить в голове. Ярким примером средства визуализации являются браузеры геномов (genome browser), о которых я и хочу рассказать.

Читать дальше →
Total votes 93: ↑91 and ↓2 +89
Comments 81

Как быстро создать опрос на вашем сайте с помощью форм Google?

Reading time 4 min
Views 144K
Как быстро создать опрос на вашем сайте с помощью форм Google?Рано или поздно, практически все, у кого есть собственный сайт, сталкиваются с необходимостью создания форм обратной связи для сбора данных (проведения опросов) с посетителей сайта.

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

Есть несколько подходов в создании подобных форм:

• Формы можно сделать, используя теги HTML и завязать нажатие кнопки «Отправить» с отправкой введенных данных вам на email

• Можно сделать связку PHP+MySQL (или любой другой язык программирования и базу данных) и все введенные данные сохранять в базу данных для дальнейшей работы.

• Если ваш сайт сделан с использованием какой-нибудь популярной CMS (например, Joomla, Drupal или WordPress), то вы можете поискать в сети плагины, модули и компоненты, которые достаточно просто позволяют создавать формы

• А можно для создания форм обратной связи использовать бесплатные инструменты всем известного Google.Docs

И в этой статье я хотел бы показать как с помощью Google.Docs вы можете легко и быстро создавать всевозможные формы опроса для ваших сайтов.
Читать дальше →
Total votes 63: ↑48 and ↓15 +33
Comments 16

XAircraft x650 и аэро-фотография

Reading time 10 min
Views 82K


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

Читать дальше →
Total votes 73: ↑71 and ↓2 +69
Comments 58

Вечная жизнь: замена мозга другим носителем с сохранением сознания и личности

Reading time 6 min
Views 131K

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

1. Управляемое бесконечное деление биологической клетки
2. Перенос сознания на другой более отказоустойчивый носитель.

Смысл статьи и последующей дискуссии — исследовать теорию именно по пункту 2, т.к. он подразумевает не копирование личности, когда ваш мозг скопирован в кого-то другого, но при этом вы остаётесь самим собой, а перенос именно вашего мозга на другой носитель, да так, чтобы вы не прекратили своего существования, мыслительного континуума, самоосознания.
Читать дальше →
Total votes 82: ↑60 and ↓22 +38
Comments 361

Впервые создана компьютерная модель живой клетки

Reading time 2 min
Views 9.2K
Ученые в Стэнфорде совершили огромный шаг вперед: впервые была создана полная цифровая модель организма и всего его жизненного цикла. Для создания компьютерной модели крошечной бактерии Mycoplasma genitalium потребовалось написать 28 независимых взаимодействующих друг с другом модулей, симулирующих процессы живой клетки и оперирующих 1.900 параметрами. Для описания их поведения использовались 900 различных научных отчетов. Сложность модели высока: лишь для процесса деления одноклеточного требуется 10 часов симуляции, а на выходе получается полгигабайта данных.

Mycoplasma genitalium — простой паразит, обитающий в мочеполовых и дыхательных путях. Бактерия привлекает исследователей в первую очередь размером своего генетического аппарата — у M. genitalium всего 525 генов, в то время как у более традиционной лабораторной E. coli их 4.288. Несмотря на характер микроорганизма и трудности в работе с паразитом, малое количество генов делает его привлекательным для биоинженеров: именно с участием M. genitalium в 2008 году впервые была создана искусственная хромосома.
Читать дальше →
Total votes 97: ↑90 and ↓7 +83
Comments 81

Вояджер-1 нащупал границу Солнечной системы

Reading time 2 min
Views 13K
Вояджер-1 — автоматический зонд, запущенный в 1977 году, достиг границ гелиосферы. Гелиосфера — это область околосолнечного пространства, где солнечный ветер всё ещё преобладает над “галактическим ветром” — потоком частиц межзвёздной среды. Два года назад аппарат вошёл в зону гелиопаузы, где давление солнечного ветра и уравновешивает давление межзвёздной среды. В июне этого года датчики Вояджера зарегистрировали резкий рост уровня галактических космических лучей — аппарат вышел из под защиты солнечного ветра.

Вояджер-1 находится на расстоянии 121 астрономической единицы (18 миллиардов километров) от Солнца и движется со скоростью 17 километров в секунду. Это самый удалённый от Земли и самый быстрый объект, когда либо построенный человеком. Радиосигнал от Вояджера достигает Земли за 16 часов 38 минут.
Читать дальше →
Total votes 205: ↑199 and ↓6 +193
Comments 313

Обзор Circos: круг — это хорошо

Reading time 3 min
Views 6.1K
Circos — открытый программный пакет для визуализации данных и информации. Он визуализирует данные в форме круга, что идеально подходит для изучения связей между объектами. Также, это просто красиво.


Читать дальше →
Total votes 38: ↑31 and ↓7 +24
Comments 20

Как работает беспилотный автомобиль «Гугла»

Reading time 3 min
Views 27K


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

На данный момент принадлежащий поисковому гиганту флот роботизированных автомобилей «Тойота Приус» отмотал более 300 тысяч километров в городском окружении, на оживленных трассах и горных дорогах лишь с частичными вмешательствами человека. Проект всё ещё далек от выхода на рынок, но в «Гугле» в собственном кампусе установили беспилотные гольф-карты, которые наглядно демонстрируют, как уже в ближайшем будущем новая технология может изменить мир.

Читать дальше →
Total votes 132: ↑132 and ↓0 +132
Comments 200

Очень быстрый и эффективный способ расслабления глаз

Reading time 4 min
Views 412K

Предисловие


imageНе знаю, все ли программисты всесторонне любознательные люди, но я всегда пытаюсь получить фундаментальные знания во всех областях, которые могут быть практически полезны. В то время, когда мне в голову пришла эта идея я изучал анатомию и физиологию по журналам «Тело человека. Снаружи и внутри», ну а по работе я занимался стерео-варио фотографиями (для тех кто не знает — были такие советские календарики с ребристой поверхностью, где картинка либо казалась объемной, либо менялась). Так вот, в один из вечеров мне пришла в голову замечательная идея, которую я на протяжении уже 4х лет использую для поддержания своего зрения.
Обещаю, что эффект почувствуете сразу!
Читать дальше →
Total votes 246: ↑238 and ↓8 +230
Comments 207

Information

Rating
Does not participate
Registered
Activity