레플리
글 수 222


이제 어느정도 기초를 다져서 단순하게 컨볼루션,풀링 등을 중첩해서 사용하면서 mnist 숫자 분류를 하는 신경망을 재미삼아 여럿 만들면서 연습하고 있습니다. 그러다가 욕심이 생겨서 아래와 같은 구글의 인셉션 모델(버전 1)을 만들어 보려고 했습니다.Inception-V1 Model

 

보니까 컨볼루션, 풀링 위주로 되어있어서 해볼만 한 것 같더라고요(제가 느끼기에만). 그래서 무작정 만들어 보려고 하니까 모델 중간중간에 가지가 따로 나와서 소프트 맥스로 빠지는 곳이 있었습니다. 이 것이 뭔가 해서 찾아봤더니 깊은 신경망으로 인해 역전파에 의한 학습이 제대로 이뤄지지 않는 것을 막기위해 첨가한 것이더군요. auxilliary classifier라고도 하는 것 같습니다.

생전 처음 보는 구조라 당황했지만 일단 저 위 그림 그대로 모델을 만들어보고 loss 함수를 다음과 같이 만들었습니다.

loss = tf.reduce_mean(0.7*tf.nn.softmax_cross_entropy_with_logits(logits = model(실제 전체 모델), labels=y_target) + 0.3*(tf.nn.softmax_cross_entropy_with_logits(logits = first_soft(첫번째로 가지 친 소프트맥스), labels=y_target) + tf.nn.softmax_cross_entropy_with_logits(logits = second_soft(두번째로 가지 친 소프트맥스), labels=y_target)))

 

이렇게 했더니 역시나 안되더군요. 제가 너무 단순하게 생각해서 loss 함수를 잘못 만든걸까요? 아니면 저걸 위해 모델에 뭔가 색다른 것을 추가해야하는 것일까요? 개강 전까지 저 auxiliary classifier만 해결하여 인셉션 모델을 구현해보고 싶은데 답답할 따름입니다.

엮인글 :

깊은바다

2018.08.18 13:45:54
*.68.247.188

실제 구현을 하시다니 대단하네요~ 그런데 메인이 0.7, 첫번째가지 0.3, 두번째가지 1 인가요?

 

# The total loss used by the inception net during training.

total_loss = real_loss + 0.3 * aux_loss_1 + 0.3 * aux_loss_2

 

아래 링크를 보니까 1, 0.3, 0.3으로 loss를 정하는 것 같은데요. 저도 구현을 해본적이 없어서 잘 모르겠네요^^; 소스코드를 구글은 공개하지 않고 있고, 비슷한게 카피한 것도 찾기가 힘든 것 같습니다. 완성되면 소개해주세요 ㅎㅎ

 

https://towardsdatascience.com/a-simple-guide-to-the-versions-of-the-inception-network-7fc52b863202

딥린이

2018.08.19 08:55:51
*.47.126.27

항상 친절한 답변 감사합니다. 저가 로스 함수 설명을 좀 잘못 설명드렸네요. 제가 본 사이트에서 aux loss가 0.3 비율을 갖는다길래 실제 loss를 0.7로 잡고, 나머지 모든 aux-loss를 합쳐서 0.3으로 한겁니다. 담주가 개강이라 완성은 아주 늦을 수도 같네요 ㅠㅠ 완성되면 꼭 올려보겠습니다!

질문이 더 생겼는데요. 보통 그래프를 구현할 때 반복되는 부분을 함수로 만들어서 쓰게 되잖아요. 각 노드의 변수들(가중치나 바이어스 같은 갱신되는 것들)을 책에서는 전체 소스의 맨 처음에 두어 함수 바깥에 선언하여 전역변수로 하던데 꼭 그렇게 해야하는지 궁금합니다. 또 트레이닝이 끝나고 실제 사용시 aux-loss를 제거해야하는데, tf.Check_numerics와 remove_training_nodes를 이용하는게 맞는지 알고싶습니다?

 

List of Articles
제목 글쓴이 날짜 조회 수sort
카톡 대화를 학습하는 AI 아바타 챗봇 - 레플리 file 깊은바다 2024-01-17 372
딥러닝을 이용한 사운드 생성 관련 질문 [2] NeuroWhAI 2019-02-03 198
딥러닝 관련질문드립니다!! [1] 코넬 2019-06-01 197
텍스트 전처리시 RAM 스펙 질문 [2] Nike 2021-02-03 195
딥러닝 어플리케이션을 쉽게 만들수있는 서비스 DLBuilder file DLBuilder 2020-11-20 194
간단하게 제가 접근해본 방법 공유합니다. [1] 맛동산 2018-11-13 194
데이터 라벨링 후 궁금증 [1] fex5360 2020-11-26 193
안녕하세요 이제 막 공부하기 시작한 학부생입니다. sk211 2021-01-16 192
챗봇 개발 관련 질문드립니다. [2] handle 2019-08-16 192
안녕하세요, 카카오 오픈빌더 응답관련 질문입니다. [2] 정진태 2019-05-27 192
오랜만에 버거킹에 갔는데 자동주문기계가 생겼네요 [1] 깊은바다 2017-04-24 192
웹 상에서 그래프 그리기 nari 2021-01-05 189
스타트업 관련 인공지능 머신러닝 궁금증 Kyle13 2020-11-10 189
순환신경망을 이용해서 자리 배치가 가능할까요? [3] RedLaboratory 2017-06-07 186
가입인사 드립니다. [1] 홍라이코스 2020-03-24 185
인셉션 모델(버전 1)의 학습이 진행되고 있습니다. file [1] 딥린이 2018-08-26 183