안녕하세요 그랩님. 강좌 잘 듣고 있습니다. 제가 id값을 동일하게 지정해도 한 id값만 적용된다고 배웠는데, 실제로 해 보니 동일한 id값을 갖는 모든 텍스트가 색이 변했습니다. 이렇게 된다면 id와 class에 차이가 없는 것 아닌가요?? --------코드---------- <html> <head> <style type="text/css"> p { color: orange; } #id-test { color: skyblue; } .love { color: #BA68C8; font-size: 100; font-weight: 900; } .love2 { color: #00AAFF; font-size: 100; font-weight: 900; } </style> </head> <body> <p>Hello</p> <p>Hello!</p> <div id="id-test">id</div> <div id="id-test">id</div> <div class="love">class</div> <div class="love2">class</div> </body> </html>
안녕하세요 선생님, 질문이 있습니다. !pip install mmcv-full 이후에 런타임 다시 시작을 해야 import mmcv가 정상 작동하는데, 코랩 런타임 다시 시작하는 것이 어떤 원리인가요? 런타임 다시 시작을 안하면 import mmcv가 정상 작동하지 않는 이유가 궁금합니다.
안녕하세요! 강의 잘 듣고 있습니다! 제가 알기로는 epoch란 전체 데이터를 모두 관측한 횟수이고 iteration은 한 에포크에서 가중치 갱신이 된 횟수로 알고 있습니다. 전체 데이터가 100개이고, 500번의 epoch을 돌린다고 할 때, GD : 각 데이터당 500번이 인풋 데이터로 선택. 총 50,000번의 학습. iteration도 500. batch_size는 100 SGD : 각 데이터당 평균적으로 5번의 인풋 데이터로 선택. 총 500번의 학습. iteration은 50000. batch_size는 1 Mini - Batch(batch_size = 10) : 각 데이터당 50번의 인풋데이터로 선택. 총 5,000번의 학습. iteration은 5000, batch_size = 10 위 결과처럼 iteration*batch_size의 값은 모두 동일하지만 각 데이터가 학습되는 비중이 다르게 되는 것이 맞을까요? 또, 결론적으로 GD에서 변환되어 나온 SGD와 배치방법(이하 SGD 통일)은 표면적으로는 GD의 "전체 관측 후 갱신" 에서 SGD의 "부분 관측 후 갱신" 이라는 양적 개념이 달라진 것처럼만 보이지만 사실 그 내부에는 GD의 "동일한 데이터 반복 학습"에서 SGD의 "동일한 데이터 반복 학습 횟수 감소"로 볼 수도 있는건가요?
안녕하세요 머신러닝 완벽가이드 강의에서 최근에 교차검증에 대해서 배웠는데요. 여기서도 k fold와 같은 교차 검증이 가능한지, 실익이 있는지 궁금합니다. 그리고 만약 검증 데이터의 결과가 만족스럽지 않을 때는 무엇을 해 줄 수 있을까요? Dense 추가, 배치 사이즈 작게 등이 생각나는데 다른 것도 있으면 알려주세요. 감사합니다
heroku에 서버 배포한 후 링크에 접속하면 application error라는 화면과 함께 heroku logs --tail라는 명령어를 사용해 에러내역을 확인할 수 있다는 설명이 나오는데요 명령어를 치면 아래와 같은 에러 로그가 나옵니다.. at= error code= H10 desc=" App crashed" method=GET path="/" 여기저기 찾아보면서 package.json scripts에 heroku-postbuild 추가하기 package.json engine에 node와 npm 버전을 입력하기 heroku 빌드팩 변경하기 heroku restart하기 procfile 생성하여 web:node index.js 입력하기 이외에도 여러 방법을 다 시도해봐도 해결이 안되네요...
안녕하십니까, 현재 RetinaNet을 구현해보고자 Retitanet paper를 읽고 케라스 공식홈페이지의 Retinanet 예시 코드(https://keras.io/examples/vision/retinanet/#implementing-smooth-l1-loss-and-focal-loss-as-keras-custom-losses) 를 이해하고자 하는데 제가 전반적인 흐름을 이해하질 못하고 있습니다. 본 강의에 있는 Fast RCNN 파트에서, 예측 박스가 Ground Truth 좌표값을 따라가는 것이 아닌 Anchor Box 중에서 Ground Truth와 IOU 높은 Positive Anchor Box를 따라간다고 하였습니다. 그렇다면 1. RetinaNet이 작동하기 전 과정이, 우서적으로 Anchor box들 생성하고 그 중에서 Ground Truth와의 IoU>= 0.5인 Positive Anchor Box 찾기 가 맞는지요. 2. 그리고 RetinaNet 구조를 보면 FPN 에서 나온 P3 ~ P7(Retinanet paper 기준) feature map을 class subnet과 box subnet으로 각각 들어가게 되고, 위 케라스 공식 홈페이지 예제 코드 이때, box subnet의 결과값이 W x H x (4 x 9) 꼴인데, Positive Anchor Box의 좌표는 (x, y, w, h)로 4개인데 어떻게 regression 계산이 되는지 궁금합니다. class subnet에 들어가게 되면 W x H x (num_classes x 9) 꼴의 결과값이 나오는데, 이는 2번질문과 마찬가지로 class labeling은 0,1,2,...과같은 정수형이거나 벡터형으로 나타날텐데 어떻게 regression 계산이 되는지 궁금합니다. 3. 또한, Positive Anchor Box를 제외한 나머지 Anchor Box들은 결국에는 직접적인 학습에 사용되지 않는 것인지요? 만약 사용된다면 Negative Anchor Box(IoU < 0.4)와 Ignorance Anchor Box(0.4 <= IoU < 0.5)가 어떤식으로 사용되는 지에 대해 설명 부탁드립니다. 4. 또한, 한 이미지에 서로 다른 객체가 2개 이상일 때, feature map이 class subnet에 들어가서 도출된 결과값( (num_classes) X 9)이 어떤 방식으로 해당 객체의 레이블과 대응하여 학습되는지 궁금합니다. 예를 들어, 사과(0), 고양이(1), 강아지(3) 클래스가 3개인 데이터셋에서, 사과(0)와 고양이(1)가 존재하는 특정 이미지를 RetinaNet에 training시키게 되면, P3 ~ P7의 feature map이 class subnet으로 들어가서 W x H x (3 x 9)꼴의 결괏값이 나올텐데, 이때 해당 결괏값이 사과(0)인지, 고양이(1)인지 어떤 값이 대응하여 학습해야할 지에 대해서 알 수가 없어 이렇게 질문드립니다. 대략적인 이론을 알고 있다고 생각하여 직접 코딩을 하려했지만, 막막하여 keras 예제를 통해 역으로 이론을 이해하려 시도했습니다. 하지만 코드 자체가 이해가 되질 않고, 어떤 식으로 데이터가 흘러가지는에 대해서도 파악할 수가 없었습니다.. 혼자서 해결해보려 했으나 며칠동안 해결되지 않고 오히려 이해가 되지 않는 부분이 많아져서 이렇게나마 질문을 드립니다...
안녕하세요 선생님.. 밑에 사진을 보면 알 수 있겠지만 선생님이 이 전 강의에서 예시로 작성하신 코드에다가 <Script ~~ /> 이 태그를 복습 겸해서 다시 사용해볼려고 했는데 사진처럼 Script로 다른 Aleart("~");이 있는 JS파일을 불러와서 저장하고 브라우저에서 봤는데 아무것도 안뜨고 하얀 화면 밖에 없는데 코드에 무슨 오류가 있길래 실행이 안되는 거에요ㅜㅜ?
안녕하세요 강의 너무나 잘 듣고 있습니다. 정말 감사드립니다. mask를 학습하는 부분에서 궁금한 점이 있어 질문드립니다. 1. RPN에서 예측해준 바운딩 박스를 align한 최종 14x14x80 feature를 대상으로 mask 를 각 그리드별로 클래스가 positive냐 negative인가만 분류하는 것으로 이해했는데요, 이를 학습하려면 실제 이미지의 각 ground truth box를 14x14로 맞추고 각 그리드의 80개 채널들에 정답을 넣어준 후에 두 14x14x80의 cross entrophy 로 back prop하면 되는 것으로 이해했는데 맞나요? 2. 1번에 대한 이해가 맞다면, 이렇게 해서 나온 3개의 예측값, a.클래스 예측값 b.바운딩 박스 좌표 예측값 c.14x14크기의 마스크 예측 들을 이용해서 14x14크기의 마스크를 예측된 바운딩 박스 좌표 크기에 맞게 resize하고 거기에맞게 마스크값도 할당하고 이를 실제 이미지에 덮어씌운다. 이렇게 하면 바운딩 박스를 그리는 것과 함께 바운딩 박스안에 해당하는 클래스부분 픽셀만 다른 컬러로 구분할 수 있다. 이런식으로 이해했는데, 잘못 이해한 부분이 있다면 지적 부탁드립니다. 감사합니다.