기계학습(Machine Learning, 머신러닝)과 딥러닝(Deep Learning)이 현재 이정도까지 수준까지 발전하기에는 수많은 사람들의 노력과 정교한 수학적 모델들이 계속 고도화되었으며 많은 사람들이 실제 프로젝트에 활용하면서 무엇이 어떤 상황에 좋고 나쁨을 피드백하거나 논문등으로 발표하기 때문일거라 생각한다. 머신러닝의 성능 개선법 머신러닝, 딥러닝의 성능을 좌우하는 녀석 중에 옵티마이저(Optimizer, 최적화)가 있는데 DB를 잘아는 사람들은 옵티마이저가 최소의 Cost로 결과를 찾아주는 것으로 알고 있을 것이다. 사실 DB와 머신러닝, 딥러닝에서 말하는 옵티마이저의 궁극적인 목적은 동일할 것이다. DB에서 최소의 코스트로 결과를 찾는 개념과 신경망의 모델이 실제 결과와 예측 결과의 차이를..
순환신경망(RNN)의 개념 순환신경망(Recurrent Neural Network, RNN)은 입력과 출력을 시퀀스(Sequence) 단위로 처리하는 모델이다. 여기서 시퀀스란 연관된 연속의 데이터를 의미하며, 시계열 데이터에 적합한 신경망 모델이라 할 수 있다. ex) 자연어 처리, 순서를 가지는 정보, 연속적인 시간 간격으로 배치된 데이터 심층 신경망(Deep Neural Network, DNN)의 경우 파라미터들이 모두 독립적이었으나, RNN의 파라미터들은 모두 공유하는 것이 특징이다. 장기 의존성 문제점 (Long-Term Dependency Problem) 일반적인 RNN의 경우 짧은 시퀀스를 처리할 경우 유리하며, 관련 정보와 그 정보를 사용하는 지점 사이 거리가 멀어지는 경우 학습 능력이 현..