Pull to refresh
54
0
Aлексей Токарь @AlexeyTokar

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

Send message

Самое главное о нейронных сетях. Лекция в Яндексе

Reading time30 min
Views184K
Кажется, не проходит и дня, чтобы на Хабре не появлялись посты о нейронных сетях. Они сделали машинное обучение доступным не только большим компаниям, но и любому человеку, который умеет программировать. Несмотря на то, что всем кажется, будто о нейросетях уже всем все известно, мы решили поделиться обзорной лекцией, прочитанной в рамках Малого ШАДа, рассчитанного на старшеклассников с сильной математической подготовкой.

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



Константин klakhman Лахман закончил МИФИ, работал исследователем в отделе нейронаук НИЦ «Курчатовский институт». В Яндексе занимается нейросетевыми технологиями, используемыми в компьютерном зрении.

Под катом — подробная расшифровка со слайдами.
Читать дальше →
Total votes 136: ↑133 and ↓3+130
Comments16

Аппаратный менеджер паролей или как перестать вводить пароли и начать жить

Reading time7 min
Views72K
Меня зовут %username%, мне n лет и я параноик. И каждый день информационный мир усложняет мне жизнь. Технологий становится больше, порог вхождения в IT снижается, и мы получаем действительность, где грубые ошибки в безопасности это нормально. А еще и мощность вычислительной техники растет с каждым годом. В итоге наши пароли, хранимые как получится, становятся достоянием общественности.

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

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

Поэтому мы придумали свой хакерский подход к хранению и вводу паролей.



Кратко: телефон связан через Bluetooth со специальным девайсом, который эмулирует клавиатуру. Утеря девайса и телефона не позволяют получить паролей. Утеря девайса и мастер-пароля тоже не страшны. Как так? Добро пожаловать под кат (там 7 картинок, но они красивенькие).
Читать дальше →
Total votes 61: ↑57 and ↓4+53
Comments147

DDoS — как выжить от школьников?

Reading time3 min
Views5.4K
DDoS-атака — сокращение от Distributed Denial Of Service Attack. Это когда куча зараженных компьютеров посылают на сервер множество запросов. В итоге сервер тратит все свои ресурсы на обслуживание этих запросов и становится практически недоступным для пользователей. Размер атак бывают разные, от крупных может спасти только специалист и Cisco Guard :) и такое решение стоит не менее 1000$/мес. Но такие атаки, слава богу, довольно редкое явление. Чаще всего мы видим простые атаки, которые делают как правило школьники (им же все интересно). Создать свой ботнет не сложно, можно даже купить готовый :). Но такие атаки тоже могут нанести вред нашему веб-проекту. Что же делать если атака маленькая и платить огромные деньги специалисту мы не хотим?
Читать дальше →
Total votes 38: ↑28 and ↓10+18
Comments15

Пульт ДУ для ПК

Reading time1 min
Views5.2K
Однажды мне надоело каждый раз вставать с дивана, чтобы поставить на паузу фильм или трек. И озадачился я выбором пульта ДУ для ПК. Поиск по гуглу показал, что есть множество готовых решений (например такое: http://irlink.ru) но, как мне показалось, везде используется свой проприетарный софт, работающй только под Win. Такое положение дел меня не устраивает, т.к. я использую Ubuntu.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments98

Из первых рук про 9c951267

Reading time3 min
Views780
Ламер — юзер, регулярно наступающий на грабли, но по-прежнему уверенный, что граблей не существует.
Какая-то энциклопедия


Прошел день с того времени, как я сделал попытку убедить людей, что в сети нужно очень тщательно выбирать, кому доверять свои данные (пафосно звучит, правда?)

О том, что же было и что из этого получилось, дальше.
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments298

Transport Tycoons

Reading time2 min
Views6.7K
Достаточно большое количество людей помнят или знают такую, в свое время, культовую игру, как Transport Tycoon и не менее популярное продолжение Transport Tycoon Deluxe от MicroProse Software. А если кто-то не знает эти две игры, то, думаю, эта статья будет им интересно, если им нравятся всякого рода менеджеры.

В этой статье я хочу поведать об истории этих двух игр, а так же в каком состоянии симулятор данного рода сегодня.
Читать дальше →
Total votes 59: ↑57 and ↓2+55
Comments119

Размер Java объектов

Reading time5 min
Views188K
Знаете сколько в памяти занимает строка? Каких только я не слышал ответов на этот вопрос, начиная от «не знаю» до «2 байта * количество символов в строке». А сколько тогда занимает пустая строка? А знаете сколько занимает объект класса Integer? А сколько будет занимать Ваш собственный объект класса с тремя Integer полями? Забавно, но ни один мой знакомый Java программист не смог ответить на эти вопросы… Да, большинству из нас это вообще не нужно и никто в реальных java проектах не будет об этом думать. Но это, ведь, как не знать объем двигателя машины на которой Вы ездите. Вы можете быть прекрасным водителем и даже не подозревать о том, что значат цифры 2.4 или 1.6 на вашей машине. Но я уверен, что найдется мало людей, которые не знакомы со значением этих цифр. Так почему же java программисты так мало знают об этой части своего инструмента?

Integer vs int

Все мы знаем, что в java — everything is an object. Кроме, пожалуй, примитивов и ссылок на сами объекты. Давайте рассмотрим две типичных ситуации:
//первый случай
int a = 300;
//второй случай
Integer b = 301;

В этих простых строках разница просто огромна, как для JVM так и для ООП. В первом случае, все что у нас есть — это 4-х байтная переменная, которая содержит значение из стека. Во втором случае у нас есть ссылочная переменная и сам объект, на который эта переменная ссылается. Следовательно, если в первом случае мы определено знаем, что занимаемый размер равен:
sizeOf(int)

то во втором:
sizeOf(reference) + sizeOf(Integer)

Забегая вперед скажу — во втором случае количество потребляемой памяти приблизительно в 5 раз больше и зависит от JVM. А теперь давайте разберемся, почему разница настолько огромна.

Из чего же состоит объект?

Прежде чем определять объем потребляемой памяти, следует разобраться, что же JVM хранит для каждого объекта:
  • Заголовок объекта;
  • Память для примитивных типов;
  • Память для ссылочных типов;
  • Смещение/выравнивание — по сути, это несколько неиспользуемых байт, что размещаются после данных самого объекта. Это сделано для того, чтобы адрес в памяти всегда был кратным машинному слову, для ускорения чтения из памяти + уменьшения количества бит для указателя на объект + предположительно для уменьшения фрагментации памяти. Стоит также отметить, что в java размер любого объекта кратен 8 байтам!

Читать дальше →
Total votes 118: ↑107 and ↓11+96
Comments39

Видеоглазок с минимум затрат

Reading time4 min
Views131K

Добрый день, хабрапользователи.



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

Примерно вот так:
видео


Сказано — сделано!
Прочитать как сделано
Total votes 214: ↑200 and ↓14+186
Comments157

Тестирование в Java. JUnit

Reading time8 min
Views531K

Сегодня все большую популярность приобретает test-driven development(TDD), техника разработки ПО, при которой сначала пишется тест на определенный функционал, а затем пишется реализация этого функционала. На практике все, конечно же, не настолько идеально, но в результате код не только написан и протестирован, но тесты как бы неявно задают требования к функционалу, а также показывают пример использования этого функционала.

Итак, техника довольно понятна, но встает вопрос, что использовать для написания этих самых тестов? В этой и других статьях я хотел бы поделиться своим опытом в использовании различных инструментов и техник для тестирования кода в Java.

Ну и начну с, пожалуй, самого известного, а потому и самого используемого фреймворка для тестирования — JUnit. Используется он в двух вариантах JUnit 3 и JUnit 4. Рассмотрю обе версии, так как в старых проектах до сих пор используется 3-я, которая поддерживает Java 1.4.

Я не претендую на автора каких-либо оригинальных идей, и возможно многим все, о чем будет рассказано в статье, знакомо. Но если вам все еще интересно, то добро пожаловать под кат.
Читать дальше →
Total votes 54: ↑49 and ↓5+44
Comments34

Третий Яндекс.Старт

Reading time1 min
Views4.8K
15 марта в московском офисе Яндекса прошел третий Яндекс.Старт, в котором приняли участие семь проектов: KuponGid.ru, Kinobaza.tv, TimeLiner.ru, ДзенМани, LinguaLeo.ru, Krible.ru и Social Market.



Третий Яндекс.Старт существенно отличался от двух предыдущих. Мы отказались от схемы сотрудничества со стартап-сообществами, при которой на одно мероприятие проекты для нас искал только один партнер. Теперь проекты для Старта подбирают больше десяти партнеров в России и в Украине. Самыми продуктивными на этот раз оказались бизнес-инкубатор «Ингрия» и бизнес-инкубатор ГУ ВШЭ. Кроме того, с недавних пор мы начали принимать заявки от проектов напрямую.

География проектов расширилась: помимо московских, в этом Яндекс.Старте участвовали проекты из Петербурга, Екатеринбурга и Киева.

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

Дискуссия получилась действительно интересной, и зал оставался полным до самого конца. После мероприятия авторы проектов могли в неформальной обстановке пообщаться с яндексоидами, в том числе с Аркадием Воложем и Ильей Сегаловичем.

Мы желаем успеха всем участникам Старта и продолжаем общаться с некоторыми представленными проектами. И так как попасть на нынешний Яндекс.Старт было очень непросто, за этот маленький подвиг авторы  проектов получили сертификаты на участие в тренинге Start in Garage, который проводит в разных городах России наш партнер RIS Ventures.

Команда Яндекс.Старта.
Total votes 46: ↑34 and ↓12+22
Comments14

Масштабирование нагрузки web-приложений

Reading time6 min
Views59K
С ростом популярности web-приложения его поддержка неизбежно начинает требовать всё больших и больших ресурсов. Первое время с нагрузкой можно (и, несомненно, нужно) бороться путём оптимизации алгоритмов и/или архитектуры самого приложения. Однако, что делать, если всё, что можно было оптимизировать, уже оптимизировано, а приложение всё равно не справляется с нагрузкой?
Читать дальше →
Total votes 109: ↑98 and ↓11+87
Comments38

Кинобаза год спустя: каким должен быть сайт о кино

Reading time4 min
Views2.6K

Год назад я рассказал здесь же, на Хабре, про первую версию Кинобазы.

Многие сайты за год успевают вспыхнуть и умереть до того, как потребуется продлевать домен. Но с Кинобазой всё получилось иначе. Несмотря на отсутствие какой-либо рекламы или продвижения сервиса, кроме постов на хабре, его аудитория непрерывно растёт и за год доросла до 20 000 человек в день. А значит мы делаем нужную вещь, которой люди с удовольствием пользуются и о которой рассказывают своим друзьям.

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

дочитать пост и посмотреть комментарии
Total votes 131: ↑118 and ↓13+105
Comments178

Персональные данные (Краткий FAQ)

Reading time8 min
Views230K

Что такое персональные данные?


Персональные данные - любая информация, относящаяся к определенному или определяемому на основании такой информации физическому лицу, в том числе:  
— его фамилия, имя, отчество, 
— год, месяц, дата и место рождения, 
— адрес, семейное, социальное, имущественное положение, образование, профессия, доходы, 
другая информация (см. ФЗ-152, ст.3).
Например: паспортные данные, финансовые ведомости, медицинские карты, год рождения (для женщин), биометрия, другая идентификационная информация личного характера.
В общедоступные источники персональных данных (адресные книги, списки и другое информационное обеспечение) с письменного согласияфизического лица могут включаться его фамилия, имя, отчество, год и место рождения, адрес, абонентский номер и иные персональные данные (см. ФЗ-152, ст.8).
Персональные данные относятся к информации ограниченного доступа и должны быть защищены в соответствии с законодательством РФ. При формировании требований по безопасности систем персональные данные разделяют на 4 категории.
Читать дальше →
Total votes 82: ↑75 and ↓7+68
Comments112

10 лучших игр для Ubuntu

Reading time3 min
Views244K
Большинство тех, кто перешел с операционных систем Windows или Mac OS на Ubuntu, сталкиваются с тем, что их любимые игры не работают на Ubuntu. И дело в том, что игровые студии мало обращают внимания на платформу Linux по причине того, что ОС Windows имеет большее распространение, а также существует мнение, что дистрибутивы на базе Linux мало распространены и нестабильны. Именно для этого создавалась Ubuntu, в которой реализован дружественный интерфейс для пользователя и достаточная стабильность.
Данный топик основан на старой записи в блоге LinuxGames07 и содержит обзор десяти лучших игр для Ubuntu, а также способ установки, скриншот и видео об игре и её описание.

1.Tremulous



image

Многопользовательская игра, смесь жанров 3D-action (FPS) и стратегии реального времени (RTS). Игра работает на базе игрового движка Quake III и изначально создавалась как модификация (мод) к игре Quake III.


Установка:
sudo apt-get install tremulous
Читать дальше →
Total votes 142: ↑104 and ↓38+66
Comments268

Блокируем китайцев

Reading time1 min
Views9K
Ниже пойдет текст достойный пера К.О.

Китайский трафик велик и беспощаден. Когда какая-нибудь смешная или не очень картинка попадает в китайские блоги, провайдер colocation начинает обижаться и рассказывать про несоответствие соотношений 3 к 2 российского и зарубежного трафика.

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

Примеров реализации есть несколько (ngx_http_geo_module, ngx_http_geoip_module или обычным deny), наиболее эффективный с помощью ngx_http_geo_module и базы wipmania (http://www.wipmania.com/ru/base/)

Облегчение на одном из серверов.
image

Читать дальше →
Total votes 48: ↑34 and ↓14+20
Comments58

Highcharts: Красивые, динамические чарты за 5 минут!

Reading time2 min
Views65K
image
Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
Читать дальше →
Total votes 139: ↑132 and ↓7+125
Comments49

Работа с ICQ в Java

Reading time8 min
Views7.7K

Предыстория


Как-то раз мы решили создать свой собственный микроблоггинг с блекджеком и шлюхами c шахматами и поэтессами. Сначала сделали сайт, но быстро стало понятно, что для реализации идеи его недостаточно. Необходимо было работать с сообщениями через Jabber и ICQ.
Начали с простого — с джаббера. Никаких проблем тут не возникло — мы писали на Java, поэтому прикрутили Smack API и все заработало. Но, как это не печально, но самым популярным IM протоколом все еще является ICQ…

Задача


Итак, задача: залогиниться в ICQ, принимать и отправлять сообщения, понимать X-статусы, работать с кириллицей.

Рассмотрим пути решения.
Читать дальше →
Total votes 47: ↑31 and ↓16+15
Comments16

QIP 2008 concept

Reading time2 min
Views3.1K
Хочу сразу предупредить, что я не программер и не знаю насколько возможно реализовать нижележащие фишки, но тем не менее таковые есть.

Стартовый вид контакт-листа

Изначально я захотел попробовать сделать новый скин для квипа, но в итоге получился новый концепт, которым хочется поделиться с разработчиками и внести свой вклад в развитие популярного меседжера.
Читать дальше →
Total votes 415: ↑358.5 and ↓56.5+302
Comments309

Про Git на пальцах (для переходящих с SVN)

Reading time8 min
Views279K
Год назад мы с командой решили перейти с SVN на Git. Зачем это было надо — писать не буду, т.к. на эту тему уже и так много написано. А хочу я описать типичные алгоритмы работы, понятные человеку, который долгое время пользовался SVN. Ниже — памятка, написанная для команды год назад, чтобы легче было мигрировать. Надеюсь, кому-нибудь пригодится.
Читать...
Total votes 179: ↑175 and ↓4+171
Comments100

Жизнь без IE6

Reading time1 min
Views1.3K
При обновлении очередного проекта решил полностью забить на IE6. Его доля сильно падает, а времени на оптимизацию под этот браузер уходит достаточно много. Сначала всё же хотел оптимизировать сидеть, но потом решил что моё время дороже. Не смотря на то, что верстаю уже давно, IE всегда преподносит что-то новое =) Да и профиль не мой немного.
Однако совесть не позволяла выгрузить простой текст типа «обновите браузер», хотелось сделать доступно и понятно. Сделал, получилось приятно, настолько приятно, что захотелось поделиться =) Владельцы IE6 принудительно видят такую картину, при попытке обратиться к любой станице сайта
image
Читать дальше →
Total votes 251: ↑188 and ↓63+125
Comments302
1

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity