TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #241 · 5 мај

Можно ли в Python создавать бинарные файлы? Конечно можно. Для этого в Python есть следующие инструменты: ▫️ тип данных bytes и bytearray ▫️ открытие файла в режиме wb (write binary) или rb (read binary) ▫️ модуль struct Про модуль struct поговорим в первую очередь. Файл в формате JSON или Yaml внутри себя содержит разметку данных. Всегда можно определить где список начался а где закончился. Где записана строка а где словарь. То есть формат записи данных содержит в себе элементы разметки данных. В binary-файле данные не имеют визуальной разметки. Это просто байты, записанные один за другим. Правила записи и чтения находятся вне файла. Модуль struct как раз и помогает с организацией данных в таком файле с помощью определения форматов записи для разных частей файла. Модуль struct преобразует Python-объекты в массив байт, готовый к записи в файл и имеющий определённый вид. Для этого всегда следует указывать формат преобразования (или, как оно здесь называется - запаковки). Формат нужен для того, чтобы выделить достаточное количество байт для записи конкретного типа объекта. В последствии с помощью того же формата будет производиться чтение. При этом следует помнить что мы говорим о типах языка С а не Python. Именно формат определяет, что записано в конкретном месте файла, число, строка или что-то еще. Вот какие токены формата у нас есть. Помимо этого, первым символом можно указать порядок байтов. На разных системах одни и те же типы данных могут записываться по-разному, поэтому желательно указать конкретный способ из доступных. Если этого не сделать, то используется символ '@', то есть нативный для текущей системы. В строке формата мы пишем в каком порядке и какие типы собираемся преобразовать в байты. Запакуем в байты простое число, токен "i". >>> import struct >>> struct.pack('=i', 10) b'\n\x00\x00\x00' Теперь несколько float, при этом нужно передавать элементы не массивом а последовательностью аргументов. >>> struct.pack('=fff', 1.0, 2.5, 4.1) b'\x00\x00\x80?\x00\x00 @33\x83@' Вместо нескольких токенов можно просто указать нужное количество элементов перед одним токеном, результат будет тот же. >>> struct.pack('=3f', 1.0, 2.5, 4.1) b'\x00\x00\x80?\x00\x00 @33\x83@' Теперь запакуем разные типы >>> data = struct.pack('=fiQ', 1.0, 4, 100500) я запаковал типы float, int и unsigned long long (очень большой int, на 8 байт) b'\x00\x00\x80?\x04\x00\x00...' Распаковка происходит аналогично, но нужно указать тот же формат, который использовался при запаковке. Результат возвращается всегда в виде кортежа. >>> struct.unpack('=fiQ', data) (1.0, 4, 100500) Как видите, ничего страшного! #lib#basic

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #perch

当前筛选 #perch清除筛选
Machinelearning

@ai_machinelearning_big_data · Post #8288 · 16.08.2025 г., 12:01

🎧 Perch 2.0 — AI, который слушает природу и спасает вымирающие виды. DeepMind выпустили Perch 2.0 — компактную supervised-модель для биоакустики. Без миллиардов параметров, без сложного self-supervised обучения — просто аккуратная модель, которая побила все бенчмарки и уже работает в полевых исследованиях. 🌱 Почему это важно Звуки природы — это источник данных о биоразнообразии. По аудиозаписям можно понять: - какие животные живут в лесу, - сколько их, - размножаются ли они, - не вытесняются ли они человеком. Но расшифровка аудио — адский труд: в одном часе записи из тропиков десятки накладывающихся голосов. 🐦Что умеет Perch 2.0 Perch 2.0 — универсальный эмбеддер для звуков животных. Берёт 5 секунд аудио → выдаёт вектор, с которым можно: - находить похожие записи, - кластеризовать звуки, - обучать простой классификатор для новых видов (few-shot). ⚡ Работает без GPU и без дообучения. 🛠 Архитектура - Основa: EfficientNet-B3 (12M параметров). - Три головы: 1. Классификация ~15k видов. 2. Прототипная — создаёт семантические логиты для distillation. 3. Source prediction — угадывает источник записи. - Обучение в два шага: 1. Прототипная голова учится сама. 2. Её логиты становятся soft-label’ами для основной (**self-distillation**). 📊 Результаты - SOTA на BirdSet и BEANS (ROC-AUC, mAP). - Отличная переносимость на морских данных (киты, дельфины), которых почти не было в тренировке. - Всё это — без fine-tuning, только фиксированные эмбеддинги. Главный вывод Perch 2.0 показывает, что: 🟢 качественная разметка, 🟢 простая архитектура, 🟢 чёткая постановка задачи могут быть важнее, чем «бесконечные параметры» и сложные LLM. 🌍 Что это меняет - Биологам — быстрый анализ джунглей Бразилии или рифов без написания своих моделей. - ML-инженерам — наглядный пример, как обучать компактные сети без потери качества. - Исследователям — напоминание: не всегда нужен GPT-4, чтобы сделать полезный инструмент. 🟠Github: https://github.com/google-research/perch-hoplite 🟠Подробнее: https://deepmind.google/discover/blog/how-ai-is-helping-advance-the-science-of-bioacoustics-to-save-endangered-species/ 🟠Статья: http://arxiv.org/abs/2508.04665 @ai_machinelearning_big_data #DeepMind#AI#Bioacoustics#MachineLearning#Perch#Ecology