Search
Write a publication
Pull to refresh
47
0

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

Send message

Строим ETL-конвейер для машинного обучения с помощью Kafka, Clickhouse и Go

Reading time16 min
Views5.7K

В этой статье я поделюсь с вами своим опытом использования Golang, Kafka и Clickhouse на примере простого ETL-конвейера для параллельной передачи JSON-данных в базу данных с последующим прогнозированием температуры на основе машинного обучения.

Читать далее

Кратко про Ensemble методы с примерами

Reading time4 min
Views1.4K

Сегодня мы рассмотрим Ensemble методов, которые помогают сделать модели более точными и устойчивыми к переобучению. Рассмотрим три основных подхода: Bagging, Boosting и Stacking, и посмотрим, как их реализовать на Python.

Читать далее

О bruteforce и его реинкарнациях

Reading time6 min
Views6.5K

Все мы хорошо знаем о том, что пароли можно подобрать или перехватить другими способами. В рамках данной статьи мы будем говорить именно о подборе паролей. Будем считать, что наш атакующий не имеет физического доступа к машине, с которой осуществляется аутентификация и следовательно, поставить троян или кейлоггер он не может. Также хакер не может контролировать каналы связи, весь трафик между клиентом и сервером зашифрован и у злоумышленника нет возможности реализовать Man in the Middle. Но зато, хакеру доступен интерфейс атакуемого приложения, где он может вводить свои учетные данные.

Читать далее

Создание эффективной команды QA: Рекомендации для лидеров

Level of difficultyEasy
Reading time5 min
Views1.7K

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

Читать далее

Из чего состоит безопасность современных приложений

Reading time7 min
Views2K

В сети можно встретить различные трактования понятия AppSec (Application Security). И в этой статье мы попробуем разобраться с тем, что же должно входить в AppSec и какие навыки требуются специалистам, работающим в данной отрасли и какие инструменты они должны применять.

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

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

Рассмотрим более подробно составные части методологии AppSec.

Читать далее

Darts: тестируем временные ряды с нуля

Reading time5 min
Views2.3K

Привет, Хабр!

Если вы когда-либо имели дело с временными рядами, то, вероятно, слышали о Darts. А для тех, кто ещё в танке: Darts — это мощный инструмент, который поддерживает мультиварибельные временные ряды и легко интегрируется с PyTorch и TensorFlow.

Зачем же тестировать временные ряды, когда в классическом машинном обучении всё так просто с кросс-валидацией? Временные ряды обладают своей изюминкой: они подвержены временным зависимостям, сезонности, трендам и другим радостям жизни. Так что, если вы хотите, чтобы ваши модели не провалились на тестах, время разобраться с их особенностями!

Читать далее

Машинное обучение и криптография: знакомимся с CipherGAN

Level of difficultyEasy
Reading time7 min
Views1.7K

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

Читать далее

Ошибки в интерпретации A/B-тестов: как избежать неверных выводов

Reading time6 min
Views1.5K

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

В этой статье я рассмотрю 7 наиболее распространенных ошибок с примерами и способами их предотвращения. Чтобы выводы ваших А/В были точны и надежны.

Читать далее

Перегрузка операторов в C++

Level of difficultyEasy
Reading time4 min
Views3.1K

Привет, Хабр! Сегодня мы рассмотрим одну из самых мощных и увлекательных возможностей C++ — перегрузку операторов. Эта фича позволяет настраивать стандартные операторы так, чтобы они работали с пользовательскими типами данных, делая код чище и понятнее.

Представьте, что вместо вызова метода add() для сложения двух объектов, можно просто написать object1 + object2. Звучит здорово, не правда ли?

Читать далее

ЦОД: топологии и архитектуры

Reading time5 min
Views6.5K

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

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

Для начала поговорим о том, какие топологии могут использоваться в сетях ЦОД.

Читать далее

Как проверить свои модели ONNX на Python: кратко

Level of difficultyEasy
Reading time4 min
Views2.9K

Привет, Хабр!

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

Читать далее

Что должен знать каждый разработчик о вычислениях на GPU

Level of difficultyMedium
Reading time13 min
Views17K

Большинство программистов отлично разбираются в работе процессоров и последовательном программировании, поскольку с самого начала пишут код для CPU. Однако многие из них меньше знают о том, как устроены графические процессоры (GPU) и в чем заключается их уникальность. За последнее десятилетие GPU стали чрезвычайно важны благодаря широкому применению в глубоком обучении, и сегодня каждому разработчику необходимо обладать базовыми знаниями о том, как они работают. Цель этой статьи — дать вам это понимание. 

Читать далее

Майкл Стоунбрейкер: «Всё новое — это хорошо забытое старое. Продолжение»

Reading time40 min
Views6.9K

От редакции: Майкл Стоунбрейкер - один из самых известных в IT мире ученых и отец-основатель Postgres. В соавторстве с Энрю Павло, недавно опубликовал большой обзор всех актуальных технологий систем управления базами данных. В этом материале — подробно обо всем, что произошло в мире баз данных за последнее время, а также прогнозы. Мы посчитали что нельзя лишать нашу аудиторию возможности ознакомиться с этим обзором, поэтому подготовили данный перевод.

Читать далее

LIBRA: Long Input Benchmark for Russian Analysis

Level of difficultyMedium
Reading time6 min
Views4.7K

Мы разработали бенчмарк LIBRA, который включает в себя 21 адаптированный набор данных для тщательного изучения способности LLM понимать длинный контекст. Помимо самих данных для оценки, мы опубликовали кодовую базу и лидерборд для сравнения моделей.

Читать далее

Оптимизация в Python c Kubernetes: кэширование и CDN

Level of difficultyEasy
Reading time4 min
Views634

Привет, Хабр!

Очень важно не только писать хороший код, но и использовать все возможности инфраструктуры на максимум. Именно с этой целью в этой статье рассмотрим, как правильно использовать инструменты кэширования внутри Kubernetes и как настроить CDN для максимума производительности Python-приложения.

Читать далее

On-premise, private cloud, public cloud: разбираемся в плюсах и минусах

Level of difficultyEasy
Reading time4 min
Views1.8K

Привет, Хабр!

On-premise, private cloud, и public cloud — это три основные модели развертывания IT-инфраструктуры, каждая из которых предлагает различные уровни контроля, управления и масштабируемости.

Выбор между этими моделями часто ставит в тупик. Как выбрать подходящую платформу? Сегодня мы рассмотрим все плюсы и минусы этих трех подходов.

Читать далее

Rust и иммутабельность

Level of difficultyEasy
Reading time5 min
Views3.3K

Привет, Хабр!

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

Начнем с синтаксических особенностей.

Читать далее

От текста к краткому изложению: библиотека Sumy

Level of difficultyEasy
Reading time4 min
Views3.2K

Привет, Хабр!

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

Читать далее

Полезные фичи в Java для новичков: мой список

Level of difficultyEasy
Reading time7 min
Views15K

Привет, Хабр!

В Java никогда не бывает скучно, особенно когда речь заходит о вещах, которые делают нашу жизнь проще и код — чище.

Сегодня я хочу рассказать вам о четырех фичах в Java, которые сам активно использовал в своих проектах и которые, на мой взгляд, заслуживают внимания. Да, это мой личный список, и я не претендую на то, что эти фичи новы или являются последним писком моды. Однако, по моему опыту, они действительно могут упростить жизнь.

И знаете, что самое приятное? Когда коллеги начинают говорить: "А почему я об этом не знал раньше?"

Читать далее

Настраиваем дампы ядра в Linux

Level of difficultyMedium
Reading time5 min
Views5.5K

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

В этой статье мы поговорим о том, как правильно настраивать создание дампов ядра.

Читать далее

Information

Rating
Does not participate
Location
Россия
Works in
Date of birth
Registered
Activity