Search
Write a publication
Pull to refresh
82
0
Send message

Накладные расходы памяти у коллекций

Reading time7 min
Views91K
Мне было интересно, какие коллекции сколько съедают дополнительной памяти при хранении объектов. Я провёл замеры накладных расходов для популярных коллекций, предполагающих хранение однотипных элементов (то есть списки и множества) и свёл результаты на общий график. Вот картинка для 64-битной Hotspot JVM (Java 1.6):

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

Структуры данных: бинарные деревья. Часть 2: обзор сбалансированных деревьев

Reading time6 min
Views247K
Первая статья цикла

Интро


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

Java собеседование. Коллекции

Reading time10 min
Views910K
С недавнего времени у меня появилась настойчивая мысль, что профессиональное развитие сильно замедлилось и это хочется как-то исправить. Да, читаю книги, слушаю курсы, но в то же время приходит и понимание того, что возможно пришло время сменить работу, здесь вроде как все изучено, плавно уходим в рутину. Данная мысль сподвигла меня на рассылку своего резюме в несколько компаний — лидеров рынка. После прохождения собеседования в 3 из них, я решил, как водится внести свои 5 копеек в освещение обширной темы собеседования, а именно технических вопросов по Java коллекциям, с которыми приходится сталкиваться. Да, знаю, читатель скажет: «коллекции — избитая тема, сколько можно», но часть из приведенных ниже вопросов, я задавал своим знакомым разработчикам, которые занимают именно позиции разработчиков («крепких середнячков», по меркам недалекой от Москвы глубинки, которые уверенно справляются со своей работой на практике, а вот в теории скажем так есть пробелы, потому, что работа не требует решения каких-то нетривиальных задач, да и потому что не всем это интересно — изучать как внутри работает структура данных), вызывало растерянность. Думаю, что рассмотренный материал будет не очень интересен разработчикам выше уровня Junior (я попрошу их комментировать, дополнять и критиковать изложенный здесь материал), а вот Junior`ы уверен, найдут в этой статье интересное для себя.
Читать дальше →

Прикручиваем пространственный индекс к ничего не подозревающей OpenSource СУБД

Reading time9 min
Views18K
image
Мне всегда нравилось, когда заголовок однозначно говорит о том, что будет дальше, например, «Техасская резня бензопилой». Поэтому под катом мы действительно будем добавлять пространственный поиск к СУБД, в которой его изначально не было.
Читать дальше →

Загружаем данные в Oracle

Reading time14 min
Views93K
В своей предыдущей статье я показал, что при использовании асинхронных запросов, скорость опроса устройств по протоколу SNMP может достигать 9000 запросов в секунду (при условии, что у нас есть достаточное количество устройств для формирования такого потока ответов). Вопрос о том, что делать с этим потоком данных остался открытым.

Обычной практикой является обработка данных мониторинга посредством RDBMS (таких как Oracle Database). Но способны ли традиционные реляционные базы данных справиться с такой нагрузкой? Попробуем в этом разобраться.
Читать дальше →

Задача обобщения

Reading time1 min
Views9.3K
Где-то год назад я опубликовал цикл лекций («Логика мышления») «Искусственный интеллект как совокупность вопросов» . За время, прошедшее с тех пор, удалось достаточно существенно продвинуться вперед.
На днях мне довелось выступать на семинаре по ИИ, который в Санкт-Петербурге проводит Алексей Потапов, за что ему глубокий респект. Доклад был о природе обобщения, что это за задача, как мозг реализует обобщение во всех его проявлениях и примеры обобщения, касающиеся зрительной системы человека. Так получилось, что в основном разговор шел о тех разработках, на которых я сосредоточен последний год. Так что, если кому-то, кто смотрел «Логику мышления» интересно проследить в какую сторону идет развитие моего направления, то это можно сделать по записи этого выступления.

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

Обзор литературы по Data Mining

Reading time7 min
Views66K
Добрый день!

Публикация нескольких статей о Data Mining показала высокий интерес сообщества к данной теме. Много вопросов было задано по типу «где почитать» и «с чего начать». Предлагаю вашему вниманию подборку литературы, ресурсов для уверенного старта в данной области.

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

Чему нас не научил профессор Ng

Reading time6 min
Views33K
Как видно по дискуссиям на хабре, несколько десятков хабровчан прослушали курс ml-class.org Стэнфордского университета, который провел обаятельнейший профессор Andrew Ng. Я тоже с удовольствием прослушал этот курс. К сожалению, из лекций выпала очень интересная тема, заявленная в плане: комбинирование обучения с учителем и обучения без учителя. Как оказалось, профессор Ng опубликовал отличный курс по этой теме — Unsupervised Feature Learning and Deep Learning (спонтанное выделение признаков и глубокое обучение). Предлагаю краткий конспект этого курса, без строгого изложения и обилия формул. В оригинале все это есть.
Читать дальше →

Data mining: Инструментарий — Theano

Reading time6 min
Views51K

В предыдущих материалах этого цикла мы рассматривали методы предварительной обработки данных при помощи СУБД. Это может быть полезно при очень больших объемах обрабатываемой информации. В этой статье я продолжу описывать инструменты для интеллектуальной обработки больших объёмов данных, остановившись на использовании Python и Theano.
Читать дальше →

Вам не нужен Hadoop — у вас просто нет столько данных

Reading time4 min
Views79K
Меня спросили: «Сколько у вас опыта с большими данными и Hadoop?» Я ответил, что часто использую Hadoop, но редко — с объёмами данных больше нескольких ТБ. Я новичок в больших данных — понимаю идеи, писал код, но не в серьёзных масштабах.

Следующий вопрос был: «Можете ли вы сделать простую группировку и сумму в Hadoop?» Разумеется, могу, и я попросил пример формата данных.

Они вручили мне флэш-диск со всеми 600 МБ данных (да, это были именно все данные, а не выборка). Не понимаю, почему, но им не понравилось моё решение, в котором был pandas.read_csv и не было Hadoop.
Читать дальше →

Как мы улетели и с трудом вернулись: подробный отчет о нашем участии в соревнованиях летающих роботов компании КРОК

Reading time8 min
Views20K
3 сентября 2012 года, прочитав на сайте Habrahabr новость о соревнованиях летающих роботов, мы поняли – вот оно, дождались! К тому моменту мы уже несколько месяцев думали о том, что пора переводить свой многолетний интерес к робототехнике в профессиональное русло, и искали для этого повод.

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

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

Применение локальных бинарных шаблонов к решению задачи распознавания лиц

Reading time7 min
Views23K
Всем добрый день!

В статье уже был кратко рассмотрен оператор LBP. Хотелось бы остановиться на данном вопросе несколько подробнее, а также рассмотреть применение LBP к решению задачи распознавания лиц.

1. Введение


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

Автономная работа смартфона: «внятный» сравнительный гид

Reading time3 min
Views20K
В Сети есть не так много информационных ресурсов IT-тематики, которые максимально серьезно подходят к оценке времени автономной работы. Нередко даже авторитетные обозреватели ограничиваются общими фразами типа «один-два дня проработает». И это при том, что лично я сразу перематываю статьи к разделу «Автономная работа». В данном вопросе меня неизменно радует ресурс Helpix, который проводит замеры «мобил» по 14-ти сценариям, до полной разрядки. То есть, тест длительности работы даже самого «захудалого» смартфона занимает в сумме порядка 120 (О_О) часов. Замеры вносятся в обновляемую сводную табличку, которую я и хотел бы продемонстрировать. Всего в списке содержится 27 единиц техники, включая планшеты. За август-сентябрь прибавились Highscreen Omega Q, Alcatel One Touch X'Pop 5035X, Highscreen Alpha R, teXet TM-4072 X-basic и Fly IQ4411 Quad Energie 2. На мой взгляд, это крайне полезный «сборник», который следует иметь ввиду при выборе смартфона.

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

Идеи для проектов по открытым данным и ближайшие хакатоны и соревнования на которые еще можно успеть

Reading time3 min
Views5.9K
Вы наверняка знаете что сейчас идет, заканчивается и начинается много соревнований по открытым данным и многие проводят хакатоны.

Например, Хакатон Яндекса пройдет завтра-послезавтра и еще не поздно зарегистрироваться, наши друзья в Санкт-Петербурге проводят свой Хакатон 5-6 октября.

Хакатоны — это прекрасный формат чтобы познакомиться с темой, попробовать себя и сделать что-то простое и интересное. На хакатоне, однако, редко получается сделать сложный продукт и даже найти возможность монетизации. Если Вы делаете что-то большое или хотите сделать — мы продляем наш конкурс Apps4Russia до 1 октября и очень ждем ваши заявки.

Идеи



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

  1. Игры и депутаты

    Игра Hot or Not по депутатам. Берем список депутатов из API — api.duma.gov.ru — фото с duma.gov.ru и запускаем крутилку со сравнениями. Прогоняем по сотням посетителей сайта и получаем интереснейшую статистику.
    Идеально — виджет для внедрения в сайты СМИ.

  2. Мониторинг качества воды

    Взять данные по качеству воды в Москве по районам и сделать приложение для мобильного телефона показывающие качество воды в районе. Данные уже готовы и находятся здесь — http://hubofdata.ru/dataset/moswaterquality-2013


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

Как прошел первый учебный год Data Mining Track

Reading time3 min
Views5.5K

5 октября лаборатория интеллектуального анализа данных Data Mining Labs запускает новый семестр обучения. Что это такое, как туда попасть и какие возможности получают студенты — добро пожаловать под кат.
Читать дальше →

Построение карьеры в большой организации. Tips&tricks

Reading time5 min
Views179K

Захотелось поделиться с сообществом собственными наблюдениями на тему карьерного роста технаря.


Информация основана на опыте в больших западных конторах, которые делают реальные продукты. Всё изложенное ниже не претендует на абсолютную истину.

Начнем сначала: вы свежий выпускник тех. вуза. Вам 22-23 года, вся жизнь впереди и она прекрасна. В этом прекрасном будущем есть, скорее всего, есть жена-модель, дом – полная чаша, несколько машин, и первый миллион к 30 годам.

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

Вы устраиваетесь на работу, ваше звание — инженер или разработчик. У вас появляются коллеги. Почти все они старше вас. И тут вы, возможно, заметите, что на таком же уровне, как и вы, есть очень пожилые люди. Прямо 30-40 летние мужики, может даже 50ти летние “стариканы”. И многие из них тоже закончили похожие вузы, и многие совсем не дураки, но как-то не сложилось с карьерным ростом…

Получается хороший вуз, диплом, интеллект, работоспособность, хорошее первое рабочее место – далеко не гарантия того, что вы вырастете в иерархии.
Читать дальше →

История открытых данных и Хакатон Яндекса

Reading time14 min
Views17K
14 — 15 сентября в Москве пройдёт первый Хакатон Яндекса, участники которого будут два дня и две ночи создавать проекты на основе открытых государственных данных с помощью технологий Яндекса.

Я уже много лет занимаюсь тем, чтобы у российских разработчиков рос интерес к работе с открытыми данными. Именно для этого создан конкурс Apps4Russia, организованный некоммерческим партнерством «Информационная культура». В этом году в нем появилась номинация для тех, кто создает приложения на отрытых данных и технологиях Яндекса. Эти события подтолкнули систематизированно рассказать здесь об истории открытых данных, их источниках, примерах использования и многих других важных вещах.

image

Это график из ЖЖ eugenyboger. То, что сейчас мы можем узнать подробные результаты выборов по каждому участку, — это норма, а еще совсем недавно это было не так даже в очень развитых странах.
Читать дальше →

Тестирование: 20 принципов новичка

Reading time6 min
Views67K
Все началось на офисной кухне со спора, который разгорелся между мной, менеджером по бизнес-процессам и рискам и моим коллегой из отдела технического сопровождения продаж. На тот момент он обучался на полуторагодичных курсах основ программирования в местном институте информационных технологий, а я просто анализировала процессы, просчитывала риски, обосновывала предложения по покупке софта. Он сидел напротив и рассказывал, как сложно учиться, как туго даются ему предметы и как он готов отчислиться, заплатив 50 с лишним тысяч. Я не знаю, что мне налили вместо чая, но я уверено и грубо сказала: «Знаешь, я тоже пойду с октября и ты увидишь, что мое полУтехническое образование и возраст 27 лет не помеха для освоения всего этого». Он покрутил у виска…
Не буду рассказывать про трудности обучения и успешной защиты своего полноценного, но весьма тривиального программного проекта на английском языке, а расскажу о последствиях моей учебы. В конце обучения я поняла, что работа мне поднадоела и хочется чего-то совершенно другого. Как известно, иногда мечты сбываются и нам предложили пройти трехмесячную стажировку в должности инженеров по тестированию с неплохим окладом в одной большой айтишной конторе. Нормальные люди отказались…
image
Читать дальше →

Яндекс, роботы и Сибирь — как мы сделали систему поиска по загруженному изображению

Reading time4 min
Views68K
Сегодня Яндекс запустил поиск картинки по загруженному изображению. В этом посте мы хотим рассказать о технологии, которая стоит за этим сервисом, и о том, как её делали.

Технология внутри Яндекса получила название «Сибирь». От CBIR — Content-Based Image Retrieval.

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



Для чего всё это нужно?


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

Как я упрощаю себе жизнь работая за компьютером и в IRL

Reading time11 min
Views23K
Сей пост я решил написать, когда скопился определённый объём мыслей на тему того, как упростить себе жизнь, работая за компьютером и не только, а так же как повысить свою эффективность в работе. Самый простой и топорный пример — при заполнении полей на сайте (адрес, страна, ФИО) после ввода данных, можно либо брать мышку и двигать её к следующей строке (трата времени), либо просто нажать Tab (экономия времени). Только в этом посте речь пойдёт о более продвинутых, и в то же время простых программах, которые делают жизнь проще. Забегая вперёд, хочется сказать, что топик будет являться не главным источником информации, т.к. Хабр, это тот ресурс, где комментарии определяют топик. Поэтому я более всех остальных жду, что кто-то поделиться своими маленькими секретами :)
Читать дальше →

Information

Rating
Does not participate
Registered
Activity