Closed Circles
Conversations from ClosedCircles.com
Latest posts
    04 Dec 2015
    Simon Kozlov:
    Сегодняшний концепт "хозяйке на заметку" называется model compression - http://arxiv.org/pdf/1312.6184.pdf
    Оказывается, что хотя deep nets на многих задачах лучше, чем shallow nets (просто нейронные сети с несколькими полными уровнями)...
    Но если shallow nets обучать не на реальных данных, а на "галюцинациях" deep net, они начинают работать лучше!
    Настолько лучше, что сравниваются с некоторыми deep nets с тем же количеством параметров (разумеется, менее мощные, чем те, которые галлюцинируют)
    Read more
    26 Nov 2015
    Simon Kozlov:
    Аааааа - http://www.theguardian.com/society/2015/nov/19/pigeons-can-identify-cancerous-tissue-on-x-rays-study-finds
    Новая платформа для pre-trained deep neural networks - голуби!
    Голубь - новое слово в обработке изображений!
    Read more
    14 Nov 2015
    mturk (а на самом деле люди) иногда сносит крышу.
    На всякий случай, <a href='https://www.mturk.com/mturk/welcome'>Mechanical Turk</a> - это сервис Амазона, на котором можно выдавать людям любые задачи, которые решаются в браузере - в частности, написать о чем картинка, что-то выделить, поправить, разметить итд итп.
    Это такой основополагающий сервис для ML-науки (и индустрии) - осознанно датасеты размечают именно так. Денег он Амазону толком не приносит, это такая чистая благотворительность. Человечеству можно помогать не только опенсорсом deep learning фреймворков!
    Read more
    08 Oct 2015
    Основные успехи deep learning на текущий момент получены в так называемом supervised learning setting - то есть, модель обучается на наборе сэмплов, которые помечены какими-то метками, и учится предсказывать эти метки. Это может быть "объект, который находится на картинке", "следующее слово/символ в тексте", итд итп.
    Отсюда возникает проблема создания большого размеченного датасета - для успешного обучения он должен быть огромный, а значит и затраты на его разметку тоже большие.
    Одна из притягательных идей автоматизации этого процесса - сделать так, чтобы датасет пополнялся сам в результате взаимодействия с внешним миром (близкий термин - reinforcement learning). Один из ярких примеров - Deepmind( https://www.youtube.com/watch?v=EfGD2qveGdQ), который был куплен Гуглом за пол-ярда долларов.
    Еще более естественно - сделать робота, который двигается и пробует что-то сделать в мире, записывает результат, и таким образом генерирует себе данные для обучения. Если бы получилось, то можно просто выпускать робота в мир, он через какое-то время научится делать то что надо, это можно легко скопировать в большое количество роботов - счастье.
    Идея крайне не нова и, я так понимаю, большинство попыток фейлилось на этапе "вообще сделать нормального робота".
    Но вот постепенно улучшаются и алгоритмы обучения, и все больше появляется доступных хороших роботов, так что ждем, надеемся.
    Ниже пара примеров из недавнего.
    Read more
    21 Sep 2015
    Sergey Kishchenko:
    Небольшой опрос для работников IT-компаний: http://goo.gl/forms/zWqbaK7eQF
    (о том, как чаще всего устраиваются в IT)
    Read more
    19 Sep 2015
    Под влиянием народа вокруг, почитал как работает современный face recognition и, как всегда, рассказываю это на пальцах - у меня профессора в команде очень много им занимались и много бесед на обедах <a href='https://docs.python.org/2/library/re.html'>все</a>; еще про это.
    Краткое резюме - по годам прямо можно проследить процесс отказа от структуры, которую придумывают люди (искать какие-то keypoints на лицах, вычислять овалы, корректировать освещение итд итп) к машинному обучению на всех уровнях.
    Приведенный ниже разбор статьи из Google и статьи из Facebook - описание текущего состояния, когда тренировка начинается от raw pixel values и заканчивается уже лицом. Если кому-то интересно, могу в другой раз рассказать про предыдущие шаги.
    Read more
    17 Sep 2015
    Ну что, сразу к хардкору! Статью Andrej Karpathy про RNN (http://karpathy.github.io/2015/05/21/rnn-effectiveness/) видели в своих фидах и его надо читать обязательно - Karpathy пишет замечательно и можно примерно понять, о чем речь, с нулем бэкграунда.
    Меня больше всего впечатлил текст, который генерируется нейросетью на разных стадиях обучения, вот он отдельно - https://closedcircles.com/api/blobresource?file=1116
    Видно, как буквы складываются в слова, слова в предложения,предложения в структуру, и от всего этого немного жутковато.
    Мне, кстати, кажется, что он писал и notes к отличнейшему Стенфордскому курсу про CNN (http://cs231n.stanford.edu/), больно уж стиль похожий.
    Как всегда, вобзорном посте во все детали погрузиться тяжело, поэтому у меня некоторые вопросы остались и я, наконец, разобрался.
    Докладываюсь по итогам!
    Read more
    30 Sep 2014
    Махонькая задачка на приятное щелканье в мозгу - аж три раза за одну задачку. Найти надо, разумеется, все решения. Спойлеры, традиционно для Кружочков, публикуются линками на <a href='http://gist.github.com'>http://gist.github.com</a>- тыкайте осторожней!
    Read more
    13 Jul 2014
    Контекст беседы - вопрос об успехах business intelligence в предсказаниях действий игроков и современных методах в этой области. К проблеме можно подходить с различных сторон - вот, например, методами эконометрики или методами машинного обучения.
    Я спросил причастных, чем они похожи, а чем они отличаются, а потом Тутубалин подтянулся и про лженауку тоже обсудили.
    Вышло, по мне, познавательно.
    Read more
    28 Jun 2014
    Andrew Aksyonoff:
    mooduck typing: если он пишет код, как мудак, чинит баги, как мудак и проектирует, как мудак, он и есть мудак!!!
    Read more
    15 Jun 2014
    Тред аж двухгодичной давности - когда появились первые статьи про tiled forward shading. Мы там обсуждаем и метод, и его проблемы, и детали возможной реализации, и интересные трюки и детали.
    Прочитал и вспомнил, как занимался графикой. Всплакнул, практически.
    Read more
    12 Jun 2014
    Ruslan Shestopalyuk:
    Был вчера/позавчера на С++ семинаре с Александреску. Особых откровений не было (что и ожидалось, впрочем). Мужик прикольный, как и большинство румынов.
    Вот мои записи с первого дня, если кому интересно.
    Day 1.
    ------
    Read more
    04 Jun 2014
    Как и все остальные интернеты, обсуждаем Metal и Swift, по итогам WWDC. Ждем теперь креатива от Гугла!
    Read more
    03 Jun 2014
    Alexander Radchenko:
    Есть философский вопрос по поводу юнит тестов и C++. Довольно типичная ситуаций когда есть функция которую надо протестировать, на вход она принимает объект некоторого типа и вызывает у него функцию если выполняются определенные условия.
    Хочется написать тест, который проверит что функция действительно вызвалась.
    В умных книжках рекомендуют делать вот так.
    https://gist.github.com/anonymous/6787337
    Read more
    15 May 2014
    Обсуждали задачу про удаление всех (не только последовательных) дубликатов из строчки, запишем итоги.
    Задача - есть строчка из char-ов, надо из нее получить строчку без дублирующихся символов, пусть в том же порядке что и было сначала - т.е. "daaabcadd" -> "dabc".
    Сложность этой ерунды O(N+K), где N - длина строчки, K - длина алфавита (в нашем случае 256)
    Возникает вопрос - как бы так улучшить алгоритм если K заметно больше чем N.
    Решение ниже - но есть шанс подумать!
    Read more
    08 May 2014
    А еще со мной постепенно происходит страшное - вместо того, чтобы спокойно писать код и оптимизировать количество инструкций, я еще провожу время в SQL, Google Analytics и вот-вот запущу R.
    Один из сайд-эффектов - вот захожу на доклады про только про тек, а еще и про монетизацию.
    Взрослею, наверное.
    Read more
    06 May 2014
    Arseny Kapoulkine:
    Традиционно сходил на доклад от Крайтека про графику в Крайзисе.

    Moving to the Next Generation: The Rendering Technology of Ryse

    Speaker: Nicolas Schulz (Crytek)
    Read more
    04 May 2014
    Как только я услышал первые слухи про DX12 и увидел имя докладчика, я сразу понял, что этот доклад пропускать нельзя. Max McMullen был моим начальником в Direct3D, в бытность мою в MS. Я ушел, а Макс остался и дослужился до Principal Dev Lead, if you know what I mean. Гвозди бы делать из этих людей.
    Я часто рассказываю, что пришел в Windows Graphics в замечательный момент - Windows в целом перестал беспокоиться про трехмерную графику и геймдевелоперов. Не все в мире получили memo, но вот DirectX SDK снова вышел не раз в три месяца, а раз в три года, и многие стали <a href='http://ventspace.wordpress.com/2013/01/30/directxxna-phase-out-continues/'>что-то подозревать</a>!
    И вот ситуация разворачивается, так что похоже и ушел я из MS тоже в замечательный момент - DX12 решает вполне актуальные проблемы. Не знаю, как там у мужиков мысленный процесс работает, но кажется, что это реакция прежде всего на независимые инициативы AMD и в некотором смысле NVidia в мире PC, а не на конкуренцию со стороны Мака и мобильного мира.
    Хоть казалось бы, беспокоиться-то надо про второе.
    В общем, это все здорово, позитивно и должно было блин случиться 5 лет назад. Ох, как бы опять не получилось too little too late.
    Если с кем-то из MS увидитесь, обязательно скажите - We need DX12 on Win7!
    Read more
    01 May 2014
    Пожалуй, это самый интересный и важный пост по результам GDC. В частности, потому что он не столько о будущих графических API, а о том, почему все так плохо в текущем положении вещей. История графических API на PC/Mac - это история наслаивающихся абстракций, яростной эволюции железа под этими абстракциями, legacy, длящейся 10 лет итд итп. Про какую-то ее часть этой истории я писал <a href='http://sim0nsays.livejournal.com/18587.html'>тут</a>; и <a href='http://sim0nsays.livejournal.com/18069.html'>тут</a>;.
    И вот стоимости этих абстракций постепенно накапливалась и накапливалась эти 10 лет, причем все это время все участники экосистемы в меру сил старались этому противостоять - и оптимизировали игры, и драйвера, и прослойку в операционной системе.
    В двух шагах все это время был яркий пример их стоимости - ситуация на консолях (вот <a href='http://blog.gamedeff.com/?p=235'>характерный пример</a>).
    И вот этот пост в основном про то, до чего дошла система сейчас, с кучей примеров и деталей.
    Я вот честно не знаю, где еще в интернетах эту информацию искать - спасибо <a href='http://zeuxcg.org/'>@Arseny Kapoulkine</a> за титанический труд!
    Только после этого поста рекомендуется читать остальное и про Mantle, и про DX12, и <a href='http://public.closedcircles.com/posts/gdc-2014-optimizing-driver-overhead-in-opengl'>про OpenGL</a>.
    Read more
    01 May 2014
    Arseny Kapoulkine:
    Approaching Zero Driver Overhead in OpenGL (Presented by NVIDIA)
    Speakers: Cass Everitt (NVIDIA), Tim Foley (Intel), John McDonald (NVIDIA), Graham Sellers (AMD)
    На этом GDC были интересные доклады про API, я на большинстве из них был так что могу рассказывать все в правильном порядке и с кросс референсами.
    Начнем с OpenGL!
    Read more