KR101938829B1 - 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치 - Google Patents

해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치 Download PDF

Info

Publication number
KR101938829B1
KR101938829B1 KR1020180034099A KR20180034099A KR101938829B1 KR 101938829 B1 KR101938829 B1 KR 101938829B1 KR 1020180034099 A KR1020180034099 A KR 1020180034099A KR 20180034099 A KR20180034099 A KR 20180034099A KR 101938829 B1 KR101938829 B1 KR 101938829B1
Authority
KR
South Korea
Prior art keywords
data
neural network
learning
sea
occurrence
Prior art date
Application number
KR1020180034099A
Other languages
English (en)
Inventor
한진현
김국진
강영승
김현승
김영택
한정식
Original Assignee
대한민국(해양수산부 국립해양조사원)
주식회사 유에스티21
주식회사 전략해양
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 대한민국(해양수산부 국립해양조사원), 주식회사 유에스티21, 주식회사 전략해양 filed Critical 대한민국(해양수산부 국립해양조사원)
Priority to KR1020180034099A priority Critical patent/KR101938829B1/ko
Application granted granted Critical
Publication of KR101938829B1 publication Critical patent/KR101938829B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치가 제공된다. 해무의 발생을 예측하는 뉴럴 네트워크 학습 장치에 있어서, 적어도 하나의 프로그램이 저장된 메모리, 해무의 발생을 예측하는데 이용되는 데이터를 획득하는 통신부 및 적어도 하나의 프로그램을 실행함으로써 뉴럴 네트워크를 구동하는 프로세서를 포함한다.
프로세서는 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하고, 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 짙은해무 또는 보통해무로 구분된 전처리 데이터를 해무자료로 설정하고, 설정된 해무자료를 예측하려는 시간으로 소정의 시간만큼 시간이동한 후 해무의 발생을 예측하기 위한 초기학습을 수행하고, 초기학습을 통해 획득된 데이터의 중요도를 결정하고, 중요도가 낮은 것으로 결정된 획득된 데이터를 제거하여 해무자료를 재구성하며, 재구성된 해무자료를 이용하여 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시킬 수 있다.

Description

