Category: it

Category was added automatically. Read all entries about "it".

любопытно

Пусть сверху повисит

Пожалуйста, прочитайте название журнала перед тем, как просить совет насчет репертуара видеосалона. Я - не он. Спасибо.

Для тех, кто пришел по ссылке из списка ЖЖ-науки: и это тоже какая-то ошибка. Я не биолог и даже не ученый.
В палеонтологи меня записали, видимо, за пост про тиранозавров (хотя в нем ясно сказано обратное). Ну или, может быть, за один из этих:
http://plakhov.livejournal.com/104586.html
http://plakhov.livejournal.com/103042.html
http://plakhov.livejournal.com/100670.html
Может быть, какой-нибудь из них вам даже понравится.

Но вообще-то учился я на мехмате МГУ, кандидатскую защищал по 05.13.11, работаю в Яндексе, занимаюсь качеством поиска (чем-то средним между программированием, матстатистикой и лингвистикой). До этого несколько лет делал компьютерные игры (в Nival Interactive и в паре куда менее известных компаний), хорошие. Увлекаюсь чем попало всем сразу, читаю много умных книг (не настолько много, как некоторые), иногда пишу сюда что-нибудь научно-популярное.

На всякий случай: статью на "Мембране" про искусственный интеллект, собравшую 15 тысяч комментариев, писал я, но было это почти 10 лет назад, и сейчас она кажется мне наивной и неполной; не нужно по ней судить о чем бы то ни было.

Добавлено 21 февраля 2014 года: нет, в Яндексе не вносят изменения в результаты поиска по политическим мотивам, не скрывают от народов важные новости, не манипулируют в пользу Путина или Ктулху баллами пробок и темами дня в блогах и т.д. и т.п. Если бы тут так делали, я бы тут не работал. Нет, от меня не скрывают, и да, я уверен. Вносить секретные изменения в поиск втайне от меня и моих коллег технически не особенно реально. Если вам кажется, что что-то такое происходит, это, скорее всего, когнитивное искажение (вот такое: Гугл показывает Страшную Новость, а Яндекс - нет? Цензура! Яндекс показывает Страшную Новость, а Гугл нет? Ну мало ли). Подробнее конкретные случаи можем обсуждать в комментариях к этой записи.
любопытно

Встреча

Если вы всерьез занимаетесь программированием, живёте в Москве, и хотите посоциализироваться, заходите вот сюда:
https://events.yandex.ru/events/meetings/04-aug-2016/

Это 4 августа (будний день), с семи вечера. Бесплатно, но с предварительным отсевом на этапе регистрации.
Там будет мини-конференция, где коллеги что-нибудь расскажут, но это, наверное, не главное. Главное, что, если хорошо пойдет, это имеет некоторые шансы превратиться во что-то вроде цехового клуба "для своих" с хорошим отбором на входе, а участие в таких штуках дорогого стоит.
любопытно

Мы живем в будущем

Читали в детстве книжки о том, как писали шахматные программы целыми институтами?

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

Вот избранные фразы по ссылке, чтобы показать, что заголовок "живём в будущем" - не стандартный bullshit и не обычный кивок в сторону закона Мура, мир его праху.

"I downloaded 100M games from FICS Games Database and began training a machine learning model" ("Я скачал 100 млн партий и начал тренировать модель машинного обучения")

"I rented a GPU instance from AWS and trained it on 100M games for about four days" ("Я арендовал GPU-машинку в облаке Амазона и тренировал модель на 100 млн партий примерно четыре дня").

Итоговая программа играет "как-то", но играет же. Без таблицы дебютов, без специальной малофигурной логики, без супер-железа, написанная на петоне, она, тем не менее, проигрывает аналогам далеко не всегда и стабильно выигрывает у слабо играющих людей. Чума.

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

Программистское

Что сделает программист, если сказать ему "нужно научиться копировать байты из одного источника в другой" и надолго оставить одного?

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

Младший программист через некоторое время напишет свой аналог <вставьте_имя_утилитки_которой_40_лет> (только хуже) и будет бесконечно дополнять новыми опциями, о которых его никто не просил (-m "добавлен новый тип источника: Tor node").

Старший программист уточнит задачу: а чем, собственно, <вставьте_имя_утилитки_которой_40_лет> не подходит? Если внятного ответа не последует, уволится и/или заведёт свой свечной заводик.

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

Команда из десяти программистов во главе с менеджером бесстрашно погрузится в работу. Они выработают стандарты кодирования, внедрят agile, соберут user stories, создадут framework, займутся рефакторингом, наладят таскооборот в Джире, перейдут с svn на git и кстати выложат фреймворк на github, напишут фронтенд вьювера и освоят в процессе Django, исправят во фронтенде xss, построят юнит-тестирование, переведут для этого формат репортов на JSON и проделают массу другой работы по созданию сервиса, который не умеет прочитать с диска один файл и записать в другой.

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

Нейронные сети наносят ответный

Вчера побывал на интересном докладе мистера Yann LeCun. Докладчик рекламировал техники, известные под собирательным названием Deep Learning, и со сцены показывал фокусы realtime-распознавание компьютером разных предметов. Наводил по очереди на них камеру ноутбука, и тот уверенно опознал пульт управления, микрофон, дисплей, докладчика и прочие предметы; сколько именно вещей он умеет узнавать, осталось тайной, но, судя по слайдам, никак не меньше пары десятков, что уже вполне ок для многих практических применений. Потом прямо на лету, за пару секунд и пару кадров, обучил его отличать себя от случайного человека из зала. Случайным человеком оказался м-р Борковский, руководитель Yandex Labs. Этот фокус я "разгадал": на LeCun'е была белая рубашка, а на Борковском - клетчатая тёмная, так что черты лица тут ни при чем; но такое лихое распознавание даже и "униформы" - все равно очень круто.


Лица, впрочем, тоже можно
Collapse )
любопытно

Secondary protein structure dataset(s)?

<== Картинка с α-helix для привлечения внимания

Боюсь, что сам буду долго искать, так что, люди добрые, подскажите, а какие бывают хорошие открытые dataset'ы про предсказание вторичной структуры белков? На чём правильно тренироваться, а на чём меряться силами? Ну и заодно, расскажите, насколько вообще это разумная область в её текущем состоянии? (А то слово "биоинформатика" вообще, обилие китайцев в частности, и нейронные сети как state-of-the-art метод немного смущают, простите мне мой шовинизм).
любопытно

Как размножаются олени

В комментариях к прошлой записи самый клёвый тролль ЖЖ kray_zemli затроллил меня тем, что назвал фишеровское убегание гуманитарщиной (ну или как он там любит выражаться).

(Что такое "фишеровское убегание" тем, кто не знает, как всегда отлично объясняет Марков).

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

Collapse )

Доб. В комментариях modulo_zero нашёл в моем коде "нефизичное" допущение, и поправил симуляцию так, чтобы фишеровское убегание ускоряло эволюцию везде. Исправление, на мой взгляд, очень убедительное. А a_bronx правильно отметил, что устоявшийся русский перевод "убегание" очень неудачный, на самом деле "runaway" здесь означает "разнос" (as in "машина пошла в разнос").
любопытно

data structures baking (программистское)

Господа, а существуют ли библиотеки для data baking в C/С++? (уточнение, возможно, излишнее, т.к. я не знаю других языков, в которых data baking в принципе возможен) Поскольку без reflection'а тут никак не обойтись, видимо, это должно быть что-нибудь кодогенерирующее, в духе protobuf. Может быть, даже extension для protobuf'а.

Я точно знаю, что aruslan когда-то давным-давно делал что-то весьма похожее, и ddima, и я тоже делал. И до сих пор у всех свои велосипеды?

Ещё я не понимаю, почему baking, судя по ссылкам в интернетах и общим ощущениям, является каким-то геймдевовским know-how. Неужели всем остальным нравится, когда их сервисы по полчаса стартуют?
любопытно

Про искусственный интеллект и с чего его начинать делать

Я утверждаю, что базовая операция, выполняемая мозгом на хардверном уровне (во всяком случае, одна из них, и, видимо, самая важная), это не какое-нибудь там "предсказание", как у Хокинса, а вовсе даже и алгоритм Мисры-Гриса.

Вот прямо так внаглую и совершенно всерьёз утверждаю.


Обоснование:
1) как это сделать "на нейронах", достаточно очевидно (автор оставляет это как упражнение для читателей)
2) нас интересует алгоритм, хоть как-то обобщающий гигабайт-входных-данных-в-секунду; он обязан тем или иным способом первым делом выполнять "поиск часто встречающегося" в один проход и за константную память, так почему бы не способом простым, уже нам известным, и массивно-параллельным
3) существо, умеющее такое делать, уже умеет замечать корреляции по крайней мере на уровне "если вижу много жёлтых пятнышек и немного красных, то скоро желтых станет больше". Поди плохо.
4) такая операция отлично stack'ается сама с собой для увеличения уровня абстракции

Видимо, Мисру-Гриса нужно немного как-то обобщить, чтобы в п.3 оно умело понимать не только что "вообще происходит", но и "как обратить это себе на пользу". А в п.4 нужно правильно stack'ать, чтобы с предыдущего уровня абстракции можно было использовать не только объекты, но и контексты. Не только "жёлтые пятнышки", то есть, но и "что-то, что часто встречается нам рядом с желтыми пятнышками".

Кто ничего не понял, тому и не надо, остальные discuss.
любопытно

Про искусственный интеллект и готические соборы


Как вы, возможно, знаете, искусственный интеллект - больная тема, вроде управления государством. У всех, кто о нём задумывается, появляются какие-то мысли на эту тему - умные или не очень. Мысли одеваются в слова, и возникают споры. В спорах, в частности, высказывается следующий аргумент: мысли дилетанта обладают такой же ценностью, что и мысли специалистов. В самом деле, например, специалист по табуреткам может сделать табуретку и тем самым доказать своё высокое звание. А что может предъявить специалист по ИИ?

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

Представьте, что мы живём в V веке, и мечтаем построить огромный кафедральный собор, такой, один из тех самых, вы понимаете, о чём я. Первый в мире, раньше таких не было. В обсуждении участвуют строители, имеющие опыт возведения одноэтажных зданий - деревянных и каменных, есть мечтатели-визионеры, есть духовные лидеры. Также среди нас есть специалисты по природным мегаструктурам: коралловым рифам и производящим их полипам (ну, тут аналогия как-то немного хромает, но что делать).

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

Нам уже известно, что построить собор в точности так же, как мы строим одноэтажные здания, нельзя: пробовали, разваливается. Многие из нас умеют оценить, на каком этапе закончится крахом строительство по тому или иному проекту (но никакой строгой теории на сей счет нет, и потому доказать это горе-строителям и их инвесторам не получается). Нам известно, что доверить руководство этим проектом человеку, не имеющему опыт строительства каменных зданий, нельзя точно (причем опыт работы с деревом тоже понадобится). Нам обычно в точности известно, по какой конкретной причине неосуществим каждый прожект любого мечтателя-визионера, неспособного сделать даже табуретку. У нас появились кое-какие новые материалы и есть зачатки теории устойчивости и сопромата.

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