[Intel] 4주차 회고록

LHW·2023년 8월 4일
0

Intel교육과정

목록 보기
4/15

Intel AI for Future Workforce 4주차 회고록

RNN(순환 신경망)

  • RNN(Recurrent Neural Network) : 일반적인 피드 포워드 방식(입력층 ➡️ 출력층)의 구조와는 다르게, 이전 시점의 은닉층에서 활성화 된 결과를 출력층에도 보내되, 다음 시점의 은닉층에서 불러 사용하는 재귀적인 성질을 띠는 구조를 가진 신경망이다.

  • RNN의 문제점 : 시퀀스의 길이가 짧은 문제에 대해서만 효용적이다. 먼 이전 시점의 입력값이 뒷 시점으로 이동할수록 기억이 옅어져, 제대로 된 예측이 진행되지 않는 장기 의존성 문제가 발생한다. 이러한 단점을 고려하여 LSTM(Long-Short-Term-Memory), GRU(Gate-Recurrent-Unit)등의 모델이 고안되었다.

LSTM(Long Short Term Memory)

RNN의 장기 의존성 문제를 해결하기 위해 고안된 LSTM모델은 3가지의 게이트가 도입된 방식을 사용한다. 입력 값 형상의 경우 (데이터의 개수, 특성의 개수, 스텝 수) 로 구성된다.

  • Forget gate(망각 게이트) : 이전 시점의 출력값(현재 시점의 입력값)을 사용하는 비율을 결정하는 게이트이다. 시그모이드 함수로 활성화 되며, 0에 가까울수록 망각, 1에 가까울수록 온전하게 가져감을 의미한다.
  • Input gate(입력 게이트) : 입력값을 sigmoid or tanh 함수로 활성화 하여 입력하는 게이트이다. 이 과정에서 새로운 특징이 추출될 수 있다.
  • Output gate(출력 게이트) : 앞선 두 게이트를 거쳐 출력층과 다음 메모리 셀에 출력한다. 마찬가지로 sigmoid로 활성화 되어 출력값을 조절한다고 볼 수 있다.

내멋대로 진행해본 제주 태양광 발전량 예측 : https://github.com/LeeHeonWoo1/Intel/blob/master/RNN/solar_power_prediction.ipynb

YOLO

You Only Look Once의 약자로 객체 탐지 시스템을 얘기한다. 사용한 버전은 YoloV5이며, 내부 구조는 Backbone, neck, head로 구성된다.

  • Backbone : 입력되는 이미지들로부터 CSP-Darknet을 이용하여 특성맵을 추출한다. CSP-Darknet의 경우 연산량을 크게 줄여주고, 정확도 향상과 inference time을 줄여준다.

  • Head : 추출된 특성맵을 기반으로 물체의 위치를 찾는다.

Train with Custom Data

이미 시중에 나와있는 데이터가 아닌, 내가 원하는 물체들만 탐지할 수 있도록 커스텀 데이터를 기반으로 학습을 진행했다.

의류 종류 탐지하기 : https://github.com/LeeHeonWoo1/Intel/blob/master/TrainCustomData.ipynb

training flow

  • 하이버에서 이미지 수집
  • Roboflow에서 Annotating(Image Augmentation 적용, 총 900여 장의 이미지)
  • 학습된 가중치(yolov5n)를 기반으로 학습(yolov5m)
  • 임의의 데이터에 대한 탐지

마무리

벌써 교육을 시작한지 4주가 지났다. 이러다 보면 또 9월일테고 교육이 끝나겠지.. 시간 너무빨라

이번주는 특히나 좀 더 힘들었던 것 같다. CNN의 경우 연산 과정이 머릿속에 그려지다 보니까 이해하기 수월했는데 RNN의 경우는 감 잡는데 좀 걸렸던 듯 하다.

YOLO는 Annotating이 제일 귀찮긴 했는데 막상 완성하고 나서 보니까 뿌듯하긴 하지만 결과가 좋지 않았기에... 좀 더 독립적인 변수들로 구성해서 다시 도전해봐야 겠다

이번주도 알찬 일주일이었다 😊

profile
하루가 다르게 성장하기

0개의 댓글