해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치 {METHOD AND APPARATUS FOR LEARNING NEURAL NETWORK TO PREDICT OCCURRENCE OF SEA FOG}
본 개시는 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치를 제공한다.
최근, 바다에서 생성되는 안개인 해무의 예측을 위한 관심이 높아지고 있으며 수치모델링, 통계분석 등을 이용한 해무 예측 연구가 활발하게 이루어지고 있다. 수치모델링을 이용한 해무예측방법은 해무가 발생할 조건의 계산식을 생성한 후 모델예측 자료를 계산식에 넣은 결과를 이용하는 방법이다. 통계분석 방법은 관측자료를 기반으로 통계적인 분석을 시행하여 통계값과 유사한 값이 발생하면 해무가 발생할 것으로 예측하는 방법이다.
그러나 해무의 발생원인은 매우 다양하고, 지역별 특성에 따른 편차가 매우 크며 아직 해무 발생원인 및 분류에 대한 기준이 명확한 수치로 제시되어 있는 것이 없다. 이로 인해 기존의 수치모델과 통계분석을 이용한 해무 예측 정확도는 높지 않은 편이다.
한편, 일반적으로 학습이라고 하는 것은 궁극적으로 각각의 목적에 맞는 학습데이터를 이용하여 내부 가중치를 결정하는 것으로 정의할 수 있다. 일반적으로 과거의 인공신경망은 컴퓨팅 파워 문제, 적절한 최적화 알고리즘 부재, 많은 양의 학습데이터 부재 등으로 인하여 내부 은닉층(hidden layer)을 많이 두지 못하고, 오히려 은닉층에서 뉴런의 개수를 증가시키는 방향으로 일부 발전해왔다. 그러나 최근에는 은닉층에서의 뉴런 개수도 중요하지만 오히려 은닉층의 개수를 증가시키는 것이 더 나은 성능을 갖는다는 연구결과가 나옴에 따라 심층신경망을 사용하는 추세로 점차 발전되고 있다. 일반적으로 정의에 따라서 달라질 수는 있지만, 은닉층의 개수가 1개인 것을 shallow 신경망, 그 이상인 것을 deep 신경망(딥러닝)으로 정의한다면, 최근에는 거의 대부분 딥러닝 형태를 취하고 있다.
이에 따라, 이와 같은 종래의 문제점을 해결하여 해무에 대한 예측성과를 높이고자 딥러닝(Deep learning) 중 심층신경망을 이용하여 해무를 예측할 수 있는 기술이 요구된다.
해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치를 제공하는데 있다. 또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다. 해결하려는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법에 있어서, 해무의 발생을 예측하는데 이용되는 데이터를 획득하는 단계; 상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 단계; 상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리 데이터를 해무자료로 설정하는 단계; 상기 설정된 해무자료에 대해, 해무의 발생을 예측하려는 시간으로 시간이동을 수행한 후 해무의 발생을 예측하기 위한 초기학습을 수행하는 단계; 상기 초기학습을 통해 상기 획득된 데이터의 중요도를 결정하고, 상기 중요도가 낮은 것으로 결정된 상기 획득된 데이터를 제거하여 상기 해무자료를 재구성하는 단계; 및 상기 재구성된 해무자료를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 단계;를 포함하는, 방법을 제공할 수 있다.
또한, 해무의 발생을 예측하는데 이용되는 상기 데이터는, 기온, 수온, 해기차(기온-수온), 풍향, 풍속, 강우량, 습도, 이슬점온도, 일사량, 일조량, 시정거리, 조위, 파고, 파향, 파주기, 미세먼지농도 중 적어도 하나에 관한 데이터를 포함하는 것인, 방법을 제공할 수 있다.
또한, 상기 획득된 데이터에서 이상 값을 제거한 후, 선형 보간법 및 역거리 가중치법을 적용하여 상기 획득된 데이터를 전처리하는 단계;를 포함하는 방법을 제공할 수 있다.
또한, 상기 해무자료에 오버샘플링(oversampling) 기법을 적용하여 상기 해무자료의 수를 증가시키는 단계;를 포함하는 방법을 제공할 수 있다.
또한, 상기 뉴럴 네터워크를 학습시킨 결과, 해무예측 정확도와 크로스 엔트로피의 변화를 분석하는 단계; 및 상기 분석 결과에 기초하여 시나리오를 선택하고, 상기 시나리오의 가중치 맵을 획득하는 단계;를 포함하는 방법을 제공할 수 있다.
또한, 상기 뉴럴 네트워크는 1차 뉴럴 네트워크 및 2차 뉴럴 네트워크로 구성되고, 상기 1차 뉴럴 네트워크는 상기 데이터를 제 1 입력 값으로 수신하여 상기 1차 뉴럴 네트워크의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출하고, 상기 2차 뉴럴 네트워크는 상기 제 1 출력 값 중에서 상기 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 상기 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출하는 것인, 방법을 제공할 수 있다.
본 개시의 제 2 측면은, 해무의 발생을 예측하는 뉴럴 네트워크 학습 장치에 있어서, 적어도 하나의 프로그램이 저장된 메모리; 해무의 발생을 예측하는데 이용되는 데이터를 획득하는 통신부; 및 상기 적어도 하나의 프로그램을 실행함으로써 뉴럴 네트워크를 구동하는 프로세서를 포함하고, 상기 프로세서는, 상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하고, 상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리 데이터를 해무자료로 설정하고,
상기 설정된 해무자료를, 예측하려는 시간으로 소정의 시간만큼 시간이동한 후 해무의 발생을 예측하기 위한 초기학습을 수행하고, 상기 초기학습을 통해 상기 획득된 데이터의 중요도를 결정하고, 상기 중요도가 낮은 것으로 결정된 상기 획득된 데이터를 제거하여 상기 해무자료를 재구성하며, 상기 재구성된 해무자료를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 프로세서;를 포함하는, 뉴럴 네트워크 학습 장치를 제공할 수 있다.
본 개시의 제 3 측면은, 뉴럴 네트워크 학습 장치가 이하의 단계들을 수행하도록 하는 기록매체에 저장된 어플리케이션으로서, 상기 단계들은: 해무의 발생을 예측하는데 이용되는 데이터를 획득하는 단계; 상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 단계; 상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리 데이터를 해무자료로 설정하는 단계; 상기 설정된 해무자료에 대해, 해무의 발생을 예측하려는 시간으로 시간이동을 수행한 후 해무의 발생을 예측하기 위한 초기학습을 수행하는 단계; 상기 초기학습을 통해 상기 획득된 데이터의 중요도를 결정하고, 상기 중요도가 낮은 것으로 결정된 상기 획득된 데이터를 제거하여 상기 해무자료를 재구성하는 단계; 및 상기 재구성된 해무자료를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 단계;를 포함하는, 어플리케이션을 포함할 수 있다.
본 개시의 제 4 측면은, 제 1 측면의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
도 1은 일 실시예에 따른 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법의 흐름도이다.
도 2는 일 실시예에 따른 딥 뉴럴 네트워크(Deep Neural Network, 이하 DNN)에서 수행되는 연산을 설명하는 도면이다.
도 3은 일 실시예에 따른 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 뉴럴 네트워크 가중치 분석 개념도이다.
도 5는 일 실시예에 따른 가중치 그래프의 예시시적인 도면이다.
도 6은 일 실시예에 따른 2중 뉴럴 네트워크 구조를 이용한 해무 예측 방법을 설명하기 위한 예시적인 도면이다.
도 7a 내지 도 7b는 일 실시예에 따른 해무예측 결과를 도시한 예시적인 도면이다.
도 8은 일 실시예에 따른 뉴럴 네트워크 장치의 블록도이다.
본 명세서에서 다양한 곳에 등장하는 "일부 실시예에서" 또는 "일 실시예에서" 등의 어구는 반드시 모두 동일한 실시예를 가리키는 것은 아니다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. “매커니즘”, “요소”, “수단” 및 “구성”등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 또한, 명세서에 기재된 “……부”, “……모듈” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법의 흐름도이다.
도 1을 참조하면, 단계 110에서 뉴럴 네트워크 장치는 해무의 발생을 예측하는데 이용되는 데이터를 획득할 수 있다.
해무 예측의 경우 해무 발생의 원인이 되는 주요 인자들이 있으나, 실제로 해무가 발생하는 데에는 지형적인 원인, 계절적 원인 등 복합적인 원인들이 작용할 수 있다.
일 실시예에서 해무 발생을 예측하는데 이용되는 데이터는, 기온, 수온, 해기차(기온-수온), 풍향, 풍속, 강우량, 습도, 이슬점온도, 일사량, 일조량, 시정거리, 조위, 파고, 파향, 파주기, 미세먼지농도 중 적어도 하나에 관한 데이터일 수 있다. 그러나, 해무 발생을 예측하는데 이용되는 데이터는 이에 제한되지 않는다.
단계 120에서 뉴럴 네트워크 장치는 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리할 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 획득된 데이터에서 이상 값들을 제거할 수 있다. 또한, 뉴럴 네트워크 장치는 획득된 데이터에 선형 보간법 및 역거리 가중치법을 적용함으로써 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리할 수 있다. 전처리 과정은 도 3에서 후술하기로 한다.
단계 130에서 뉴럴 네트워크 장치는 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 짙은해무 또는 보통해무로 구분된 전처리 데이터를 해무자료로 설정할 수 있다.
일 실시예에서, 전처리된 데이터를 시정거리가 500m 이하 짙은해무, 시정거리가 500~1000m인 보통해무, 또는 비해무 중 어느 하나로 구분할 수 있다. 전처리된 데이터 중에서 짙은해무 또는 보통해무로 구분된 데이터를 해무자료로 설정할 수 있다.
단계 140에서 뉴럴 네트워크 장치는 설정된 해무자료에 대해, 해무의 발생을 예측하려는 시간으로 시간이동을 수행한 후 해무의 발생을 예측하기 위한 초기학습을 수행할 수 있다.
뉴럴 네트워크 장치는 해무의 발생을 예측하기 위한 임의의 시간을 결정할 수 있다. 예를 들어, 임의의 시간은 현재로부터 3시간 후 또는 12시간 후로 결정될 수 있다. 이후, 뉴럴 네트워크 장치는 설정된 해무자료에 대해, 해무의 발생을 예측하려는 시간으로 소정의 시간만큼 시간이동을 수행할 수 있다. 뉴럴 네트워크 장치는 시간이동이 수행된 해무자료를 이용하여 초기학습을 수행할 수 있다.
한편, 일반적으로 해무자료와 비해무자료의 비율은 1:10 정도이므로, 해무자료의 수가 부족하여 획득된 해무자료만을 이용하여 뉴럴 네트워크를 학습하는 경우 학습효율이 떨어질 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 해무자료에 대해 오버샘플링 (oversampling) 기법을 적용하여 해무자료의 수를 증가시킬 수 있다. 뉴럴 네트워크 장치는 해무자료에 대해 오버샘플링 기법을 적용하여 해무자료의 수를 2배~5배로 증가시킨 후, 증가된 해무자료를 이용하여 초기학습을 수행할 수 있다.
단계 150에서 뉴럴 네트워크 장치는 초기학습을 통해 획득된 데이터의 중요도를 결정할 수 있다.
뉴럴 네트워크 장치는 초기학습을 통해 획득된 데이터의 중요도를 결정하고, 중요도가 낮은 것으로 결정된 데이터를 제거하여 해무자료를 재구성할 수 있다. 중요도가 낮은 것으로 결정된 데이터는 해무예측 결과를 오염시킬 수 있으므로 이들을 제거하여 해무예측 정확도를 높일 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 초기학습을 통해 획득된 데이터의 중요도를 결정하기 위해 가중치 분석을 수행할 수 있다. 가중치 분석 방법은 도4 내지 도 5에서 후술하기로 한다.
단계 160에서 뉴럴 네트워크 장치는 재구성된 해무자료를 이용하여, 해무의 발생을 예측하도록 뉴럴 네트워크를 학습할 수 있다.
일 실시예에서 뉴럴 네트워크는 해무/비해무와 보통해무/짙은해무 등의 2중 구조로 설계됨으로써, 뉴럴 네트워크를 학습시키기에 해무자료가 부족하더라도 보다 정확한 해무예측 결과가 산출되도록 할 수 있다.
예를 들어, 1차 뉴럴 네트워크 및 2차 뉴럴 네트워크로 구성될 수 있다. 1차 뉴럴 네트워크는 해무의 발생을 예측하는데 이용되는 데이터를 제 1 입력 값으로 수신하여 1차 뉴럴 네트워크의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출할 수 있다. 또한, 2차 뉴럴 네트워크는 제 1 출력 값 중에서 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출할 수 있다.
도 2는 일 실시예에 따른 딥 뉴럴 네트워크(Deep Neural Network, 이하 DNN)에서 수행되는 연산을 설명하는 도면이다.
도 2를 참조하면, DNN은 입력 레이어, 히든 레이어들 및 출력 레이어를 포함하는 구조를 가지며, 수신되는 입력 데이터(예를 들어,
Figure 112018029479172-pat00001
Figure 112018029479172-pat00002
)를 기초로 연산을 수행하고, 수행 결과를 기초로 출력 데이터(예를 들어,
Figure 112018029479172-pat00003
Figure 112018029479172-pat00004
)를 생성할 수 있다.
예를 들어, 도 2에 도시된 바와 같이, DNN은 입력 레이어(Layer 1), 2개의 히든 레이어들(Layer 2 및 Layer 3) 및 출력 레이어(Layer 4)를 포함할 수 있다. DNN은 유효한 정보를 처리할 수 있는 보다 많은 레이어들을 포함하므로, DNN은 싱글 레이어를 갖는 뉴럴 네트워크보다 복잡한 데이터 집합들을 처리할 수 있다. 한편, DNN은 4개의 레이어들을 포함하는 것으로 도시되어 있으나, 이는 예시에 불과할 뿐 DNN은 더 적거나 많은 레이어들을 포함하거나, 더 적거나 많은 채널들을 포함할 수 있다. 즉, DNN은 도 2에 도시된 것과는 다른, 다양한 구조의 레이어들을 포함할 수 있다.
DNN에 포함된 레이어들 각각은 복수의 채널들을 포함할 수 있다. 채널은 뉴런(neuron), 프로세싱 엘리먼트(Processing element, PE), 유닛(unit) 또는 이와 유사한 용어들로 알려진, 복수의 인공 노드(artificial node)들에 해당될 수 있다. 예를 들어, 도 2에 도시된 바와 같이, Layer 1은 2개의 채널들(노드들), Layer 2 및 Layer 3 각각은 3개의 채널들을 포함할 수 있다. 다만, 이는 예시에 불과할 뿐 DNN에 포함된 레이어들 각각은 다양한 개수의 채널들(노드들)을 포함할 수 있다.
DNN의 레이어들 각각에 포함된 채널들은 서로 연결되어 데이터를 처리할 수 있다. 예를 들어, 하나의 채널은 다른 채널들로부터 데이터를 수신하여 연산할 수 있고, 연산 결과를 또 다른 채널들로 출력할 수 있다.
채널들 각각의 입력 및 출력 각각은 입력 액티베이션 및 출력 액티베이션이라고 지칭될 수 있다. 즉, 액티베이션은 한 채널의 출력임과 동시에, 다음 레이어에 포함된 채널들의 입력에 해당되는 파라미터일 수 있다. 한편, 채널들 각각은 이전 레이어에 포함된 채널들로부터 수신된 액티베이션들 및 웨이트들에 기초하여 자신의 액티베이션을 결정할 수 있다. 웨이트는 각 채널에서의 출력 액티베이션을 계산하기 위해 이용되는 파라미터로서, 채널들 간의 연결관계에 할당되는 값일 수 있다.
채널들 각각은 입력을 수신하여 출력 액티베이션을 출력하는 연산 유닛(computational unit) 또는 프로세싱 엘리먼트(processing element)에 의해 처리될 수 있고, 채널들 각각의 입력-출력은 매핑될 수 있다. 예를 들어,
Figure 112018029479172-pat00005
는 액티베이션 함수(activation function)이고,
Figure 112018029479172-pat00006
는 (i-1) 번째 레이어에 포함된 k 번째 채널로부터 i 번째 레이어에 포함된 j번째 채널로의 웨이트며,
Figure 112018029479172-pat00007
는 i 번째 레이어에 포함된 j 번째 채널의 바이어스(bias)이고,
Figure 112018029479172-pat00008
는 i 번째 레이어의 j 번째 채널의 액티베이션이라고 할 때, 액티베이션
Figure 112018029479172-pat00009
는 다음과 같은 수학식 1을 이용하여 계산될 수 있다.
Figure 112018029479172-pat00010
도 2에 도시된 바와 같이, 2번째 레이어(Layer 2)의 첫 번째 채널(CH 1)의 액티베이션은
Figure 112018029479172-pat00011
로 표현될 수 있다. 또한,
Figure 112018029479172-pat00012
은 수학식 1에 따라
Figure 112018029479172-pat00013
의 값을 가질 수 있다. 다만, 앞서 설명한 수학식 1은 DNN에서 데이터를 처리하기 위해 이용되는 액티베이션 및 웨이트를 설명하기 위한 예시일 뿐, 이에 제한되지 않는다. 액티베이션은 이전 레이어로부터 수신된 액티베이션들의 합(sum)에 액티베이션 함수를 적용한 값을 Rectified Linear Unit (ReLU)을 통과시킴으로써 획득된 값일 수 있다.
일 실시예에서, DNN은, 표현자 및 물성 값을 이용한 학습을 통해, 표현자와 물성 간의 관계를 규정하는 인자를 결정할 수 있다. 즉, DNN을 구성하는 Layer 1 내지 Layer 4 중에서, 표현자는 입력 레이어인 Layer 1이 되고, 물성 값은 출력 레이어인 Layer 4가 되며, 인자는 적어도 하나의 히든 레이어(Layer 2 및/또는 Layer 3)이 될 수 있다.
DNN에서는 입력 레이어에서 해무의 발생을 예측하는데 이용되는 데이터를 입력 데이터로 이용하여 연산을 수행하고, 연산 수행 결과를 기초로 해무의 발생을 예측할 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 Tensorflow을 이용하여 Python 언어 기반 DNN 학습모듈을 구성하고, 이를 학습자료 세트와 해무자료에 적용할 수 있다.
DNN은 계층을 많이 쌓을수록, 더 나은 인식 성능을 보이는 경향이 있다. 하지만 복잡한 계층과 많은 수의 뉴런을 학습하기 위해서는 충분한 학습 데이터가 필요하다. 충분하지 않은 학습 데이터로 학습된 모델은 인식성능에 있어서 불안전한 특성을 보이며, 특정 입력 데이터에서는 상당히 나쁜 인식성능을 보일 수도 있다. 따라서 현재에 확보된 데이터를 충분히 활용할 수 있는 적절한 뉴럴 네트워크 구조를 파악해야 하며, 향후 학습 데이터의 누적으로 그 수가 점차 증가하면, 새로운 뉴럴 네트워크 구조를 설계하여 새로운 모델을 획득하는 것이 적절하기 때문에 히든 레이어의 구조나 하이퍼 파라미터를 제시하지 않을 수 있다.
다양한 종류의 관측자료를 이용함으로써, 궁극적으로 사람이 파악하지 못한 데이터 및 매개변수 간의 상관관계를 딥러닝 학습을 통하여 밝히고, 해무의 발생 원리 및 주요한 인자를 파악할 수 있다.
도 3은 일 실시예에 따른 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 방법을 설명하기 위한 도면이다.
도 3을 참조하면, 전처리 과정은 복수의 품질처리(QC) 단계를 포함할 수 있다.
1차 QC 단계(310)에서, 뉴럴 네트워크 장치는 획득된 데이터에서 이상 값들을 제거할 수 있다. 뉴럴 네트워크 장치는 획득된 데이터들 중에서, 프로그램에 기설정된 관측범위 및 기설정된 측정범위를 벗어나는 데이터를 이상 값으로 결정하고, 이들을 제거할 수 있다.
2차 QC 단계(320)에서, 뉴럴 네트워크 장치는 데이터들을 그림으로 도시하여 사용자가 이상 값들을 판단하도록 할 수 있다. 사용자는 도시된 그림에 기초하여 추가적으로 검출된 이상 값들을 갖는 데이터들을 제거할 수 있다.
3차 QC 단계(330)에서, 뉴럴 네트워크 장치는 데이터들을 이동평균(moving average)하여, 이동평균 값과 편차가 3σ 이상 벗어나는 데이터들을 제거할 수 있다.
보간 단계(340)에서, 뉴럴 네트워크 장치는 데이터들에 대해 선형 보간법(linear interpolation)을 적용할 수 있다. 선형 보간법이란 두 개의 점이 주어졌을 때, 두 점을 지나는 함수를 직선의 방정식으로 구하여 보간하는 방법이다.
일 실시예에서 뉴럴 네트워크 장치는 획득 시간 간격이 1시간 이내인 데이터들에 대해 선형 보간법을 적용할 수 있다. 선형 보간법을 적용함으로써 데이터들 간의 획득 시간(또는 관측 시간) 간격을 통일시킬 수 있다.
통합자료 생성 단계(350)에서, 뉴럴 네트워크 장치는 데이터들에 대해 역거리 가중치법(inverse distance weighting method)을 적용할 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 1차 내지 3차 QC 단계(310, 320 및 330)와 보간 단계(340)를 거친 데이터들(관측항별 자료들)에 대해 역거리 가중치법을 적용하여 딥러닝 학습을 위한 통합자료를 생성할 수 있다.
통합자료 QC(360)에서, 뉴럴 네트워크 장치는 통합자료를 그림으로 도시하여 사용자가 한 번 더 판단하도록 할 수 있다.
뉴럴 네트워크 장치는 통합자료 각각에 포함된 정보에 기초하여, 통합자료 각각을 시정거리가 500m 이하 짙은해무, 시정거리가 500~1000m인 보통해무, 또는 비해무 중 어느 하나로 구분할 수 있다. 통합자료 중에서 짙은해무 또는 보통해무로 구분된 통합자료는 해무자료로 설정할 수 있다.
또한, 뉴럴 네트워크 장치는 획득된 데이터들에 대해 정규화(regulation) 기법을 적용할 수 있다. 뉴럴 네트워크 장치는 아래의 수학식 2에 따라, 획득된 데이터들에 대해 Zero mean 기반의 정규화를 수행할 수 있다.
Figure 112018029479172-pat00014
수학식 1에서 x'는 정규화된 값이고, x는 관측자료이다. 정규화 방법에는 배치 정규화(Batch Regulation), 가중치 정규화(Weight Regulation) 및 층 정규화(Layer Regulation) 방법이 있으나, 이에 제한되지 않는다.
한편, 전처리 과정은 상술된 순서로 수행되거나, 전처리 과정 중 일부가 생략되거나, 전처리 과정의 순서가 변경될 수 있다.
도 4는 일 실시예에 따른 뉴럴 네트워크 가중치 분석 개념도이다.
뉴럴 네트워크를 학습하는 단계에서, 뉴럴 네트워크의 입력값(x)이 뉴럴 네트워크의 가중치(W)와 곱하고 더해지는 과정이 반복됨으로써 출력값(y)이 산출된다. 산출된 출력값(y)이 원하는 출력값(o)과 다를 경우, 뉴럴 네트워크 장치는 역전파 알고리즘(Back-propagation)을 이용하여 산출된 출력값(y)과 원하는 출력값(o) 간의 오차(e=y-o)에 비례하여 가중치를 갱신한다. 뉴럴 네트워크 장치는 가중치의 중첩을 이용하여, 각각의 입력값(x) 항목에 대한 참 결과값(o)에 영향을 주는 기여도를 산출한다.
도 4를 참조하면, X, P, Q, R, Y는 층(layer)이며, W는 가중치, b는 바이어스를 나타낸다. 해무예측을 위해 사용된 DNN은 수학적으로 입력과 출력(클래스)의 다차원 함수로 표현될 수 있다. 다차원 함수를 구성하는 요소는 각 층의 가중치(weight)와 바이어스(bias)로 이루어져 있으며, 최종적인 다차원 함수는 각 층의 가중치의 순차적인 곱과 가중치, 바이어스의 곱과 합으로 계산된 상수항으로 표현 가능하다. 이때 입력자료의 가중치에 관련된 항은 가중치의 미분방정식의 chain rule처럼 순차적인 곱이기 때문에 이 값을 이용하면 입력항목에 대한 가중치를 계산할 수 있다.
도 5는 일 실시예에 따른 가중치 그래프의 예시시적인 도면이다.
일 실시예에서 뉴럴 네트워크 장치는 데이터들에 대해 해무 발생을 예측하려는 시간으로 시간이동을 수행하고, 오버샘플링 기법을 적용하며, 뉴럴 네트워크를 구성하는 은닉층 및 하이퍼 파라미터를 설정함으로써, 해무예측 시나리오를 구성할 수 있다. 구성된 해무예측 시나리오에 따라 초기 학습이 수행되면 도 5에 도시된 바와 같이, 학습 데이터(예를 들어, 일사량, 해기차, 풍속 등) 각각에 대한 가중치 그래프를 얻을 수 있다. 뉴럴 네트워크 장치는 가중치 그래프를 이용하여 각 시나리오에 대응되는 가중치 맵을 생성할 수 있다.
가중치 맵이란 인공신경망을 구성하는 복수의 레이어(layer)들 중에서 입력 레이어 및 출력 레이어를 제외한 나머지 레이어(즉, 히든 레이어)를 나타낼 수 있다. 히든 레이어의 각 노드에 대응되는 가중치(weight)가 학습이 수행될 때마다 업데이트되어서 최종적인 가중치 맵이 생성될 수 있다.
뉴럴 네트워크 장치는 복수의 시나리오들 중에서, 학습 정확도(해무예측 정확도)와 크로스 엔트로피 분석을 이용하여 안정적인 성능을 나타내는 시나리오를 선택할 수 있다. 뉴럴 네트워크 장치는 선택된 시나리오를 구성하는 학습 데이터의 중요도를 분석함으로써, 최종적으로 해무의 발생을 예측하도록 뉴럴 네트워크를 학습시키는 이용될 학습 데이터를 선정할 수 있다. 즉, 뉴럴 네트워크 장치는 학습 데이터의 중요도 분석 결과에 기초하여 시나리오를 선택하고, 선택된 시나리오의 가중치 맵을 획득할 수 있다.
일 실시예에서 뉴럴 네트워크 장치는 중요도가 낮은 학습 데이터(예를 들어, 가중치가 0에 수렴하는 학습 데이터)를 제외함으로써 학습 데이터를 재구성하고, 재구성된 학습 데이터를 이용하여 뉴럴 네트워크를 학습시킬 수 있다.
도 6은 일 실시예에 따른 2중 뉴럴 네트워크 구조를 이용한 해무 예측 방법을 설명하기 위한 예시적인 도면이다.
뉴럴 네트워크는 해무/비해무와 보통해무/짙은해무 등의 2중 구조로 설계됨으로써, 뉴럴 네트워크를 학습시키기에 해무자료가 부족하더라도 보다 정확한 해무예측 결과가 산출되도록 할 수 있다.
일 실시예에서, 뉴럴 네트워크는 1차 뉴럴 네트워크(610) 및 2차 뉴럴 네트워크(620)로 구성될 수 있다. 1차 뉴럴 네트워크(610)는 해무의 발생을 예측하는데 이용되는 데이터를 제 1 입력 값으로 수신하여 1차 뉴럴 네트워크(610)의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출할 수 있다.
또한, 2차 뉴럴 네트워크(620)는 제 1 출력 값 중에서 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출할 수 있다.
이와 같이, 뉴럴 네트워크가 해무/비해무와 보통해무/짙은해무 등의 2중 구조로 설계됨으로써, 해무 상태에 대한 참값의 수를 상대적으로 증가시킬 수 있다.
도 7a 내지 도 7b는 일 실시예에 따른 해무예측 결과를 도시한 예시적인 도면이다.
도 7a를 참조하면, 시나리오 학습에 대한 해무예측 정확도 및 크로스 엔트로피 변화 그래프가 도시된다. 도 7a의 x축은 학습 횟수를 나타낸다. 일반적으로 인공신경망은 10~100000번 반복학습을 실시하며, 학습이 진행됨에 따라 정확도나 크로스 엔트로피가 안정화되는 경향이 있다.
뉴럴 네트워크 장치는 각 시나리오 별로 수행한 해무예측 정확도와 크로스 엔트로피의 변화를 분석하여 성능이 우수한 시나리오를 선별하고 그 시나리오의 가중치 맵을 정리할 수 있다.
뉴럴 네트워크 장치는 해무예측 결과를 실시간으로 서비스하기 위해 국립해양조사원 혹은 기상청에서 제공하는 해무 관련 자료를 수집할 수 있다. 앞서 가중치맵 분석을 통하여 선별된 시나리오 학습에 필요한 해무 관련 자료를 수집할 수 있도록 공문요청 및 자료의 QC가 실시될 수 있다.
뉴럴 네트워크 장치는 해무예측을 올바르게 수행하기 위하여 각각의 실시간 해무관련 자료에 대하여 정규화를 수행할 수 있다.
도 7b를 참조하면, 해무예측 결과를 제공하는 서비스 화면의 예시가 도시된다.
일 실시예에서, 현재시간 정보(710), 해무예측 시간 정보(720a, 720b), 해무예측 확률(730a, 730b), 보통해무/짙은해무에 대한 비율(740a, 740b) 및 관측항 정보(750a, 750b) 등의 정보가 해무예측 결과를 제공 받는 디바이스의 화면에 표시될 수 있다.
도 7b의 정보는 아래 표 1에 기재된 수치에 기초한 정보이다.
Obs. ID Observation time Prediction time Seafog Thin
seafog
Thick
seafog
해운대 2017-12-06 14:00 2017-12-06 17:00 0 0 0
해운대 2017-12-06 14:00 2017-12-06 20:00 60 0 100
해운대 2017-12-06 14:00 2017-12-07 02:00 0 100 0
인천항 2017-12-06 14:00 2017-12-06 17:00 0 0 0
인천항 2017-12-06 14:00 2017-12-06 20:00 80 13 87
인천항 2017-12-06 14:00 2017-12-07 02:00 0 0 0
도 8은 일 실시예에 따른 뉴럴 네트워크 장치의 블록도이다.
뉴럴 네트워크 장치(800)는 PC(personal computer), 서버 디바이스, 모바일 디바이스, 임베디드 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있고, 구체적인 예로서 뉴럴 네트워크를 이용한 음성 인식, 영상 인식, 영상 분류 등을 수행하는 스마트폰, 태블릿 디바이스 등에 해당될 수 있으나, 이에 제한되지 않는다. 나아가서, 뉴럴 네트워크 장치(800)는 위와 같은 디바이스에 탑재되는 전용 하드웨어 가속기(HW accelerator)에 해당될 수 있고, 뉴럴 네트워크 장치(800)는 뉴럴 네트워크 구동을 위한 전용 모듈인 NPU(neural processing unit), TPU(Tensor Processing Unit), Neural Engine 등과 같은 하드웨어 가속기일 수 있으나, 이에 제한되지 않는다.
도 8을 참조하면, 뉴럴 네트워크 장치(800)는 프로세서(810), 메모리(820) 및 통신부(830)를 포함한다. 도 8에 도시된 뉴럴 네트워크 장치(800)에는 본 실시예들와 관련된 구성요소들만이 도시되어 있다. 따라서, 뉴럴 네트워크 장치(800)에는 도 8에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다.
프로세서(810)는 뉴럴 네트워크 장치(800)를 실행하기 위한 전반적인 기능들을 제어하는 역할을 한다. 프로세서(810)는 도 1 내지 도 7에서 상술한 해무의 발생을 예측하는 뉴럴 네트워크 학습시키기 위한 일련의 프로세스를 제어할 수 있다. 예를 들어, 프로세서(810)는 뉴럴 네트워크 장치(800) 내의 메모리(820)에 저장된 프로그램들을 실행함으로써, 뉴럴 네트워크 장치(800)를 전반적으로 제어한다. 프로세서(810)는 뉴럴 네트워크 장치(800) 내에 구비된 CPU(central processing unit), GPU(graphics processing unit), AP(application processor) 등으로 구현될 수 있으나, 이에 제한되지 않는다.
메모리(820)는 뉴럴 네트워크 장치(800) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 예를 들어, 메모리(820)는 뉴럴 네트워크 장치(8000)에서 처리된 데이터들 및 처리될 데이터들을 저장할 수 있다. 또한, 메모리(820)는 뉴럴 네트워크 장치(800)에 의해 구동될 애플리케이션들, 드라이버들 등을 저장할 수 있다. 메모리(820)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
통신부(830)는 근거리 통신부, 이동 통신부, 방송 수신부를 포함할 수 있다. 통신부(830)는 해무의 발생을 예측하는데 이용되는 데이터를 수신할 수 있다. 일 실시예에서 통신부(830)는 외부 서버로부터 기온, 수온, 해기차(기온-수온), 풍향, 풍속, 강우량, 습도, 이슬점온도, 일사량, 일조량, 시정거리, 조위, 파고, 파향, 파주기, 미세먼지농도 중 적어도 하나에 관한 데이터를 수신할 수 있다.
프로세서(810)는 메모리(820)로부터 뉴럴 네트워크 데이터(학습 데이터)를 리드/라이트(read/write)하고, 리드/라이트된 데이터를 이용하여 뉴럴 네트워크를 실행한다.
프로세서(810)는 통신부(830)에서 획득한 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하고, 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여 짙은해무 또는 보통해무로 구분된 전처리 데이터를 해무자료로 설정할 수 있다. 프로세서(810)는 설정된 해무자료를, 예측하려는 시간으로 소정의 시간만큼 시간이동한 후 해무의 발생을 예측하기 위한 초기학습을 수행하고, 초기학습을 통해 상기 획득된 데이터의 중요도를 결정할 수 있다. 프로세서(810)는 중요도가 낮은 것으로 결정된 획득된 데이터를 제거하여 해무자료를 재구성하며, 재구성된 해무자료를 이용하여 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시킬 수 있다.
본 실시예들은 전자 디바이스에 의해 실행 가능한 명령어 및 데이터를 저장하는 전자 디바이스로 읽을 수 있는 기록매체에 저장된 어플리케이션의 형태로 구현될 수 있다. 상기 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 상기 명령어는 프로세서에 의해 실행되었을 때, 개시된 실시예들의 소정의 동작들을 수행할 수 있다.
본 실시예들은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈과 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
또한, 본 명세서에서, “부”는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.
전술한 본 명세서의 설명은 예시를 위한 것이며, 본 명세서의 내용이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 실시예의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 포함되는 것으로 해석되어야 한다.

Claims (7)

  1. 적어도 하나의 프로세서를 포함하는 뉴럴 네트워크 학습 장치에서 해무의 발생을 예측하는 방법에 있어서,
    상기 적어도 하나의 프로세서에 의해, 해무의 발생을 예측하는데 이용되는 데이터를 획득하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리된 데이터를 학습 데이터로 설정하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 학습 데이터에 대해 해무의 발생을 예측하려는 시간으로 시간이동을 수행한 후 해무의 발생을 예측하기 위한 초기학습을 수행하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 초기학습 결과에 기초하여 상기 학습 데이터의 중요도를 결정하고, 상기 중요도가 낮은 것으로 결정된 상기 학습 데이터 중 일부 학습 데이터를 제거함으로써 상기 학습 데이터를 재구성하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 상기 재구성된 학습 데이터를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 단계;
    를 포함하고,
    상기 뉴럴 네트워크는 1차 뉴럴 네트워크 및 2차 뉴럴 네트워크로 구성되고,
    상기 1차 뉴럴 네트워크는 상기 데이터를 제 1 입력 값으로 수신하여 상기 1차 뉴럴 네트워크의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출하고,
    상기 2차 뉴럴 네트워크는 상기 제 1 출력 값 중에서 상기 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 상기 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출하는 것인, 방법.
  2. 제 1항에 있어서,
    해무의 발생을 예측하는데 이용되는 상기 데이터는, 기온, 수온, 해기차(기온-수온), 풍향, 풍속, 강우량, 습도, 이슬점온도, 일사량, 일조량, 시정거리, 조위, 파고, 파향, 파주기, 미세먼지농도 중 적어도 하나에 관한 데이터를 포함하는 것인, 방법.
  3. 제 1항에 있어서,
    상기 전처리하는 단계는,
    상기 적어도 하나의 프로세서에 의해 상기 획득된 데이터에서 이상 값을 제거한 후, 선형 보간법 및 역거리 가중치법을 적용하여 상기 획득된 데이터를 전처리하는 단계;
    를 포함하는, 방법.
  4. 제 1항에 있어서,
    상기 전처리된 데이터를 학습 데이터로 설정하는 단계는,
    상기 적어도 하나의 프로세서에 의해 상기 학습 데이터에 오버샘플링(oversampling) 기법을 적용하여 상기 학습 데이터의 수를 증가시키는 단계;
    를 포함하는, 방법.
  5. 삭제
  6. 해무의 발생을 예측하는 뉴럴 네트워크 학습 장치에 있어서,
    적어도 하나의 프로그램이 저장된 메모리;
    해무의 발생을 예측하는데 이용되는 데이터를 획득하는 통신부; 및
    상기 적어도 하나의 프로그램을 실행함으로써 뉴럴 네트워크를 구동하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하고,
    상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리된 데이터를 학습 데이터로 설정하고,
    상기 학습 데이터를, 예측하려는 시간으로 소정의 시간만큼 시간이동한 후 해무의 발생을 예측하기 위한 초기학습을 수행하고,
    상기 초기학습 결과에 기초하여 상기 학습 데이터의 중요도를 결정하고,
    상기 중요도가 낮은 것으로 결정된 상기 학습 데이터 중 일부 학습 데이터를 제거함으로써 상기 학습 데이터를 재구성하며,
    상기 재구성된 학습 데이터를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 프로세서;
    를 포함하고,
    상기 뉴럴 네트워크는 1차 뉴럴 네트워크 및 2차 뉴럴 네트워크로 구성되고,
    상기 프로세서는, 상기 1차 뉴럴 네트워크는 상기 데이터를 제 1 입력 값으로 수신하여 상기 1차 뉴럴 네트워크의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출하고,
    상기 2차 뉴럴 네트워크는 상기 제 1 출력 값 중에서 상기 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 상기 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출하는 것인, 뉴럴 네트워크 학습 장치.
  7. 뉴럴 네트워크 학습 장치가 이하의 단계들을 수행하도록 하는 기록매체에 저장된 어플리케이션으로서, 상기 단계들은:
    해무의 발생을 예측하는데 이용되는 데이터를 획득하는 단계;
    상기 획득된 데이터를 딥러닝 학습에 이용될 수 있도록 전처리하는 단계;
    상기 전처리된 데이터를 짙은해무, 보통해무 또는 비해무 중 어느 하나로 구분하여, 상기 짙은해무 또는 상기 보통해무로 구분된 상기 전처리된 데이터를 학습 데이터로 설정하는 단계;
    상기 학습 데이터에 대해, 해무의 발생을 예측하려는 시간으로 시간이동을 수행한 후 해무의 발생을 예측하기 위한 초기학습을 수행하는 단계;
    상기 초기학습 결과에 기초하여 상기 학습 데이터의 중요도를 결정하고, 상기 중요도가 낮은 것으로 결정된 상기 학습 데이터 중 일부 학습 데이터를 제거함으로써 상기 학습 데이터를 재구성하는 단계; 및
    상기 재구성된 학습 데이터를 이용하여, 해무의 발생을 예측하도록 상기 뉴럴 네트워크를 학습시키는 단계;
    를 포함하고,
    상기 뉴럴 네트워크는 1차 뉴럴 네트워크 및 2차 뉴럴 네트워크로 구성되고,
    상기 1차 뉴럴 네트워크는 상기 데이터를 제 1 입력 값으로 수신하여 상기 1차 뉴럴 네트워크의 학습 결과로서 해무 상태 또는 비해무 상태를 제 1 출력 값으로 산출하고,
    상기 2차 뉴럴 네트워크는 상기 제 1 출력 값 중에서 상기 해무 상태를 나타내는 값을 제 2 입력 값으로 수신하여 상기 2차 뉴럴 네트워크의 학습 결과로서 짙은해무 상태 또는 보통해무 상태를 제 2 출력 값으로 산출하는 것인, 어플리케이션.
KR1020180034099A 2018-03-23 2018-03-23 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치 KR101938829B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180034099A KR101938829B1 (ko) 2018-03-23 2018-03-23 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180034099A KR101938829B1 (ko) 2018-03-23 2018-03-23 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101938829B1 true KR101938829B1 (ko) 2019-01-16

Family

ID=65280884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180034099A KR101938829B1 (ko) 2018-03-23 2018-03-23 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101938829B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102063358B1 (ko) * 2019-10-22 2020-03-02 (주)한국해양기상기술 고해상도 기상기후데이터를 생성하기 위한 학습 방법 및 테스트 방법, 이를 이용한 테스트 방법 및 테스트 장치
KR102122168B1 (ko) * 2020-01-08 2020-06-11 (주)유에스티21 해무 소산 예측 모델 학습 방법 선택 장치, 해무 소산 예측 모델 학습 방법 선택 방법, 해무 소산 예측 장치 및 해무 소산 예측 방법
CN112268312A (zh) * 2020-10-23 2021-01-26 哈尔滨派立仪器仪表有限公司 一种基于深度学习的智慧供热管理系统
KR102220748B1 (ko) * 2019-12-17 2021-02-26 (주)지오시스템리서치 딥러닝을 이용한 수온시계열 예측자료의 미래시점 자료동화를 통한 해양예측 시스템
KR102248963B1 (ko) * 2020-06-23 2021-05-06 세종대학교산학협력단 해무 예측 방법 및 그 장치
CN114511061A (zh) * 2021-12-29 2022-05-17 青岛市气象台 基于深度神经网络的岸滨地区海雾能见度预报方法
CN114791637A (zh) * 2021-01-26 2022-07-26 厦门龙辉芯物联网科技有限公司 一种海雾测报方法及系统
KR102460705B1 (ko) * 2021-08-31 2022-11-03 (주)유에스티21 인공지능을 기반으로 하는 촬영영상을 이용한 해무 판별 방법 및 그 장치
KR20230088146A (ko) 2021-12-10 2023-06-19 한국해양과학기술원 일기도 기반의 해무 예측 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Culclasure, Andrew. "Using neural networks to provide local weather forecasts.", Georgia Southern University, 2013.* *
Fabbian, Dustin, Richard de Dear, and Stephen Lellyett. "Application of artificial neural network forecasts to predict fog at Canberra International Airport." Weather and forecasting 22.2, 2007.* *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102063358B1 (ko) * 2019-10-22 2020-03-02 (주)한국해양기상기술 고해상도 기상기후데이터를 생성하기 위한 학습 방법 및 테스트 방법, 이를 이용한 테스트 방법 및 테스트 장치
KR102220748B1 (ko) * 2019-12-17 2021-02-26 (주)지오시스템리서치 딥러닝을 이용한 수온시계열 예측자료의 미래시점 자료동화를 통한 해양예측 시스템
KR102122168B1 (ko) * 2020-01-08 2020-06-11 (주)유에스티21 해무 소산 예측 모델 학습 방법 선택 장치, 해무 소산 예측 모델 학습 방법 선택 방법, 해무 소산 예측 장치 및 해무 소산 예측 방법
KR102248963B1 (ko) * 2020-06-23 2021-05-06 세종대학교산학협력단 해무 예측 방법 및 그 장치
CN112268312A (zh) * 2020-10-23 2021-01-26 哈尔滨派立仪器仪表有限公司 一种基于深度学习的智慧供热管理系统
CN114791637A (zh) * 2021-01-26 2022-07-26 厦门龙辉芯物联网科技有限公司 一种海雾测报方法及系统
CN114791637B (zh) * 2021-01-26 2024-04-16 厦门龙辉芯物联网科技有限公司 一种海雾测报方法及系统
KR102460705B1 (ko) * 2021-08-31 2022-11-03 (주)유에스티21 인공지능을 기반으로 하는 촬영영상을 이용한 해무 판별 방법 및 그 장치
KR20230088146A (ko) 2021-12-10 2023-06-19 한국해양과학기술원 일기도 기반의 해무 예측 장치 및 방법
CN114511061A (zh) * 2021-12-29 2022-05-17 青岛市气象台 基于深度神经网络的岸滨地区海雾能见度预报方法

Similar Documents

Publication Publication Date Title
KR101938829B1 (ko) 해무의 발생을 예측하는 뉴럴 네트워크 학습 방법 및 장치
US11537889B2 (en) Systems and methods of data preprocessing and augmentation for neural network climate forecasting models
US10909446B2 (en) Systems and methods for selecting global climate simulation models for training neural network climate forecasting models
US10871594B2 (en) Methods and systems for climate forecasting using artificial neural networks
JP6679086B2 (ja) 学習装置、予測装置、学習方法、予測方法、およびプログラム
Nkiaka et al. Using self-organizing maps to infill missing data in hydro-meteorological time series from the Logone catchment, Lake Chad basin
Zhao et al. Air quality forecasting using neural networks
Adeli et al. An advanced spatio-temporal convolutional recurrent neural network for storm surge predictions
Berghout et al. Auto-NAHL: A neural network approach for condition-based maintenance of complex industrial systems
Babovic et al. From global to local modelling: a case study in error correction of deterministic models
Grönquist et al. Predicting weather uncertainty with deep convnets
CN116579468A (zh) 基于云系记忆的台风生成预测方法、装置、设备及介质
Naeini et al. A novel hybrid machine learning model for rapid assessment of wave and storm surge responses over an extended coastal region
Yu et al. Spatio-temporal ocean wave conditions forecasting using MA-TrajGRU model in the South China sea
Höhl et al. Opening the Black-Box: A Systematic Review on Explainable AI in Remote Sensing
Alex et al. A method for weather forecasting using machine learning
Yalçın Weather parameters forecasting with time series using deep hybrid neural networks
CN115759291A (zh) 一种基于集成学习的空间非线性回归方法及系统
Naumov et al. Analysis and prediction of hydrological series based on generalized precedents
US20220327335A1 (en) Controlling asynchronous fusion of spatio-temporal multimodal data
Naimi On uncertainty in species distribution modelling
da Silva et al. Machine learning models applied to estimate the water temperature of rivers and reservoirs
Balakrishnan et al. Remote sensing data-based satellite image analysis in water quality detection for public health data modelling
Al Marhoobi Time series analysis and forecasting with applications to climate science
CN117709732B (zh) 结合气象监测数据的农业灾害报告生成方法及系统

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant