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

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

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

Где и как врубиться в эмбеддинги графов

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

Привет, Хабр!


Три года назад на сайте Леонида Жукова я ткнул ссылку на курс Юре Лесковека cs224w Analysis of Networks и теперь мы будем его проходить вместе со всеми желающими в нашем уютном чате в канале #class_cs224w. Cразу же после разминки с открытым курсом машинного обучения, который начнётся через несколько дней.


image


Вопрос: Что там начитывают?
Ответ: Современную математику. Покажем на примере улучшения процесса IT-рекрутинга.


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

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

Как обучть мдль пнмть упртые скрщня

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

Недавно я натолкнулся на вопрос на Stackoverflow, как восстанавливать исходные слова из сокращений: например, из wtrbtl получать water bottle, а из bsktballbasketball. В вопросе было дополнительное усложнение: полного словаря всех возможных исходных слов нет, т.е. алгоритм должен быть в состоянии придумывать новые слова.


Вопрос меня заинтриговал, и я полез разбираться, какие алгоритмы и математика лежат в основе современных опечаточников (spell-checkers). Оказалось, что хороший опечаточник можно собрать из n-граммной языковой модели, модели вероятности искажений слов, и жадного алгоритма поиска по лучу (beam search). Вся конструкция вместе называется модель зашумлённого канала (noisy channel).


Вооружившись этими знаниями и Питоном, я за вечер создал с нуля модельку, способную, обучившись на тексте "Властелина колец" (!), распознавать сокращения вполне современных спортивных терминов.


Читать дальше →
Всего голосов 88: ↑87 и ↓1+86
Комментарии17

Простой монитор системы на Flask

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

Недавно возникла необходимость сделать простой и расширяемый монитор использования системы для сервера на Debian. Хотелось строить диаграммы и наблюдать в реальном времени использование памяти, дисков и тп. Нашел много готовых решений, но в итоге сделал скрипт на python + Flask + psutil. Получилось очень просто и функционально. Можно легко добавлять новые модули.


Читать дальше →
Всего голосов 14: ↑12 и ↓2+10
Комментарии27

Исчерпывающий справочник по JavaScript для вашего следующего собеседования

Время на прочтение6 мин
Количество просмотров53K
Перевод статьи Gustavo Azevedo The Definitive JavaScript Handbook for your next developer interview.



JavaScript был и продолжает быть самым популярным языком программирования, согласно опросу Stack Overflow Survey. Неудивительно, что 1/3 всех вакансий требуют знания JavaScript. Поэтому, если вы планируете работать разработчиком в ближайшем будущем, то вам следует ознакомиться с этим черезвычайно популярным языком.

Цель публикации — собрать в одном месте все концепции JavaScript, которые часто встречаются на собеседовании.
Читать дальше →
Всего голосов 34: ↑23 и ↓11+12
Комментарии26

Итоги развития компьютерного зрения за один год

Время на прочтение12 мин
Количество просмотров29K
Часть первая. Классификация/локализация, обнаружение объектов и слежение за объектом

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

Введение


Компьютерным зрением обычно называют научную дисциплину, которая даёт машинам способность видеть, или более красочно, позволяя машинам визуально анализировать своё окружение и стимулы в нём. Этот процесс обычно включает в себя оценку одного или нескольких изображений или видео. Британская ассоциация машинного зрения (BMVA) определяет компьютерное зрение как «автоматическое извлечение, анализ и понимание полезной информации из изображения или их последовательности».

Термин понимание интересно выделяется на фоне механического определения зрения — и демонстрирует одновременно и значимость, и сложность области компьютерного зрения. Истинное понимание нашего окружения достигается не только через визуальное представление. На самом деле визуальные сигналы проходят через оптический нерв в первичную зрительную кору и осмысливаются мозгом в сильно стилизованном смысле. Интерпретация этой сенсорной информации охватывает почти всю совокупность наших естественных встроенных программ и субъективного опыта, то есть как эволюция запрограммировала нас на выживание и что мы узнали о мире в течение жизни.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии14

Система сбора, анализа, уведомлений и визуализации логов на syslog-ng, elasticsearch, kibana, grafana, elasticalert

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

image


Что мы получим после этой статьи:


Систему сбора и анализа логов на syslog-ng, elasticsearch в качестве хранилища данных, kibana и grafana в качестве систем визуализации данных, kibana для удобного поиска по логам, elasticalert для отправки уведомлений по событиям. Приготовьтесь, туториал объемный.


Какие логи будем собирать:


  • все системные логи разложенные по индексам в зависимости от их facility(auth,syslog,messages и т.д.);
  • логи nginx — access и error;
  • логи pm2;
  • и др.

Обоснование выбора системы


Почему я выбрал связку с syslog-ng в качестве отправителя, парсера и приемщика логов? Да потому что он очень быстрый, надежный, не требовательный к ресурсам(да да — logstash в качестве агентов на серверах и виртуальных машинах просто убожество в плане пожирания ресурсов и требованием java), с внятным синтаксисом конфигов(вы видели rsyslog? — это тихий ужас), с широкими возможностями — парсинг, фильтрация, большое количество хранилищ данных(postgresql,mysql,elasticsearch,files и т.д.), буферизация(upd не поддерживает буферизацию), сторонние модули и другие фишки.


Требования:


  • Ubuntu 16.04 или debian 8-9;
  • vm для развертывания;
  • Прямые руки.

Приступим или добро пожаловать под кат

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

Асинхронная загрузка больших датасетов в Tensorflow

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

Глубокие нейронные сети сейчас модная тема.


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


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


Процесс обучения нейронной сети при этом заключается в "предъявлении" нейронной
сети пакетов объектов, сравненнии предсказанных классов с истинными, вычисления
ошибки и модификации коэффициентов нейронной сети.


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


Predicticting graph


с графом который в том числе выполняет подстройку коэффициенотов


Training graph.


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


Как с их использованием построить эффективный конвеер для "питания" (англ feed) нейронной сети входными данными я и хочу расскажу в этой статье.

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

Intel AI Academy — новогодний подарок для всех разработчиков AI

Время на прочтение3 мин
Количество просмотров7.7K
Искусственный интеллект давно перестал ассоциироваться исключительно с суперкомпьютерами и мейнфреймами, сейчас это область профессиональных (или не очень) интересов десятков тысяч людей по всему миру. Осознавая важность задачи, Intel в рамках портала Intel Developer Zone создала специальный раздел Intel AI Academy, призванный помочь начинающим и опытным разработчикам в области Deep Learning, компьютерного зрения и других аспектов AI. Разрешите провести небольшую экскурсию по ресурсу, чтобы показать, чем он вам может быть полезен.


Всего голосов 10: ↑9 и ↓1+8
Комментарии1

Предсказываем отток с помощью нейросети

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

Проблема предсказания оттока клиентов — одна из самых распространенных в практике Data Science (так теперь называется применение статистики и машинного обучения к бизнес-задачам, уже все знают?). Проблема достаточно универсальна: она актуальна для многих отраслей — телеком, банки, игры, стриминг-сервисы, ритейл и пр. Необходимость ее решения довольно легко обосновать с экономической точки зрения: есть куча статей в бизнес-журналах о том, что привлечь нового клиента в N раз дороже, чем удержать старого. И ее базовая постановка проста для понимания так, что на ее примере часто объясняют основы машинного обучения.

Для нас в Plarium-South, как и для любой игровой компании, эта проблема также актуальна. Мы прошли длинный путь через разные постановки и модели и пришли к достаточно оригинальному, на наш взгляд, решению. Все ли так просто, как кажется, как правильно определить отток и зачем тут нейросеть, расскажем под катом.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии3

Новогодний датасет: открытая семантика русского языка

Время на прочтение7 мин
Количество просмотров8.2K
Новый год — время чудес и подарков. Главным чудом, которое подарила нам природа, безусловно является естественный язык и человеческая речь. А мы, в свою очередь, хотим сделать новогодний подарок всем исследователям этого феномена и поделиться датасетом по открытой семантике русского языка.

В статье мы позволим себе немного подискутировать на тему смыслов, расскажем как мы пришли к необходимости создания открытой семантической разметки, расскажем о настоящих результатах и будущих направлениях этой большой работы. И, конечно, дадим ссылку на датасет, который вы сможете скачать и использовать для своих экспериментов и исследований.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии8

Доделал игру, работающую на видеокарте

Время на прочтение3 мин
Количество просмотров87K
Наконец-то я доделал игру, которая работает на видеокарте. Она несколько месяцев повисела в раннем доступе на стиме, и теперь я её окончательно выпустил. Основная фишка игры в том, что она представляет собой физическую симуляцию, которая выполняется на графическом процессоре. Основной код игры — это огромный compute shader, 6 тысяч строк на HLSL. Десятки тысяч взаимодействующих частиц обрабатываются параллельно, и выходит довольно быстро. Всё в игре сделано из этих частиц. Вот несколько гифок о том, как это работает:

image
Читать дальше →
Всего голосов 287: ↑276 и ↓11+265
Комментарии187

Нестандартная кластеризация 5: Growing Neural Gas

Время на прочтение13 мин
Количество просмотров18K
Часть первая — Affinity Propagation
Часть вторая — DBSCAN
Часть третья — кластеризация временных рядов
Часть четвёртая — Self-Organizing Maps (SOM)
Часть пятая — Growing Neural Gas (GNG)

Доброго времени суток, Хабр! Сегодня я бы хотел рассказать об одном интересном, но крайне малоизвестном алгоритме для выделения кластеров нетипичной формы — расширяющемся нейронном газе (Growing Neural Gas, GNG). Особенно мало информации об этом инструменте анализа данных в рунете: статья в википедии, рассказ на Хабре о сильно изменённой версии GNG и пара статей с одним лишь перечислением шагов алгоритма — вот, пожалуй, и всё. Весьма странно, ведь мало какие анализаторы способны работать с меняющимися во времени распределениями и нормально воспринимают кластеры экзотической формы — а это как раз сильные стороны GNG. Под катом я попробую объяснить этот алгоритм сначала человеческим языком на простом примере, а затем более строго, в подробностях. Прошу под кат, если заинтриговал.

(На картинке: нейронный газ осторожно трогает кактус)
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии5

Нестандартная кластеризация 4: Self-Organizing Maps, тонкости, улучшения, сравнение с t-SNE

Время на прочтение13 мин
Количество просмотров23K
Часть первая — Affinity Propagation
Часть вторая — DBSCAN
Часть третья — кластеризация временных рядов
Часть четвёртая — Self-Organizing Maps (SOM)
Часть пятая — Growing Neural Gas (GNG)

Self-organizing maps (SOM, самоорганизующиеся карты Кохонена) — знакомая многим классическая конструкция. Их часто поминают на курсах машинного обучения под соусом «а ещё нейронные сети умеют вот так». SOM успели пережить взлёт в 1990-2000 годах: тогда им пророчили большое будущее и создавали новые и новые модификации. Однако, в XXI веке SOM понемногу уходят на задний план. Хоть новые разработки в сфере самоорганизующихся карт всё ещё ведутся (большей частью в Финляндии, родине Кохонена), даже на родном поле визуализации и кластеризации данных карты Кохонена всё чаще уступает t-SNE.

Давайте попробуем разобраться в тонкостях SOM'ов, и выяснить, заслуженно ли они были забыты.


Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии1

Рубрика «Читаем статьи за вас». Сентябрь 2017

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


