Как стать автором
Обновить
142
0
Ярослав Сергиенко @pallada92

Визуализация данных и frontend в ИСИЭЗ НИУ ВШЭ

Отправить сообщение

Насколько медленны iostreams?

Время на прочтение7 мин
Количество просмотров79K
Потоки ввода-вывода в стандартной библиотеке C++ просты в использовании, типобезопасны, устойчивы к утечке ресурсов, и позволяют простую обработку ошибок. Однако, за ними закрепилась репутация «медленных». Этому есть несколько причин, таких как широкое использование динамической аллокации и виртуальных функций. Вообще, потоки — одна из самых древних частей стандартной библиотеки (они начали использоваться примерно в 1988 году), и многие решения в них сейчас воспринимаются как «спорные». Тем не менее, они широко используются, особенно когда надо написать какую-то простую программу, работающую с текстовыми данными.

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

Сегодня в комментариях у посту возникло обсуждение о медленности iostreams. В частности, freopen пишет
Забавно смотреть на ваши оптимизации, расположенные по соседству со считыванием через cin :)

а aesamson даёт такую рекомендацию
Можно заменить на getchar_unlocked() для *nix или getchar() для всех остальных.
getchar_unlocked > getchar > scanf > cin, где ">" означает быстрее.


В этом посте я развею и подтвержу некоторые мифы и дам пару рекомендаций.
Читать дальше →
Всего голосов 90: ↑88 и ↓2+86
Комментарии80

Хабр, знакомься — новый LinguaLeo с персональной системой обучения иностранному языку

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

Мы видим в персонализации будущее образования, ведь каждый человек учится в собственном темпе и преследует личную цель. Кто-то предпочитает заниматься по одним материалам, а кто-то — по другим; у кого-то время на обучение есть днем, а у кого-то — вечером. Наша команда почти год ударно трудилась над тем, чтобы учесть все это и предоставить своим пользователям возможность учить английский по персональному плану. Итак, мы рады анонсировать Новый LinguaLeo! Новая версия сервиса каждому пользователю представляет индивидуальный план обучения, который отображается на новом Dashboard, а также интервальную тренировку и UGC перевод.

Проведённые тесты новой системы уже показали эффективность нового формата — выросло вовлечение. Теперь Саша, брат вашего друга и будущий выпускник, будет готовиться к ЕГЭ только по тем материалам, которые будут ему и полезны и интересны. Любитель путешествий Валера, наконец-то, сможет произнести сотруднику аэропорта: «What's the charge for excess baggage?», а ваша любимая подружка, красотка-хирург Тамара из Уфы, поймет, о чем говорят коллеги на международном симпозиуме.

Довольно простая с виду система «под капотом» прячет технологии, которых больше нигде нет, как говорит Артем Логинов, наш VP of Product. Если мы сумели вас заинтриговать — идем под хабракат, там вы узнаете подробности о наших ноу-хау.
Читать дальше →
Всего голосов 93: ↑80 и ↓13+67
Комментарии148

Web-разработка на Python глазами PHP-программиста

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

Введение



В статье хотелось бы поднять вопросы отличия использования Python для web-разработки по сравнению с оной на PHP. Надеюсь, статья не приведет к холиварам, так как она вовсе не о том, какой язык лучше или хуже, а исключительно о технических особенностях Python.
Читать дальше →
Всего голосов 77: ↑62 и ↓15+47
Комментарии95

Как работают профессионалы. Издатель «ТМ» Денис Крючков

Время на прочтение2 мин
Количество просмотров17K
Всем привет! Сегодня мы анонсируем новую рубрику на «Мегамозге».

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

Наш сегодняшний гость — издатель ТМ Денис deniskin Крючков.

image
Читать дальше →
Всего голосов 68: ↑54 и ↓14+40
Комментарии19

Еще раз про учебу и работу ИТ-шника в Германии

Время на прочтение5 мин
Количество просмотров118K
Доброго времени суток Хабр.

Я читал множество статей на Хабре по поводу учебы в Германии, но часто их пишут люди, которые приехали сюда именно получать высшее образование. Я же в Германии вырос, поэтому розовые очки несколько потускнели и я смогу немного разбавить восторженные отзывы об этой стране и о системе обучения в частности.
Читать дальше →
Всего голосов 79: ↑66 и ↓13+53
Комментарии187

Марковские случайные поля

Время на прочтение4 мин
Количество просмотров45K
Статья посвящена описанию метода CRF (Conditional Random Fields), являющимся разновидностью метода Марковских случайных полей (Markov random field). Данный метод нашел широкое применение в различных областях ИИ, в частности, его успешно используют в задачах распознавания речи и образов, обработки текстовой информации, а также и в других предметных областях: биоинформатики, компьютерной графики и пр.
Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии13

Сколько научных статей в интернете?

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

Недавно профессор опубликовал первое в своём роде исследование, в котором оценивает количество доступных научных статей в интернете. Работа "The Number of Scholarly Documents on the Public Web" опубликована в майском номере журнала PLoS ONE и цитируется в Nature.

В работе учтены только англоязычные документы, с учётом перекрытия в двух крупнейших специализированных поисковиках: Google Scholar и Microsoft Academic Search. Под научными документами подразумеваются публикации в журналах и доклады с конференций, диссертации и дипломные работы, книги, технические отчёты и рабочие документы (предварительные версии научных статей).

Статистические методы показали, что через интернет доступно как минимум 114 млн научных документов на английском языке, из них через Google Scholar доступно около 100 млн. Как минимум 27 млн документов (24%) лежат в открытом доступе.
Читать дальше →
Всего голосов 18: ↑15 и ↓3+12
Комментарии53

Дата-майнинг делает научные открытия

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


Интересная статья опубликована в журнале New Scientist о том, как дата-майнинг применяется для анализа большого объёма научной информации. Цель — поиск ценной информации в разрозненных научных статьях. Эти закономерности люди, вероятно, не способны обнаружить собственными силами, без автоматической обработки. Это неудивительно, ведь объём опубликованных научных документов в интернете только на английском языке уже превысил 100 миллионов документов. Это огромный информационный шум, из которого практически невозможно извлечь полезную информацию. То есть, невозможно извлечь человеческим умом.

Понятно, что без дата-майнинга в современной науке нельзя. Скажем, петабайты информации с Большого адронного коллайдера обрабатывают месяцами/годами, чтобы определить наличие или отсутствие эффектов, предполагаемых той или иной теорией. Но здесь речь идёт о более «тонком» анализе научных результатов от разных авторов для поиска скрытых закономерностей, совпадений.
Читать дальше →
Всего голосов 50: ↑35 и ↓15+20
Комментарии11

Text Mining Framework (Java)

Время на прочтение5 мин
Количество просмотров31K
Что это и для кого (вместо вступления)

В данной статье я бы хотел рассказать о небольших результатах своей научной деятельности в сфере Text Mining. Этими самыми «результатами» стал небольшой FrameWork, который, пока еще, и до либы то не очень дотягивает, но мы растем =). Данный проект — реализация на практике некоторых, разработанных мною, теоретических положений. Как следствие этого я представляю возможности, которыми он может потенциально обладать в конце внедрения всех идей. Названо сее творение: «Text Mining FrameWork»(TextMF). Давайте в кратце рассмотрим, что именно будет позволять TextMF в своей первой финальной версии и что работает уже сейчас.
Читать дальше →
Всего голосов 42: ↑37 и ↓5+32
Комментарии41

Новая языково-независимая NLP библиотека

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

Введение


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

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

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

А это значит, что для понимания сообщения на каком-либо языке нам не нужно ничего, кроме самого сообщения. При условии, что это сообщение достаточно большое. Именно эта идея и положена в основу библиотеки под названием AIF. За деталями прошу пожаловать под кат.
Читать дальше →
Всего голосов 26: ↑22 и ↓4+18
Комментарии15

pymorphy2

Время на прочтение16 мин
Количество просмотров82K
В далеком 2009 году на хабре уже была статья "Кузявые ли бутявки.." про pymorphy — морфологический анализатор для русского языка на Python (штуковину, которая умеет склонять слова, сообщать информацию о части речи, падеже и т.д.)

В 2012м я начал потихоньку делать pymorphy2 (github, bitbucket) — думаю, самое время представить эту библиотеку тут: pymorphy2 может работать в сотни раз быстрее, чем pymorphy (втч без использования C/C++ расширений) и при этом требовать меньше памяти; там лучше словари, лучше качество разбора, лучше поддержка буквы ё, проще установка и более «честный» API. Из негатива — не все возможности pymorphy сейчас реализованы в pymorphy2.

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

Читать дальше →
Всего голосов 103: ↑100 и ↓3+97
Комментарии44

Повышение конверсии с помощью Big Data: 9 платформ прогнозной аналитики

Время на прочтение5 мин
Количество просмотров22K
Прогнозная аналитика — это технология, опирающаяся на большие массивы данных для прогнозирования будущего поведения людей с целью принятия оптимальных решений. Она задействует множество методов из статистики, интеллектуального анализа данных, учитывает как текущие данные, так и данные за прошлые периоды, на основе которых составляет прогнозы о будущих событиях. В бизнесе модели прогнозирования используют паттерны, составленные на основе данных за определенный период, чтобы оценить потенциальные риски и возможности. Модели выявляют связи среди многих факторов, чтобы сделать возможной оценку рисков или потенциала, связанного с конкретным набором условий. Итогом использования прогнозной аналитики является принятие верных (максимально эффективных для бизнеса) решений.

Как прогнозная аналитика может пригодиться e-commerce?
Читать дальше →
Всего голосов 25: ↑19 и ↓6+13
Комментарии4

oDesk (Upwork). Мой опыт за полтора года

Время на прочтение12 мин
Количество просмотров445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →
Всего голосов 192: ↑185 и ↓7+178
Комментарии321

Data Mining. Оптимизация заказов товаров в аптеке (аптечном пункте)

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

Мы живем в современном мире, где рутинные операции за нас выполняет компьютер. Поэтому Вы можете сказать: «Давайте используем компьютер, и он сделает всю черную работу за нас!». «У вас же есть база данных, содержащая статистику продаж различных лекарств?» – продолжите Вы – «Так почему же не использовать эту статистику для прогноза продаж и создания автоматической заявки на требуемые препараты?»
Читать дальше →
Всего голосов 30: ↑26 и ↓4+22
Комментарии25

Мега-Учебник Flask, Часть 11: Поддержка e-mail

Время на прочтение8 мин
Количество просмотров25K
Это одиннадцатая статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.

Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать microblog.


Краткое повторение


В последних уроках мы занимались, в основном, улучшениями связанными с нашей базой данных.

Сегодня мы позволим нашей базе немного отдохнуть, и вместо этого посмотрим на одну очень важную функцию, которая есть у большинства веб-приложений: возможность отправки email пользователю.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии10

Применение машинного обучения в трейдинге

Время на прочтение8 мин
Количество просмотров42K
Примечание переводчика 1. Я наткнулся на этот блог в одном из обзоров материалов по машинному обучению. Если вы хорошо разбираетесь в машинном обучении, то в этой статье вы не найдете для себя ничего интересного. Она достаточно поверхностная и затрагивает только основы. Если же вы, как и я, только начинаете интересоваться данной темой, то добро пожаловать под кат.
Примечание переводчика 2. Кода будет мало, а тот что есть написан на языке R, но не стоит отчаиваться, если вы его до сих пор никогда в глаза не видели. До этой статьи я тоже ничего о нем не знал, поэтому я специально отдельно написал «шпору» по языку, включив туда все, что вам встретится в статье. Если хотите сами разобраться, то начать рекомендую c маленького курса на CodeSchool. На хабре тоже есть интересная информация и полезные ссылки. И наконец вот тут есть большая шпаргалка.
Примечание переводчика 3. Статья из двух частей, однако самое интересное начинается только во второй части, поэтому я позволил себе объединить их в одну статью.


Часть 1


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

Машинное обучение является одним из наиболее многообещающих направлений в финансовой математике, в последние годы получившее репутацию изощренного и сложного инструмента. В действительности все не так сложно.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии13

Войти в IT: Долгая дорога в Java

Время на прочтение7 мин
Количество просмотров115K
Друзья, рады представить статью из цикла «Войти в IT», который уже давно публикуется в нашем корпоративном блоге. Это не «серьезные» технические статьи (такие тоже будут), а рассказы наших синьоров об их становлении в IT. Ведь иногда хочется просто взглянуть на индустрию глазами коллег и понять, как именно из молодых практикантов и «зеленых» джуниоров получаются эксперты мирового уровня. Что ж, дадим слово одному из наших героев.

image

Всем привет! Меня зовут Родион Горковенко, и я… нет, не то, о чем вы подумали. Я — Senior Java Developer в компании DataArt. Хочу поделиться историей, как я дошел до жизни такой и, возможно, немного подсказать молодым специалистам, как выжить в беспощадных джунглях Java и стать полноценным цифровым хищником.

Введение (красивая заставка)

Сначала я программировал на C. Были и другие языки, но большую часть времени (несколько лет) я писал именно на C. Поэтому и моя карьера в IT началась с этого языка. Однако область применения его ограничена сравнительно низкоуровневым софтом — я писал на нtv для микроконтроллеров, когда разрабатывал электронику, и позже — для POS-терминалов.

Ответ на вопрос «куда двигаться дальше?» был для меня не очень ясен. Можно, конечно, было углублять изучение C++, но небольшой опыт работы в команде на C/C++ оставил несколько негативное впечатление. Альтернативой была Java. О ней я не знал почти ничего, разве что, пару тестовых приложений для мобильников с JavaME написал еще в институте — конечно, не разбираясь подробно в нюансах языка.

Что ж, в течение года посвященного POS-терминалам, у меня было немного свободного времени до и после работы. Гугление подсказало, что нужно скачать Java Development Kit (JDK) с сайта Sun (теперь java.oracle.com) и, в общем, можно начинать.
Читать дальше →
Всего голосов 88: ↑67 и ↓21+46
Комментарии27

Интервью с демосценером — kb ^ Farbrausch

Время на прочтение15 мин
Количество просмотров36K
farbrausch logoFarbrausch, без сомнения, одна из самых популярных групп на демосцене. Они релизят технически безупречные и визуально сексуальные демы и возглавляют вершину чарта лучших групп, а
kb, без сомнения, икона демосцены. Он начинал еще в 90-е, и как кодер, музыкант, организатор демопати, он всегда добивался успеха. В интервью речь пойдет о некоторых мифах вокруг Farbrausch, о том как устроена демосцена, о том, что его вдохновляет и о его любимых листьях… (не те что вы подумали).
Наслаждайтесь...
Всего голосов 59: ↑57 и ↓2+55
Комментарии23

Алгоритм cтабилизации видео с помощью 3D-моделирования сцены

Время на прочтение1 мин
Количество просмотров15K
Исследователи из Microsoft Research разработали алгоритм для автоматической стабилизации видео «от первого лица», снятого с помощью наголовной или другой видеокамеры во время путешествия по маршруту. Например, при езде на велосипеде или скалолазании.



Примеры стабилизированных видеороликов можно посмотреть здесь, там же оригинальные (необработанные) видеоролики, для сравнения. Опубликован исходный код и пояснения по работе алгоритма. Скоро разработчики выпустят приложение для Windows, чтобы каждый мог попробовать технологию на собственных видеороликах.
Читать дальше →
Всего голосов 58: ↑55 и ↓3+52
Комментарии10

О формуле Байеса, прогнозах и доверительных интервалах

Время на прочтение9 мин
Количество просмотров69K
На Хабре много статей по этой теме, но они не рассматривают практических задач. Я попытаюсь исправить это досадное недоразумение. Формула Байеса применяется для фильтрации спама, в рекомендательных сервисах и в рейтингах. Без нее значительное число алгоритмов нечеткого поиска было бы невозможно. Кроме того, это формула явилась причиной холивара среди математиков.

image

Читать дальше →
Всего голосов 86: ↑83 и ↓3+80
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность