Pull to refresh
43
0
Валерий Дмитриев @rotor

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

Send message

Первые вакцины от COVID-19. Сравнение российской «Спутник V» и BNT162b2 от Pfizer

Reading time7 min
Views145K

Девятого ноября американский фармацевтический гигант — Pfizer объявил об успешном завершении третьей фазы клинических испытаний вакцины BNT162b2 против нового коронавируса, и полученных результатах в 90% эффективности.

Любопытно, что спустя всего 2 дня после пресс-релиза Pfizer, на сайте российской вакцины «Спутник V» (названной в честь прототипа корабля, отправившего первого человека в космос) было опубликовано сообщение о её 92% эффективности.

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

Читать далее

Открытое письмо авторам российской вакцины от COVID-19

Reading time5 min
Views92K

TLDR (примечание переводчика): 4 сентября российские ученые опубликовали результаты 1 и 2 фазы исследования российской вакцины «Спутник V» от SARS-CoV-2. В ответ на публикацию статьи, 22 ученых подписали открытое письмо редакторам журнала и авторам статьи, в котором усомнились в достоверности приведенных данных. В предоставленных результатах неоднократно обнаружена корреляция результатов независимых экспериментов, в том числе полное совпадение анализов и совпадение измерений с точностью до множителя 2x у двух независимых групп добровольцев. Указанные в письме свидетельства говорят об ошибке в подготовке статьи либо намеренной подтасовке данных. Ученые попросили авторов статьи предоставить сырые данные для детального анализа. Журнал Lancet передал содержимое письма авторам статьи и предложил принять участие в научной дискуссии. Российские ученые публично отказались отвечать на критику, заявив что приведенные в статье данные достоверные и точные.

О противоречивых данных в исследовании

Умная нормализация данных

Reading time8 min
Views125K

Эта статья появилась по нескольким причинам.


Во-первых, в подавляющем большинстве книг, интернет-ресурсов и уроков по Data Science нюансы, изъяны разных типов нормализации данных и их причины либо не рассматриваются вообще, либо упоминаются лишь мельком и без раскрытия сути.


Во-вторых, имеет место «слепое» использование, например, стандартизации для наборов с большим количеством признаков — “чтобы для всех одинаково”. Особенно у новичков (сам был таким же). На первый взгляд ничего страшного. Но при детальном рассмотрении может выясниться, что какие-то признаки были неосознанно поставлены в привилегированное положение и стали влиять на результат значительно сильнее, чем должны.


И, в-третьих, мне всегда хотелось получить универсальный метод учитывающий проблемные места.


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

Смартфон как системный блок, почему нет?

Reading time8 min
Views125K

Linux Deploy от Антона Скшидлевского aka meefik

Современные смартфоны по CPU и объёму оперативной памяти практически сравнялись с настольными компьютерами и ноутбуками: не редкость 8 ГБ оперативной памяти и флэш-накопитель на 512 гигабайт. Например, в последнем айфоне 6-ядерный CPU и 4-ядерный графический процессор, причём CPU сделан по 5-нанометровому техпроцессу. Сейчас ни один CPU для настольных компьютеров не производится по такой технологии. То есть мы дошли до того, что технический прогресс сначала обслуживает смартфоны, потом ноутбуки, а до настольных компьютеров доходит в последнюю очередь.

Возникает вопрос, а почему бы не использовать смартфон как системный блок? Если у него такие мощные характеристики, такой продвинутый CPU и столько памяти, и он всё равно лежит в кармане, так пусть приносит пользу. Давайте добавим ему недостающие части — подключим большой монитор, клавиатуру и мышь.

Всё-таки удобнее вводить команды в Linux-консоли с клавиатуры, а не прицеливаться пальцами по экрану.

Реддит собирается платить своим удаленным сотрудникам так, будто они работают в Нью-Йорке или Сан-Франциско

Reading time3 min
Views4.6K

Даже сейчас, через 8 месяцев после начала пандемии Covid-19, мы всё еще думаем над тем, как лучше организовать удаленную работу. Каждая компания решает этот вопрос по-разному. Все расходятся даже в вопросах оплаты. Реддит, популярный социальный новостной сайт с 400 сотрудниками и оценкой $3 млрд, выдвинул довольно интересную парадигму. В своем блоге во вторник они опубликовали пост о переходе на постоянную удалёнку, и сообщили, как это будет работать в их случае.

Читать далее

Сравнение открытых OLAP-систем Big Data: ClickHouse, Druid и Pinot

Reading time26 min
Views41K
ClickHouse, Druid и Pinot — три открытых хранилища данных, которые позволяют выполнять аналитические запросы на больших объемах данных с интерактивными задержками. Эта статья — перевод подробного сравнения, выполненного Романом Левентовым.

Спойлер

ClickHouse Druid или Pinot
В организации есть эксперты по C++ В организации есть эксперты по Java
Малый кластер Большой кластер
Немного таблиц Много таблиц
Один набор данных Несколько несвязанных наборов данных
Таблицы и данные находятся в кластере перманентно Таблицы и наборы данных периодически появляются в кластере и удаляются из него
Размер таблиц (и интенсивность запросов к ним) остается стабильным во времени Таблицы значительно растут и сжимаются
Однородные запросы (их тип, размер, распределение по времени суток и т.д.) Разнородные запросы
В данных есть измерение, по которому они могут быть сегментированы, и почти не выполняется запросов, которые затрагивают данные, расположенные в нескольких сегментах Подобного измерения нет, и запросы часто затрагивают данные, расположенные во всем кластере
Облако не используется, кластер должен быть развернут на специфическую конфигурацию физических серверов Кластер развернут в облаке
Нет существующих кластеров Hadoop или Spark Кластеры Hadoop или Spark уже существуют и могут быть использованы
А под катом — подробный рассказ о том, как Роман к этому пришёл.
Читать дальше →

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

Reading time10 min
Views5.1K

Привет, хабр! С 2015-го года мы публикуем в нашем блоге посты, в которых описываем различные аспекты распознавания документов, удостоверяющих личность, (и не только) на мобильных устройствах (и не только). В комментариях нас несколько раз просили рассказать в целом о том, как устроена наша система распознавания, но мы долго откладывали, т.к. описать это “в двух словах” достаточно сложно. 

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

Заглянуть под кат

Трансформеры как графовые нейронные сети

Reading time10 min
Views17K
TL;DR: перевод поста Chaitanya Joshi "Transformers are Graph Neural Networks": схемы, формулы, идеи, важные ссылки. Публикуется с любезного разрешения автора.

Друзья-датасаентисты часто задают один и тот же вопрос: графовые нейронные сети (Graph Neural Networks) — прекрасная идея, но были ли у них хоть какие-то настоящие истории успеха? Есть ли у них какие-нибудь полезные на практике приложения?



Можно привести в пример и без того известные варианты — рекомендательные системы в Pinterest, Alibaba и Twitter. Но есть и более хитрая история успеха: штурмом взявшая промышленную обработку естественного языка архитектура Transformer.


В этом посте мне бы хотелось установить связи между графовыми нейронными сетями и трансформерами (Transformers). Мы поговорим об интуитивном обосновании архитектур моделей в NLP- и GNN-сообществах, покажем их связь на языке формул и уравнений и порассуждаем, как оба "мира" могут объединить усилия, чтобы продвинуть прогресс.

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

std::atomic. Модель памяти C++ в примерах

Reading time11 min
Views131K

Для написания эффективных и корректных многопоточных приложений очень важно знать какие существуют механизмы синхронизации памяти между потоками исполнения, какие гарантии предоставляют элементы многопоточного программирования, такие как мьютекс, join потока и другие. Особенно это касается модели памяти C++, которая была создана сложной таковой, чтобы обеспечивать оптимальный многопоточный код под множество архитектур процессоров. Кстати, язык программирования Rust, будучи построенным на LLVM, использует модель памяти такую же, как в C++. Поэтому материал в этой статье будет полезен программистам на обоих языках. Но все примеры будут на языке C++. Я буду рассказывать про std::atomic, std::memory_order и на каких трех слонах стоят атомики.

Читать далее

GPT-2 нейросеть от OpenAI. Быстрый старт

Reading time9 min
Views146K

image


Не успели отшуметь новости о нейросети BERT от Google, показавшей state-of-the-art результаты на целом ряде разговорных (NLP) задач в машинном обучении, как OpenAI выкатили новую разработку: GPT-2. Это нейронная сеть с рекордным на данный момент числом параметров (1.5 млрд, против обычно используемых в таких случаях 100-300 млн) оказалась способна генерировать целые страницы связного текста.


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


Тем не менее, в OpenAI выложили в общий доступ уменьшенную версию нейросети GPT-2, со 117 млн параметров. Именно ее мы запустим через сервис Google Colab и поэкспериментруем с ней.

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

BERT, ELMO и Ко в картинках (как в NLP пришло трансферное обучение)

Reading time11 min
Views52K

2018 год стал переломной точкой для развития моделей машинного обучения, направленных на решение задач обработки текста (или, что более корректно, обработки естественного языка (Natural Language Processing, NLP)). Быстро растет концептуальное понимание того, как представлять слова и предложения для наиболее точного извлечения их смысловых значений и отношений между ними. Более того, NLP-сообщество продвигает невероятно мощные инструменты, которые можно бесплатно скачать и использовать в своих моделях и пайплайнах. Эту переломную точку также называют NLP’s ImageNet moment, ссылаясь на тот момент несколько лет назад, когда схожие разработки значительно ускорили развитие машинного обучения в области задач компьютерного зрения.


transformer-ber-ulmfit-elmo


(ULM-FiT не имеет ничего общего с Коржиком, но что-то лучше не пришло в голову)

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

Простое руководство по дистилляции BERT

Reading time8 min
Views24K

Если вы интересуетесь машинным обучением, то наверняка слышали про BERT и трансформеры.


BERT — это языковая модель от Google, показавшая state-of-the-art результаты с большим отрывом на целом ряде задач. BERT, и вообще трансформеры, стали совершенно новым шагом развития алгоритмов обработки естественного языка (NLP). Статью о них и «турнирную таблицу» по разным бенчмаркам можно найти на сайте Papers With Code.


С BERT есть одна проблема: её проблематично использовать в промышленных системах. BERT-base содержит 110М параметров, BERT-large — 340М. Из-за такого большого числа параметров эту модель сложно загружать на устройства с ограниченными ресурсами, например мобильные телефоны. К тому же, большое время инференса делает эту модель непригодной там, где скорость ответа критична. Поэтому поиск путей ускорения BERT является очень горячей темой.


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


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

Ваш первый BERT: иллюстрированное руководство

Reading time8 min
Views44K

bert-distilbert-sentence-classification


Прогресс в области машинного обучения для обработки естественного языка существенно ускорился за последние несколько лет. Модели покинули исследовательские лаборатории и стали основой ведущих цифровых продуктов. Хорошей иллюстрацией этому служит недавнее заявление о том, что основным компонентом, стоящим за поиском Google, стала модель BERT. Google верит, что этот шаг (т.е. внедрение передовой модели понимания естественного языка в поисковую систему) представляет собой «величайший прорыв за последние пять лет и один из знаменательнейших во всей истории поисковых систем».


Данная статья – это простое руководство по использованию одной из версий BERT'а для классификации предложений. Пример, рассмотренный нами, одновременно и достаточно простой для первого знакомства с моделью, и достаточно продвинутый для того, чтобы продемонстрировать ключевые концепты.


Помимо этой статьи был подготовлен ноутбук, который можно посмотреть в репозитории или запустить в Colab.

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

Модерация текста: уроки этикета от Data Scientist’a

Reading time5 min
Views4.3K
Привет, Хабр!

С этой статьи мы начинаем публикацию серии статей про Data Science задачи, которые мы решаем в Центре Развития Финансовых Технологий Россельхозбанка.

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


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

Портируем утилиту командной строки с Go/Rust на D

Reading time9 min
Views3.7K
Несколько дней назад, на реддите в «программировании», Paulo Henrique Cuchi поделился своим опытом разработки утилиты командной строки на Rust и на Go (перевод на Хабре). Утилита, о которой идет речь, — это клиент для его пет-проекта Hashtrack. Hashtrack предоставляет GraphQL API, с помощью которого клиенты могут отслеживать определенные хэштэги твиттера и получать список соответствующих твитов в реальном времени. Будучи спровоцированным комментарием, я решил написать порт на D, чтобы продемонстрировать, как D может быть использован для подобных целей. Я постараюсь сохранить ту же структуру, которую он использовал в своем блогпосте.

Исходники на Гитхабе

Видео по клику
Читать дальше →

Пошаговое руководство по созданию торгового бота на любом языке программирования

Reading time14 min
Views136K
У меня нет квалификации, позволяющей давать советы, касающиеся инвестиций, законов, или чего-то подобного. Я и не пытаюсь этого делать. Цель руководства заключается в том, чтобы, в учебных целях, рассказать о программировании торговых ботов. Вы должны понимать, что, создав бота, вы несёте ответственность за принимаемые им решения, за выполняемые им инвестиционные операции, за те риски, которые сопряжены с торговой деятельностью. Я не могу отвечать за те решения, которые вы примете после прочтения данного материала. Помните, что боты способны потерять большие деньги, поэтому используйте их с осторожностью.

Часто можно встретить статьи, которые называются примерно так: «10 проектов, которые нужно реализовать программисту». Часто в списки этих статей входят торговые боты. Я считаю, что разработка торгового бота — это достойное вложение сил. Поэтому я решил уделить некоторое время тому, чтобы написать учебное руководство об этом.

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

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



Я буду демонстрировать примеры, написанные на псевдокоде. Поэтому вы сможете читать это руководство и тут же писать собственного бота на выбранном вами языке программирования.

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

Вы выберете оружие, а я научу вас владеть этим оружием.
Читать дальше →

Оптимизация инвестиционного портфеля по методу Марковица

Reading time4 min
Views14K


Пример стандартной реализации на Python оптимизации инвестиционного портфеля по методу Марковица. Есть много реализаций данного метода. В том числе и на Python. Реализовал еще раз (см. ссылка на GitHub).
Читать дальше →

Проект Natasha. Набор качественных открытых инструментов для обработки естественного русского языка (NLP)

Reading time34 min
Views108K
Два года назад я писал на Хабр статью про Yargy-парсер и библиотеку Natasha, рассказывал про решение задачи NER для русского языка, построенное на правилах. Проект хорошо приняли. Yargy-парсер заменил яндексовый Томита-парсер в крупных проектах внутри Сбера, Интерфакса и РИА Новостей. Библиотека Natasha сейчас встроена в образовательные программы ВШЭ, МФТИ и МГУ.

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

Для новостных статей качество на всех задачах сравнимо или превосходит существующие решения. Например с задачей NER Natasha справляется на 1 процентный пункт хуже, чем Deeppavlov BERT NER (F1 PER 0.97, LOC 0.91, ORG 0.85), модель весит в 75 раз меньше (27МБ), работает на CPU в 2 раза быстрее (25 статей/сек), чем BERT NER на GPU.

В проекте 9 репозиториев, библиотека Natasha объединяет их под одним интерфейсом. В статье поговорим про новые инструменты, сравним их с существующими решениями: Deeppavlov, SpaCy, UDPipe.

Как научить свою нейросеть генерировать стихи

Reading time10 min
Views55K
Умоляю перестань мне сниться
Я люблю тебя моя невеста
Белый иней на твоих ресницах
Поцелуй на теле бессловесном

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

Вернее, нейронная сеть нужна лишь для первого этапа — расстановки слов в правильном порядке. С рифмовкой справляются правила, применяемые поверх предсказаний нейронной сети. Хотите узнать подробнее, как мы это реализовывали? Тогда добро пожаловать под кат.
Читать дальше →

Тесты на статистическую значимость — это чудовищно ущербный инструмент

Reading time6 min
Views9.9K

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

Вот мне хочется, чтобы кнопка была зеленой, просто потому что мне так больше нравится. А дизайнер говорит — «неважно, АБ-тесты показали, что на кнопку поносного цвета кликают на 0,2% чаще». Господи, дружище, ты десять лет прокачивал свой вкус и опыт, чтобы что? Чтобы наш продукт напоминал птичью какашку? Но бизнес говорит — раз есть цифры, значит мы обмажем этим все.

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

На прошлой неделе у нас в подкасте был Андрей Акиньшин, кандидат физ-мат наук и специалист в области перформанс-анализа. Он рассказал нам, почему у него тоже бомбит от современной математической статистики.

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

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Date of birth
Registered
Activity