4pygmalion / cosas

Apache License 2.0
0 stars 1 forks source link

Exp 153/fastslow #156

Closed 4pygmalion closed 2 months ago

4pygmalion commented 2 months ago

Sourcery에 의한 요약

사전 증강을 통한 이미지 분류를 위한 새로운 ImageClassDataset 클래스를 추가하고, 모델 훈련 및 미세 조정을 위한 새로운 실험 스크립트 train_fastslow.py를 도입합니다. 추가적인 모델 출력을 처리하고 손실 계산을 조정하기 위해 run_epoch 함수를 수정하여 훈련 과정을 향상시킵니다.

새로운 기능:

향상된 기능:

Original summary in English ## Summary by Sourcery Add a new `ImageClassDataset` class for image classification with pre-augmentation, and introduce a new experiment script `train_fastslow.py` for model training and fine-tuning. Enhance the training process by modifying the `run_epoch` function to handle additional model outputs and adjust the loss calculation. New Features: - Introduce a new dataset class `ImageClassDataset` for handling image classification tasks with pre-augmentation capabilities. - Add a new experiment script `train_fastslow.py` for training and fine-tuning models using a fast-slow training strategy. Enhancements: - Modify the `run_epoch` function in `trainer.py` to handle additional outputs from the model and adjust the loss calculation accordingly. - Add a `save_plot` parameter to the `train` function in `trainer.py` to optionally save plots during training.
sourcery-ai[bot] commented 2 months ago

리뷰어 가이드 by Sourcery

이 풀 리퀘스트는 새로운 ImageClassDataset 클래스를 구현하고 기존 트레이너를 수정하여 사전 훈련과 미세 조정을 지원하는 두 단계 훈련 프로세스를 지원합니다. 변경 사항은 이미지 분류 작업에서 모델의 성능을 향상시키는 데 중점을 두고 있습니다.

파일 수준 변경 사항

변경 사항 세부 사항 파일
새로운 ImageClassDataset 클래스 구현
  • _maskout, _paste, _cutpaste를 포함한 데이터 증강 메서드 추가
  • 데이터셋의 사전 증강을 위한 _preaug 메서드 구현
  • 여러 패치 크기 및 이미지 크기 지원 추가
cosas/datasets.py
두 단계 훈련 프로세스를 지원하도록 트레이너 수정
  • 새로운 데이터셋 구조를 처리하기 위해 run_epoch 메서드 업데이트
  • train 메서드를 수정하여 save_plot 매개변수 포함
  • run_epoch에서 update_step 로직 제거
cosas/trainer.py
빠른-느린 접근 방식으로 훈련하기 위한 새로운 스크립트 추가
  • 사전 훈련 및 미세 조정을 위한 함수 구현
  • 다양한 데이터 증강 기법 지원 추가
  • 훈련을 위한 k-겹 교차 검증 구현
  • 실험 추적을 위한 MLflow 로깅 추가
experiments/train_fastslow.py

- 풀 리퀘스트에 `@sourcery-ai review`라고 댓글을 달아 새로운 Sourcery 리뷰를 트리거하세요. - 리뷰 댓글에 직접 답장하여 Sourcery와의 논의를 계속할 수 있습니다. - [대시보드](https://app.sourcery.ai)에 접속하여 언제든지 리뷰 설정을 변경할 수 있습니다: - Sourcery가 생성한 풀 리퀘스트 요약 또는 리뷰어 가이드를 활성화하거나 비활성화; - 리뷰 언어 변경; - 질문이나 피드백이 있으면 언제든지 [문의](mailto:support@sourcery.ai)할 수 있습니다.
Original review guide in English ## Reviewer's Guide by Sourcery This pull request implements a new ImageClassDataset class and modifies the existing trainer to support a two-stage training process: pretraining and fine-tuning. The changes focus on improving the model's performance on image classification tasks. ### File-Level Changes | Change | Details | Files | | ------ | ------- | ----- | | Implemented a new ImageClassDataset class |
  • Added methods for data augmentation including _maskout, _paste, and _cutpaste
  • Implemented _preaug method for pre-augmentation of the dataset
  • Added support for multiple patch sizes and image sizes
| `cosas/datasets.py` | | Modified the trainer to support a two-stage training process |
  • Updated run_epoch method to handle the new dataset structure
  • Modified the train method to include save_plot parameter
  • Removed update_step logic from run_epoch
| `cosas/trainer.py` | | Added a new script for training with the fast-slow approach |
  • Implemented functions for pretraining and fine-tuning
  • Added support for various data augmentation techniques
  • Implemented k-fold cross-validation for training
  • Added MLflow logging for experiment tracking
| `experiments/train_fastslow.py` | ---
Tips - Trigger a new Sourcery review by commenting `@sourcery-ai review` on the pull request. - Continue your discussion with Sourcery by replying directly to review comments. - You can change your review settings at any time by accessing your [dashboard](https://app.sourcery.ai): - Enable or disable the Sourcery-generated pull request summary or reviewer's guide; - Change the review language; - You can always [contact us](mailto:support@sourcery.ai) if you have any questions or feedback.