Все потоки
Поиск
Написать публикацию
Обновить
164.92

Алгоритмы *

Все об алгоритмах

Сначала показывать
Порог рейтинга
Уровень сложности

Приглашаем на конференцию по искусственному интеллекту и большим данным AI&BigData Lab 4 июня

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


4 июня в Одессе, наша команда FlyElephant совместно с GeeksLab будет проводить третью ежегодную техническую конференцию по искусственному интеллекту и большим данным — AI&BigData Lab.

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

Программа конференции AI&BigData Lab уже частично сформирована. Среди принятых докладов можно отметить:
Читать дальше →

Борьба с мельницами — 1: интерполяционные сплайны

Время на прочтение8 мин
Количество просмотров12K
В данной статье лирический герой бросает вызов оптимальной реализации классического полиномиального интерполятора Лагранжа (Фарроу), в процессе битвы случайно открывает и доказывает тривиальное никому не нужное математгическое заклинание, с помощью которого пытается потеснить противника, но по результатам всех раундов боя решением судей фиксируется ничья.

— Где вы видите великанов? — спросил Санчо Панса.
— Да вон они, с громадными руками, — отвечал его господин. — У некоторых из них длина рук достигает почти двух миль.
— Помилуйте, сеньор, — возразил Санчо, — то, что там виднеется, вовсе не великаны, а ветряные мельницы; то же, что вы принимаете за их руки, — это крылья: они кружатся от ветра и приводят в движение мельничные жернова.
— Сейчас видно неопытного искателя приключений, — заметил Дон Кихот, — это великаны. И если ты боишься, то отъезжай в сторону и помолись, а я тем временем вступлю с ними в жестокий и неравный бой…

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

Метод Монте-Карло для поиска в дереве

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


Метод Монте-Карло это алгоритм принятия решений, часто используемый в играх в качестве основы искусственного интеллекта. Сильное влияние он оказал на программы для игры в Го, хотя находит свое применение и в других играх, как настольных, так и обычных компьютерных (например Total War: Rome II). Так же, стоит отметить, что метод Монте-Карло используется в нашумевшей программе AlphaGo, победившей го-профессионала 9-го дана Ли Седоля в серии из 5 игр.

В данной статье хотелось бы рассказать про версию алгоритма Монте-Карло под названием Upper Confidence bound applied to Trees (UCT). Именно после публикации этого алгоритма в 2006-м году, программы для игры в Го сильно усилили свои позиции и достигли значительных успехов в игре против человека.
Читать дальше →

Математическая модель восприятия (Часть 2)

Время на прочтение16 мин
Количество просмотров12K
Часть 1
Часть 3

Предисловие


Одним ключом можно открыть только одну дверь. К. Шеннон


Последнее время ознаменовано громким триумфом промышленного внедрения искусственных нейронных сетей. Узнать ли слово или лицо, подобрать мелодию под настроение — задачи, которые с уверенностью можно считать уже решенными. СМИ пестрят то и дело появляющимися заголовками о создании искусственного интеллекта, а фантасты рассуждают о том, может ли в таких сетях самопроизвольно зародится мысль. Но действительно ли успех так грандиозен, ведь различать цифры — не значит иметь абстракцию числа, а искусно составлять предложения не означает уметь определять их смысл.
Давайте попробуем посмотреть на эти проблемы немного с другого ракурса. В природе есть один хорошо обоснованный ею процесс — эволюция: все, что не может приспособится, обычно вымирает. Именно задача приспособления на определенном этапе стала причиной развития у живых существ способности восприятия свойств внешнего мира, а необходимость оперативно отвечать на изменения этих свойств поощрило у животных развитие нервной системы. Не стоит ли поэтому попытаться представить какие именно задачи и в какой усложняющейся последовательности пришлось решать развивающемуся интеллекту животных, ведь возможно тогда, решив их, мы повторим путь эволюции и наконец приблизимся к пониманию механизмов мышления. Вторая кажущаяся разумной идея — прежде чем приступать к конструированию машин, способных составлять представление о чем-либо (факте присутствия на картинке зеркальносимметричного фрагмента, или что у исследуемого лабиринта есть путь к выходу) попытаться:
1) назвать это «что-либо» в терминах восприятия машины;
2) охарактеризовать класс всех тех понятий, которые могут быть представлены машиной данной конструкции.
Однако назвать чем же являются такие базовые понятия как «время» и «пространство», не в рамках какой-либо формальной теории, а по своей природе — может оказаться неразрешимой проблемой. Здесь спасает то, что во многих случаях процесс восприятия можно формально заменить (мульти) символьной последовательностью, изображающей состояния рецепторов через одинаковые достаточно малые промежутки времени. После такой подмены оказывается уже не важной истинная природа понятий, подлежащих восприятию — важно лишь то, чем они являются в терминах упомянутой символьной последовательности. С этой новой позиции интересно рассмотреть такие понятия, как «время», «место», «число», «память», «будущее». В настоящей части моей работы я попытался найти подход к определению понятия симметрии и понятия формы, а так же показать как фактически они реализуются на учебном примере «зрительного зонда». Если Вы не читали первую часть статьи, рекомендую Вам это сделать, поскольку части не независимы и дальнейшее содержание может оказаться непонятным

Внутреннее определение симметрий


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

Можно ли создать алгоритм для торговли на бирже с помощью анализа тональности сообщений в интернете

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


В нашем блоге на Хабре мы много пишем об алгоритмической торговле и создании алгоритмов для работы на финансовых рынках. Одним из наиболее преспективных и популряных направлений деятельности исследований является прогнозирование ситуации на фондовом рынке на основе различной информации. Для этого, в том числе, применяются и данные о тональности сообщений, опубликованных в интернете (sentiment analysis).

Сегодня мы поговорим о том, реально ли с помощью этого метода создать сколько-нибудь эффективную торговую стратегию.
Читать дальше →

Антиспам в Mail.Ru: как машине распознать взломщика по его поведению

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

Bat's post delivery by sashulka

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

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

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

Обратная польская нотация: как же приготовить хот-дог?

Время на прочтение4 мин
Количество просмотров54K
Будучи дилетантом в области разработки приложений, я испытал сложности с пониманием алгоритма работы обратной польской нотации, а если быть точнее — алгоритма подготовки стека. Делу так же мало помогли статьи в «интернетах».

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

Делу помогли две статьи. Одна из них на википедии, а вторая была написана замечательным пользователем хабра, GORKOFF, который объяснил все буквально «на пальцах».

Однако до конца я так и не понял тот важный вопрос: как же построить стек?
Читать дальше →

В поисках пути — царь Салтан осваивает лапласиан

Время на прочтение11 мин
Количество просмотров21K
… Молвит он: «Коль жив я буду, чудный остров навещу, у Гвидона погощу».



В царстве Салтана не без изьяна. Принят закон — не лезть за кордон, да тут князь Гвидон.
Опять прислал поклон, да приглашение на угощение,- надо принимать политическое решение.

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

Было однако одна проблема,- нужен был маршрут или схема. Поскольку никто (кроме Врангеля барона) не знал, как добраться до острова Гвидона. Корабельщики дали карту,- пришлось сесть за парту. Над картой склонился Салтан, — где тут остров Буян? Задача была как будто знакома — проложить путь к острову Гвидона. Но как найти дорогу, когда путей слишком много?

До ночи решал Салтан задачку, в итоге свалился в спячку. Снились ему матрицы и точки, да на болоте кочки. На кочку прыгнул Нео с острова Борнео.
— Если хочешь добраться ко сроку — плыви по максимальному потоку.
— Чего? — Салтан почти проснулся. Но Нео уже в зайца обернулся.
Плывем дальше

Дайджест Университета ИТМО: #1 Oбразование и наука

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


Сегодня мы решили собрать в одном дайджесте полезные ссылки по темам, связанным с научной и образовательной деятельностью Университета ИТМО. В подборку вошли научные журналы, интересные статьи о научных достижениях и открытые учебные курсы.
Читать дальше →

Liscript — реализуем TCO

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


В своей прошлой статье Пишем Lisp-интерпретатор на Java я кратко и тезисно рассказал про то, что написал пару интерпретаторов Lisp-подобного языка, который назвал Liscript — на Haskell и на Java. Ничего особо уникального и выдающегося в этом нет, но для меня это было приятным, интересным и познавательным времяпровождением. Среди прочих особенностей, я упомянул про реализацию TCO (tail call optimization) — оптимизацию интерпретатором хвостовых вызовов функций. Этот вопрос вызвал интерес отдельных участников сообщества, и поступило предложение детальнее раскрыть его в отдельной статье, что я и попытался сделать. Интересующихся прошу под кат.
Читать дальше →

Математическая модель восприятия (Часть 1)

Время на прочтение10 мин
Количество просмотров26K
Часть 2
Часть 3

Введение (Языковая природа абстрактных понятий)


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

На что смотрит свёрточная нейросеть, когда видит наготу

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


На прошлой неделе в компании Clarifai мы формально анонсировали нашу модель распознавания непристойного контента (NSFW, Not Safe for Work).

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



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

Две международные конференции в Санкт-Петербурге в июне: Experimental Algorithms и Computer Science in Russia

Время на прочтение1 мин
Количество просмотров2.2K
Летом в Математическом институте Стеклова (ПОМИ) пройдут две международные конференции: 15th International Symposium on Experimental Algorithms (SEA 2016, 5–8 июня) и 11th International Computer Science Symposium in Russia (CSR 2016, 9–13 июня). Программы конференций уже доступны на страницах конференций. Будет куча интересных докладов. Ниже приведён список приглашённых докладов. Для местных участников установлен минимальный орг. взнос. Если вы хотите принять участие, но оплатить орг. взнос у вас возможности нет, напишите мне — мы что-нибудь придумаем.
Читать дальше →

Ближайшие события

RUVDS предоставит VDS сервера участникам ежегодного биржевого конкурса «Алгоритмус»

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


Конкурс «Алгоритмус 2016» уже проводится в шестой раз. Он проводится компанией МФД-ИнфоЦентр при поддержке Московской Биржи на платформе автоследования EasyMANi. Трейдеры и управляющие активами соревнуются в доходности на рынке акций и фьючерсов Московской Биржи.

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

При этом участие высокочастотных трейдеров в турнире исключается, что уравнивает шансы участников друг перед другом. Соревноваться в конкурсе могут как частные трейдеры (управляющие активами), так и профессиональные участники фондового рынка.

RUVDS присоединился к партнерам конкурса «Алгоритмус». Мы предоставим участникам турнира возможность воспользоваться облачной инфраструктурой по уникальным ценам, получив скидку до 30%* на виртуальный VPS сервер на Windows независимо от конфигурации.
Читать дальше →

Предсказание оттока игроков из World of Tanks от Yandex Data Factory. Лекция для Малого ШАДа

Время на прочтение15 мин
Количество просмотров52K
Важнейшая экспертиза Яндекса — машинное обучение. Она выросла из потребностей поиска, для ранжирования в котором нами была разработана известная сейчас многим технология Матрикснет. В 2014 году Яндекс стал использовать свои знания в области ML вне собственных сервисов — появилась Yandex Data Factory. Это международное направление, которое решает сложные математические задачи для других компаний.

Один из его проектов — прогноз оттока игроков World of Tanks. Илья Трофимов рассказал слушателям Малого ШАДа не только о проекте с Wargaming, но и о том, что вообще такое машинное обучение и в каких задачах оно может помогать бизнесу. Слушатели — старшеклассники, интересующиеся математикой и компьютерными науками.



Сам Илья в 2007 году окончил физический факультет МГУ по специализации «теоретическая физика». В 2011 — Школу анализа данных по специальности «анализ данных». В Яндексе занимался применением машинного обучения для оптимизации показов рекламы, сейчас решает задачи по анализу больших объёмов данных в Yandex Data Factory. Читает лекции в ШАДе по теме «Машинное обучение на больших данных».

Подробная расшифровка и слайды

Объяснение эксперимента о ветвлениях, или философские изыскания на тему бенчмарков в вакууме и в… реальности

Время на прочтение11 мин
Количество просмотров7.2K
Надеюсь, кто хотел, ознакомился с моим пробным экспериментом на Хабре в этой статье. Теперь я считаю, что будет правильным огласить его результаты и даже дать более детальное объяснения причин, по которым вообще подобные эксперименты проводятся. Пост будет наполовину философским, поскольку сейчас в компьютерном мире всё настолько сложно, что без философского осмысления принять какие-то осмысленные решения просто невозможно. Я постараюсь вообще выразить своё мнение о сферических измерениях в вакууме, поэтому будет много букв. В статье есть опрос, проводимый до 1-го мая 2016. Под катом целиком ИМХО.

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

Могут ли все финансовые модели быть ошибочными: 7 источников риска возникновения убытков

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


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

Создатель сайта Turing Finance и аналитик хедж-фонда NMRQL Стюарт Рид опубликовал интересный материал на тему анализа возможных рисков использования финансовых моделей. В материале рассматриваются несколько факторов, влияющих на возникновения рисков — то есть вероятности финансовых потерь при использовании модели. Мы представляем вашему вниманию главные моменты этой работы.
Читать дальше →

Сортировка слиянием по-простому

Время на прочтение4 мин
Количество просмотров217K
Кто-то сказал однажды, что
...any scientist who couldn't explain to an eight-year-old what he was doing was a charlatan.

Оказывается, это был Курт Воннегут.

Я не стремился доказать это высказывание. Я стремился опровергнуть свою тупость.


Допустим у нас есть два массива чисел, отсортированных по возрастанию.

int[] a1 = new int[] {21, 23, 24, 40, 75, 76, 78, 77, 900, 2100, 2200, 2300, 2400, 2500};
int[] a2 = new int[] {10, 11, 41, 50, 65, 86, 98, 101, 190, 1100, 1200, 3000, 5000};

Необходимо слить их в один упорядоченный массив.

int[] a3 = new int[a1.length + a2.length];

Это задача для сортировки слиянием.

Что это такое? В интернете есть ответ, есть описание алгоритма, но я его не понял с одного присеста и решил разобраться сам. Для этого необходимо понять базовый принцип алгоритма, чтобы можно было по памяти воссоздать алгоритм применительно к своей задаче.
Читать дальше →

Так ли нужно избавляться от ветвлений? — На примере sign, abs, min и max

Время на прочтение6 мин
Количество просмотров16K
Я бы хотел предложить сообществу поучаствовать в пробном эксперименте. Суть его состоит в том, чтобы прогнать на своём компьютере программу, написанную на C++, и поделиться результатом измерения времени, которое она выдаёт, сравнивая скорость работы функций sign(x), abs(x), min(a,b) и max(a,b) в исполнении с ветвлением и без него. В статье я объясню свою мотивацию, покажу сами функции, а в конце предложу условия участия в эксперименте и его (увы) ограничения.
Читать дальше →

Динамическая онтология. Как инженеры Palantir объясняют это ЦРУ, АНБ и военным

Время на прочтение7 мин
Количество просмотров19K
Компания Palantir является четвертой по крутости частной компанией Кремниевой долины (после Uber, Xiaomi и Airbnb). Пока Palantir собирает информацию про все на свете, мы собираем информацию про него.



ИТишники додумались как эффективно «монетизировать математику и алгоритмы» (Сегалович, Бакунов), PayPal Mafia додумалась как монетизировать гаджеты Феанора философию (капитализация Palantir — 20 миллиардов долларов).

В десятиминутной лекции сотрудник компании Palantir расскажет про центральную концепцию их системы — динамическую онтологию.


0:00 Привет, я Ашер Синенски, инженер по развертыванию технологий Palantir. Я поговорю о динамической онтологии.
0:08 Очевидно, сейчас, эти два слова выглядят для вас довольно туманно, надеюсь, что к концу разговора вы поймете, какой смысл мы в них вкладываем.
0:17 Перед тем как переходить к делу, поясню: у многих людей проблемы со словом онтология. Что мы подразумеваем под этим словом?
0:24 Если вы посмотрите на корни этого слова, то оно образовано от греческих «онтос» (бытие) и «логия» (изучение чего-либо). По сути, онтология – это категоризация мира.
0:34 Есть много терминов, которые люди используют для описания этого: таксономия, схематизатор модели данных. Но мы используем это, в более широком смысле, как идею, что мы действительно категоризируем мир каким-то образом.
0:43 Идея о построении онтологии для изучения мира не нова. Первым, кто утвердил эту идею, был мужик по имени Платон. Идея Платоновского реализма, в основном, о том, что есть реальные вещи, а есть наше представление о вещах.

Вклад авторов