seld's People
seld's Issues
모델 샘플링을 위한 config 구현
- random config sampling 구현
- constraint도 적용할 수 있게 구현
model을 언제 학습 중지할지 결정하는 방법론 정하고 구현
많은 랜덤한 모델들의 수치를 구하기 위해서 빠르게 학습이 끝날 수 있도록
의견) 다양한 metric의 수치를 구할필요 없이 일정 epoch동안 학습 진행하고 마지막에 metric한번 하는 것
다른 의견들을 comment 달아서 같이 논의해봐요
feature extractor하고 정규화가 필요함
현재 feature extractor에 학습데이터에서 평균과 분산을 구해 학습데이터와 테스트데이터에 모두 적용하는 파트가 없음
Issue Test
Issue Test
모듈화 어떻게 할지 구체화시키기
DCASE2020 1등팀 resnet
Resnet @SongJae
attention & GRU 등 complexity를 계산
Feature를 dataloader가 잘 불러오는지 테스트코드가 필요
현재 dataloader가 예전 seldnet 데이터 형태 뿐만 아니라 우리 데이터 형태 두가지에 맞추어
불러오도록 했는데, 이것이 적절하게 이루어지는지 테스트할 수 있는 테스트코드가 필요함
테스트가 용이하게 dataloader.py 내부 코드도 바꿔야 할 수도 (train.py 등에는 영향이 가지 않도록)
dense block 구현
MIC format과 foa 모두 사용
데이터 합성 파트 파이프라인
구상 및 진행
Some layers are not being tested.
only parts of layers is being tested.
[ ] test every layer
mic augmentation
README가 필요합니다.
현재 README가 없어 어떻게 돌려야하는지 가이드라인이 없습니다.
데이터 역재생 구현
model_config가 주어지면 complexity를 구현하는 함수 구현
FLOPs 등과 같은 complexity를 model_config를 받으면 출력하도록
IDEA:
complexity를 계산하는 함수는 model_config랑 input_shape 두개를 입력으로 받고,
model_config 안에 배정된 모듈들마다 함수를 돌려, complexity를 계속 더하고
모듈들마다 돌리는 함수는 args, input_shape 두가지를 받아 complexity, output_shape 두가지를 내놓으면
다음 함수에서 output_shape을 받아 또 계산하는 방식은 어떨까 싶습니다.
다양한 block 제작하기
- Conv Bottleneck block
- multihead attention
등등 search space에 넣을 것들 구현필요
존재하지 않는 옵션을 넣어도 경고없이 돌아가서 옵션을 제대로 넣었는지 확인이 어렵습니다.
가령 batch size를 변경하려고 할 때, --batch_size로 한다든지,
params.py에서 존재하지 않는 옵션을 넣어도, 아무 경고나 메세지 없이 돌아갑니다.
그러면 옵션을 제대로 넣었는지, 잘못넣었는지도 모르게 돌아가다가 운좋으면 발견됩니다.
가령 스펠링 잘못적어도 전혀 경고가 없이 돌아가서, 무슨 세팅을 잘못했는지도 세팅이 잘 되는지도 바로 확인하기 어려운 것 같습니다.
존재하지 않는 옵션을 넣지 않도록 하는 것이 좋을 것 같습니다.
attention 더 일반화하는게 필요해보입니다.
현재는 transformer encoder 구조만 사용하고 있는데,
Conformer, EvolvedTransformer? 등과 같이 조금 더 다양한 구조들과 비슷하게 커버할 수 있도록 조금 더 개선이 필요해보입니다.
물론 그러한 모델들을 반드시 포함할 필요는 없고 조금 더 search space를 넓힐 필요가 있어 보입니다.
저번에 태수씨가 공유주신 것처럼 axis를 바꿔서 time축에 attention하는 것 뿐만 아니라 chan에도 attention을 적용한다든지,
conv block 사이에 껴있을 때도 실행가능하도록 변경이 필요해보입니다.
dataloader와 feature extractor의 불일치
dataloader는 잘못된 data format에 맞추어 제대로 형태를 갖추도록 했음
feature extractor에서는 제대로 되었지만, 이를 dataloader에서 불러올때는 마치 이상한 형태처럼 해석해 불러오기 때문에 결국 제대로 생성되어도 잘못 이용되게 되어 있음
FOA augmentation 구현
bce 를 focal loss로 바꿔서 해보기
Too many json files
지금 Json 파일이 너무 많고, 테스트용 json 파일도 너무 많은거 같은데
baseline처럼 어느정도 고정된 모델이나, 진행하고 있는 중요한 파일 위주로 한번 정리를 하면 어떨지 싶습니다.
learning scheduler 설계 변경
스케줄러 종류를 class로 받게하여 다양화 또는 다른 방법
README should be updated
현재 feature extractor가 잘 작동해 이전 seldnet 코드 없이 작동할 수 있게 된 것에 대한 설명이 업데이트가 필요합니다.
그리고 마지막 줄에 저(daniel03c1)랑 승진씨 아이디만 있는데, 이것도 업데이트다 필요해보입니다.
DCASE2020 1등팀 Xception
Xception @lsg1213
can't start Training the model
Hello guys, thanks for your amazing work.
I'm currently very interested in your model however for some reason I can't get it to start training..
so first error I received was "Name is required" so I hardcoded the name just to get rid of that error
so after following the readme and installing all the requirements and also changing the abspath in the 'params.py' file to
the path containing the dataset I receive the following error:
Traceback (most recent call last):
File "d:/DCASE/Code/SELD/train.py", line 394, in <module>
main(get_param())
File "d:/DCASE/Code/SELD/train.py", line 308, in main
model = getattr(models, config.model)(input_shape, model_config)
File "d:\DCASE\Code\SELD\models.py", line 24, in seldnet
x = getattr(modules, model_config['FIRST'])(model_config['FIRST_ARGS'])(inputs)
AttributeError: module 'modules' has no attribute 'simple_conv_block'
after trying to trace the error. I believe that since the default params uses the 'seldnet' config file
and this config file contains "simple_conv_block" as it's "first" attribute
however in the modules.py file there is no corresponding simple_conv_block function...
I tried to use a different model_config file with no success as well.
(I tried the SS5.json config since there were a commit that mentioned it being the config for the DCASE submission)
and recieved this error :
Traceback (most recent call last):
File "d:/DCASE/Code/SELD/train.py", line 394, in <module>
main(get_param())
File "d:/DCASE/Code/SELD/train.py", line 308, in main
model = getattr(models, config.model)(input_shape, model_config)
File "d:\DCASE\Code\SELD\models.py", line 24, in seldnet
x = getattr(modules, model_config['FIRST'])(model_config['FIRST_ARGS'])(inputs)
KeyError: 'FIRST'
I must be doing something wrong so if you can please help me start training this model that would be great
thank you for your time and consideration.
고정된 epoch로 빠르게 학습
torchaudio -> tf code
torch 파트를 전체적으로 tf로 변경
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.