소개
게시글
질문&답변
2024.08.12
PINN 의 business 적용 분야에 대한 질문 입니다.
명확한 답변 감사드립니다! 강의해 주신 내용 열심히 공부해보고 적용방안을 고민해 보아야 겠네요~~ 좋은 강의 뿐 아니라 빠른 좋은 답변도 감사드립니다 ^^
- 1
- 3
- 240
질문&답변
2022.08.16
mmdet 설치가 안되네요 ㅠㅠ
바로 위에 제가 언급드린 방법으로 라이브러리들을 설치하고 jupyter notebook 환경에서 실습해 보니 .. 막상 실행 안되어서 (pytorch GPU 인식안됨) 결국은 개인 컴퓨터 window 에 설치된 아나콘다의 단일 가상 환경에 tensorflow-gpu 버전 사용이 가능하면서도 동시에 강의 실습과 동일한 pytorch 및 mmdetection 에서도 gpu 활용이 가능하도록 만드는 것은 현 시점 에서는 불가능하다는 것이 증명 되었습니다.ㅎㅎ 다만 대안으로 window10 의 wsl2 에 우분투를 설치한 후, 결국 리눅스 환경에서 mmdetection 동작 되도록 만드는데 성공하였습니다. 시행착오로 문제 하나하나 구글링으로 맨땅 해결하다보니 설치 성공하는데 꼬박 일주일 더 걸렸네요ㅋㅋㅋ 혹시 개인 컴퓨터에 tensorflow GPU, pytorch GPU, mmdetection GPU 세 가지 모두 동작하도록 개발환경 구축하고 싶으신 분들이 있다면 아래 정보 참고해 주시기 바랍니다. ㅎㅎ 1) Window10 에서 wsl2 설치 및 wsl2 환경에서 우분투 20.04 버전 설치 (구글에서 wsl2 ubuntu 검색하면 많이 나옴) 2) wsl2 의 우분투 20.04 환경에서 cuda11.0.x, cuDNN8.0.x 설치 해야 함. cuda 설치 후 환경변수 잡아 주어야 한다는점도 remark 할 것 -_- (김길로새님 블로그 5번 참고) NVIDA 홈피의 wls2 문서를 보면 그래픽 드라이버 (451.82 이상)는 윈도우 환경에서 설치하되, cuda 와 cuDNN 은 우분투 환경에 설치할 것으로 안내 되어 있음. (NVDIA wsl2 관련 가이드라인) tensorflow gpu 버전과 pytorch gpu, 그리고 mmdetection gpu 버전 세 가지가 동시에 만족되는 교집합이 cuda 11.0, cuDNN8.0 뿐임 ㅋ. 이 때 tensorflow 는 tensorflow-gpu-2.4.0, pytorch 는 1.7.0, mmcv 는 1.3.17 ~ 1.7 사이를 깔아 주어야 함.. 저는 mmcv-full 1.6.1 설치하였습니다. Microsoft C++ Build tools 설치도 해야 mmcv 정상적으로 작동한다는 점도 중요합니다. https://www.tensorflow.org Installation — mmcv 1.6.1 documentation https://visualstudio.microsoft.com/visual-cpp-build-tools/ 3) 이후에 wsl2 에 가상환경 잡고, 주피터 노트북 설치하고.. 하는 것은 윈도우 아나콘다에서 하는 것과 거의 유사했지만... wsl2 에서 구동되는 리눅스 환경이다보니 완벽하지 않은 점이 있어.. 잡다한 설정이 필요한 부분이 생기네요ㅋ 문제 생길 때마다 wsl2 jupyter 구글링으로 해결하니 결국은 설치가 되네요... 고생은 많이했지만 리눅스에 대한 이해도 조금 더 생겼고... window 환경에서도 wsl2 를 통해 mmdetection 설치가 된다는 걸 확인한 것이 일단 중요한 것 같습니다. ㅋㅋ 본인의 컴퓨터 OS 가 리눅스가 아닌 윈도우라면 강사님 가이드에 따라 colab 이나 kaggle 서버에서 실습하시는 것이 정신건강에 이롭습니다. 다만 어떤 필요에 의해 굳이(?) OS 를 window 로 유지하면서도 gpu 를 사용한 mmdetection 설치하고 싶은 분들만 참고해 주시면 될 것 같습니다.ㅎㅎㅎ
- 0
- 3
- 3.4K
질문&답변
2022.08.06
mmdet 설치가 안되네요 ㅠㅠ
강사님, 빠른 회신 감사드립니다. 말씀주신 것 처럼 Q&A 조회해 보니 유사한 질문에 대한 답변으로 주셨던 아래 홈페이지의 가이드대로 차근차근 설치해 보니 window 에서도 잘 깔리네요! https://mmcv.readthedocs.io/en/latest/get_started/build.html 다만 아직 cuda 10.2 에서만 mmdetection 을 window 에 설치가능한 것으로 되어 있어서... RTX3090 그래픽카드의 경우에는 torch 로는 GPU 가 잡히는데, Tensorflow 에서는 안잡히네요. Tensorflow-gpu 설치의 경우에는 RTX3090 에서는 최소 cuda 11.0 이상 버전을 설치해야 한다고 합니다. https://medium.com/@dun.chwong/the-simple-guide-deep-learning-with-rtx-3090-cuda-cudnn-tensorflow-keras-pytorch-e88a2a8249bc 3일간의 사투(?) 끝에 아래와 같은 결론을 얻게 되었습니다. 윈도우에 MMdetection 을 설치하고자 한다면 : 1) cuda 10.2 (cuDNN 7.6)기준으로 mmdetection 을 window 에 설치하는 것이 가능함. (사전 설치 프로그램이 4개 있고, 환경변수 잡아주는 고통이 좀 있지만..) torch 1.9.0+cu102 로 파이토치 설치하면 GPU 도 잘 인식됨. 2) cuda 10.2 기준으로 tensorflow-gpu 는 ver 2.0~2.3 정도로 깔아 주어야 하는 듯 하지만.. https://www.tensorflow.org/install/source_windows#tested_build_configurations tensorflow-gpu 환경에서 RTX3090는 근본적으로 cuda 10.2 와 호환이 안되며, 최소 cuda 11.0 이상이 필요함. 그러다보니 현재까지는(2022 8월 기준) RTX3090의 경우에는 window 환경에서 mmdetection 을 사용하고자 한다면, tensorflow 에서 GPU 사용이 불가능한 상황임 - MMdetection 에서 cuda 10.2 밖에 지원 안되지만 cuda 10.2 로는 tensorflow 에서 RTX3090을 인식못함. 물론 cuda 10.2 를 지원하는 다른 GPU라면 사용 가능할 것 같습니다. 아니면 tensorflow 대신 pytorch 를 사용하는 것도 방법일 듯 합니다. 리눅스를 처음부터 배우자니 앞이 깜깜해서... 향후에 MMdetection 에서도 cuda 11.0 이상에서도 window 설치가 가능하도록 빨리 업데이트 되면 좋겠네요~ ㅎㅎ 정말 큰 도움 되었습니다. 감사드립니다! ^^
- 0
- 3
- 3.4K
질문&답변
2022.01.20
target_size 인수에 대한 질문
강사님, 명확한 답변 감사드립니다. 많은 도움이 되었습니다. segmentation 에 관련한 한가지 이어지는 질문인데요, 이미지 분류 모델의 성능을 높이기 위해서 segmentation 기법은 굳이 적용하지 않는 경우가 대세 인지...도 궁금합니다. 아직 해당 기법에 대해서 잘 모르지만... 알고리즘의 복잡성이나 학습 속도 증가량 대비해서 segmentation 을 추가했을 때의 성능향상도가 만약 그리 높지 않다면.. 적용하지는 않을 듯 해서요~ 예를 들어서 가족사진을 자동 분류해주는 모델을 만든다고 가정했을 때, 한 사진에 여러명이 같이 나온다거나(하지만 주인공은 있는), 풍경사진 속에 인물이 나와 있는 사진, 가로 wide 로 찍은사진, 세로 wide 로 찍은 사진 ... 등의 variety 한 해상도 조건들이 랜덤하게 들어가 있는 상황에서도 segmentation 없이도 augumentation 만으로도 충분히 좋은 성능을 나타낼 수 있는 이미지 분류 모델을 만들어 낼 수 있을지... 에 대한 궁금함에 추가 질문 드립니다. 감사합니다!
- 0
- 2
- 577
질문&답변
2022.01.03
Batch Normalization Layer 의 Training parameter 이해 관련 질문
많은 질문을 한꺼번에 드렸는데 각 질문별로 상세하고 명확한 답변 감사드립니다. 이해하는데 도움이 많이 되었습니다! 1번 질문 관련해서 추가적으로 규칙성을 찾으려 노력해 보니, BN layer 의 경우 # of training paramter = feature map (직전 conv layer 의 filter 개수) * 4 개 의 수식을 가지는 것도 같습니다. 구글링을 좀더 해보니 gamma (표준편차의 개념), Beta (평균의 기대값 개념) 과 같은 두 개의 learnable paramter 와, 말씀 주신 바와 같은 평균/분산의 이동평균값인 두 개의 non-learnable parapeter 합쳐서 총 4개의 training paramter 로 구성되는 것도 같습니다. (사진)
- 0
- 2
- 1.2K