Pull to refresh
6
0
Владимир Сотников @vvsotnikov

Разработчик

Send message

Как отслеживают людей по «анонимизированным» датасетам

Reading time 7 min
Views 59K
Утечка данных по всем машинам «Ситимобила» позволяет отслеживать конкретный автомобиль по его координатам. Мы не знаем фамилии водителя или номера, но видим его перемещения. Можете посмотреть в окно — и проверить, откуда приехало конкретное такси и куда оно повезёт следующего пассажира. Представитель компании не считает это проблемой.

На иллюстрации слева — маршрут таксиста, которого отследили по открытым анонимизированным данным. Krupnikas, статья «Как я нашел способ отследить всех водителей ”Ситимобил”»

Сейчас сбором таких данных через мобильные приложения занимаются десятки компаний. Только они отслеживают перемещения не такси, а людей. Всех людей. Совершенно легально.

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

Это не спецслужбы, не корпорации, а обычные компании с обычными клиентами. Не за горами то время, когда вы тоже за скромную сумму в районе $20 сможете заказать полное информационное досье на своего соседа (и наоборот). Давайте посмотрим, какая информация есть у этих фирм.
Total votes 98: ↑94 and ↓4 +90
Comments 157

Эксплуатация машинного обучения в Почте Mail.ru

Reading time 16 min
Views 6.5K


По мотивам моих выступлений на Highload++ и DataFest Minsk 2019 г.

Для многих сегодня почта является неотъемлемой частью жизни в сети. С ее помощью мы ведем бизнес-переписку, храним всевозможную важную информацию, связанную с финансами, бронированием отелей, оформлением заказов и многим другим. В середине 2018 года мы сформулировали продуктовую стратегию развития почты. Какой же должна быть современная почта?

Почта обязана быть умной, то есть помогать пользователям ориентироваться в увеличивающемся объеме информации: фильтровать, структурировать и предоставлять ее наиболее удобным способом. Она должна быть полезной, позволяя прямо в почтовом ящике решать различные задачи, например, оплачивать штрафы (функция, которой я, к своему сожалению, пользуюсь). И при этом, разумеется, почта должна обеспечивать информационную защиту, отсекая спам и защищая от взломов, то есть быть безопасной.
Читать дальше →
Total votes 47: ↑44 and ↓3 +41
Comments 7

Machine Learning for your flat hunt. Part 2

Reading time 9 min
Views 1.6K


Have you thought about the influence of the nearest metro to the price of your flat? 
What about several kindergartens around your apartment? Are you ready to plunge in the world of geo-spatial data?


The world provides so much information…



Read more →
Total votes 4: ↑4 and ↓0 +4
Comments 0

50 оттенков matplotlib — The Master Plots (с полным кодом на Python)

Reading time 39 min
Views 358K
Те, кто работает с данными, отлично знают, что не в нейросетке счастье — а в том, как правильно обработать данные. Но чтобы их обработать, необходимо сначала проанализировать корреляции, выбрать нужные данные, выкинуть ненужные и так далее. Для подобных целей часто используется визуализация с помощью библиотеки matplotlib.



Встретимся «внутри»!
Читать дальше →
Total votes 67: ↑67 and ↓0 +67
Comments 15

Sampler. Консольная утилита для визуализации результата любых shell команд

Reading time 5 min
Views 84K

В общем случае с помощью shell команды можно получить любую метрику, без написания кода и интеграций. А значит в консоли должен быть простой и удобный инструмент для визуализации.


Sampler


Наблюдение за изменением состояния в базе данных, мониторинг размера очередей, телеметрия с удаленных серверов, запуск деплой скриптов и получение нотификации по завершению — конфигурируется за минуту простым YAML файлом.


Код доступен на гитхабе. Инструкции по установке — для Linux, macOS и (экспериментально) Windows.

Читать дальше →
Total votes 298: ↑297 and ↓1 +296
Comments 54

Python consumes a lot of memory or how to reduce the size of objects?

Reading time 7 min
Views 85K

A memory problem may arise when a large number of objects are active in RAM during the execution of a program, especially if there are restrictions on the total amount of available memory.


Below is an overview of some methods of reducing the size of objects, which can significantly reduce the amount of RAM needed for programs in pure Python.


Note: This is english version of my original post (in russian).

Read more →
Total votes 15: ↑13 and ↓2 +11
Comments 3

Как я пишу конспекты по математике на LaTeX в Vim

Reading time 9 min
Views 123K
Некоторое время назад на Quora я отвечал на вопрос: как успевать записывать за лектором конспект по математике на LaTeX. Там я объяснил свой рабочий процесс по конспектированию в LaTeX с помощью Vim и Inkscape (для рисунков). Но с тех пор многое изменилось, так что я хочу опубликовать несколько постов в блоге с описанием нового процесса. Это первая из статей.

Я начал использовать LaTeX для конспектирования во втором семестре курса математики, и с тех пор написал более 1700 страниц. Вот несколько примеров, как выглядит конспект:


Читать дальше →
Total votes 222: ↑220 and ↓2 +218
Comments 133

У нейросетей удивительно простая стратегия классификации изображений

Reading time 6 min
Views 17K

Свёрточные нейросети отлично справляются с классификацией искажённых изображений, в отличие от людей




В данной статье я покажу, почему передовые глубинные нейросети прекрасно могут распознавать искажённые изображения и как это помогает раскрыть удивительно простую стратегию, используемую нейросетями для классификации естественных фотографий. У этих открытий, опубликованных в ICLR 2019, есть много последствий: во-первых, они демонстрируют, что найти «решение» ImageNet гораздо проще, чем считалось. Во-вторых, они помогают нам создавать более интерпретируемые и понятные системы классификации изображений. В-третьих, они объясняют несколько явлений, наблюдаемых в современных свёрточных нейросетях (СНС), к примеру, их склонность к поиску текстур (см. другую нашу работу в ICLR 2019 и соотв. запись в блоге), и игнорирование пространственного расположения частей объекта.
Читать дальше →
Total votes 48: ↑43 and ↓5 +38
Comments 14

Закон Яровой с точки зрения конституции. Почему можно

Reading time 2 min
Views 42K
Привет, %habrauser% это пробная заметка, с целью разведать насколько интересна данная тематика уважаемому сообществу.

И так, наверно многие задавались вопросом, почему статья 23 Конституции РФ предоставляет нам, среди прочего право на
тайну переписки, телефонных переговоров, почтовых, телеграфных и иных сообщений.
и обещает, что ограничение этого права возможно только через суд, в то время, как закон Яровой (на самом деле пакет из двух законов) по факту ограничивает нас в этом праве.
Читать дальше →
Total votes 102: ↑84 and ↓18 +66
Comments 323

Как этика стала самой дорогой проблемой Кремниевой долины, а философия — её самым практичным решением

Reading time 16 min
Views 20K
Увлёкшись скоростью технического прогресса, люди совершили ошибку неопытного военачальника, чрезмерно растянувшего свои войска на марше: к авангарду цивилизации вопросов нет, но то, что осталось столь далеко позади, словно приколочено к прошлому — ненужное нужно выбрасывать, а нужное — поддерживать актуальным. Какой из этих вариантов следует применить к этике — разделу философии, посвящённому осмыслению вопросов нравственности?

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



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

Поддержите новые публикации пожертвованием по ссылке money.yandex.ru/to/41001178171050 (карта, ЯД) или через кнопку «Отправить деньги» ниже (ЯД, PayPal)
Читать дальше →
Total votes 68: ↑55 and ↓13 +42
Comments 182

Госзакупки: баланс между итальянской забастовкой и русской уголовкой

Reading time 11 min
Views 42K
Прочитал я на днях статью ЕЭТП о госзакупках, и даже поучаствовал в комментариях.

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

В статье будут рассмотрены основные этапы процесса госзакупки, указаны способы, которыми участники вынуждены пользоваться для их обхода. Данная статья не является пошаговой инструкцией. От читателя ожидается знание основных понятий и некоторый опыт в госзакупках по 44-ФЗ и 223-ФЗ.
Читать дальше →
Total votes 125: ↑121 and ↓4 +117
Comments 320

Клубок единомышленников

Reading time 11 min
Views 16K
Как выживать в турбулентной корпоративной среде. Только для теоретического изучения.

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

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

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

Не скажу, что я стал прям акулой – такой цели не было. Но я нашел некое срединное состояние, когда выживание стало не только возможным, но и несложным, и даже прикольным. Как игра.

Попробую сформулировать, тезисно, основные правила, которые я для себя вынес, может они кому-то пригодятся.

На полное раскрытие темы не претендую, высших истин не открываю, обобщений старался избегать, ничего никому не навязываю.
Читать дальше →
Total votes 44: ↑37 and ↓7 +30
Comments 32

Proof of Concept: Как проверить, что внедрение ML стоит свеч

Reading time 16 min
Views 26K

Недавно в уютном чатике дата сатанистов подняли вопрос, как правильно "продавать" внутренние проекты по машинному обучению. Оказалось, что многие из нас весьма брезгливо относятся к экономическому обоснованию своей деятельности. Меж тем, чтобы провести минимальную оценку рентабельности проекта, никакого MBA не нужно — в небольшой статье (10 страниц текста, ке-ке-ке) я расскажу вам, что такое рентабельность инвестиций, как оценить её для внутреннего проекта, какую роль в этом играет Proof of Concept, и почему в реальной жизни всё может пойти не так. Делать мы всё это будем вокруг вымышленного проекта по автоматизации составления расписаний для колл-центра. Добро пожаловать под кат!


