boostcampaitech6 / level1-imageclassification-cv-10 Goto Github PK
View Code? Open in Web Editor NEWlevel1-imageclassification-cv-10 created by GitHub Classroom
level1-imageclassification-cv-10 created by GitHub Classroom
Traceback (most recent call last):
File "/opt/conda/lib/python3.10/site-packages/optuna/study/_optimize.py", line 200, in _run_trial
value_or_values = func(trial)
File "/data/ephemeral/home/level1-imageclassification-cv-10/utils/hpo.py", line 136, in objective
metrics = train(model, epochs, criterion, optimizer, scheduler)
File "/data/ephemeral/home/level1-imageclassification-cv-10/utils/hpo.py", line 41, in train
loss = criterion(outputs, labels)
File "/opt/conda/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/opt/conda/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
return forward_call(*args, **kwargs)
File "/data/ephemeral/home/level1-imageclassification-cv-10/utils/loss.py", line 47, in forward
assert y_pred.ndim == 1
AssertionError
위와 같은 에러가 발생합니다. F1Loss를 수정해야할 것 같습니다.
plot.py에서 data/dataset import 시 상대경로 문제로 참조하지 못하는 문제가 있습니다.
현재 multi-head 모델은 fc layer가 마스크 여부, 성별, 나이가 모두 동일하게
1792 -> 512 -> num_class 순으로 되어 있습니다.
이 부분에서 layer를 더 쌓을지, feature 개수를 다양하게 바꿀지 실험을 해봐야 할 것 같습니다.
큰 차이는 없지만 성별의 경우 클래스 개수도 다르니 나머지 둘과 파라미터 개수를 다르게 해보려고 합니다.
yolo, rembg를 미리 전처리하여 데이터 파일을 생성 후 훈련하는 방식으로 구현중
이에 따라 현재 구현된 데이터셋이 호출 되면서 detection하는 부분을 삭제할지 고민 중
detection을 통한 성능 향상이 얼마나 일어날지, 또 각각의 클래스에 대한 분류에 대해 어떤 detection이 어떤 성능을 보이는지 실험 예정
3가지 CNN 모델에 대한 voting 실험
train_loader = DataLoader(
train_set,
batch_size=args.batch_size,
num_workers=multiprocessing.cpu_count() // 2,
shuffle=True,
pin_memory=use_cuda,
drop_last=True,
)
Detection model 적용시 해당 data loader 코드에서 다음과 같은 오류 발생
RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method
num_workers=multiprocessing.cpu_count() // 2
를
num_workers=multiprocessing.cpu_count()//2 if args.face_detection=='False' else 0
로 변경하면 에러는 사라지지만
정확한 원인을 찾아야 함
wandb — data agumentation된 데이터 시각화
Cross Entropy, Focal Loss 각 손실 함수에 대해 평가한다.
현재 Gender, Mask, Age 각 분류 모델을 나눠 학습을 진행하므로
그에대해 알맞는 손실 함수를 선택한다.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.