Привет, Хабр! Мы продолжаем нашу традицию и снова выпускаем ежемесячный набор рецензий на научные статьи от членов сообщества Open Data Science из канала #article_essense. Хотите получать их раньше всех — вступайте в сообщество ODS!


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

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

Введение в реверс инжиниринг с Radare2

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

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

Читать дальше →
Всего голосов 61: ↑60 и ↓1+59
Комментарии9

Как увеличить показатели сервиса в 7 раз за три месяца с помощью HADI-циклов и приоритизации гипотез

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

Меня зовут Илья Китанин, я более 7 лет руковожу разработкой в различных компаниях, сейчас — в Преакселераторе ФРИИ. В этой статье я расскажу, как с помощью HADI-циклов и Теории ограничений Голдратта (TOC) мы смогли вырастить ключевые показатели сервиса Cofoundit в 7 раз за 3 месяца и продолжаем активно расти сейчас. В этом материале — кейсы применения методологии ФРИИ, грабли, которые мы прошли, и необходимый минимум теории.
Читать дальше →
Всего голосов 31: ↑28 и ↓3+25
Комментарии4

Почему CNTK?

Время на прочтение8 мин
Количество просмотров15K
Привет, Хабр! Меня зовут Женя. В начале карьеры я был Data Scientist, когда это еще не было мэйнстримом. Потом переключился на чистую T-SQL разработку, которая под конец успела перерасти в бизнес-аналитику. Теперь я — технологический евангелист в Microsoft с очевидным упором на платформу данных, хотя это не мешает мне заниматься в свободное время другими классными темами, как, например, Docker контейнеры или Mixed Reality.

Недавно я общался с одним из партнеров и он спросил меня, почему мы почти не рассказываем о преимуществах CNTK на Хабре. Сначала мы подумали, что может быть банальнее, чем рассказа в блоге компании и преимуществах продукта этой же компании. Но потом решили, что это отличная возможно узнать ваше мнение и пообщаться. Приглашаю под кат всех, кому интересна тема CNTK и TensorFlow.


Читать дальше →
Всего голосов 40: ↑32 и ↓8+24
Комментарии18

Chuwi Hi13 — почти Surface

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

*шутка про созвучие названия планшета с Чубаккой

У нас дома появился планшет-ноутбук, давно хотели. Выбор пал на Chuwi Hi13. Это как Microsoft Surface Book, только дёшево и сердито, зато с хорошим экраном. Расскажу, что в нём хорошего, а к чему стоит присмотреться внимательно.
Всего голосов 11: ↑8 и ↓3+5
Комментарии43

Ловись, рыбка: как использовать «озеро данных» в банке. Опыт ВТБ

Время на прочтение3 мин
Количество просмотров7.6K
Вы идете в банк за кредитом на развитие бизнеса, на покупку авто или на другие цели. Давать или не давать – в каждом случае специалисты банка решают этот вопрос индивидуально, принимая во внимание кредитную историю клиента, размер его дохода и другие факторы. Казалось бы, система кредитования давно настроена и исправно работает. Можно ли придумать что-то новое в этом отношении? Мы в рознице ВТБ отвечаем на этот вопрос утвердительно. Исследования подтверждают: данные о клиентском поведении, которые имеются в распоряжении банка, задействованы далеко не полностью, и в этом направлении использование IT дает очень хороший эффект!



Как мы интегрируем IT в бизнес и какие преимущества получают клиенты – читайте под катом.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии24

Быстрая регистрация особых точек изображений с помощью голосования биграфа

Время на прочтение2 мин
Количество просмотров7.6K
Детектирование и регистрация особенностей изображений имеет много приложений в робототехнике, видео компрессии и т.д. Быстрая и аккуратная регистрация — пока недостижимая мечта многих программистов и пользователей. Она или быстрая, или аккуратная…
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии8
1
23 ...

Информация

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