📣 Пишем свой PyTorch на NumPy. Часть 2. Добавляем новые слои
Сегодня мы:
⏺добавим CNN, BatchNorm, MaxPool, MinPool
⏺реализуем RMSProp, NaG, Adam
⏺добавим регуляризацию в loss-функцию
⏺добавим новые функции активации
⏺напишем DataLoader
🖥 Читать подробнее
📣 Пишем свой PyTorch на NumPy (часть 1)
PyTorch – это мощный и гибкий фреймворк для машинного обучения, широко используемый для создания нейронных сетей
Он особенно популярен благодаря простоте использования, динамическим вычислительным графам и богатой экосистеме инструментов для обучения моделей
Для использования этого фреймворка, часто достаточно поверхностно понимать работу алгоритмов машинного обучения
🖥 Читать подробнее
▶️ Класса-методы (сlassmethod) и статические методы (staticmethod)
Сегодня у нас пойдет речь о статических методах (staticmethod) в python и о методах класса (classmethod)
Они создаются при помощи декораторов @staticmethod
и @classmethod
👀 Смотреть на YouTube
▶️ Практика по методам и свойствам (property)
В видео познакомимся с магическими методами _getitem_
,_setitem_
и_delitem_
А также рассмотрим обращение по индексу к экземпляру
👀 Смотреть на YouTube
▶️ Property | Вычисляемые свойства (Calculated properties python)
Геттер (getter) – это специальный метод, позволяющий получить доступ к приватному атрибуту
Сеттер (setter) – это специальный метод, дающий возможность присвоить новое значение приватному атрибуту
Свойство (property atribute) – позволяет установить геттеры и сеттеры к определенному атрибуту вашего класса
👀 Смотреть на YouTube
📣 FastAPI и Dependency Injection: правда или вымысел?
В рамках статьи мы рассмотрим различные подходы к организации зависимостей в рамках FastAPI проекта, оценим их с точки зрения удобства использования и постараемся разобраться, как же все-таки "правильно" готовить DI в FastAPI
🖥 Читать подробнее
Друзья!
Создатели 😍Ideco NGFW дарят нашим 50 подписчикам календарь с прекрасными девушками на 2025 год.
Заполняйте заявку тут: https://ideco.ru/zayavka-kalendar-2025 промокод для поля Лицензия 1000
Успейте стать одним из 50 счастливчиков!
Это абсолютно бесплатно, нужно только заполнить форму.
⚡️XMAS HACK к нам мчится!
С 20 по 23 декабря под звон Jingle bells пройдет самый яркий и праздничный хакатон 2024 года - XMAS HACK.
🎁Дед Мороз и Снегурочка уже положили под елочку XMAS HACK особый подарок - 1 000 000 рублей!
✨Уникальный кейс от Tvigle:
QoE Master: Мониторинг и улучшение качества воспроизведения
👨💻Задача:
Разработайте систему мониторинга и оценки качества восприятия (QoE) зрителем онлайн-кинотеатра. Система должна автоматически собирать ключевые метрики (время старта воспроизведения, количество буферизаций, задержки, отклики) и выдавать рекомендации по улучшению качества стриминга.
🚀Осталось собрать команду и до 19 декабря подать заявку на участие: https://xmas-hack.ru/
🎅XMAS HACK к нам мчится, скоро все случится!🌟
📣 Делаем управление конфигами удобным при помощи pydantic_settings
Конфиги используются в каждом приложении, многие разработчики используют для управления конфигурационными файлами стандартные библиотеки по типу json
и yaml
, а также python-dotenv
для загрузки чувствительных данных из файла в переменные окружения
В этой статье мы научимся загружать как нечувствительные данные из файлов TOML, так и переменные из .env
в классы
🖥 Читать подробнее
На фоне роста ипотечной ставки и изменения курса $ россияне по рассрочке скупают объекты в ОАЭ.
Рассрочка беспроцентная, дается на срок от 2 до 8 лет с первым взносом в 10% от стоимости.
Например, можно взять квартиру у моря с террасой и бассейном, чтобы жить или сдавать в аренду. Доход здесь в валюте и не облагается налогом.
Подписывайтесь на самый большой канал о рынке недвижимости Эмиратов от аналитика Андрея Негинского (он на фото) и скачивайте в закрепе каталог из 20 таких проектов с описанием и ценами.
▶️ Моносостояние
Создадим такой класс, у экземпляров которого будет одно общее состояние и изменения одного экземпляра будут затрагивать другие экземпляры
Такая реализация называется
"Моносостояние"
👀 Смотреть на YouTube
▶️ Создание класса и его методов
Сегодня в видео попрактикуемся в создании классов и описании их методов: создадим атрибуты класса и экземпляра, а также сделаем конструктор класса (метод _init_)
👀 Смотреть на YouTube
▶️ Инициализация объекта | Метод init
Обычно сразу после создания объекты ещё не готовы к работе, сначала в них нужно передать все необходимые данные: параметры работы, стартовые значения, ссылки на другие объекты и т. п. Такой процесс называется инициализацией и должен проходить сразу после создания объекта
В Python метод init является конструктором класса, этот метод вызывается автоматически при создании нового объекта класса и используется для инициализации его атрибутов. Конструктор init позволяет задавать начальные значения переменных объекта и выполнять другие действия при создании экземпляра класса
👀 Смотреть на YouTube
▶️ Методы экземпляра | Аргумент self
Сегодня в видео рассмотрим:
⏺Методы экземпляра
⏺Аргумент self
⏺Как создать метод класса
⏺Как создать метод экземпляра
⏺Что такое self в Python
👀 Смотреть на YouTube
▶️ Функция как атрибут класса
Атрибуты класса – это имена переменных вне функций и имена функций
Эти атрибуты наследуются всеми объектами, созданными на основе данного класса
Атрибуты обеспечивают свойства и поведение объекта
👀 Смотреть на YouTube
▶️ Пространство имен класса Class Body scope in Python
В сегодняшнем видео рассмотрим магические методы _getitem_
, _setitem_
и _delitem_
А также рассмотрим обращение по индексу к экземпляру
👀 Смотреть на YouTube
Хочешь стать Linux-экспертом?
Linux++ - канал для тех, кто хочет профессионально освоить Linux и программирование!
- Уникальные гайды по администрированию Linux
- Продвинутые техники и рекомендации по разработке на языках C/C++
- Подробные статьи о внутреннем устройстве операционных систем
- Интересные факты и новости из мира технологий
🌐 Присоединяйся к нам и становись частью сообщества истинных гуру: Linux++
📣 5 задач по Python для новичков с решениями
В статье представлены задачи о примерных студентах, сортировке IP-адресов, гематрии слов, группировке дубликатов и разделении списка на отрезки. Все задачи описаны разными вариантами решений
🖥 Читать подробнее
📣 Мир за пределами Pandas: достойные альтернативы для работы с данными
⏺ Polars – высокопроизводительная открытая библиотека для работы с данными, полностью написанная на языке Rust
⏺ DuckDB – аналитическая in-process SQL СУБД, оптимизирована для выполнения аналитических запросов
⏺ Vaex – высокопроизводительная библиотека для Python, предназначенная для обработки и визуализации больших наборов данных
⏺ Modin – цель инструмента предоставить пользователям возможность масштабировать свои рабочие процессы, основанные на Pandas, без необходимости вносить значительные изменения в код
⏺ Dask – библиотека с открытым исходным кодом для параллельных и распределенных вычислений в Python
⏺ (py)Datatable – высокопроизводительная многопоточная библиотека для обработки двумерных табличных данных в Python. Ориентирована на поддержку BigData и обеспечивает эффективную работу как с информацией в памяти, так и с данными, хранящимися на диске
🖥 Читать подробнее
📣 Все про конфигурационные файлы
Конфигурационные файлы (конфиги) – это файлы, которые содержат параметры и настройки приложения, отделяя их от основного кода
Они определяют поведение приложения без необходимости менять исходный код
В статье автор разберет все вопросы касающиеся конфигов
🖥 Читать подробнее
▶️ Декоратор Property (Property decorator)
Декоратор property используется для определения метода, который можно вызывать, как если бы он был атрибутом, это позволяет нам обращаться к методу без вызова его, как обычной функции
👀 Смотреть на YouTube
📣 Практика использования парсер-комбинаторов peco и оператора match для создания простых DSL на языке Python
В данной статье рассматривается один из способов реализации DSL (Domain Specific Language) на примере разработки системы символьного дифференцирования, как в SymPy, с использованием парсер-комбинаторов peco и структурного сопоставления с образцом по PEP 636
DSL применяются:
⏺конфигурирования спецпроцессоров на основе FPGA (PyLog),
⏺описания правил SSA-оптимизаций в компиляторах,
⏺ускорения вычислений на CPU или GPU (numpy, numba и прочие JIT-компиляторы),
⏺компактного описания наборов конфигурационных файлов (Jsonnet, Dhall),
⏺описания фрагментов систем на едином языке, понятном не только техническим специалистам (Ubiquitous Language) и др.
🖥 Читать подробнее
▶️ Геттеры и сеттеры, property атрибуты
Геттер(getter) – это специальный метод, позволяющий получить доступ к приватному атрибуту
Сеттер (setter) – это специальный метод, дающий возможность присвоить новое значение приватному атрибуту
Свойство(property atribute) – позволяет установить геттеры и сеттеры к определенному атрибуту вашего класса
👀 Смотреть на YouTube
▶️ Публичные, приватные, защищенные атрибуты и методы Python Public Protected Private
Приватные методы позволяют закрыть доступ к данным вне нашего класса
При помощи приватных атрибутов и методов мы скрываем (инкапсулируем) логику работы нашей программы от пользователя и предоставляем ему только конечный результат
👀 Смотреть на YouTube
📣 FastAPI + Redis + Celery: Создание системы временного хранения файлов с автоудалением и удобным веб-интерфейсом
Сегодня мы создадим FullStack приложение: файлообменник с временным хранилищем на сервере
Другими словами, мы сделаем так, чтобы пользователь при отправке файлов на наш сервер выбирал срок жизни файла, и по истечении этого срока файл с сервера автоматически удалялся
📣 Рекурсивные запросы в SQLAlchemy
Сегодня мы рассмотрим основные способы получения иерархической структуры из БД на примере реального многослойного приложения с использованием SQLAlchemy 2.0
В завершение статьи автор проведет сравнение производительности всех описанных подходов
🖥 Читать подробнее
📣 Как создать свой веб-фреймворк на Python
В этой статье мы создадим свой веб-фреймворк на Python с использованием gunicorn, он будет легким и иметь базовый функционал
⏺Создадим обработчики запросов (views), простую и параметизированную маршрутизацию, Middleware, i18n и l10n, Request/Response, обработку html-шаблонов и генерацию документации
⏺Построим наиболее важные части фреймворка, изучим работу WSGI и создание веб-приложений
🖥 Читать подробнее
📣 Один из лучших редакторов кода
Visual Studio Code (VS Code) – текстовый редактор, разработанный Microsoft для Windows, Linux и macOS
Включает в себя отладчик, инструменты для работы с Git, подсветку синтаксиса, IntelliSense и средства для рефакторинга. Имеет широкие возможности для кастомизации: пользовательские темы, сочетания клавиш и файлы конфигурации
Распространяется бесплатно, разрабатывается как программное обеспечение с открытым исходным кодом, но готовые сборки распространяются под проприетарной лицензией
14–15 декабря VK Tech проведёт Weekend Offer для Python-разработчиков и инженеров. Это шанс присоединиться к работе над крупнейшей облачной платформой страны VK Cloud и вместе с VK Tech помогать бизнесу расти.
Узнайте больше о вакансиях и откликайтесь здесь.
Флоу простой: оставляете заявку, общаетесь с рекрутерами, выбираете слоты для собеседований и проходите их в назначенное время. О результате VK Tech сообщит вскоре после финального интервью.
Откликайтесь до 13 декабря включительно.
📣 О векторных базах данных простым языком
Векторная база данных – это простая база данных, оптимизированная под хранение и поиск векторов, даже таких, которые состоят из сотен и тысяч измерений
Содержание статьи:
⏺Начнём с основ – что такое вектор?
⏺Что такое векторная база данных?
⏺Примеры использования
⏺Принцип работы векторных баз данных
◦ Создание эмбеддингов
◦ Индексация векторов
◦ Векторный поиск
⏺Простейший векторный поиск на чистом Python
⏺Поиск сходств и метрики расстояния
⏺Уменьшение размерности
⏺Список векторных баз данных
🖥 Читать подробнее