Skip to content

Дообучение на новых образах и классах#20

Merged
netkeep80 merged 3 commits intonetkeep80:mainfrom
konard:issue-19-57fc143cd06d
Jan 27, 2026
Merged

Дообучение на новых образах и классах#20
netkeep80 merged 3 commits intonetkeep80:mainfrom
konard:issue-19-57fc143cd06d

Conversation

@konard
Copy link
Contributor

@konard konard commented Jan 27, 2026

Описание

Реализованы новые режимы работы нейросети согласно issue #19:

1. Режим дообучения (-r/--retrain)

Позволяет загрузить существующую обученную модель и продолжить обучение на новых данных:

# Обучить начальную модель
./NNets -c configs/simple.json -s model_v1.json

# Дообучить с новыми классами
./NNets -r model_v1.json -c configs/extended.json -s model_v2.json

Особенности:

  • Автоматическое определение уже обученных классов (имеют output_neuron)
  • Обучение только новых классов
  • Сохранение существующей структуры нейронов

2. Режим верификации точности (--verify)

Проверка точности загруженной модели на тестовых данных:

./NNets -l model.json -c configs/test.json --verify

Вывод включает:

  • Количество успешных/неуспешных классификаций
  • Процент точности
  • Детали неверных предсказаний

3. Прерывание обучения (Ctrl+C)

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

  • Первый Ctrl+C запрашивает остановку после текущей итерации
  • Второй Ctrl+C принудительно завершает программу
  • При указанном -s сеть автоматически сохраняется
  • Обучение можно продолжить через -r
# Запуск с автосохранением
./NNets -c configs/large.json -s checkpoint.json
# Нажать Ctrl+C...
# Продолжить позже
./NNets -r checkpoint.json -c configs/large.json -s final.json

Изменения

Новые файлы:

  • cmake/test_verify.cmake - тест режима верификации
  • cmake/test_retraining.cmake - тест режима дообучения

Изменённые файлы:

  • main.cpp - добавлены новые режимы и обработчик Ctrl+C
  • include/json_io.h - функции для загрузки модели для дообучения
  • CMakeLists.txt - добавлены 2 новых теста
  • README.md - документация новых режимов

Тестирование

Все 8 тестов проходят успешно:

  • ✅ test_simple_classification
  • ✅ test_default_classification
  • ✅ test_benchmark_training_speed
  • ✅ test_model_save_load
  • ✅ test_extended_classification
  • ✅ test_multithreading_benchmark
  • ✅ test_verify_mode (новый)
  • ✅ test_retraining_mode (новый)

Test plan

  • Локальная сборка проходит
  • Все существующие тесты проходят
  • Новые тесты для верификации проходят
  • Новые тесты для дообучения проходят
  • CI на Linux/Windows/macOS

Fixes #19


🤖 Generated with Claude Code

konard and others added 2 commits January 27, 2026 20:59
Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: netkeep80#19
Реализованы новые режимы работы согласно issue netkeep80#19:

1. Режим дообучения (-r/--retrain):
   - Загрузка существующей сети и продолжение обучения
   - Автоматическое определение необученных классов
   - Поддержка добавления новых классов к существующей модели

2. Режим верификации точности (--verify):
   - Проверка точности загруженной модели на тестовых данных
   - Вывод статистики (passed/failed/accuracy)

3. Прерывание обучения (Ctrl+C):
   - Корректное завершение после текущей итерации
   - Автосохранение при указанном -s
   - Возможность продолжить обучение через -r

Обновлена документация в README.md и добавлены 2 новых теста.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@konard konard changed the title [WIP] Дообучение на новых образах и классах Дообучение на новых образах и классах Jan 27, 2026
@konard konard marked this pull request as ready for review January 27, 2026 20:11
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@konard
Copy link
Contributor Author

konard commented Jan 27, 2026

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Public pricing estimate: $6.154056 USD
  • Calculated by Anthropic: $4.004905 USD
  • Difference: $-2.149151 (-34.92%)
    📎 Log file uploaded as Gist (1021KB)
    🔗 View complete solution draft log

Now working session is ended, feel free to review and add any feedback on the solution draft.

@konard
Copy link
Contributor Author

konard commented Jan 27, 2026

🔄 Auto-restart 1/3

Detected uncommitted changes from previous run. Starting new session to review and commit them.

Uncommitted files:

?? cmake_config.log

Auto-restart will stop after changes are committed or after 2 more iterations. Please wait until working session will end and give your feedback.

@konard
Copy link
Contributor Author

konard commented Jan 27, 2026

🔄 Auto-restart 1/3 Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Public pricing estimate: $1.292345 USD
  • Calculated by Anthropic: $0.659962 USD
  • Difference: $-0.632382 (-48.93%)
    📎 Log file uploaded as Gist (1267KB)
    🔗 View complete solution draft log

Now working session is ended, feel free to review and add any feedback on the solution draft.

@konard
Copy link
Contributor Author

konard commented Jan 27, 2026

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Public pricing estimate: $1.292345 USD
  • Calculated by Anthropic: $0.659962 USD
  • Difference: $-0.632382 (-48.93%)
    📎 Log file uploaded as Gist (1270KB)
    🔗 View complete solution draft log

Now working session is ended, feel free to review and add any feedback on the solution draft.

@netkeep80 netkeep80 merged commit 3cc5e35 into netkeep80:main Jan 27, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Дообучение на новых образах и классах

2 participants