Я сделяль!

Читать дальше →
Total votes 54: ↑53 and ↓1 +52
Comments 5

256 строчек голого C++: пишем трассировщик лучей с нуля за несколько часов

Reading time 8 min
Views 142K
Публикую очередную главу из моего курса лекций по компьютерной графике (вот тут можно читать оригинал на русском, хотя английская версия новее). На сей раз тема разговора — отрисовка сцен при помощи трассировки лучей. Как обычно, я стараюсь избегать сторонних библиотек, так как это заставляет студентов заглянуть под капот.

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

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

Итак, сегодня я покажу, как отрисовывать подобные картинки:


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

Как поступить на PhD программу по машинному обучению

Reading time 26 min
Views 33K

1. Введение


Этот текст — небольшое обобщение моего опыта подачи заявок на Computer Science PhD с уклоном в machine learning в Северной Америке. Я постарался собрать в этом гайде свои просчеты (учиться лучше на чужих ошибках) и более-менее универсальные вещи, полезные всем. Но все равно нужно понимать, что это довольно индивидуальный опыт, поэтому ваша личная стратегия может отличаться. Например, в случае выбора вузов/научных руководителей или в написании statement of purpose. Ну или вы находитесь в других стартовых условиях по сравнению со мной (оценки, статьи, рекомендации).


Имейте в виду, что основная часть гайда писалась до получения результатов, потому что мне хотелось избежать «ошибки выживших» (survivorship bias) и проанализировать свой опыт безотносительно того, поступил я или нет. В конце руководства есть мои результаты: я поступил в 2 из 11 вузов, в которые подавался. На мой взгляд, все равно стоит избегать ошибок, которые я здесь буду описывать. Ну и нужно понимать, что в процессе подачи на ML PhD очень много шума, поэтому можно сделать все хорошо и пролететь и наверное даже наоборот.


image
Читать дальше →
Total votes 58: ↑57 and ↓1 +56
Comments 14

Вы уволили самого талантливого сотрудника. Надеюсь, теперь вы довольны

Reading time 7 min
Views 168K
Недавно довелось прочитать статью под названием «Мы уволили самого талантливого сотрудника. Это лучшее решение, которое мы когда-либо делали». [Очень популярная статья, которая получила массу положительных оценок на Medium — прим. пер.]

Давайте присядем, вы и я. Нужно поговорить. Если вы не читали статью по ссылке, то уделите 10–15 минут и прочитайте, впитайте её целиком.

Готовы? Отлично. Теперь разберём этот текст, потому что он значит гораздо больше, чем там написано. Если вы прочитали статью, то понимаете, что автор описывает проблемного сотрудника под вымышленным именем «Рик». Рик — это местный гений с огромным количеством знаний в предметной области, он входит в состав ключевых разработчиков продукта.

На первый взгляд, это история о технаре, который возомнил себя божьим даром для компании. Он решил, что руководители должны поклоняться земле, по которой он ходит и быть благодарны за одно его присутствие, а руководство вышвырнуло его пинком за дверь, потому что его репутация обналичивала чеки, за которые талант не мог заплатить.
Читать дальше →
Total votes 310: ↑300 and ↓10 +290
Comments 439

Продвинутое использование Гита или как выйти на пенсию на полгода раньше?

Reading time 11 min
Views 27K


Не знаю, на каком языке программирования вы пишете, но уверен, что используете Гит при разработке. Инструментов для сопровождения разработки становится всё больше, но даже самый маленький тестовый проект, я неизменно начинаю с команды git init. А в течение рабочего дня набираю в среднем ещё 80 команд, обращаясь к этой системе контроля версий.


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


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


Кому будет полезна эта статья?


Вы уже освоили джентльменский набор Гита и готовы двигаться дальше? Существует 2 пути:


  1. Освоить сокращённые команды – алиасы. Они почти всегда составлены мнемонически и легко запоминаются. Забыть оригиналы команд проблематично, я легко их набираю, когда это требуется. Плюс не сбиваюсь с мысли, проверяя что-то в Гите в процессе написания кода.
  2. Узнать о дополнительных флагах к командам, а также их объединении между собой. Я понимаю, что кто-то ненавидит сокращения. Для вас тоже есть интересный материал в статье – как повысить полезность и удобство вывода команд, а также как решать не самые тривиальные, но часто встречающиеся на практике задачи.

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


Добро пожаловать под кат!

Читать дальше →
Total votes 37: ↑30 and ↓7 +23
Comments 44

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity