Pull to refresh
4
0
Vladimir @imageman

User

Send message

Quotient filter

Reading time5 min
Views16K
Quotient filter — это вероятностная структура данных, позволяющая проверить принадлежность элемента множеству. Она описана в 2011 г. как замена фильтру Блума. Ответ может быть:
— элемент точно не принадлежит множеству;
— элемент возможно принадлежит множеству.

Читать дальше →

Что внутри XGBoost, и при чем здесь Go

Reading time7 min
Views14K
В мире машинного обучения одними из самых популярных типов моделей являются решающее дерево и ансамбли на их основе. Преимуществами деревьев являются: простота интерпретации, нет ограничений на вид исходной зависимости, мягкие требования к размеру выборки. Деревья имеют и крупный недостаток — склонность к переобучению. Поэтому почти всегда деревья объединяют в ансамбли: случайный лес, градиентный бустинг и др. Сложными теоретическими и практическим задачами являются составление деревьев и объединение их в ансамбли.

В данной же статье будут рассмотрены процедура формирования предсказаний по уже обученной модели ансамбля деревьев, особенности реализаций в популярных библиотеках градиентного бустинга XGBoost и LightGBM. А так же читатель познакомится с библиотекой leaves для Go, которая позволяет делать предсказания для ансамблей деревьев, не используя при этом C API оригинальных библиотек.
Читать дальше →

Tungstene распознает Photoshop

Reading time3 min
Views40K
В конце мая на ряде европейских web-ресурсов прошло сообщение, которое до Рунета пока толком не дошло. В блогах посудачили, покрутили пальцем у виска, поболтали о том о сём, да и разошлись.

Тем не менее, разработка француза Roger Cozien (Роже Козьена), доктора математики, криминалиста и основателя общества цифровой экспертизы Exo Makina, имеет достаточное потенциальное значение, чтобы быть разобранной более подробно.

Знакомьтесь, Tungstene или «Вольфрам». Без «е» на конце в английском написании — антифотошоп и «смерть глянцу», как окрестили его некоторые особо впечатлительные фотоблоггеры.
Читать дальше →

Разработчик SearchFace о возможностях алгоритма

Reading time2 min
Views107K
Всем привет, я один из разработчиков сервиса SearchFace и готов поговорить о нём в комментариях.



Из-за шумихи с иском ВК на второй план отошло то важное, ради чего мы запустили сервис — чтобы протестировать возможности поиска. А раз уж теперь сервис доступен широкой публике, хочется продемонстрировать всем, на что способны наши алгоритмы распознавания.
Читать дальше →

Играем в Mortal Kombat с помощью TensorFlow.js

Reading time18 min
Views19K
Экспериментируя с улучшениями для модели прогнозирования Guess.js, я стал присматриваться к глубокому обучению: к рекуррентным нейронным сетям (RNN), в частности, LSTM из-за их «необоснованной эффективности» в той области, где работает Guess.js. В то же время я начал играться с свёрточными нейросетями (CNN), которые тоже часто используются для временных рядов. CNN обычно используют для классификации, распознавания и обнаружения изображений.


Управление MK.js с помощью TensorFlow.js

Исходный код для этой статьи и МК.js лежат у меня на GitHub. Я не выложил набор данных для обучения, но можете собрать свои собственные и обучить модель, как описано ниже!
Читать дальше →

Преобразование цветовой температуры (K) в RGB: алгоритм и пример кода

Reading time7 min
Views18K


Если вы не знаете, что такое цветовая температура, начните отсюда.

Работая над инструментом «Цветовая температура» для PhotoDemon, я целый вечер пытался определить простой и понятный алгоритм преобразования между значениями температуры (в Кельвинах) и RGB. Я думал, что такой алгоритм будет просто найти, ведь во многих фоторедакторах есть инструменты для коррекции цветовой температуры, а в каждой современной камере, включая смартфоны, есть регулировка баланса белого на основе условий освещения.
Читать дальше →

Венгерский алгоритм, или о том, как математика помогает в распределении назначений

Reading time6 min
Views72K
Привет, друзья! В этой статье хотел бы рассказать про интересный алгоритм из дисциплины «Исследование операций» а именно про Венгерский метод и как с его помощью решать задачи о назначениях. Немного затрону теории про то, в каких случаях и для каких задач применим данный алгоритм, поэтапно разберу его на мною выдуманном примере, и поделюсь своим скромным наброском кода его реализации на языке R. Приступим!

image
Читать дальше →

Квест по устранению аритмии сердца

Reading time7 min
Views14K
image

Привет, Хабр! Сегодня предлагаем отправиться в увлекательное путешествие в самое сердце человеческого организма (в буквальном смысле этого слова), чтобы узнать как находят и обезвреживают источники аритмии.
Осторожно: трафик

Как создать нейросеть всего из 30 строк JavaScript-кода

Reading time4 min
Views26K


Перевод How to create a Neural Network in JavaScript in only 30 lines of code.

В этой статье мы рассмотрим, как можно создать и обучить нейросеть с помощью библиотеки Synaptic.js, позволяющей проводить глубокое обучение в связке Node.js с браузером. Давайте создадим простейшую нейросеть, решающую XOR-уравнение. Также можете изучить специально написанный интерактивный туториал.
Читать дальше →

Методы конструирования тестовых функций

Reading time4 min
Views5K
В ходе работы с глобальной оптимизацией, появилась потребность в конструировании многоэкстремальных тестовых функций. Зачастую большинство готовых функций, например из Википедии, не подходят для корректной оценки работы алгоритма. Часть функций являются одноэкстремальными, для таких примеров больше подходят алгоритмы локального поиска, другая – относится к овражным. Для глобальной же оптимизации необходимо использовать многоэкстремальные, где экстремумы ощутимо различаются по величине.

Рассмотрим некоторые методы, позволяющие легко конструировать тестовые многоэкстремальные функции, при этом, позволяющие задавать конкретные свойства: метод Фельдбаума, функции на основе гиперболических потенциалов и функции на основе экспоненциальных потенциалов. Кроме перечисленных методов есть гармонические многоэкстремальные функции и различные их комбинации.
Читать дальше →

CBOR — новый бинарный формат представления данных

Reading time9 min
Views64K
Concise Binary Object Representation (сжатое бинарное представление объекта) — формат данных, который был спроектирован таким образом, чтобы обеспечить максимально простой код реализации, формирования компактных выходных данных и возможность расширения формата без необходимости обмена информацией о версии.

Стандарт формата CBOR был официально анонсирован комитетом IETF в октябре 2013 года в новом документе RFC 7049, авторами которого являются Carsten Bormann и Paul Hoffman. Взглянув на имя первого автора, можно предположить другую причину происхождения аббревиатуры для названия формата, но возможно это просто совпадение. Формат CBOR получил MIME-тип application/cbor.

На данный момент существует, вероятно, сотни всевозможных бинарных форматов для представления структурированных данных, ряд которых стандартизирован, популярен и широко применяется (например, BER и DER для ASN.1, MessagePack и BSON). Все существующие стандарты решают поставленные перед ними задачи, и CBOR здесь не исключение. К формату было предъявлено семь важных требований, и, поскольку ни один из существующих форматов в полной мере не мог им удовлетворить, был создан новый (да, тут напрашивается картинка ).

Читать дальше →

PyTorch — ваш новый фреймворк глубокого обучения

Reading time22 min
Views216K

Gotta Torch?


PyTorch — современная библиотека глубокого обучения, развивающаяся под крылом Facebook. Она не похожа на другие популярные библиотеки, такие как Caffe, Theano и TensorFlow. Она позволяет исследователям воплощать в жизнь свои самые смелые фантазии, а инженерам с лёгкостью эти фантазии имплементировать.


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

Fire walk with me

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

Reading time2 min
Views7.8K
Детектирование и регистрация особенностей изображений имеет много приложений в робототехнике, видео компрессии и т.д. Быстрая и аккуратная регистрация — пока недостижимая мечта многих программистов и пользователей. Она или быстрая, или аккуратная…
Читать дальше →

Точное вычисление средних и ковариаций методом Уэлфорда

Reading time7 min
Views24K

Метод Уэлфорда — простой и эффективный способ для вычисления средних, дисперсий, ковариаций и других статистик. Этот метод обладает целым рядом прекрасных свойств:


  • достигает отличных показателей по точности решений;
  • его чрезвычайно просто запомнить и реализовать;
  • это однопроходный онлайн-алгоритм, что крайне полезно в некоторых ситуациях.

Оригинальная статья Уэлфорда была опубликована в 1962 году. Тем не менее, нельзя сказать, что алгоритм сколь-нибудь широко известен в настоящее время. А уж найти математическое доказательство его корректности или экспериментальные сравнения с другими методами и вовсе нетривиально.


Настоящая статья пытается заполнить эти пробелы.


Читать дальше →

Безытеративное обучение однослойного персептрона. Задача классификации

Reading time2 min
Views7.9K
Я продолжаю цикл статей по разработке метода безытеративного обучения нейронных сетей. В этой статье будем обучать однослойный персептрон с сигмоидальной активационной ф-ей. Но этот метод можно применить для любых нелинейных биективных активационных ф-й с насыщением и первые производные которых симметричны относительно оси OY.
Читать дальше →

Эволюция фрактальных монстров

Reading time9 min
Views27K
Сегодня будем рисовать геометрические фракталы, которым уделяют незаслуженно мало внимания. А между тем, тут каждый фрактал — маленький шедевр, поражающий воображение!


Дальше много картинок и gif-анимация. Но прежде, чем переходить под кат, посмотрите на картинку выше и скажите, что на ней нарисовано?
Читать дальше →

Методы обхода защитных средств веб-приложений при эксплуатации XSS-векторов

Reading time8 min
Views41K
image

 
Несмотря на большое количество рекомендаций по защите веб-приложения от клиент-сайд атак, таких как XSS (cross site scripting) многие разработчики ими пренебрегают, либо выполняют эти требования не полностью. В статье будут рассмотрены способы обхода средств фильтрации и при эксплуатации xss-векторов.

Читать дальше →

Microsoft исправила уязвимости нулевого дня в своем ПО задолго до их раскрытия группой Shadow Brokers

Reading time3 min
Views9.9K


Кибершпионским организациям США и простым киберпреступникам сейчас приходится несладко. О многих уязвимостях программного обеспечения различных производителей стало известно благодаря работе хакерской группировки Shadow Brokers, WikiLeaks и другим организациям, включая Symantec. В результате ИТ-компании правят и исправляют свое ПО, что делает невозможным эксплуатацию большого количества «дыр» в программном обеспечении кем бы то ни было.

Корпорация Microsoft, как выяснилось недавно, еще в марте исправила все уязвимости нулевого дня, о которых рассказала группа Shadow Brokers. В августе 2016 года она выложила первую порцию экслоитов. Сами они не создавали ничего из того, о чем сообщили, это ПО принадлежит другой хакерской группировке Equiation Group, о которой известно, что она связана с АНБ.
Читать дальше →

Learning to learn. Создаём self-improving AI

Reading time5 min
Views8.2K

Learning to learn


В этот раз я проводил эксперименты на тему learning to learn, то есть алгоритмов, которые могут учиться, как лучше учиться.

Цели эксперимента:

1) Создать алгоритм оптимизации, который можно некоторым стандартным способом приспособить к любой оптимизационной задаче или множеству задач. Под словом «приспособить» я имею в виду «сделать, чтобы алгоритм очень хорошо справлялся с этой задачей».
2) Подстроить алгоритм под одну задачу и посмотреть, как изменилась его эффективность на других задачах.
Читать дальше →

Windows Performance Station или как я учил комп работать эффективно

Reading time9 min
Views47K
image

Здравствуйте, уважаемые читатели! Вот я и добрался до Хабра и хочу поведать здесь историю своего проекта. Многие аспекты собственного опыта и работы приходится описывать довольно общими терминами, чтобы не задеть коммерческую тайну тех организаций, о которых идёт речь.

Суть данного рассказа в том, чтобы поделиться найденным методом решения проблемы производительности компьютеров на Windows и рассказать про подход, который позволил сделать данное решение полностью универсальным и индивидуальным для каждого пользователя. На написание кода и подбор наиболее эффективных механизмов потребовалось около 2х лет ежедневной работы, а также консультации и помощь от большого количества моих товарищей из разных IT областей, за что им огромное спасибо.
Читать дальше →

Information

Rating
Does not participate
Location
Резекне, Латвия, Латвия
Date of birth
Registered
Activity