딥러닝 연구를 하면서 누구나 하게되는 질문이 있습니다.

"어떻게 해야 정확도를 올릴 수 있을까??"


그에 대한 간단한 대답을 한번 정리해서 리스트를 만들어보았습니다.

기본적인 내용이지만, 저는 기본이 튼실하지 못한 탓인지 계속해서 기본을 되뇌이면서 발전을 하는 타입이더라구요!

저와 같은 분들은 조금이나마 연구에 도움이 되었으면 합니다.


이 글은 아래 링크를 많이 참고하였습니다.

https://machinelearningmastery.com/improve-deep-learning-performance/


분류

방법

설명

데이터

많은 데이터를 모아라

딥러닝은 데이터가 많을 수록 좋은 성능을 보이게 됩니다. 데이터를 더 구할 수 있는 방법을 찾아보세요. kaggle과 같은 사이트나, "open dataset"이라는 키워드로 검색하면 많은 데이터를 얻을 수 있습니다.

데이터를 생성하라

특정한 데이터에 과적합되지 않고 일반적인 특징을 학습시키기 위해서는 데이터를 생성해서 학습시켜야합니다. 일부러 데이터를 일그러뜨리는 등의 방식으로 데이터를 생성해서 일반적인 특징을 학습시키세요. data augmentation 또는 data generation이라는 키워드로 검색하면 데이터를 생성하는 방법을 공부하실 수 있습니다.

데이터를 rescale 하라

우리는 코끼리가 어떻게 생긴지 알려면 너무 가까이서 보면 안되고, 적당한 거리에서 보아야합니다. 이처럼 인공지능에게 데이터를 학습시킬 때, 항상 적당한 거리에서 데이터를 학습시키기 위해 데이터를 rescale 해야합니다.

이에 대한 기법으로는 데이터를 0~1로 normalize시키거나 -1~1로 rescale하는 방법 등이 있습니다.

데이터를 변형하라

지금까지 학습에 사용된 데이터 외에 다른 정보를 추가하거나 다른 방법으로 pre process 처리를 하는 등 데이터를 변형해보세요.

Feature selection

문제를 다르게 보라

딥러닝을 통해 풀어야하는 문제를 다르게 정의해보세요.

model을 sub problem을 여러개 풀도록 설계할 수도 있으며, 다른 방식으로 문제를 풀도록 설계할 수 있습니다.

분류

방법

설명

알고리즘

모니터링을 통해 분석하라

test data set과 train data set에서의 accuracy를 비교해보면 overfitting인지 underfitting인지 알 수 있습니다. test data set의 accuracy가 낮으면 overfitting 된 것이며, test와 train set에서 모두 성능이 좋지 못하면 underfitting한 것입니다. 모니터링을 통해 어떻게 전략을 세워야할지 결정하는데에 도움이 될 것입니다.

weight initialize 방법을 바꾸어라

initial weight value를 정규분포를 통해 만들어 낼 수도 있으며, pre train된 weight를 사용할 수도 있습니다.특히 최근에는 pre trained weight를 사용하여 learning time을 줄이고 성능은 높이는 방법을 많이 채택되고 있습니다.

learning rate/batch size를 조절하라

deep learning을 통해 general한 feature을 추출하기 위해서는 learning rate와 batch size를 조절해야합니다. 보통은 learning 초기에는 rate와 batch size를 크게 하며, learning 후반에는 rate와 batch size를 작게 합니다.

activation function을 적절히 선택하라

DNN의 output의 형태나 DNN의 특성에 따라 사용해야하는 activation function이 다릅니다.

자신의 model에 적절한 activation function을 적용해보세요.

ensemble을 이용하라

굳이 하나의 모델만을 선택할 필요는 없습니다. 여러가지 모델을 다양한 방법으로 ensemble 시킬 수 있습니다.

spot check algorithm


논문 참고하기

머신러닝을 통해 풀고자 하는 문제와 비슷한 문제를 풀어낸 논문 또는 자료가 있는지 참고해서 적용합니다.


공지사항 자동생성 자막

2018-10-22 16:06:41 자막 닫기
전체 관련글 전체관련글
  • **notoly's blog
    딥러닝 연구를 하면서 누구나 하게되는 질문이 있습니다. "어떻게 해야 정확도를 올릴 수... spot check algorithm 논문 참고하기 머신러닝을 통해 풀고자 하는 문제와 비슷한 문제를 풀어낸...
    20190326신고
  • **절 투자 연구소: 공포를 사고 탐욕을 팔아라
    더 정확도가 높아지는 알고리즘이었습니다. 그러나 딥러닝은 2006년 제프리 힌튼이 낸 논문에서... 그러나 인식률을 높이기 위해 단계별로 또는 convolutional 하게 진행됩니다. 1) 눈과 코, 입과 양쪽 귀 즉...
    20180507신고
  • **자동차그룹
    머신러닝(기계학습)이라고 합니다. 수많은 데이터를 학습해 사물을 군집하거나 분류하는 법을 익히는... 딥러닝의 정확도와 성능을 높이기 위해서는 어떻게 해야 할까요? 박 : 딥러닝의 정확도를 위해서는 두...
    20180503신고
  • **교육센터(www.bitacademy.com)
    연구팀은 단순촬영검사의 정확도를 높이기 위해 단순촬영검사에 딥러닝 알고리즘을 적용했습니다.... 머신러닝을 활용한 자율주행 개발자 양성과정 머신러닝을 활용한 자율주행 개발자 양성과정 교육기간...
    20190514신고
  • **lene
    그로 인해 딥러닝[Deep Learning]과 머신러닝[Machine Learning] 에 대해서도 관심이 증폭되었죠. 과연... 많은 양의 데이터가 있더라도 그것을 어떻게 딥러닝 기술로 활용할 것인지 ! 정확도를 높이기 위한...
    20180205신고
  • **털존 전자문서사업본부 메드서티
    선우준, 이경준 교수 연구팀은 이번 연구를 통해 단순촬영검사의 진단 정확도를 높이기 위해 딥러닝 알고리즘을 활용할 수 있다는 단초를 제시했다. (후략) 출처 : 메디게이트뉴스, 2019.05.13 "딥러닝...
    20190514신고
  • **섭의 Healthcare Innovation
    정확성을 높이기 위해, 병리과의 다양한 영역에서 이미지 인식 인공지능 기술이 접목 되어 왔다. 이... 여러 딥러닝 모델을 만들어서 시험해보았는데, 단순히 AUC 값을 기준으로 한다면 이 구글의 정확도는 0....
    20170824신고
  • **기자 박현의 취재수첩
    선우준·이경준 교수 연구팀은 이번 연구를 통해 단순촬영검사의 진단 정확도를 높이기 위해 딥러닝 알고리즘을 활용할 수 있다는 단초를 제시했다. 연구팀은 2003~2017년 분당서울대병원에서 부비동염이...
    20190513신고
  • **내가 낙천적이라 좋다
    ■ 머신러닝 인공지능 관련기술로 가장 주목을 받는 기술은 머신러닝입니다. '딥러닝', '신경망' 등의... 결국 딥 러닝은 정확도를 높이기 위한 기술입니다. 딥 러닝 기술은 새로운 것이 아닙니다. 그러나 최근에...
    20171025신고
  • **TLAB&Simulink
    딥러닝의 개념과 필수 기본 사항에 대해 블로그에서 여러 차례 소개드렸는데요. 딥러닝에... 베이지안 최적화를 통해 훈련 정확도 높이기 ■ 음성 인식을 위한 스펙트로그램 (spectrogram) 통합하기
    20180530신고
  • 83%남자
    17%여자
    1%10대
    12%20대
    29%30대
    32%40대
    20%50대
    6%60대
    통계정보는 댓글이 100개 이상 게시중일때 제공됩니다.
댓글 0