묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
소프트맥스 관련 질문입니다
안녕하세요 선생님얼마전 머신러닝 완벽가이드 강좌에 소프트맥스 질문 드렸던 사람입니다.저는 소프트맥스 연산에 대한 하드웨어 가속기 설계 연구를 진행하고 있는 석사 과정생입니다.그 때 남겨주셨던 답변에 대해 답을 드리면, Softmax의 Input 정밀도라는 것은, 마지막 FC layer를 통과한 후, Softmax층의 input으로 들어가는 값에 몇 bit를 할당할 것이냐에 관한 내용입니다. 즉 제가 알고 싶은 내용을 다시 정리해보면 다음과 같습니다. softmax의 input (혹은 output도)에 많은 bit가 할당되면, H/W resource가 커지게 되므로, 모델의 accuracy를 크게 저해하지 않는 수준에서 어느 정도의 정밀도를 유지해야 하는지 알고 싶습니다. 하여 모델에서 softmax input 전에 따로 텐서 안의 값들을 특정 소수점 자리에서 반올림 해주는 함수를 정의해 반올림을 거치거나, 기존의 FP32를 FP16으로 casting을 거치도록 하여 좀 더 낮은 정밀도에서 잘 돌아가는 지 시뮬레이션을 해보는 중이었습니다. 저의 시뮬레이션 내용은 아래에 첨부하겠습니다. (rounding의 경우는 텐서 안의 값들이 제대로 반올림이 안된 것인지, 아니면 다른 이유가 있는 것인지.. 소수점 10번째에서 rounding을 하든, 20번째, 30번째에서 하든 accuracy에 큰 변화가 없고 거의 36프로 정도를 보였습니다.) 또 일반적으로 H/W설계 시에 floating point보다 fixed point가 구현이 훨씬 간단하며, 리소스 사용량이 매우 적은데, 소프트웨어적으로 모델을 학습시킬 때의 데이터는 대부분 float 32 또는 float 64를 이용하는 것 같습니다. 이는 역전파 과정에서 높은 정밀도가 필요하기 때문이 아닐까 싶은데, 모델 학습 시에 fixed point를 사용했을 때 발생할 수 있는 문제점이 있을까요 ? (소수점 10째자리에서 반올림을 하든, 20,30째자리에서 반올림을 하든 이론상으로는 정밀도가 높아질수록 accuracy가 높아져야 될 것 같은데 제 시뮬레이션 상으로는 모두 36프로의 정확도를 보여 코드에 문제가 있는 것인지, 아니면 알고리즘적으로 문제가 있는 것인지 궁금합니다.) 또한, FP16으로 표현 가능한 최대 정밀도의 값들이 훈련 시에 자주 사용되는지, 실제로 필요한 수준의 정밀도인지 궁금합니다. softmax 층의 input으로 들어가는 logit값(?)들의 range가 어느 정도인지도 궁금합니다. 아마 모델과 사용하는 데이터에 따라 크게 달라질 것 같기는 한데, 제가 읽었던 softmax accelerator관련 논문들에서는 일반적으로 softmax의 input의 range를 [-10,10]으로 가정을 했습니다. (알고리즘 분야가 아닌 하드웨어 논문들이기는 합니다..ㅠㅠ) 허나 실제 학습 시에 floating point를 사용한다는 것은 분명 logit값이 10보다 매우 큰 값이기 때문일 것 같은데 왜 논문들에서는 저런 범위를 가정했는지 궁금하여 든 생각이 혹시 practical한 모델 내에서는 softmax로 들어가기 전에 특정 범위 안으로 들어가도록 전 처리를 해주는 layer가 따로 있는 것인지 궁금했습니다. 또 학습이 점점 진행되면서 logit 값이 학습 후반부로 갈수록 일반적으로 수렴하는 분포(?)가 있는 것인지 궁금합니다.. (epoch별로 logit 값을 출력해보고 싶은데, 아직 코딩에 익숙치 않아 난항을 겪고 있습니다)본질적으로 softmax를 사용하는 이유가 궁금합니다.. multi classification에서 결국 하나의 class로 분류하는 것이 목적인데, 그러면 최종 logit값들 중 가장 큰 값을 선택하면 되는데 왜 굳이 softmax를 통해 확률 분포를 만든 후에 가장 높은 확률의 class로 선택하는지가 궁금합니다. (어차피 softmax를 취한 후의 maximum이나 취하기 전의 maximum이나 같을텐데)( 시뮬레이션 내용 ) 지난 번의 코드는 깃헙에서 임의로 가져온 코드라 조금 더 제대로 된 코드로 실습하고자 이번에는 선생님의 강의 자료인 VGG_Practice 실습 코드를 이용했습니다. 실습 코드의 모델 정의 부분에서 소프트 맥스 layer 직전에 rounding, 혹은 casting하는 부분을 추가한 것 외에 달라진 점은 없습니다.그림 1: float 16그림 2. float 16 결과그림 3. rounding (소수점 10째자리에서 반올림)그림 4. rounding 결과회로 설계 관련 연구를 진행하다 보니 AI 알고리즘에 대한 지식이 부족하여 다소 난해하게 질문드리게 된 점 정말 죄송합니다.. 또 하드웨어적 관점에서 생각하다보니 알고리즘 부분과는 다소 동떨어진 질문이 있을 수도 있을 것 같은데, 그런 부분이 있다면 죄송합니다 ㅠㅠ몇 년전, 동아리 활동을 하면서 머신러닝에 관심을 갖게 되어 선생님의 강의를 수강하고, 잘 공부했었던 기억이 있어 이렇게 다시 찾아 질문 드리게 되었습니다.긴 내용 읽어주셔서 감사드립니다..
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
MAtplotlib 기초
OOP style 부분에서 자꾸 name 'fig' is not defined라고 오류가 나는데 어떻게 해결하나요..?
-
미해결파이썬으로 시작하는 머신러닝+딥러닝(sklearn을 이용한 머신러닝부터 TensorFlow, Keras를 이용한 딥러닝 개발까지)
안내해주신 어떤 곳에도 보스턴 집값 예측 csv파일을 찾을 수 없습니다.
안내해주신 어떤 곳에도 보스턴 집값 예측 csv파일을 찾을 수 없습니다.
-
해결됨딥러닝 CNN 완벽 가이드 - TFKeras 버전
강의 관련 질문입니다
안녕하세요 강사님 강의 잘듣고있습니다 fast api 강의 관련으로 질문드리고 싶어 질문남깁니다 현재 대학교 재학하면서 특정 기능을 수행하는 딥러닝 모델을 만든 후에 이를 배포해 웹에서 사용하는 프로젝트를 수행하려하는 중 강사님께서 fast api와 함께 웹 개발을 전체적으로 다루시는 강의를 출시한 것을 확인했습니다 제가 하려는 프로젝트의 방향과 fast api 강의의 내용이 부합할지 여쭙고 싶어 구매한 다른 강의에 실례를 무릅쓰고 이렇게 질문 드립니다 읽어주셔서 감사합니다
-
미해결[라즈베리파이] IoT 딥러닝 Computer Vision 실전 프로젝트
강의 자료 다운관련 문의 드립니다.
파이썬 텐서플로우 설치하기 영상을 보고 있는데 RBP_DL01_Raspberry pi install ? Edited (영상에 나와있는 해당문서) 해당 문서는 어디에 있나요? 강의자료 다운받은 곳에는 없는거 같습니다. 제가 받은 자료는 아래와 같습니다. 이거말고 다른곳에서 더 추가로 받아야 하나요?
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
residual block과 identity block의 차이
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강의 정말 잘 듣고있습니다!resnet을 공부하던 중 궁금증이 들어서 그런데 residual block과 identity block은 같은 말인건가요??
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 2 - 불량사과를 찾아라!
실습파일 제공
실습파일을 안내해주신 사이트에서 확인할 수가 없습니다.확인부탁드립니다.
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 - 손흥민을 찾아라!
creapple 사이트에 실습파일이 없습니다.
실습 파일 예제를 받고 싶은데 안내해주신 사이트에는 없습니다.확인부탁드립니다.
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
옵티마이저와 경사하강법의 차이가 궁금합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 어느정도 찾아본 결과 옵티마이저는 최적의 파라미터를 찾아주는 알고리즘을 뜻한다고 합니다.그런데 제가 듣기로는 경사하강법도 비슷한 개념인 것 같습니다.그렇다면 옵티마이저 안에 경사하강법과 monentum, adagrad 등등 다 포함되는 건가요?
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
실습 환경
안녕하세요! 양질의 강의를 제공해주신 덕분에 잘 들으며 공부하고 있습니다.다름이 아니라 캐글 노트북 환경에서 계속 실습을 하다가 UX/UI가 변경되어서 그런지 환경이 좀 불편해서 그냥 코랩이나 주피터 환경에서 GPU로 세팅하고 실습해도 상관없을지 궁금해서 질문드립니다감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
ROI Pooling Layer이 SPP Layer보다 성능이 뛰어난 이유가 궁금합니다.
SPP Layer의 경우 여러 Spatial Bins를 사용하여 이미지의 작은 부분부터 큰 부분까지의 정보를 취합하는 것으로 이해했습니다. 또한 ROI Pooling Layer의 경우 SPP Layer에서 Level이 1인 Bins만 적용하는 것으로 이해했습니다. 여기서 의문이 드는 것이 여러 정보를 종합적으로 취합한 SPP Layer가 ROI Pooling Layer보다 성능이 뛰어날 것으로 (직관적으로) 생각이 드는데, Fast RCNN에서 ROI Pooling을 선택한 이유가 궁금합니다. 실험적인 결과로 ROI Pooling을 선택했겠지만, ROI Pooling이 SPP Layer보다 Object Detection에서 우수한 성능을 보이는 이유가 궁금합니다!
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
입력 이미지 크기
안녕하세요.좋은 강의 잘 듣고 있습니다! 중간에 궁금한 점이 생겨서 질문 남깁니다. 현재, 사전 학습된 모델의 가중치를 불러와서 파인 튜닝을 진행하고 있습니다. 이 과정에서 입력 이미지 크기에 따라 실험을 진행중인데, VGG16의 입력 이미지 크기는 기본값이 224x224로 알고 있습니다. 만약, 제가 가진 데이터가 128x128의 형태를 띄고 있는 이미지라면, input_size를 128x128로 구성해줘도 기존의 사전 학습된 가중치를 불러와 쓸 수 있지 않나요? 기존의 DNN과 달리 CNN 모델들은 필터에 가중치를 적용하여 계산하므로 입력 이미지 크기에 상관없이 사전 학습된 가중치를 불러와 사용할 수 있다고 생각합니다. 제가 생각한게 맞는지 궁금해 질문 남깁니다. 감사합니다. 또한, 만약 제 생각이 틀리다면 위와 같이 128x128 이미지를 입력 사이즈로 주었을 때, 모델은 이를 어떻게 224x224로 만들어 학습하는지 궁금합니다. 감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
YOLOv3에서 전체 예측 결과 갯수 10,647 구할 때 3을 곱해 주는 이유가 궁금합니다.
각 freture map 의 이미지 조각 갯수를 더하고 여기에 마지막에 3을 곱해주는데 여기에 대해서 좀 더 설명 부탁 드립니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
옥스포드 pet 데이터 테스트(모델평가)
Ultralytics Yolo 실습 - 01 의 옥스포드 pet 데이터를 가지고 테스트 부분 따라하고 있습니다. 그런데 test.py가 없다는 오류가 뜹니다. test.py는 어느 단계에서 어떤 코드에 의해 만들어진 건가요?
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
데이터 증강
안녕하세요.먼저 좋은 강의 감사합니다. 강의를 듣는 중에 궁금한 점이 몇가지 생겨 질문 남깁니다.이미지 증강 시, 증강 기법을 너무 많이 적용해도 오히려 성능이 떨어지며, 성능을 봐가면서 기법을 선택해야하는 걸로 알고 있습니다. 근데, 어떤 기법이 적절한지 알지 못하는 상황에서 어떻게 탐색해야할까요? 하나씩 적용하고 성능을 보기에는 기법이 너무 다양해서요배치마다 증강 기법을 적용하는 방식으로 진행중인데, 성능이 계속 이전 대비 떨어지는 현상을 보입니다. 확률을 만져줘야 하나요?(현재 0.5)이미지 증강을 사전에 하여 학습 데이터를 늘리는 사람들도 있던데, 이 사람들은 어떤 의도로 그러시는건지 궁금합니다.감사합니다.
-
미해결Google 공인! 텐서플로(TensorFlow) 개발자 자격증 취득
PyCharm & 텐서플로우 플러그인 설치
왼쪽 Plugins 클릭합니다.가운데 돋보기 옆에 “tensorflow developers certification” 입력 후우측 상단에 Install 클릭 --->위 입력했을때 플러그인 검색이 안나옵니다!!!
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Confidence score가 높을수록 많은 Box가 제거된다?
"NMS의 이해" 편 5:40에서 "Confidence score가 높을수록, IoU Threshold가 낮을수록 많은 Box가 제거된다"라고 말씀하셨는데,Confidence score가 아닌, Confidence threshold가 아닌지 질문 드립니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
로컬 GPU 사용법
안녕하세요 mmdetection을 설치하려고 하는데로컬에 있는 GPU를 사용해서 학습을 해보려고 합니다.코랩에서 제공하는 GPU 말고 로컬의 GPU를 사용할 수 있는 방법이 있을까요?
-
미해결파이썬으로 시작하는 머신러닝+딥러닝(sklearn을 이용한 머신러닝부터 TensorFlow, Keras를 이용한 딥러닝 개발까지)
보스턴 집값 강의에서 csv 파일이 없습니다.
안녕하세요 훌룡한 강의 잘 수강하고 있습니다.보스턴 집값 예측 강의에서 csv 파일이 없습니다. 말씀 주신 링크에서도 찾을 수가 없습니다ㅠㅠjm90.hong@gmail.com 제 메일이긴 하는데 csv 파일 보내 주셔도 됩니다 감사합니다^^
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
섹션5 <공지>
섹션5 <공지> 코드 https://github.com/chulminkw/DLCV <여기에 있나요?? 찾아도 없어서요.