KR20210086754A - 딥러닝 기반 병충해 진단 방법 - Google Patents

딥러닝 기반 병충해 진단 방법 Download PDF

Info

Publication number
KR20210086754A
KR20210086754A KR1020190177541A KR20190177541A KR20210086754A KR 20210086754 A KR20210086754 A KR 20210086754A KR 1020190177541 A KR1020190177541 A KR 1020190177541A KR 20190177541 A KR20190177541 A KR 20190177541A KR 20210086754 A KR20210086754 A KR 20210086754A
Authority
KR
South Korea
Prior art keywords
image
generating
deep learning
stride
pest
Prior art date
Application number
KR1020190177541A
Other languages
English (en)
Other versions
KR102301013B1 (ko
Inventor
이말례
고현웅
Original Assignee
전북대학교산학협력단
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 전북대학교산학협력단 filed Critical 전북대학교산학협력단
Priority to KR1020190177541A priority Critical patent/KR102301013B1/ko
Publication of KR20210086754A publication Critical patent/KR20210086754A/ko
Application granted granted Critical
Publication of KR102301013B1 publication Critical patent/KR102301013B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06K9/627
    • 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
    • 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
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/02Agriculture; Fishing; Forestry; Mining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Mining & Mineral Resources (AREA)
  • Agronomy & Crop Science (AREA)
  • Animal Husbandry (AREA)
  • Human Resources & Organizations (AREA)
  • Marine Sciences & Fisheries (AREA)
  • Primary Health Care (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

컴퓨터에 의해 실행될 경우, 상기 컴퓨터로 하여금 방법을 수행하게 하는 명령어들을 포함하는, 컴퓨터 판독가능 기록매체 상에 저장된 컴퓨터 프로그램이 제공된다. 상기 방법은, 딥러닝 기반 병충해 진단 방법이며, 상기 방법은, 이미지를 수신하는 단계; 상기 이미지를 분석하여 병충해를 진단하는 단계; 및 단 결과를 전송하는 단계;를 포함하고, 상기 이미지를 분석하는 단계는 상기 이미지를 압축하여 제1 이미지를 생성하는 단계; 상기 제1 이미지에 대해 노멀 중간 빌딩 블록 연산을 수행하여 제2 이미지를 생성하는 단계; 상기 제2 이미지에 대해 리덕션 중간 빌딩 블록 연산을 수행하여 제3 이미지를 생성하는 단계; 및 상기 제3 이미지에 대해 분류 레이어 연산을 수행하여 병충해 분석 결과를 생성하는 단계를 포함할 수 있다.

Description

딥러닝 기반 병충해 진단 방법 {METHOD FOR AUTONOMOUS DIAGNOSIS MODEL OF PESTS AND DISEASES USING DEEP LEARNING}
본 개시는 딥러닝 기술을 이용하여 자동으로 식물의 병충해를 진단하는 방법에 관한 것이다.
원예농업에서 생산량에 영향을 미치는 대표적인 요인은 병해충 피해이다. 병해충을 예방하기 위해서는 병해충 발생 전·후에 방역·방제를 철저히 하는 것이 가장 효과적이지만, 병해충을 육안으로 확인하는 것은 매우 어렵다. 병해충 예찰 기술을 개발하기 위해 다양한 연구들이 진행되어 왔는데, 최근에는 인공지능을 이용하여 병해충의 모양, 색, 크기 등 패턴을 분석하여 병해충을 진단할 수 있는 기술이 주목 받고 있다.
인공지능을 이용한 방법은 병해충 영상을 수집하고, 병해충 데이터베이스를 구축하고, 작물 영상 이미지를 비교하여 이루어진다. 이러한 과정이 분석 기술 중의 하나인 딥러닝 기술과 함께 지속적으로 반복되면 정확도가 더욱 높아지게 된다. 또한, 병해충 진단 알고리즘에 의해 영상을 정밀하게 분석해 진단 정확도를 더욱 높일 수 있다.
진단의 정확성을 높이기 위해 다양한 방법이 고안되고 있다. 예를 들어, 페로몬, 유인광 등 서로 다른 방법으로 벌레를 유인하여 영상을 획득하고, 작물 자체를 예찰하는 카메라를 별도로 설치하여 병해 영상을 추가적으로 획득하는 방법이 있다. 또한, 전문가와 사용자의 의견을 반영하여 진단 서버가 부정확한 진단을 내린 경우 이를 바로잡고 딥러닝 기술을 통하여 기계학습이 자동적으로 이루어짐으로써 부정확한 진단이 이뤄질 가능성을 낮추고 있다.
작물의 병충해 진단의 정확도를 높이는 주요 요소 중 하나가 진단을 하는 딥러닝 엔진을 정확하게 모델링하는 것이기 때문에, 보다 정확한 결과를 도출하기 위해서 딥러닝 엔진의 모델링에 관하여 더욱 많은 연구가 요구되고 있다.
한국 등록특허 번호 제10-1830056호
본 개시는 보다 정확한 딥러닝 기반 병충해 자동 진단 모델 아키텍처를 제공하고자 한다.
본 개시는 병충해를 최적으로 잘 분류할 수 있는 모델 아키텍처를 제공하고 이를 통해 농민들이 전문적인 지식이 부족하여도 병충해를 손쉽게 파악하고 대처할 수 있는 방법을 제공하고자 한다.
본 개시의 일 특징에 의하면, 컴퓨터에 의해 실행될 경우, 상기 컴퓨터로 하여금 방법을 수행하게 하는 명령어들을 포함하는, 컴퓨터 판독가능 기록매체 상에 저장된 컴퓨터 프로그램이 제공된다. 상기 방법은 딥러닝 기반 병충해 진단 방법이며, 이미지를 수신하는 단계; 상기 이미지를 분석하여 병충해를 진단하는 단계; 및 진단 결과를 전송하는 단계;를 포함하고, 상기 이미지를 분석하는 단계는 상기 이미지를 압축하여 제1 이미지를 생성하는 단계; 상기 제1 이미지에 대해 노멀 중간 빌딩 블록 연산을 수행하여 제2 이미지를 생성하는 단계; 상기 제2 이미지에 대해 리덕션 중간 빌딩 블록 연산을 수행하여 제3 이미지를 생성하는 단계; 및 상기 제3 이미지에 대해 분류 레이어 연산을 수행하여 병충해 분석 결과를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 이미지를 압축하여 제1 이미지를 생성하는 단계는 상기 이미지에 대해 스트라이드가 2인 7 x 7 컨볼루션 연산을 수행하고, 정규화(normalization) 및 활성화(activation)를 수행하는 단계; 및 스트라이드가 2인 3 x 3 맥스풀링 연산을 수행하여 제1 이미지를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 제1 이미지에 대해 노멀 중간 빌딩 블록 연산을 수행하여 제2 이미지를 생성하는 단계는 상기 제1 이미지를 스트라이드가 1인 3 x 3 컨볼루션 연산, 스트라이드가 1인 1 x 1 컨볼루션 연산을 두 번 수행하여 제2 이미지를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 제2 이미지에 대해 리덕션 중간 빌딩 블록 연산을 수행하여 제3 이미지를 생성하는 단계는 상기 제2 이미지를 스트라이드가 1인 3 x 3 컨볼루션 연산, 스트라이드가 1인 1 x 1 컨볼루션 연산을 두 번 수행하는 단계; 및 스트라이드가 1인 2 x 2 맥스풀링(MaxPooling) 연산을 수행하여 제3 이미지를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 제3 이미지에 대해 분류 레이어 연산을 수행하여 병충해 분석 결과를 생성하는 단계는 상기 제3 이미지에 대해 글로벌 에버리지 풀링(Global Average Pooling)을 적용하는 단계; 512개의 노드로 구성된 ReLU 활성화 함수를 수행하는 제1 선형계층 단계; 상기 512개의 노드 중 절반의 노드 값을 0으로 설정하는 드랍아웃(Dropout) 함수 수행 단계; 및 12개의 노드로 구성된 병충해 확률을 산출하는 제2 선행계층 단계를 포함할 수 있다.
본 개시의 실시예에 의하면, 정확한 딥러닝 기반 병충해 자동 진단 모델 아키텍처를 기초로 병충해를 최적으로 잘 분류하여 사용자에게 알려줌으로써 농민들이 전문적인 지식이 부족하여도 병충해를 손쉽게 파악하고 대처할 수 있게 할 수 있다.
도 1은 본 개시의 일 실시예에 따라, 위클리 덴스넷(Weakly DenseNet) 모델 아키텍처를 개략적으로 도시한 도면이다.
도 1은 본 개시의 일 실시예에 따라, 위클리 덴스넷(Weakly DenseNet) 모델 아키텍처를 개략적으로 도시한 도면이다.
도 2는 덴스넷(DenseNet)의 아키텍처를 예시적으로 도시하는 도면이다.
도 3은 합성 곱 신경망(CNN) 의 특징 맵을 예시적으로 도시하는 도면이다.
도 4는 본 개시의 일 실시예에 따라 위클리 덴스넷의 스템 레이어를 예시적으로 도시하는 도면이다.
도 5는 본 개시의 일 실시예에 따라 위클리 덴스넷의 노멀 중간 빌딩 블록(Normal intermediate building block)을 예시적으로 도시하는 도면이다.
도 6은 1 x 1 컨볼류션 연산의 일 실시예를 도시하는 도면이다.
도 7은 본 개시의 일 실시예에 따라 위클리 덴스넷의 연쇄연속 연결(Concatenation Connection)을 도시하는 도면이다.
도 8은 본 개시의 일 실시예에 따라 위클리 덴스넷의 리덕션 중간 빌딩 블록(Reduction intermediate building block)을 예시적으로 도시하는 도면이다.
도 9는 본 개시의 일 실시예에 따라 위클리 덴스넷의 분류 레이어(classification layer)를 예시적으로 도시하는 도면이다.
이하, 첨부 도면을 참조하여 본 개시의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 개시의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 개시의 일 실시예에 관한 것일 뿐 본 개시가 이로써 제한되는 것은 아님을 알아야 한다.
본 개시에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 개시를 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 본 개시에서 사용되는 "및/또는"이라는 용어는, 열거되는 항목들 중 하나 이상의 항목에 의한 임의의 가능한 모든 조합들을 포괄하는 것임이 이해되어야 한다. 본 개시에서 사용되는 '포함하다' 또는 '가지다' 등의 용어는 본 개시 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.
본 개시의 실시예에 있어서 '모듈' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '모듈' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서에 의해 구현될 수 있다.
덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 개시에서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.
이하, 첨부된 도면을 참조하여, 본 개시의 실시예에 대해 구체적으로 설명하기로 한다.
도 1은, 본 개시의 일 실시예에 따라, 위클리 덴스넷(Weakly DenseNet) 모델 아키텍처를 개략적으로 도시한 도면이다.
도시된 바에 의하면, 위클리 덴스넷은 스템 레이어(stem layer), 중간 레이어(intermediate layer) 및 분류 레이어(classification layer)를 포함할 수 있다.
본 개시의 일 실시예에 의하면, 위클리 덴스넷은 딥러닝 모델 중 합성 곱 신경망(Convolutional Neural Network)를 기반으로 한다. 합성 곱 신경망은 인간의 시신경을 모방하여 연구되었으며, 이미지 처리에 있어서 매우 높은 성능을 보여준다. 일 실시예에서, 위클리 덴스넷은 합성 곱 신경망(Convolutional Neural Network)를 기반의 덴스넷(DenseNet)을 응용하여 식물의 병충해 진단에 적합하도록 개량한 모델링 기법이다.
도 2는 본 개시의 일 실시예에 따라 덴스넷(DenseNet)의 아키텍처를 예시적으로 도시하는 도면이다.
도시된 바와 같이, 덴스넷은 여러 계층으로 구성되어 있는데, 입력계층부터 출력계층까지 모든 출력 특징 맵을 연속하여(concatenation) 연결하여 특징 맵들을 재사용하는 딥 레지듀얼 네트워크(deep residual network)의 일종이다. 도시된 바와 같이, 이전 출력층의 특징 맵을 재활용하는 딥 레지듀얼 네트워크는 마치 여러 얕은 네트워크들의 앙상블처럼 작동하는데, 특정 계층의 커널이 열화(degration) 되어서 무너져도 그래디언트(gradient)가 흐를 수 있는 패스(path)가 다양하여 깊은 네트워크 설계 시에도 매우 잘 작동한다는 특징이 있다.
일 실시예에서 덴스넷은 레스넷(ResNet)을 기반으로 설계될 수 있다. 레스넷은 딥 레지듀얼 네트워크의 초기 모델 중 하나이다. 레스넷은 이전 계층의 특징 맵을 다음 계층의 특징 맵과 원소 단위로 더하는 연산(elementwise addition)을 수행하여 특징 맵을 계속해서 재활용할 수 있는 기법이다.
레스넷의 각 계층에서 수행되는 연산은 수식(1)과 같이 나타낼 수 있고, 여러 출력층을 거치고 나면 수식(2)와 같은 최종 결과가 도출될 수 있다. 여기서 h는 이전 계층의 출력이며, w는 곱해지는 가중치, f는 활성화 함수를 나타낸다.
Figure pat00001
레스넷은 여러 계층이 지나면 지날수록 특징 맵들이 더해지기 때문에 이전 계층의 정보가 명확히 남아있지 않고 희미해질 수 있다. 또한 레스넷은 채널의 수가 같은 경우에만 더할 수 있다. 이러한 레스넷의 단점을 보완하기 위해서, 덴스넷은 더하기(addition) 대신 연쇄연결(concatenation)을 사용하였다. 연쇄연결(concatenation)의 경우, 모든 계층의 정보가 채널 단위로(channelwise) 쌓이기 때문에 계층을 지나도 정보가 희미해지지 않고 정보가 보존되며, 채널의 수가 다른 경우에도 출력 특징 맵을 쌓을 수 있게 된다. 각 계층에서는 수식(3)과 같은 연산이 수행되고 여러 출력층을 거치고 나면 수식(4)와 같은 최종 결과가 만들어진다. 여기서, h는 이전 계층의 출력이며, w는 곱해지는 가중치, f는 활성화 함수, Z는 연쇄연결(concatenation) 함수를 나타낸다.
Figure pat00002
일반적으로 덴스넷(DenseNet)은 바로 앞 계층의 특징 맵만 재활용하는 것이 아니라 모든 계층에서 나온 특징 맵을 활용하여 그래디언드가 흐를 수 있는 더 많은 패스(path)를 제공할 수 있다. 이로 인해 더 높은 정확도를 가질 수 있지만, 너무 잦은 연쇄연결(concatenation)이 수행되어 매우 큰 컴퓨팅 리소스가 필요하다는 단점이 있다. 이러한 문제를 해결하기 위해, 본 개시에서는 덴스넷의 불필요한 연결을 줄이는 위클리 덴스넷 모델 아키텍처를 개시한다.
도 3은 합성 곱 신경망(CNN) 의 특징 맵을 예시적으로 도시하는 도면이다.
도 3에 도시된 바와 같이, 합성 곱 신경망의 초기 계층은 선, 모서리, 면과 같이 일반적인 특징을 포착하고, 중간 계층은 눈, 코, 입과 같은 보다 구체적인 특징을 포착하며, 최종 출력층은 전체적인 사람얼굴과 같이 가장 구체적인 특징들을 포착할 수 있다.
덴스넷은 모델의 매우 초기 계층에서 형성된 특징 맵들은 선과 모서리, 면과 같이 매우 일반적인 특징으로 그 사람이 어떤 사람인지 분류하는데 거의 도움을 주지 못하는 반면, 이러한 모든 특징 맵들을 뒤쪽 계층으로 계속해서 전달하고 이러한 과정에서 매우 큰 컴퓨팅 리소스가 소모되는 문제점이 있다.
본 개시의 일 실시예에 의하면, 위클리 덴스넷은 초기 계층의 매우 일반적인 특징 맵들을 분류 계층, 즉 마지막 계층까지 전달하지 않고 이전 계층의 특징 맵을 바로 다음 계층으로만 전파할 수 있다. 이러한 구성으로 인하여 위클리 덴스넷은 일반 덴스넷의 비효율적인 밀도높은 연결(Densely Connection)을 최소화시켜 연쇄연결(concatenation)의 이점을 최대한 살리고, 채널의 수가 과도하게 증가되지 않게 유지함으로써 적은 컴퓨팅 리소스로 높은 성능을 이끌어낼 수 있다.
도 4는 본 개시의 일 실시예에 따라 위클리 덴스넷의 스템 레이어를 예시적으로 도시하는 도면이다.
본 개시의 일 실시예에서, 스템 레이어는 입력된 이미지의 크기를 줄여서 압축할 수 있다. 일 실시예에서, 스템 레이어는 네트워크 가장 첫 단에 있는 블록으로 입력 이미지를 작게 압축할 수 있다. 예를 들어, 스트라이드(stride)가 2인 7 x 7 컨볼루션(convolution) 연산이 수행되며 이후 노멀라이제이션(normalization)과 액티베이션(activation) 함수를 거쳐 스트라이드가 2인 3 x 3 최대 풀링(Max Pooling) 연산을 수행할 수 있다. 이러한 과정을 통해, 224 x 224의 이미지는 56 x 56 사이즈로 압축될 수 있다. 커다란 크기의 이미지를 곧바로 연산하기 어렵기 때문에 이러한 스템 레이어를 거쳐 이미지의 크기를 줄일 수 있다.
도 5는 본 개시의 일 실시예에 따라 위클리 덴스넷의 노멀 중간 빌딩 블록(Normal intermediate building block)을 예시적으로 도시하는 도면이다.
본 개시의 일 실시예에 의하면, 위클리 덴스넷은 두 개의 중간 빌딩 블록을 포함하는데, 그 중 하나가 노멀 중간 빌딩 블록이다. 일 실시예에서, 노멀 중간 빌딩 블록은 3 x 3 컨볼루션 연산과 2 개의 1 x 1 컨볼루션 연산을 수행할 수 있다. 2 번의 1 x 1 컨볼루션 연산을 수행하는 것은 중요한 정보를 더욱 강화시키는 어텐션(attention) 메커니즘과 동일하다. 예컨대, 노멀 중간 빌딩 블록은 리지듀얼 어텐션 네트워크(residual attention network)와 유사하게 작동하면서도 더 낮은 컴퓨팅 리소스를 필요로 하며 더 좋은 성능을 보여줄 수 있다.
본 개시의 일 실시예에 의하면, 위클리 덴스넷의 노멀 중간 빌딩 블록에 포함된 2 개의 1 x 1 컨볼루션 연산은 아래와 같다. 여기서 z는 활성화 함수 이전의 특징 맵이고, r은 활성화 함수 이후의 특징 맵, K는 커널, x는 입력을 나타낸다. 본 개시에서는 연산의 간략화를 위하여 정규화 과정은 생략하였다.
Figure pat00003
1 x 1 컨볼루션 연산은 입력 특징 맵에 사이즈가 1인 컨볼루션 커널을 곱할 수 있다. 이 컨볼루션 커널은 역전파과정에 의해 학습될 수 있는데, 중요한 특징을 더욱 부각할 수 있게끔 학습되며, 중요하지 않은 (음수 픽셀)은 ReLU 활성화 함수에 의해 마스크 되어 값이 역전되는 일을 막을 수 있다.
Figure pat00004
학습에 사용되는 미분계수(Gradient)는 다음과 같이 계산된다. K(2)는 두 번째 1 x 1 컨볼루션 커널을 의미하고 K(1)는 첫 번째 1 x 1 컨볼루션 커널을 의미한다. 두 벡터 K(1)(2)는 미분계수(Gradient)는 자신과 곱해질 입력에 비례하므로, 입력값이 클수록 값이 선형적으로 조정된다.
Figure pat00005
도 6은 1 x 1 컨볼류션 연산의 일 실시예를 도시하는 도면이다.
도 6에 도시된 바와 같이, 해충이 있는 중요한 부분의 이미지의 픽셀값이 8.2이고, 해충이 없는 중요하지 않은 픽셀값은 0.2이였을 때, 1x1 Convolution을 수행하면 값이 선형적으로 조정된다. 만일 K가 4라면, 해충이 있는 부분들의 픽셀값은 32.8으로, 없는 부분들의 픽셀값은 0.8으로 조정되고, 이전에 두 위치의 차이가 8이였던 것에 반해, K를 곱하고 나면 32로 더욱 극명하게 차이가 나게 된다. 이로서 중요한 부분과 중요하지 않는 부분을 더욱 잘 분리하게 되며, 다리와 몸통 부분의 차이가 기존에 1.2였다면, K를 곱하고 나면 4로 미세한 차이도 더욱 잘 분리하게 된다.
만일 K가 음수였다면 모든 픽셀의 값이 음수로 변하고 중요한 부분은 픽셀값이 급격하게 낮아지며, 중요하지 않는 부분은 픽셀값이 약간 낮아진다. (K가 -3이라면, 10은 -30이 되고, 0.1은 -0.3이 된다.) 이러한 특징 맵은 정보를 반전시켰기 때문에 오히려 분류를 방해한다. 때문에 해당 특징 맵은 ReLU 활성화 함수를 거쳐 모든 픽셀이 0인 잔여 채널이 된다.
본 개시의 일 실시예에 따르면, 기존 입력값과 연쇄연속(Concatenation) 연산을 수행할 수 있다. 연쇄연속(Concatenation) 연산을 수행함으로써, 열화(Degradation)를 예방할 수 있다. 예를 들어, 모든 그래디언트(Gradient)가 0으로 수렴하는 현상, Backward Propagation시에, ReLU의 경우 이전 계층에서 흘러온 그래디언트(Gradient)에 양수였던 노드에만 1을 곱하고, 음수였던 노드에는 0을 곱하는데, 모든 노드가 0이라면, 흘러온 모든 그래디언트(Gradient)에 0을 곱하게 되고, Gradient가 더 이상 흐를 수 없게 되는 것을 예방할 수 있다. 설명하면, 그래디언트(Gradient)가 흐를 수 있는 매우 많은 길이 생기기 때문에 특정 K가 잘못 학습되어 음수로 수렴해도, 그래디언트(Gradient)가 문제없이 앞 계층 쪽으로 흐를 수 있게 된다.
Figure pat00006
도 7은 본 개시의 일 실시예에 따라 위클리 덴스넷의 연쇄연속 연결(Concatenation Connection)을 도시하는 도면이다.
도 7(b)에 도시된 바와 같이 연결(Connection)이 없는 왼쪽 네트워크는 f2 계층이 열화(Degradation)되면 네트워크 전체가 동작하지 못하지만, 도 7(b)의 오른 쪽 그림처럼 연결하면 그래디언트(Gradient)가 흐를 수 있는 많은 길이 생긴다. 이렇게 각 계층 사이를 연결시키면, 도시된 바와 같이 하나의 네트워크가 마치 8개 얕은 네트워크처럼 작동하고, 이는 열화(Degradation) 문제에 매우 강한 모델을 만들 수 있게 해준다.
도 8은 본 개시의 일 실시예에 따라 위클리 덴스넷의 리덕션 중간 빌딩 블록(Reduction intermediate building block)을 예시적으로 도시하는 도면이다.
본 개시의 일 실시예에서, 리덕션 블록은 입력 이미지의 크기를 줄일 수 있다. 본 개시의 일 실시예에서, 리덕션 블록은 위에서 언급한 노멀 블록과 전반적으로 동일하지만, 이미지에 맥스풀링(MaxPooling) 연산을 수행하여 이미지 사이즈를 감소시킬 수 있다.
도 9는 본 개시의 일 실시예에 따라 위클리 덴스넷의 분류 레이어(classification layer)를 예시적으로 도시하는 도면이다.
본 개시의 일 실시예에서, 분류 레이어는 분류 과정을 수행할 수 있다. 일 실시예에서 분류 레이어는 두 개의 선형 계층과 드랍아웃 기법을 적용할 수 있는데, 이를 통해서 모델이 학습데이터에 너무 과적합되는 문제를 예방할 수 있다. 분류 레이어는 우선 글로벌 에버리지 풀링(Global Average Pooling)을 적용하여 각 채널이 가진 픽셀값 (7x7) 행렬의 평균을 계산해 각 채널을 하나의 스칼라 상수로 변환할 수 있다. 일 실시예에서, 분류 레이어는 첫 번째 선형계층을 512개의 노드로 구성하고 ReLU 활성화 함수를 적용할 수 있다. 일 실시예에서, 분류 레이어는 드랍아웃(Dropout) 비율(Rate)를 0.5로 설정하여, 512개의 노드 중 절반의 노드 값을 0으로 설정할 수 있다. 일 실시예에서, 분류 레이어는 두 번째 선형계층를 12개의 노드로 구성할 수 있다. 일 실시예에서, 12개의 노드는 각각의 병해 또는 충해를 의미하며, 가장 높은 값으로 나온 출력이 해당 병충해일 확률을 나타낼 수 있다.
아래 표는 특정 이미지가 각 블록을 통과하면서 이미지의 크기가 변경되는 것으로 정리한 표이다.
Figure pat00007
예를 들어, 224 x 224 x 3(RGB 채널) 사이즈의 이미지를 입력 받아 7 x 7 x 512의 텐서로 변환한 뒤, 최종적으로 분류 레이어(Classification Layer)를 거쳐 분류를 진행한다. 총 16층의 딥러닝 모델 아키텍처로 기존에 존재하는 다른 모델들에 비해서 월등한 성능을 보여준다.
실험 결과
1. 데이터 수집
데이터의 수를 더욱 늘리기 위해 여러 가지 데이터 증강 기법 (Data Augmentation)을 적용하였다. 보유한 이미지를 회전하고 (Rotation), 좌우로 이동하고 (Width shift, Height shift), 자르고(Shear), 크기를 변경하고(Zoom), 수평회전(Horizontal Flip) 시켜서 데이터를 더욱 증가시켰다.
아래 표는 모델 학습을 위한 Augmentation 기법 알고리즘을 나타낸다.
Figure pat00008
모델이 지역 최저점이 아닌 전역 최저점으로 도달할 수 있도록 학습률(Learning Rate) 스케줄링 알고리즘을 설계하였다. P(Patient) 에폭마다 학습률을 *?*(Decay Rate)만큼 감소시킨다. P와
Figure pat00009
는 초매개변수로, 본 모델을 학습하기 위해 P=5,
Figure pat00010
=0.8로 설정하였다. 또한 전역 최저점에 도달할 수 있게 하도록 Nesterov Momentum[7]을 0.9로 설정하였고, 초기 학습률은 0.01으로 설정하였다.
2. 실험 결과
아래 표는 8개의 모델과 대조실험을 진행한 결과를 나타낸다. 모두 동일한 데이터 세트, 동일한 데이터 증강 기법 적용, 동일한 학습률 스케줄링을 적용하였다.
Figure pat00011
위클리 덴스넷(Weakly DenseNet)은 덴스넷의 불필요한 밀도높은 연결(Densely Connection)을 경량화시켜 모델에 필요한 연산의 수(FLOPs)를 크게 감소시켰으며 각 계층에서는 3x3 컨볼루션(Convolution) 보다는 주로 1x1 컨볼루션(Convolution)연산을 수행하기 때문에 매우 적은 파라미터 수를 가진다. 때문에 MobileNet, ShuffleNet과 같은 경량화 모델들과 비슷한 모델 사이즈를 가진다.
Figure pat00012
<표5, 실험 결과 (막대그래프)>
테스트 데이터 (학습하지 않은 데이터)로 실험하였을 때, 120MB에 육박하는 거대한 양의 파라미터를 가진 VGG-16 보다 더 좋은 성능 (92.93% < 93.42%)를 냈으며 비슷한 Attention 기반 네트워크인 SENet보다도 월등한 성능을 보여주었다. 즉, 위클리 덴스넷(Weakly DenseNet)은 경량화 모델급 사이즈를 가지지만 다른 거대한 네트워크들보다 훨씬 좋은 성능을 보여준다. Network In Network는 위클리 덴스넷과 유사하게 3x3 Convolution 후에 1x1 Convolution을 수행하는 네트워크인데, 역시 작은 사이즈로 좋은 성능을 보여주었다. 이로서 3x3 Convolution 뒤에 1x1 Convolution을 수행하는 것이 더욱 정확한 병충해 분류를 하는 데에 주효했다는 것을 알 수 있고, Concatenation 연산을 수행하여 Connection을 추가하면 더욱 성능이 오른다는 것 (91.84% < 93.33%)을 알 수 있다.
본 개시의 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 저장 매체에 기록될 수 있고, 그러한 컴퓨터 판독 가능 기록 매체에는 프로그램 명령, 데이터 파일, 데이터 구조 등이 단독으로 또는 조합하여 기록될 수 있다. 컴퓨터 판독가능 기록 매체에 기록되는 프로그램 명령은, 본 개시의 구현을 위하여 설계 및 구성된 것을 포함할 수 있고, 그 외 기타 다른 목적을 위한 컴퓨터 소프트웨어를 더 포함할 수도 있다. 컴퓨터 판독 가능 기록 매체로는, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체가 포함될 수 있다.
본 명세서에서는 비록 한정된 실시예와 도면를 중심으로 설명되었으나, 당업자라면 알 수 있듯이, 본 개시가 본 명세서에 기술된 예시에 한정되는 것은 아니며, 본 개시의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 본 명세서에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있음을 알아야 한다.

Claims (5)

  1. 컴퓨터에 의해 실행될 경우, 상기 컴퓨터로 하여금 방법을 수행하게 하는 명령어들을 포함하는, 컴퓨터 판독가능 기록매체 상에 저장된 컴퓨터 프로그램으로서,
    상기 방법은 딥러닝 기반 병충해 진단 방법이며,
    상기 방법은,
    이미지를 수신하는 단계;
    상기 이미지를 분석하여 병충해를 진단하는 단계; 및
    진단 결과를 전송하는 단계;를 포함하고,
    상기 이미지를 분석하는 단계는
    상기 이미지를 압축하여 제1 이미지를 생성하는 단계;
    상기 제1 이미지에 대해 노멀 중간 빌딩 블록 연산을 수행하여 제2 이미지를 생성하는 단계;
    상기 제2 이미지에 대해 리덕션 중간 빌딩 블록 연산을 수행하여 제3 이미지를 생성하는 단계; 및
    상기 제3 이미지에 대해 분류 레이어 연산을 수행하여 병충해 분석 결과를 생성하는 단계
    를 포함하는 딥러닝 기반 병충해 진단 방법.
  2. 제1항에 있어서,
    상기 이미지를 압축하여 제1 이미지를 생성하는 단계는
    상기 이미지에 대해 스트라이드가 2인 7 x 7 컨볼루션 연산을 수행하고, 정규화(normalization) 및 활성화(activation)를 수행하는 단계; 및
    스트라이드가 2인 3 x 3 맥스풀링 연산을 수행하여 제1 이미지를 생성하는 단계
    를 포함하는 딥러닝 기반 병충해 진단 방법.
  3. 제1항에 있어서,
    상기 제1 이미지에 대해 노멀 중간 빌딩 블록 연산을 수행하여 제2 이미지를 생성하는 단계는
    상기 제1 이미지를 스트라이드가 1인 3 x 3 컨볼루션 연산, 스트라이드가 1인 1 x 1 컨볼루션 연산을 두 번 수행하여 제2 이미지를 생성하는 단계를 포함하는 딥러닝 기반 병충해 진단 방법.
  4. 제1항에 있어서,
    상기 제2 이미지에 대해 리덕션 중간 빌딩 블록 연산을 수행하여 제3 이미지를 생성하는 단계는
    상기 제2 이미지를 스트라이드가 1인 3 x 3 컨볼루션 연산, 스트라이드가 1인 1 x 1 컨볼루션 연산을 두 번 수행하는 단계; 및
    스트라이드가 1인 2 x 2 맥스풀링(MaxPooling) 연산을 수행하여 제3 이미지를 생성하는 단계
    를 포함하는 딥러닝 기반 병충해 진단 방법.
  5. 제1항에 있어서,
    상기 제3 이미지에 대해 분류 레이어 연산을 수행하여 병충해 분석 결과를 생성하는 단계는
    상기 제3 이미지에 대해 글로벌 에버리지 풀링(Global Average Pooling)을 적용하는 단계;
    512개의 노드로 구성된 ReLU 활성화 함수를 수행하는 제1 선형계층 단계;
    상기 512개의 노드 중 절반의 노드 값을 0으로 설정하는 드랍아웃(Dropout) 함수 수행 단계; 및
    12개의 노드로 구성된 병충해 확률을 산출하는 제2 선행계층 단계
    를 포함하는 딥러닝 기반 병충해 진단 방법.
KR1020190177541A 2019-12-30 2019-12-30 딥러닝 기반 병충해 진단 방법 KR102301013B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190177541A KR102301013B1 (ko) 2019-12-30 2019-12-30 딥러닝 기반 병충해 진단 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190177541A KR102301013B1 (ko) 2019-12-30 2019-12-30 딥러닝 기반 병충해 진단 방법

Publications (2)

Publication Number Publication Date
KR20210086754A true KR20210086754A (ko) 2021-07-09
KR102301013B1 KR102301013B1 (ko) 2021-09-17

Family

ID=76865202

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190177541A KR102301013B1 (ko) 2019-12-30 2019-12-30 딥러닝 기반 병충해 진단 방법

Country Status (1)

Country Link
KR (1) KR102301013B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115116054A (zh) * 2022-07-13 2022-09-27 江苏科技大学 一种基于多尺度轻量级网络的病虫害识别方法
WO2023107023A1 (en) * 2021-12-06 2023-06-15 Onur Yolay Artificial intelligence based predictive decision support system in disease, pest and weed fighting

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101830056B1 (ko) 2017-07-05 2018-02-19 (주)이지팜 딥러닝 기반의 병해 진단 시스템 및 그 이용방법
KR20180058049A (ko) * 2016-11-23 2018-05-31 세종대학교산학협력단 작물의 병해충 진단 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180058049A (ko) * 2016-11-23 2018-05-31 세종대학교산학협력단 작물의 병해충 진단 장치 및 방법
KR101830056B1 (ko) 2017-07-05 2018-02-19 (주)이지팜 딥러닝 기반의 병해 진단 시스템 및 그 이용방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Shuli Xing et. al. "Citrus Pests and Diseases Recognition Model Using Weakly Dense Connected Convolution Network" 19 July 2019. 1부.* *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023107023A1 (en) * 2021-12-06 2023-06-15 Onur Yolay Artificial intelligence based predictive decision support system in disease, pest and weed fighting
CN115116054A (zh) * 2022-07-13 2022-09-27 江苏科技大学 一种基于多尺度轻量级网络的病虫害识别方法
CN115116054B (zh) * 2022-07-13 2024-05-24 江苏科技大学 一种基于多尺度轻量级网络的病虫害识别方法

Also Published As

Publication number Publication date
KR102301013B1 (ko) 2021-09-17

Similar Documents

Publication Publication Date Title
KR101876397B1 (ko) 작물의 병해충 진단 장치 및 방법
CN111291809B (zh) 一种处理装置、方法及存储介质
CN110309856A (zh) 图像分类方法、神经网络的训练方法及装置
CN107622233A (zh) 一种表格识别方法、识别系统及计算机装置
CN110222718B (zh) 图像处理的方法及装置
CN111652247A (zh) 一种基于深度卷积神经网络的双翅目昆虫识别方法
CN112232355B (zh) 图像分割网络处理、图像分割方法、装置和计算机设备
CN110033023A (zh) 一种基于绘本识别的图像数据处理方法及系统
CN111242948B (zh) 图像处理、模型训练方法、装置、设备和存储介质
KR102301013B1 (ko) 딥러닝 기반 병충해 진단 방법
US11048928B1 (en) Systems and methods of entomology classification based on extracted anatomies
Moyazzoma et al. Transfer learning approach for plant leaf disease detection using CNN with pre-trained feature extraction method Mobilnetv2
Verma et al. Residual squeeze CNDS deep learning CNN model for very large scale places image recognition
CN111382807B (zh) 图像处理方法、装置、计算机设备和存储介质
US20240249508A1 (en) Method and system for processing image, device and medium
CN114170657A (zh) 融合注意力机制与高阶特征表示的面部情感识别方法
Sundar et al. Classification of Diabetic Retinopathy disease levels by extracting topological features using Graph Neural Networks
CN114330650A (zh) 基于进化元学习模型训练的小样本特征分析方法及装置
Irfan et al. COMPARISON OF SGD, RMSProp, AND ADAM OPTIMATION IN ANIMAL CLASSIFICATION USING CNNs
Henderson et al. Analyzing chest X-ray to detect the evidence of lung abnormality due to infectious disease
Pillai et al. A Deep Learning Approach for Detection and Classification of Ten Species of Monkeys
CN117321570A (zh) 基于从图像中提取的解剖组成部分的掩模而对蚊虫幼虫进行分类的系统和方法
Rao et al. Classification of land cover usage from satellite images using deep learning algorithms
CN112132175A (zh) 对象分类方法、装置、电子设备及存储介质
Yaşar et al. Estimating yield for fruit trees using image processing and artificial neural network

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right