Как стать автором
Обновить
54
0
Андрей Иванов @AndreyIvanoff

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

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

Текстовые капчи легко распознаются нейронными сетями глубокого обучения

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


Нейронные сети глубокого обучения достигли больших успехов в распознавании образов. В тоже время текстовые капчи до сих пор используются в некоторых известных сервисах бесплатной электронной почты. Интересно смогут ли нейронные сети глубоко обучения справится с задачей распознавания текстовой капчи? Если да то как?
Читать дальше →
Всего голосов 79: ↑77 и ↓2+75
Комментарии102

Эффект дизеринга в трёхмерной игре

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

Создатель Papers, Please Лукас Поуп работает над новым трёхмерным проектом Return of the Obra Dinn, в котором пытается с помощью эффекта дизеринга воссоздать в игре ощущение старинной книги.

Для начала краткое объяснение: Obra Dinn выполняет внутренний рендеринг всего в 8-битной палитре в градациях серого, а затем на этапе постобработки преобразует конечные выходные данные в 1-битные значения. Преобразование из 8-битного в 1-битный цвет выполняется сравнением каждого пикселя исходного изображения с соответствующей точкой в тайловом паттерне дизеринга. Если значение пикселя изображения больше значения точки паттерна дизеринга, то выходному биту присваивается значение 1, в противном случае оно равно 0. Выходные данные упрощаются до 1-битных значений, а глаз зрителя объединяет пиксели, аппроксимируя из них больше битов.
Читать дальше →
Всего голосов 72: ↑72 и ↓0+72
Комментарии42

Не простая координатная система, а золотая

Время на прочтение3 мин
Количество просмотров13K
В одной из мозаик Пенроуза используются всего два ромба, отличающиеся углами. Из этих элементов можно выстроить апериодическую мозайку любых размеров. Для её отображения я попробовал представить координаты аналитически.

image

Распределение углов в ромбах в одном 1:4, 36°:144°, в другом 2:3, 72°:108°. Углы в ромбах кратны одной десятой полного разворота, 36°.

Определим координаты углов правильного десятиугольника.
Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии19

Мультиформатные баннеры в Tinkoff.ru и подход к верстке адаптивных баннеров в Google AdWords

Время на прочтение7 мин
Количество просмотров9.4K
Сегодня я расскажу о том, как удивительно устроены адаптивные баннеры в Google AdWords и что делать, если для рекламной кампании нарисовали только один баннер.

image

Реализация мультиформатного баннера, шаблон Leaderboard 1.

Мы обратили внимание, что проблема адаптивного баннера уже решена для медийных баннеров в AdWords, и детально исследовали эту технологию. Обнаружили много интересного, подробности — под катом.
Читать дальше →
Всего голосов 59: ↑30 и ↓29+1
Комментарии18

Мобильный programmatic «на пальцах»: революция будет бархатной

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

Введение


image

Мировой рынок онлайн-рекламы находится на пороге «мобильной» революции — об этом говорят цифры исследования издания Wallblog. По его данным, доля расходов на mobile programmatic в Великобритании впервые превысила затраты на интернет-рекламу для персональных компьютеров.
5 млрд людей в мире имеют мобильные телефоны, и только 4,1 млрд людей имеют зубные щетки.
— как было озвучено на конференции MobileBeat-2016. Мы проанализировали исследования зарубежных коллег и собрали данные о развитии мобильного programmatic на Российском рынке.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии2

Всё плохо

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

image


Что ж, всё плохо. Немного забавно так говорить: на конференции (Web à Québec) было много разговоров об удивительном будущем и вещах, возможных благодаря новым технологиям. О новых средствах и устройствах, которые должны сделать нашу жизнь проще. Мои знакомые знают, что у меня обычно очень циничный взгляд на технологии; лично я боюсь всех этих умных устройств, которые реагируют на мои слова, чем восхищались другие спикеры.


В основном потому, что чем больше времени я трачу на программирование и провожу в этой отрасли, тем больше узнаю, как всё работает изнутри, и тем меньше доверия всё это мне внушает. Я подобрал изображение для слайда. Это картина «Триумф смерти» Питера Брейгеля. В некоторой степени она раскрывает моё отношение к «умному дому».

Читать дальше →
Всего голосов 65: ↑62 и ↓3+59
Комментарии44

Встреча любителей больших данных и искусства

Время на прочтение1 мин
Количество просмотров3.8K
Во вторник, 29 ноября 2016 года DI Telegraph и Data-Centric Alliance проведут митап Art of Science.



Art of Science – мероприятие, посвященное анализу данных в искусстве. Наука и искусство – что их связывает? Возможно ли взаимодействие этих двух разных миров? Можно ли с помощью big data, нейронных сетей и методов машинного обучения создавать что-то полезное и прекрасное? Как наука о данных может помочь в решении задач современного искусства? Об этом и многом другом расскажут наши спикеры, представители мира технологического «искусства».
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии6

С маленькой или с Большой

Время на прочтение5 мин
Количество просмотров36K
Такая мелочь, как применения заглавных букв может быть весьма важной. Для английского языка. Статья будет особенно полезна тем, кто занимается разработкой продуктов на английском.
(Кстати, кто еще не знает, «вуз» пишется маленькими буковками.)

image

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

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

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

Всего голосов 37: ↑29 и ↓8+21
Комментарии80

«Правда, чистая правда и статистика» или «15 распределений вероятности на все случаи жизни»

Время на прочтение15 мин
Количество просмотров246K
Статистика приходит к нам на помощь при решении многих задач, например: когда нет возможности построить детерминированную модель, когда слишком много факторов или когда нам необходимо оценить правдоподобие построенной модели с учётом имеющихся данных. Отношение к статистике неоднозначное. Есть мнение, что существует три вида лжи: ложь, наглая ложь и статистика. С другой стороны, многие «пользователи» статистики слишком ей верят, не понимая до конца, как она работает: применяя, например, тест Стьюдента к любым данным без проверки их нормальности. Такая небрежность способна порождать серьёзные ошибки и превращать «поклонников» теста Стьюдента в ненавистников статистики. Попробуем поставить точки над i и разобраться, какие модели случайных величин должны использоваться для описания тех или иных явлений и какая между ними существует генетическая связь.
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии29

Преобразование равномерно распределенной случайной величины в нормально распределенную

Время на прочтение6 мин
Количество просмотров125K
Этот вопрос уже давно подробно изучен, и наиболее широкое распространение получил метод полярных координат, предложенный Джорджем Боксом, Мервином Мюллером и Джорджем Марсальей в 1958 году. Данный метод позволяет получить пару независимых нормально распределенных случайных величин с математическим ожиданием 0 и дисперсией 1 следующим образом:
алгоритм марсалья marsaglia
где Z0 и Z1 — искомые значения, s = u2 + v2, а u и v — равномерно распределенные на отрезке (-1, 1) случайные величины, подобранные таким образом, чтобы выполнялось условие 0 < s < 1.
Многие используют эти формулы, даже не задумываясь, а многие даже и не подозревают об их существовании, так как пользуются готовыми реализациями. Но есть люди, у которых возникают вопросы: «Откуда взялась эта формула? И почему получается сразу пара величин?». Далее я постараюсь дать наглядный ответ на эти вопросы.

Читать дальше →
Всего голосов 78: ↑73 и ↓5+68
Комментарии34

Алгоритм Метромарафона. Как аналитик Яндекса просчитал, что все станции можно посетить за один день

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

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


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



По мере изучения вопроса я обнаружил, что идея сама по себе не то чтобы очень нова – в нью-йоркской подземке аналогичные соревнования проходят с 1966 года. Что же касается московского метро, то ЖЖ-пользователь estrella-de-sur полгода назад проехал его за 12 часов 36 минут (расчётное время – 11 часов 50 минут) по правилу «один шаг на каждую станцию». Но у нас была другая задача – мы хотели выйти на каждой станции и по возможности красиво её сфотографировать. Это означало, что нам в большинстве случаев придётся ждать на ней следующего поезда. Исходя из этого я и строил расчёт.


Предупреждение: если вы умеете решать задачу коммивояжёра на 200 узлах (с помощью генетических алгоритмов или без них) – вас, скорее всего, ждут в другом месте. Можете просто пролистать пост и посмотреть картинки.

Читать дальше →
Всего голосов 126: ↑122 и ↓4+118
Комментарии96

Медиана: точно, иногда точно и почти точно

Время на прочтение5 мин
Количество просмотров31K
Если пройтись по коллегам и спросить сколько у них сотовых телефонов, то окажется, что в среднем их около 2.5, но при этом у подавляющего большинства их не больше одного. Тут возникает сразу множество вопросов начиная от того, почему их вдруг не целое число и как же все-таки оценить сколько телефонов в среднем у человека.



Для таких целей подойдет оценка медианы. То есть такая статистика, что половина значений выборки меньше, а половина больше. Более формально: упорядочим значения выборки X=(x_1,..., x_n) по порядку (x_{[1]}, ..., x_{[n]}) и выберем среди них с порядковым номером floor(n/2). У такой оценки есть несколько преимуществ. Она менее подвержена влиянию ошибочных данных, значение всегда будет из того множества, что встречалось в выборке, но есть и неприятные недостатки, главный из них, это сложность подсчета, даже для довольно распространенных распределений не существует общей формулы расчета (точнее есть, но ее сложно применить на практике, смотрите Распределение порядковой статистики).
Читать дальше →
Всего голосов 44: ↑40 и ↓4+36
Комментарии6

Почему расчет перцентилей работает не так как вы ожидаете?

Время на прочтение12 мин
Количество просмотров94K
Часто клиенты спрашивают нас о p99-метрике (99-й перцентиль).

Это определенно разумная просьба и мы планируем добавить подобную функциональность в VividCortex (об этом расскажу позже). Но в то же время, когда клиенты спрашивают об этом, они подразумевают нечто совершенно определенное — нечто, что может быть проблемой. Они просят не 99-й перцентиль по какой-то метрике, они просят метрику по 99-му перцентилю. Это обычное дело для таких систем как Graphite, но все это дает не тот результат, который от таких систем ожидается. Это пост расскажет вам о том, что, возможно, у вас неверные представления про перцентили, о точной степени ваших заблуждений и о том, что вы все таки можете сделать правильно в этом случае.

(Это перевод статьи которую написал Baron Schwartz.)
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии15

Objective-C вопросы на уровень middle/senior

Время на прочтение4 мин
Количество просмотров60K
Что должен знать objc разработчик на уровень middle/senior?
К сожалению, четкой черты на вертикальное развитие нет. Парадокс, но чтобы знать что изучить, нужно знать что ты не знаешь.
Я постарался вспомнить самые интересные вопросы, которые мне задавали самому на различных собеседованиях, а так же расширил их множеством вопросов(тем же уровнем) от себя.
Здесь нет общих вопросов вроде: IoC, design patterns, S.O.L.I.D. и т.п.

ВНИМАНИЕ!!!
Помимо вертикального развития немаловажно и горизонтальное

ВНИМАНИЕ!!! (2)
Не пишите в комментарии ответы на вопросы, это дает возможность людям самостоятельно разобраться.
Однако, если у вас имеются интересные вопросы по теме, я с радостью добавлю их в список.

Конечно, это не заменит живого общения, однако позволит неплохо подготовиться к собеседованиям.


Начинаем


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

LogLog — находим число уникальных элементов

Время на прочтение5 мин
Количество просмотров29K
Здравствуй, Хабр! Мы с тобой уже побаловались фильтрами Блума и MinHash. Сегодня разговор пойдёт о ещё одном вероятностном-рандомизированном алгоритме, который позволяет с минимальными затратами памяти определить примерное число уникальных элементов в больших объёмах данных.

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

Способ всем хорош, но требует относительно большой объём памяти для своей работы, ну а мы с вами, как известно, неугомонные гении эффективности. Зачем много, если можно мало — примерный размер словарного запаса упомянутого выше Шекспира, можно вычислить используя всего 128 байт памяти.

Кажется невозможным?
Всего голосов 81: ↑80 и ↓1+79
Комментарии30

Битовая магия: получение следующего лексикографического сочетания

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

Введение


Допустим у нас есть некоторое множество, которое состоит из N элементов. Будем считать, что элементы пронумерованы от нуля до N-1. Набор k-элементных подмножеств данного множества (сочетаний) можно представить либо в виде массива индексов длины k. Либо в виде последовательности из N бит, в которой установлено ровно k из них. У Дональда Кнута в его TAoCP приводится алгоритм генерации сочетаний в лексикографическом порядке, когда сочетания заданы в виде массива индексов. Мы попробуем перенести этот алгоритм на случай битовых масок.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии2

Инструменты, необходимые разработчику для маркетинга приложений

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


Исследование рынка


  • Google’s Keywords Tools
  • Google Trends
  • App Annie – Анализ приложения, Аналитика, Исследование рынка
  • Distimo – Анализ приложения, Загрузка оценок и исследования
  • Xyologic – Новый подход к поиску мобильных приложений
  • Apptrace – Исследование App Store
  • AppMonsta – Данные о рынка приложений
  • Vision Mobile – Экосистема аналитики фирмы
  • MetricsCat –Анализ данных приложения

Маркетеривание/Прототипирование


  • POP (Прототипирование на бумаге) – Прототипирование мобильных приложений
  • Mockabilly – Приложение для создание макетов для iPhone
  • Interface – Продвинутое макетирование и прототипирование под iOS
  • Blueprint – Макетирование приложений для iPad и iPhone
  • Proptotypes – Меняет статический дизайн в кликабельный прототип для iPhone
  • FieldTest – Создание мобильного интерактивного прототипа
  • Keynotopia – Keynotopia превращает Keynote и PowerPoint в лучшие инструменты быстрого прототипирования для создания макетов приложений
  • Justinmind – Интерактивные каркасы для создания веб- и мобильных приложений
  • Fluid UI – Прототипирование под iOS, Android и Windows Приложений
  • UI Stencils – Трафареты, эскизы и аксессуары для дизайна пользовательского интерфейса
  • App Cooker – Продвинутый генератор макетов для мобильных приложений под iOS
  • Proto.io – Мобильное прототипирование
  • UXPin – Средства проектирования UX
  • AppGyver’s Prototyper – Меняет каркасы в прототипы интерактивных мобильных приложений
  • App Mockup Tools – Создание прототипов для iPhone приложений
  • WireKit – Комплект каркасов для iPhone приложений
  • DevRocket – Панель плагина Photoshop для iOS — разработчиков
  • Flinto – Быстрое создание прототипов для iOS
  • App Icon Template – Шаблоны иконок для iOS 7 и Android приложений
  • PortKit – UX Metaphor Эквивалент для iOS и Android
  • iOS 7 Wireframe Kit – «Набор для Иллюстратора, чтобы сделать ваш вайфрейминг днем на пляже»
  • SketchMirror –Превью дизайна мобильных приложений со своего девайса
  • Invision – Веб и Мобильное прототипирование, а также инструмент для UI прототипирования
  • Framer –Инструмент для прототипирования анимаций
  • Marvel – Бесплатный инструмент для прототипирования
  • Sketch – Профессиональный цифровой дизайн для Mac
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии5

Детский лагерь: биссектрально-пифагоровы треугольники, перепрограммирование мозга, радар-детектор и взлом наручников

Время на прочтение13 мин
Количество просмотров31K
Все события и имена вымышленные


Часть вещей, которые я взял с собой на смену

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

Вот как Алексей Савватеев анонсировал свою лекцию:
В журнале «Квант» номер 8 за 1983 год в статье «Вокруг биссектрисы» на странице 36 И.Ф.Шарыгин формулирует такую задачу:
«Про данный треугольник известно, что треугольник, образованный основаниями его биссектрис — равнобедренный. Можно ли утверждать, что и данный треугольник равнобедренный?»

Ответ отрицательный, но в статье далее сказано:
«К сожалению, автор не сумел построить конкретный пример треугольника (то есть точно указать величины всех его углов или длины сторон) со столь экзотическим свойством. Может быть, это удастся сделать читателям журнала?»

С тех пор построены три примера. Последний пример выводит нас на теорию эллиптических кривых и операцию сложения точек.

В лекции мы построим ЦЕЛОЧИСЛЕННЫЙ треугольник, обладающий требуемым свойством. Вопрос о бесконечности таких треугольников пока ещё остаётся открытым. Школьная задача, таким образом, приведёт нас в самое сердце одной из красивейших ветвей современной математики.


Смена в самом разгаре, кое-что интересное мы уже успели сделать, а что-то еще в планах.
Читать дальше →
Всего голосов 34: ↑29 и ↓5+24
Комментарии5

Поиск похожих документов с MinHash + LHS

Время на прочтение2 мин
Количество просмотров13K
В этой публикации я расскажу о том, как можно находить похожие документы с помощью MinHash + Locality Sensitive Hashing. Описание LHS и Minhash в «Википедии» изобилует ужасающим количеством формул. На самом деле все довольно просто.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии13

Сделай сам: MSc Computer Science на уровне топ американских университетов из дома

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

Вступление


Давно хотел написать статью про образование в Computer Science, но руки не доходили. Решил все-таки это наконец сделать. Итак, о чем пойдет речь? Речь о том, что из себя представляет диплом MSc Computer Science топовых университетов США (во всех подробностях, включая основные курсы, книги и проекты) и как ему соответствовать.

Почему именно MSc? Это — некая развилка: с одной стороны после MSc — вы уже готовый к жизни инженер (да, речь идет о инженерной подготовке, как мне кажется это самое больное место в нашей системе образования), с другой — можно спокойно идти по пути PhD. Как известно, в PhD программу можно попасть и не особо умея программировать — особенно это касается теоретического Computer Science. С другой стороны найти работу программиста тоже дело не очень сложное, и часто не требует мощного образования. Но достигнув уровня MSc — вы получаете возможность разбираться как во всех новый идеях в Computer Science, так и возможность их воплотить в практику. То есть с одной стороны круто разобраться в каком-нибудь deep learning и сделать в нем что-то новое, а также взять и написать свою операционную систему (кто так сделал?). Причем вы не зажаты в рамки узкой специализации (если конечно продолжаете учиться). То есть вы теперь — универсальный солдат, готовый на все.

Надеюсь что эта статья будет полезна:
1. Студентам, которые хотят соответствовать высоким стандартам топ вузов США, или собирающиеся туда в аспирантуру по Computer Science
2. Профессионалам, которые хотят закрыть «дыры» и пробелы
3. Может кто-то из преподавателей возьмет на заметку для своих курсов.
4. Студентам, аспирантам американских вузов — хотелось бы тоже получить фидбэк, особенно касается последних трендов в образовании

Что же здесь будет написано? Минимум философии и общих мыслей: конкретная программа undergraduate и graduate курсов, конечно из дисциплин наиболее мне близких. Все курсы были лично прочувствованы на собственной шкуре, по этому и пишу. (Я пытался записаться на все интересные курсы, которые были, но мой основной упор — системное программирование, базы данных и искусственный интеллект. Отсюда конечно некий bias, но пытаюсь предложить более-менее универсальную программу).
Читать дальше →
Всего голосов 86: ↑81 и ↓5+76
Комментарии64
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность