Всем привет!
Я инженер по машинному обучению. Это мой основной блог исследователя.
Здесь будут публиковаться отчёты о моих проектах, ссылки на них, а также интересные новости из мира машинного обучения и новых технологий.
Мои проекты:
🤖 Антиспам бот TAB.
ТГ канал, новости разработки: t.me/tantispam
Сам бот: @tantispam_bot
✨ LANCETNIC
Библиотека Python, которая позволяет создавать, обучать и развертывать модели нейросетей для задач классификации, регрессии и пр.
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Список будет пополняться, следите за обновлениями!
Я инженер по машинному обучению. Это мой основной блог исследователя.
Здесь будут публиковаться отчёты о моих проектах, ссылки на них, а также интересные новости из мира машинного обучения и новых технологий.
Мои проекты:
🤖 Антиспам бот TAB.
ТГ канал, новости разработки: t.me/tantispam
Сам бот: @tantispam_bot
✨ LANCETNIC
Библиотека Python, которая позволяет создавать, обучать и развертывать модели нейросетей для задач классификации, регрессии и пр.
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Список будет пополняться, следите за обновлениями!
Забудьте как сюда попали. Важно только текущее состояние
Марковское состояние ⛓️💥 pinned «Всем привет! Я инженер по машинному обучению. Это мой основной блог исследователя. Здесь будут публиковаться отчёты о моих проектах, ссылки на них, а также интересные новости из мира машинного обучения и новых технологий. Мои проекты: 🤖 Антиспам бот TAB.…»
LANCETNIC
Это библиотека для языка Python написанная мной для удобства обучения моделей к разным проектам. Основой послужил TAB. Нужен был удобный инструмент, чтобы каждый раз не писать простыню кода.
В основе лежит PyTorch и SKlearn.
На данный момент LANCETNIC (версия 3.0.1) позволяет решать два типа задач:
📊 Многоклассовая классификация: спам/не спам, тональность текста, категоризация
📈 Регрессия: прогноз стоимости, времени доставки и других числовых меток.
Библиотека позволяет организовать полный цикл ML: векторизация → обучение → визуализация метрик → инференс.
Она может работать с текстовыми, скалярными и гибридными данными.
В библиотеке представлены стандартные модели нейросетей под разные задачи.
На данный момент веду работы по выпуску версии 4.0.0. Будут добавлены новые механики и проведен полный рефакторинг кода. Естественно все подробно будет отражено в документации.
Быстрый старт:
Впереди очень большие планы на этот проект.
🔗 Ссылки:
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Поддержите звездами в гитхабе! Ну и жду обратной связи.
Это библиотека для языка Python написанная мной для удобства обучения моделей к разным проектам. Основой послужил TAB. Нужен был удобный инструмент, чтобы каждый раз не писать простыню кода.
В основе лежит PyTorch и SKlearn.
На данный момент LANCETNIC (версия 3.0.1) позволяет решать два типа задач:
📊 Многоклассовая классификация: спам/не спам, тональность текста, категоризация
📈 Регрессия: прогноз стоимости, времени доставки и других числовых меток.
Библиотека позволяет организовать полный цикл ML: векторизация → обучение → визуализация метрик → инференс.
Она может работать с текстовыми, скалярными и гибридными данными.
В библиотеке представлены стандартные модели нейросетей под разные задачи.
На данный момент веду работы по выпуску версии 4.0.0. Будут добавлены новые механики и проведен полный рефакторинг кода. Естественно все подробно будет отражено в документации.
Быстрый старт:
# Опционально: PyTorch с CUDA для ускорения
pip install torch==2.5.1+cu124 --index-url https://download.pytorch.org/whl/cu124
# Установка библиотеки
pip install lancetnic
Впереди очень большие планы на этот проект.
🔗 Ссылки:
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Поддержите звездами в гитхабе! Ну и жду обратной связи.
Нейросети не помнят, что было вчера. А мы помним.
TAB - Telegram Antispam Bot
Из названия понятно что это антиспам бот для телеги. В его основе лежит нейронная сеть. Её принцип сводится к анализу всех сообщений чата/группы и дальнейшей категоризации на спам или не спам.
Собственно бот и дал толчок к написанию библиотеки LANCETNIC.
Основной проблемой для обучения модели был недостаток датасета. Я не нашел сходу актуальные данные. Пришлось лазить по чатам и вручную собирать спам сообщения. Так появилась первая обученная модель.
Сейчас датасет составляет порядка 27000 уникальных записей, это уже позволяет модели снизить ложные срабатывания до минимума.
Помимо оценки сообщения моделью есть еще проверка пользователя на нахождения в базе спамеров. Если модель распознала сообщение как спам и пользователь в базе спамеров, то бот принимает решение об автоматической блокировке и удалению сообщения. За год работы бота было только два случая когда алгоритм банил обычных пользователей чата. Их сообщение было ложно определено как спам и они почему то бились по базе как спамеры. Видимо в каком то чате их кинули в чс. Я еще думаю как сделать так, чтобы подобные случаи исключить.
🔗Ссылки;
ТГ канал проекта: https://t.me/tantispam
Сам бот: @tantispam_bot
Инструкция по добавлению бота в чат: https://t.me/tantispam/35
Как всегда жду обратной связи😃
Из названия понятно что это антиспам бот для телеги. В его основе лежит нейронная сеть. Её принцип сводится к анализу всех сообщений чата/группы и дальнейшей категоризации на спам или не спам.
Собственно бот и дал толчок к написанию библиотеки LANCETNIC.
Основной проблемой для обучения модели был недостаток датасета. Я не нашел сходу актуальные данные. Пришлось лазить по чатам и вручную собирать спам сообщения. Так появилась первая обученная модель.
Сейчас датасет составляет порядка 27000 уникальных записей, это уже позволяет модели снизить ложные срабатывания до минимума.
Помимо оценки сообщения моделью есть еще проверка пользователя на нахождения в базе спамеров. Если модель распознала сообщение как спам и пользователь в базе спамеров, то бот принимает решение об автоматической блокировке и удалению сообщения. За год работы бота было только два случая когда алгоритм банил обычных пользователей чата. Их сообщение было ложно определено как спам и они почему то бились по базе как спамеры. Видимо в каком то чате их кинули в чс. Я еще думаю как сделать так, чтобы подобные случаи исключить.
🔗Ссылки;
ТГ канал проекта: https://t.me/tantispam
Сам бот: @tantispam_bot
Инструкция по добавлению бота в чат: https://t.me/tantispam/35
Как всегда жду обратной связи😃
Модель галлюцинирует. Я тоже, но хотя бы осознаю это
Одной из задач машинного обучения является задача классификации. Классификация делится на три вида: Бинарная (Binary), Многоклассовая (Multiclass) и Многометочная (Multilabel).
Разберемся на примере классификации изображений. На вход в модель будет подаваться изображение кота.
🔹 Бинарная классификация (Binary)
Вопрос: "Это кот?"
Ответ: Да / Нет
Два взаимно исключающих класса. Объект может принадлежать только к одному из них.
🔹 Многоклассовая классификация (Multiclass)
Вопрос: "Кто на фото?"
Ответ: Кот / Собака / Жираф / Птица
Выбирается только ОДИН класс из нескольких вариантов.
🔹 Многометочная классификация (Multilabel)
Вопрос: "Какие объекты есть на фото?"
Ответ: Кот?: Да / Гриб?: Нет / Собака?: Нет / Живое?: Да
Для каждой метки присваивается результат бинарного ответа. Объект может иметь несколько меток одновременно.
Возникает сразу вопрос: А разве бинарная не частный случай многоклассовой?
Так-то да, при N=2 они схожи. Но на практике их реализуют по-разному: разные функции потерь (BCELoss - бинарная, CELoss - многоклассовая), разные функции активации (Sigmoid - для бинарной, Softmax для многоклассовой), некоторые различия в метриках.
Вместо вывода:
• Binary/Multiclass - выбираем один вариант
• Multilabel - отмечаем всё что есть
Вроде тема простая, но в реальных задачах есть нюансы)
Разберемся на примере классификации изображений. На вход в модель будет подаваться изображение кота.
🔹 Бинарная классификация (Binary)
Вопрос: "Это кот?"
Ответ: Да / Нет
Два взаимно исключающих класса. Объект может принадлежать только к одному из них.
🔹 Многоклассовая классификация (Multiclass)
Вопрос: "Кто на фото?"
Ответ: Кот / Собака / Жираф / Птица
Выбирается только ОДИН класс из нескольких вариантов.
🔹 Многометочная классификация (Multilabel)
Вопрос: "Какие объекты есть на фото?"
Ответ: Кот?: Да / Гриб?: Нет / Собака?: Нет / Живое?: Да
Для каждой метки присваивается результат бинарного ответа. Объект может иметь несколько меток одновременно.
Возникает сразу вопрос: А разве бинарная не частный случай многоклассовой?
Так-то да, при N=2 они схожи. Но на практике их реализуют по-разному: разные функции потерь (BCELoss - бинарная, CELoss - многоклассовая), разные функции активации (Sigmoid - для бинарной, Softmax для многоклассовой), некоторые различия в метриках.
Вместо вывода:
• Binary/Multiclass - выбираем один вариант
• Multilabel - отмечаем всё что есть
Вроде тема простая, но в реальных задачах есть нюансы)
Нейросеть не спит. Она просто ждёт следующей эпохи
Forwarded from TAntispam Bot ✨ Блог разработчика
🔥 Обновление. Май 2026
Немного запоздалое обновление, обычно стараюсь сделать все к последнему дню месяца.
Итак.
1. Произведено очередное дообучение. Структура модели не изменилась. Датасет обновлен.
2. Приятно удивлен тем, что количество ложных срабатываний за май было минимальным.
Сравнить с началом года можно тут.
3. Получил обратную связь от нескольких человек на предмет игнорирования ботом части сообщений. Удивлён был тем что модель их пропускала как
Итог.
Бот стабилен. Свою задачу выполняет. По всем вопросам пишите либо в личку: @lancet52, либо в комменты. Всегда рад обратной связи.
======================================
Я на Хабре | Марковское состояние (мой основной блог)
Немного запоздалое обновление, обычно стараюсь сделать все к последнему дню месяца.
Итак.
1. Произведено очередное дообучение. Структура модели не изменилась. Датасет обновлен.
2. Приятно удивлен тем, что количество ложных срабатываний за май было минимальным.
Сравнить с началом года можно тут.
3. Получил обратную связь от нескольких человек на предмет игнорирования ботом части сообщений. Удивлён был тем что модель их пропускала как
not spam. Включил в датасет. Но примеров сообщений немного. Задумался над синтетикой (синтетический набор данных сгенерированный нейронкой).Итог.
Бот стабилен. Свою задачу выполняет. По всем вопросам пишите либо в личку: @lancet52, либо в комменты. Всегда рад обратной связи.
======================================
Я на Хабре | Марковское состояние (мой основной блог)
TAntispam Bot ✨ Блог разработчика
🔥 Обновление. Май 2026 Немного запоздалое обновление, обычно стараюсь сделать все к последнему дню месяца. Итак. 1. Произведено очередное дообучение. Структура модели не изменилась. Датасет обновлен. 2. Приятно удивлен тем, что количество ложных срабатываний…
Проблемы с памятью⚙️
При обучении модели антиспам бота на стационарном ПК впервые столкнулся с нехваткой оперативной памяти. Пришлось убить ряд процессов в системе, чтобы обучение прошло. Модель обучил. Но вот следующее "месячное обновление" под угрозой =)
Придётся отодвигать вправо срок выпуска новой версии LANCETNIC. Надо будет решать вопрос оптимизации обучения в части снижения расхода памяти.
В планах запустить сайт под проект. Но что то в этом месяце основной работы много, на все не хватает времени.
======================================
Я на Хабре | Марковское состояние | TAB
При обучении модели антиспам бота на стационарном ПК впервые столкнулся с нехваткой оперативной памяти. Пришлось убить ряд процессов в системе, чтобы обучение прошло. Модель обучил. Но вот следующее "месячное обновление" под угрозой =)
Придётся отодвигать вправо срок выпуска новой версии LANCETNIC. Надо будет решать вопрос оптимизации обучения в части снижения расхода памяти.
В планах запустить сайт под проект. Но что то в этом месяце основной работы много, на все не хватает времени.
======================================
Я на Хабре | Марковское состояние | TAB
GitHub
GitHub - Lancet52/lancetnic: Интструмент для создания моделей нейронных сетей работающих с текстовыми данными
Интструмент для создания моделей нейронных сетей работающих с текстовыми данными - Lancet52/lancetnic
Марковское состояние ⛓️💥
В планах запустить сайт под проект
Сайту быть!
Закончу с обновленной версией LANCETNIC и будет релиз!
Закончу с обновленной версией LANCETNIC и будет релиз!
👍3
# Обновление LANCETNIC до версии v4.0.0
### ❗️ Важное замечание о совместимости
НЕ СОВМСТИМА С ПРЕДЫДУЩИМИ ВЕРСИЯМИ
---
Что нового в версии 4.0.0:
- Произведен рефакторинг кода
- Добавлены метрики
- Добавлена возможность выбрать устройство на котором будет происходить обучение: CUDA или CPU
- Добавлен информация в консоле об устройстве на котором происходит обучение
- Добавлен новый класс MultiTask
Что дает новый класс
- Одновременное решение задач классификации и регрессии на одном наборе данных.
- Совместное прогнозирование категории и числового значения
- Оптимизация нескольких целей одновременно
- Настраиваемое соотношение потерь для каждой задачи
---
## ➡️ Установка:
🔗 Ссылки:
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Поддержите звездами в гитхабе!
===========
Я на Хабре | Марковское состояние | TAB
### ❗️ Важное замечание о совместимости
НЕ СОВМСТИМА С ПРЕДЫДУЩИМИ ВЕРСИЯМИ
---
Что нового в версии 4.0.0:
- Произведен рефакторинг кода
- Добавлены метрики
precision и recall на валидации для задачи Классификации.- Добавлена возможность выбрать устройство на котором будет происходить обучение: CUDA или CPU
- Добавлен информация в консоле об устройстве на котором происходит обучение
- Добавлен новый класс MultiTask
Что дает новый класс
MultiTask:- Одновременное решение задач классификации и регрессии на одном наборе данных.
- Совместное прогнозирование категории и числового значения
- Оптимизация нескольких целей одновременно
- Настраиваемое соотношение потерь для каждой задачи
---
## ➡️ Установка:
# Опционально: PyTorch с CUDA для ускорения
pip install torch==2.5.1+cu124 --index-url https://download.pytorch.org/whl/cu124
# Установка библиотеки
pip install lancetnic
🔗 Ссылки:
Github: https://github.com/Lancet52/lancetnic
PyPi: https://pypi.org/project/lancetnic/
Поддержите звездами в гитхабе!
===========
Я на Хабре | Марковское состояние | TAB
👍2
Марковское состояние ⛓️💥
# Обновление LANCETNIC до версии v4.0.0 ### ❗️ Важное замечание о совместимости НЕ СОВМСТИМА С ПРЕДЫДУЩИМИ ВЕРСИЯМИ --- Что нового в версии 4.0.0: - Произведен рефакторинг кода - Добавлены метрики precision и recall на валидации для задачи Классификации.…
Работы проведено много. Постоянно то-то приходилось допиливать. Возможно есть косяки, так как писал и тестировал ее я в соло.
Обкатывать буду на TAB
Теперь полноценно займусь сайтом!
Обкатывать буду на TAB
Теперь полноценно займусь сайтом!
Telegram
TAntispam Bot ✨ Блог разработчика
🛡 Официальный канал TAntispam Bot (TAB)
Новости разработки, обновления и руководства по защите чатов от спама.
🤖 Бот: @tantispam_bot
Новости разработки, обновления и руководства по защите чатов от спама.
🤖 Бот: @tantispam_bot
👍1
Марковское состояние ⛓️💥
Сайту быть! Закончу с обновленной версией LANCETNIC и будет релиз!
То о чем так долго мечтал - случилось! Представляю вашему вниманию сайт проекта LANCETNIC:
https://lancetnic.ru/
https://lancetnic.ru/
Forwarded from TAntispam Bot ✨ Блог разработчика
Конец июня. Я наконец доделал дашборд со статистикой работы бота с 01.06.2025.
https://tab.lancetnic.ru/
Теперь она доступна вам 24/7. Дашборд висит на моем недавно запущенном сайте библиотеки LANCETNIC. Именно на ней я обучал модель нейронной сети на которой работает бот.
Что касаемо дообучения модели на последних данных. Так как за месяц бота добавили с десяток групп, то объем данных существенно вырос. Выросли и потребности в мощностях дообучения. Пока этот вопрос решаю оптимизацией кода библиотеки. Так то дообучение на паузе) Отпишусь как обновиться модель
https://tab.lancetnic.ru/
Теперь она доступна вам 24/7. Дашборд висит на моем недавно запущенном сайте библиотеки LANCETNIC. Именно на ней я обучал модель нейронной сети на которой работает бот.
Что касаемо дообучения модели на последних данных. Так как за месяц бота добавили с десяток групп, то объем данных существенно вырос. Выросли и потребности в мощностях дообучения. Пока этот вопрос решаю оптимизацией кода библиотеки. Так то дообучение на паузе) Отпишусь как обновиться модель
Марковское состояние ⛓️💥
# Обновление LANCETNIC до версии v4.0.0 ### ❗️ Важное замечание о совместимости НЕ СОВМСТИМА С ПРЕДЫДУЩИМИ ВЕРСИЯМИ --- Что нового в версии 4.0.0: - Произведен рефакторинг кода - Добавлены метрики precision и recall на валидации для задачи Классификации.…
Оптимизация потребления памяти в LANCETNIC
Недавно столкнулся с проблемой: моя библиотека
Все в пост не влезло, поэтому всё оформил в статью на Хабре:
https://habr.com/ru/articles/1055588/
Резюмируя
Теперь обучение на больших данных происходит и на относительно слабом железе. Это не все проблемы в моей библиотеке, но на одну проблему стало меньше.
Официальный сайт LANCETNIC: https://lancetnic.ru/
GitHub: https://github.com/Lancet52/lancetnic
===========
Я на Хабре | Марковское состояние | TAB
Недавно столкнулся с проблемой: моя библиотека
lancetnic при обучении на больших текстовых датасетах просто перегружала оперативную память. На ноуте в 16 ГБ RAM модель не могла обучиться даже на 25 тыс. строк. Разбирался. Я начал разбираться и нашёл пару причин критического перерасхода памяти.Все в пост не влезло, поэтому всё оформил в статью на Хабре:
https://habr.com/ru/articles/1055588/
Резюмируя
Теперь обучение на больших данных происходит и на относительно слабом железе. Это не все проблемы в моей библиотеке, но на одну проблему стало меньше.
Официальный сайт LANCETNIC: https://lancetnic.ru/
GitHub: https://github.com/Lancet52/lancetnic
===========
Я на Хабре | Марковское состояние | TAB
Хабр
Оптимизация потребления памяти в ML-библиотеке LANCETNIC
Немного о библиотеке LANCETNIC Логотип LANCETNIC это библиотека для поиска взаимосвязей между признаками объекта и целевой переменной. Классификация, регрессия и многозадачное обучение на размеченных...
