DOI QR코드

DOI QR Code

Development of AI-based Smart Agriculture Early Warning System

  • Hyun Sim (Dept. of Smart Agriculture, Sunchon National University) ;
  • Hyunwook Kim (KORNERSTONE. Co, Ltd)
  • 투고 : 2023.11.21
  • 심사 : 2023.12.11
  • 발행 : 2023.12.30

초록

본 연구는 스마트팜 환경에서 진행된 혁신적인 연구로, 딥러닝을 기반으로 한 질병 및 해충 탐지 모델을 개발하고, 이를 지능형 사물인터넷(IoT) 플랫폼에 적용하여 디지털 농업 환경 구현의 새로운 가능성을 탐색하였다. 연구의 핵심은 Pseudo-Labeling, RegNet, EfficientNet 등 최신 ImageNet 모델과 전처리 방식을 통합하여, 복잡한 농업 환경에서 다양한 질병과 해충을 높은 정확도로 탐지하는 것이었다. 이를 위해 앙상블 학습 기법을 적용하여 모델의 정확도와 안정성을 극대화했으며, 평균 정밀도(mAP), 정밀도, 재현율, 정확도, 박스 손실 등의 다양한 성능 지표를 통해 모델을 평가하였다. 또한, SHAP 프레임워크를 활용하여 모델의 예측 기준에 대한 깊은 이해를 도모하였고, 이를 통해 모델의 결정 과정을 보다 투명하게 만들었다. 이러한 분석은 모델이 어떻게 다양한 변수들을 고려하여 질병 및 해충을 탐지하는지에 대한 중요한 통찰력을 제공하였다.

This study represents an innovative research conducted in the smart farm environment, developing a deep learning-based disease and pest detection model and applying it to the Intelligent Internet of Things (IoT) platform to explore new possibilities in the implementation of digital agricultural environments. The core of the research was the integration of the latest ImageNet models such as Pseudo-Labeling, RegNet, EfficientNet, and preprocessing methods to detect various diseases and pests in complex agricultural environments with high accuracy. To this end, ensemble learning techniques were applied to maximize the accuracy and stability of the model, and the model was evaluated using various performance indicators such as mean Average Precision (mAP), precision, recall, accuracy, and box loss. Additionally, the SHAP framework was utilized to gain a deeper understanding of the model's prediction criteria, making the decision-making process more transparent. This analysis provided significant insights into how the model considers various variables to detect diseases and pests.

키워드

I. Introduction

딸기는 다양한 해충과 질병에 취약한 과일이다. 따라서 생산 중에는 농약과 살충제의 집중적인 사용이 이루어진다. 그들의 민감성 때문에 극단적인 온도나 습도는 플랜테이션과 과일의 품질에 다양한 피해를 줄 수 있다. 이 문제를 완화하기 위해, 이 프로젝트에서는 딸기 농업에서 이종 데이터의 수집, 분석, 예측 및 탐지를 처리할 수 있는 엣지 기술을 연구하였다. 제안된 IoT 플랫폼은 디지털 농업을 위한 하나의 공통 플랫폼에 다양한 모니터링 서비스를 통합한다. 시스템은 환경 및 작물 정보를 분석하기 위해 사물인터넷(IoT) 장치를 연결하고 관리한다. 또한, Yolo v5 아키텍처를 사용하는 컴퓨터 비전 모델은 실시간으로 가장 흔한 딸기 질병 7가지를 찾는다. 이 모델은 92%의 정확도로 효율적인 질병 탐지를 지원한다. 더욱이, 시스템은 노드 간의 데이터를 장거리로 전송하기 위해 LoRa 통신을 지원한다. 또한, IoT 플랫폼은 수집된 데이터에서 이상치를 캡처하기 위한 기계 학습 기능을 통합하여 사용자에게 신뢰할 수 있는 정보를 보장한다. 이 모든 기술들은 플랜테이션의 질병 문제와 환경 피해를 완화하기 위해 통합되었다. 제안된 시스템은 실행을 통해 검증되었고 딸기 농장에서 테스트 되었고 기능들이 분석되고 평가되었다.

본 논문은 다음과 같이 구성된다. 제 2장의 관련연구에 대해 설명하고 제 3장에서는 제안 모델에 대한 내용을 설명한다. 제 4장에서는 분석결과를 설명하고 마지막 5장에서 결론을 기술한다.

II. Preliminaries

1. Related works

1.1 Domestic trends

ImageNet 모델을 사용한 여러 이전 연구를 검토했다. 예를 들어, 참고문헌 [1]는 카메라 감지 기반 기술을 비교하고 분석하여 작물 질병의 조기 진단을 위한 기술을 제안했다. 참고문헌 [2]에서는 토마토 잎 데이터를 수집하고 EfficientNet을 포함한 네 가지 다른 모델을 사용하여 특징을 비교하고 분류했다. 참고문헌 [3]은 EfficientNet을 기반으로 독버섯에 대한 오해를 방지하고 서비스를 구현하기 위한 버섯 이미지 데이터 분류 방법을 제안했다. 참고문헌 [4]은 이미지화하고 EfficientNet 모델에 적용하여 악성 코드 파일을 유형별로 분류하는 방법을 제시했다. 참고문헌 [5]은 EfficientNet 모델을 사용하여 이미지 데이터를 학습하고 구별하기 어려운 이미지의 특성을 예측하는 데 높은 정확도를 달성했다. 참고문헌 [6]는 슈퍼픽셀 기술과 CNN을 사용한 해충 분류 방법을 제안하고, 성능은 다소 낮지만 실제 환경에서 적용 가능한 모델을 구축했다. 참고문헌 [7]은 EfficientNet 모델을 사용하여 나무 문화 자산의 균열을 감지하고 다른 모델보다 더 나은 성능을 보였다. 참고문헌 [8]은 딸기 해충 이미지 인식 모델로 AlexNet을 사용하여 좋은 성능과 이미지 활용도를 개선했다. 참고문헌 [9]는 에폭 수가 적음에도 불구하고 ResNet 모델을 사용하여 1,306장의 이미지 데이터만 학습하면서 높은 정확도와 효율적인 학습 시간을 보였다. 참고문헌[10]은 39개 클래스의 55,448장의 이미지로 구성된 PlantVillage 데이터셋을 구축하고, EfficientNet B5와 B4 모델이 다른 모델보다 더 나은 성능을 보였다는 것을 발견했다. 참고문헌 [11]은 RegNet 모델을 새로운 네트워크 디자인 모델로 소개하고, 비슷한 학습 설정과 실패 조건에서 EfficientNet보다 GPU에서 최대 5배 빠른 속도를 보였다. 참고문헌 [12]은 과일 이미지 데이터의 너비, 깊이, 해상도를 최적으로 매칭하여 이미지를 분류하는 효과적인 방법을 제안했다.

잎 질병 및 해충과 관련된 연구에 중점을 둔 지속 가능한 스마트 농업을 위한 딥러닝 기반 이미지 분류에 대한 이전 연구 개요와 관련하여 참고문헌 [13]은 Random Crop, Random Horizontal Flip 및 Google AutoAugment로 구성된 이미지 증강 기술을 사용하여 토마토 해충을 분류하는 프로세스를 제시했다. 참고문헌[14]은 딸기 해충을 진단하기 위한 여러 전문 시스템을 제안했다. 이 연구에서는 재배의 환경 조건, 식물의 질병 발생 부위, 해충을 통해 나타난 증상을 수집하여 해충에 대비하기 위한 전문 시스템을 제안했다. 참고문헌 [15]은 관련 실험을 통해 식물에 영향을 미치는 방법을 통해 해충 통제의 효과를 제시했다. 특히, 해충 및 질병에 대한 영향 정도를 직접 실험을 통해 측정했다. 참고문헌 [16]은 증상에 특화된 분할된 이미지 데이터셋을 제안하여 딥러닝 모델의 해충 감지 성능을 향상시키는 방법을 제안했다. 제안된 해충 감지 성능 방법을 참조하여, 이 연구는 프로세스에 부분적으로 적용했다. 딸기의 주요 해충 및 질병의 진단 및 통제에 대한 정보는 [17]에서 참조했다. 특히, 묘목 기간 동안의 해충 통제에 대해 자세히 설명하였으며, 감염시 사례를 준비하고 배포하였다. [18]에서는 딥러닝 모델로 딸기 잎 이미지 데이터를 학습하여 질병의 존재를 식별할 수 있는 모델을 제안하였다.

기존 연구들은 강력한 ImageNet 모델을 사용하여 높은 정확도를 달성하고 다양한 주제를 예측하는 연구를 수행하였다. 최근 많은 ImageNet 모델의 등장에 따라 관련 ImageNet 모델을 사용하는 연구도 크게 증가하였다는 것이 확인되었다. ImageNet 모델의 활용 측면에서는 다양한 주제에 적용할 수 있지만, 그 중에서도 농산물에 적용된 연구가 활발히 증가하고 있다는 것을 발견하였다. 기존 연구의 한계로는 데이터셋의 다양성이 제한적이며, 실제 세계의 조건을 제한적으로 고려하고 경제적 타당성을 제한적으로 고려하는 것이 있다.

III. The Proposed Scheme

본 연구는 여러 독특한 특징을 활용하여 딥러닝 분야의 이전 연구와 구별된다. 첫째, Pseudo-Labeling을 활용한 안정적인 학습 과정을 채택한다. 둘째, 두 가지 강력한 ImageNet 모델을 결합한 앙상블 학습 방법을 구현하여 모델의 예측 정확도를 크게 향상시킨다. 셋째, 에폭 수가 적음에도 불구하고 효율적인 CNN 이미지 네트워크 모델을 활용하여 우수한 성능을 달성한다. 이 프로젝트의 학술적 의의는 잎 이미지 데이터로 모델을 학습시키고 앞서 언급한 차별화된 포인트를 활용하여 해충의 영향을 진단하고 예방하며 완화하는 능력에 있다.

이전의 딸기 해충 분류 연구는 주로 이미지 분류 정확도를 향상시키는 데 중점을 두었으며, 특히 정상 및 비정상잎 이미지와 관련된 문제를 다루었다. 반면, 현재 연구는 이미지 분류의 더 포괄적인 범위를 조사함으로써 이전 연구와 구별된다. 구체적으로는, 연구는 국내 농장에서 흔히 발견되는 정상 잎 이미지와 네 가지 다른 유형의 해충(퓨자륨 위트, 면화 진드기, 백곰병, 및 진드기)을 비교한다. 이 연구는 모든 다섯 가지 이미지 유형을 높은 정확도로 자동 분류할 수 있는 새로운 딥러닝 기반 모델을 제시한다.

3.1 Crop disease detection computer vision system

컴퓨터 비전 시스템은 세 가지 주요 레이어로 구분한다: (i) 인식 및 이미지 캡처, (ii) 모델 적용 및 감지, (iii) CV 감지 결과에 대한 사용자 접근. 첫 두 레이어는 수집 노드에서 로컬로 처리되며, 세 번째 레이어는 사용자가 로컬 또는 원격으로 처리할 수 있다. 컴퓨터 비전 애플리케이션의 개발은 세 가지 주요 목표를 가진다: (i) 인터넷 연결이 없는 원격 지역에서 고정밀 CV 모델을 구현하고 사용하는 방법, (ii) 딸기 질병의 실시간 감지, (iii) 딸기 재배에서 가장 흔한 질병 7가지를 식별하는 것. 최종 배포된 모델은 딸기에서 가장 흔한 질병 7가지를 감지하고 분류할 수 있다. 그림 1는 딸기에서 이러한 질병의 존재를 자세히 보여 준다.

CPTSCQ_2023_v28n12_67_f0001.png 이미지

Fig. 1. Strawberry disease image data

3.2 Dataset and training

훈련 목적으로 이미지를 사용하여 감지 모델을 훈련하고 테스트한다. 데이터셋은 딸기에 나타나는 7가지 주요 및 가장 흔한 질병들의 이미지를 포함하고 있다: 각진 잎반점, 과실의 부패, 꽃의 병든 부분, 회색 곰팡이, 잎 반점, 가루곰팡이 과실, 그리고 가루곰팡이 잎. 이미지는 훈련을 위해 80%와 테스트 단계를 위해 20%로 분할된다.

라벨이 붙은 데이터셋을 사용하는 주요한 장점은 모델의 빠른 훈련과 현장에서의 구현이다. 따라서 모든 이미지를 캡처하고 수동으로 라벨링하는 것은 비용이 들지 않는다. 이러한 작업은 또한 객체 감지 모델을 개발하는 모든 파이프라인에서 시간이 더 많이 소요될 수도 있다. Kaggle, AI-HUB와 같은 웹사이트는 인공 지능 응용 프로그램을 활용할 수 있는 대량의 이미지 및 원시 데이터 데이터셋을 제공한다. 또한 여러 전문가와 대학, 연구기관, 기업이 커뮤니티에 기여하여 여러 데이터셋을 대중에게 제공한다. 데이터셋 개발을 위한 개발자들의 라벨링 방법을 보여주기 위해, 그림 2는 훈련 목적으로 사용되는 훈련 데이터를 표시하였다.

CPTSCQ_2023_v28n12_67_f0002.png 이미지

Fig. 2. Image data for learning

정확한 객체 감지 모델을 훈련시키려면 하이퍼파라미터를 설정하고 훈련을 잘 실행해야 한다. 훈련 과정의 기간과 실행을 구성하기 위해 몇몇 파라미터를 설정해야 한다. 에포크와 배치 크기는 훈련의 연장선을 구성하는 파라미터이다. 배치 크기는 모델 파라미터 조정 전에 작업할 샘플의 수를 정의한다. 에포크는 모델이 훈련 데이터셋을 통과하는 전체 패스 수를 제어하는 데 관련되어 있다. 또한, Yolo v5는 모델의 성능과 정확도에 영향을 주는 다양한 가중치 크기를 제공한다. 제안된 Yolo v5 모델의 에포크는 100으로, 배치 크기는 16으로 고정된다. 이는 Google Colab이 서버 사용을 제한하기 때문이며, 이 구성은 완료하는 데 3시간 미만이 걸린다. 또한, Yolo v5 모델의 가중치 크기는 훈련 중에 반복적으로 변경된다. 표 1 [19]은 모델 훈련을 위해 사용 가능한 가중치 크기를 보여준다. 간단히 말해서, Yolo v5n와 Yolo v5s는 속도는 있지만 정확도는 낮다. 반면에, Yolo v5m, v5l, v5x는 다른 것들보다 속도는 느리지만 더 정확하다.

Table 1. Yolo v5 weight details

CPTSCQ_2023_v28n12_67_t0001.png 이미지

3.3. Machine learning

센서 읽기에서의 오류를 감지하기 위해 ML을 일부 적용하였다. 이 응용 프로그램은 트리 기반의 이상 탐지 모델인 Isolation Forest Classifier 알고리즘을 사용한다. 알고리즘은 데이터가 전형적인 특성 [20]과 다른 데이터로 이상치를 간주한다. 표준 특성은 프로세스 내에서 일반적으로 나오는 데이터들이고, 이상치는 예상치 못한 데이터다. 특정 지역은 잘 알려진 온도 프로파일을 보이므로, 이상치는 센서 노드에 의해 제시된 모든 이상치가 데이터로 제공될 수 있다. 이러한 값은 일반적으로 센서, 읽기 또는 연결 실패의 결과이다.

알고리즘을 선택한 뒤에 있는 이유는 작은 메모리 요구 사항과 낮은 선형 시간 복잡도 [20]이다. 이 모든 것은 Raspberry Pi 4B 보드에서 실시간 데이터 분석에서 모델이 성능을 발휘하는 것으로 가정한 것이다. NodeRED에 설치된 모델은 실시간 데이터를 분석한다. 그 기능은 딸기가 처해져 있는 조건에 대한 사용자 정보에 대한 더 신뢰할 수 있는 데이터를 제공한다. 또한, 이 접근법은 센서가 언제든지 실패할 수 있다고 간주하며, 모든 IoT 플랫폼 데이터 중심의 접근법에 위험을 초래한다.

구현 및 작업 파이프라인 : Isolation Forests는 목표 모델이 많은 정상 데이터 중에 적은 샘플을 포함하는 데이터셋을 사용하는 이상 탐지 모델이다. 몇몇 샘플은 이상치로 명명된다. 모델의 목표는 이러한 이상치를 고립시키기 위해 트리를 건설하는 것이다. 간단히 말하면, Isolation Forest는 Random Forest [20]에서 볼 수 있는 Isolation Trees와 유사하다. 이 모델은 Scikit Learn 라이브러리[21]의 일부이며 NodeRED 대시보드 도구에 배포된다. 이 도구는 실시간으로 센서 데이터를 수용하고 이상치 존재를 확인하기 위한 ML 흐름을 개발할 수 있게 한다. 개발 및 훈련 단계는 Anaconda Navigator와 Python을 사용하여 로컬에서 수행된다. 먼저, 훈련 목적으로 데이터셋이 정의된다. 모델이 올바른 데이터 특성을 캡처하도록 훈련하는 데 정확한 데이터를 사용하는 것은 필수적이며 표준 특성을 갖지 않는 모든 데이터는 이상치로 분류된다.

ML 모델의 입력은 데이터를 수집하고 구조화하는 센서 노드에 의해 제공된다. JSON 형식으로 구조화된 모든 데이터는 실시간으로 모델 입력에 주입되어, 시스템이 자동으로 온도와 습도의 변화를 분석하고 검색하게 한다. 모델 출력은 InfluxDB 클라우드와 오프라인 데이터베이스로 전송된다. Grafana API는 실시간으로 데이터를 얻고 사용자를 위한 대시보드에 정보를 바 그래프로 표시한다. 모든 감지된 이상치는 데이터베이스나 대시보드에서 조회할 수 있다. 또한, 수십 개의 센서 노드를 가진 응용 프로그램을 통해 센서와 관련된 문제를 더 쉽게 감지할 수 있다.

3.4. Data modeling

Pseudo-Labeling (의사 라벨링) : 안정적인 데이터 학습을 위해 Pseudo-Labeling 기법을 도입하였다. Pseudo-Labeling은 대표적인 반지도 학습 방법으로 Kaggle 및 Dacon과 같은 데이터 분석 대회에서 자주 사용되는 강력한 기술이다. Pseudo-Labeling을 통해 지도 학습으로 사전 훈련된 ImageNet 모델을 사용하여 라벨이 없는 이미지 데이터에 대한 예측을 수행한다. Pseudo-Labeling 후 확장된 데이터셋을 사용하여 여러 번 학습이 수행된다.

적용된 Pseudo-Labeling 순서는 다음과 같다. 첫째, ImageNet 모델을 올바른 라벨링이 있는 이미지 데이터로 학습한다. 둘째, 이전에 생성된 ImageNet 모델을 사용하여 라벨이 없는 데이터를 예측하고 결과를 라벨로 사용하여 새로운 Pseudo-Label 데이터를 생성한다. 셋째, 이전에 생성된 Pseudo-Label 데이터와 올바른 답으로 라벨링된 기존 이미지 데이터를 모두 사용하여 또 다른 ImageNet 모델을 생성하고 재훈련한다. 넷째, 동일한 방법으로 ImageNet 모델을 학습시키기 위해 이 과정을 총 5회 수행하였다. 이 과정은 라벨링 된 데이터가 부족하거나 획득하기에 비용이 많이 드는 경우에 모델 성능을 개선하는 데 도움이 될 수 있다. 그림 5는 Pseudo-Labeling 과정을 보여준다.

Pseudo-Labeling: 여러 모델을 사용하여 성능을 비교하고 가장 성능이 좋은 모델을 선택할 수 있다. Tasin 등은 기계 학습 회사를 사용하여 당뇨병을 예측하는 논문에서 이를 제시하였다[22]. 이 연구에서는 다양한 모델을 사용하는 대신 단일 고 정확도 ImageNet 모델(RegNet)을 Pseudo-Labeling에 사용하기로 결정하였다. 우리의 목표는 새로운 방법을 제안하고 그 효과를 보여주는 것이었으며, 단일 모델을 사용하는 것이 우리의 목표를 달성하는데 충분하다고 판단하였다. 그러나 향후 연구에서 다양한 ImageNet 모델을 사용하는 방법을 탐구함으로써 우리의 방법을 개선할 가능성을 인식하고 있다.

Pseudo-Labeling 성능: Pseudo-Label 데이터로 훈련된 모델의 성능과 그렇지 않은 모델의 성능을 비교함으로써 평가될 수 있다. 일반적으로 검증 데이터셋에서 이를 평가한다. 또한, Pseudo-Labeling 과정에서 사용된 다양한 ImageNet 모델의 효과성도 성능을 평가하기 위해 비교될 수 있다. 이 연구에서는 Pseudo-Label 데이터를 사용하여 훈련된 모델과 그렇지 않은 모델의 성능을 비교하는 방법을 사용하지 않았으므로, 검증 데이터셋에서 Pseudo-Label 데이터로 훈련된 모델의 성능을 평가하였고, 이는 Pseudo-Labeling이 모델의 성능에 긍정적인 영향을 주었다.

3.5. ImageNet model

사용된 코드는 Kaggle의 "Plant Pathology 2020"에서 Akash Haridas[23]와 Tarun Paparaju[24]에 의해 작성되었다. 이전 연구에서는 이미지 처리를 위한 모델의 적절한 사용과 전처리 단계에서 높은 정확도를 확인했다. 따라서, 이 연구에서는 EfficientNet 모델과 RegNet 모델을 사용하기로 결정했다. 이 연구에서는 EfficientNet-B3 모델을 사용했다. 모델의 크기를 고려할 때, B3 모델이 충분하다고 판단되었다. 또 다른 모델로 RegNetY-064 모델을 사용했다. PyTorch 이미지 모델 라이브러리를 사용하여, 기본 모델로서 강한 일반화 성능을 가진 RegNet으로 모델을 훈련시켰다. 이 연구에서는 RegNetY-064를 기반으로 Pseudo-Labeling을 반복적으로 수행했다.

3.6. Ensemble learning

RegNet과 EfficientNet을 사용하여 예측 및 앙상블 학습을 위한 모델 디렉토리를 생성했다. 또한, 우리는 훈련을 위한 데이터 프레임을 생성하기 위해 Pseudo-Labeling을 사용하여 총 다섯 번 반복했다. 첫번째 Pseudo-Labeling에서는 최적화된 RegNet Five-Fold 앙상블 학습을 사용했다. 그 후 동일한 모델 설정에서 총 네 번의 Pseudo-Labeling 업데이트 훈련을 수행하여 총 다섯 번의 Pseudo-Labeling 훈련을 수행했다. 또한 RegNet과 EfficientNet을 결합하여 앙상블 학습을 적용했다. 앙상블 학습은 최적의 솔루션을 찾기 위해 여러 기계 학습 모델을 활용하는 기술이다. 여러 모델을 사용하여 데이터를 훈련 및 학습하고, 모든 모델의 예측을 평균화하여 오류를 줄이고 정확도를 개선한다. 마지막으로, EfficientNet 다섯 번 앙상블 모델이 가장 높은 벤치마크 테스트를 보여주었음을 확인했다. 아래의 그림은 이 연구에서 사용된 다섯 번의 앙상블 학습의 구조를 보여준다.

CPTSCQ_2023_v28n12_67_f0003.png 이미지

Fig. 3. Ensemble Learning Structure

3.7. Research proposal model

제안된 모델의 성능은 (i) 평균 정밀도, (ii) 정밀도, (iii) 재현율, (iv) 정확도, 그리고 (v) 상자 손실과 같은 지표를 통해 평가된다. 이러한 모든 지표의 자세한 설명과 방정식은 다음과 같다.

평균 정밀도 (mAP): 이 지표는 평균 정밀도 (AP)의 평균을 나타낸다. 여기서 AP는 곡선 아래의 영역으로 표현된다.

정밀도: 모델에 의한 모든 분류와 올바른 분류 간의 관계. 일반적으로 거짓 양성이 거짓 음성보다 더 큰 무게를 가질 때 사용된다.

\(\begin{aligned}Precision=\frac{T P}{T P+F P}\end{aligned}\)       식1

재현율: 모든 진짜 양성과 진짜 양성과 거짓 음성의 합 사이의 관계이다. 거짓 음성이 거짓 양성보다 더 해롭다고 간주되는 상황에서 사용되는 정밀도와 유사하다.

\(\begin{aligned}Recall=\frac{T P}{T P+F N}\end{aligned}\)       식2

정확도: 모델의 전반적인 성능에 대해 알려주며, 모델이 수행한 모든 분류 중 올바른 분류의 관계를 나타낸다. 정확도는 모델의 성능에 대한 좋은 일반적인 지표이다.

\(\begin{aligned}Accuracy=\frac{T P+T N}{T P+F P+T N+F N}\end{aligned}\)       식3

박스 손실: 경계 박스가 진짜 박스와 얼마나 가까운지를 측정한다.

먼저, 훈련 데이터셋을 통해 훈련 중 모델 성능에 관한 지표를 측정한다. 훈련 데이터셋은 모델 학습 중에 사용되는 데이터 세트로, 더 나은 탐지 및 분류 능력을 보장하기 위해 가중치와 같은 매개변수 조정을 수행한다. 위에서 제시된 모든 지표는 각 에포크 동안 모델의 성능을 따르기 위해 훈련 단계 동안 사용된다. 각 에포크는 모델이 모든 이미지를 한 번 실행한 것을 나타낸다. 또한, 모든 지표는 더 나은 및 더 성능이 좋은 모델을 찾기 위해 다양한 가중치 크기에 적용된다. 또한, 다양한 가중치 크기 간의 모든 테스트는 표 2에 요약되어 있다.

Table 2. Yolo v5 weight details

CPTSCQ_2023_v28n12_67_t0002.png 이미지

요약하면, 모든 모델들은 동일한 하이퍼 파라미터 하에서 유사한 방식으로 수행되었으며, 훈련 데이터셋에서 수행된 일부 탐지는 그림 4에서 확인할 수 있다. 그러나 큰 가중치를 가진 모델들은 SD 카드에 더 많은 공간을 차지하며 최종 결과에 대한 성능 차이는 거의 없다. 그 때문에 딸기 농장에서의 질병 탐지 작업을 위한 선택된 모델은 Yolo v5s이다. 이 모델은 또한 테스트 데이터셋에서도 유의미한 결과를 보였다. 테스트 데이터셋은 훈련 데이터셋과 독립적인 데이터 세트로, 모델의 탐지 능력을 다양한 시나리오와 상황에서 테스트하는 데 탁월하다. 모델이 테스트 세트에서 보여준 성능은 평균 정밀도(0.5)가 78.7%, 정확도가 92.8%, 재현율이 90.0%, 그리고 F1-점수가 76%로 그림 5에 나타난다. 그림 6에 제시된 매트릭스도 모델의 성능을 보여준다. 여기서 모델은 6가지 질병을 탐지하는 능력이 좋다. 그러나, 모델은 Angular Leafspot 질병을 인식하는 데 문제가 있으며, 얻어진 행렬에서 0.23만 점수를 얻었다.

CPTSCQ_2023_v28n12_67_f0004.png 이미지

Fig. 4. Disease Detection Details

CPTSCQ_2023_v28n12_67_f0005.png 이미지

Fig. 5. Test Dataset Model Performance

CPTSCQ_2023_v28n12_67_f0006.png 이미지

Fig. 6. Correlation Matrix

데이터셋 내의 클래스 간 불균형한 예시는 클래스 간 다른 성능을 초래할 수 있다. 첫 번째 단계는 훈련 단계 동안 모델에 제공된 각 클래스의 샘플(이미지) 수를 정량화하는 것이었다. 불균형한 데이터셋을 가지고 있음에도 불구하고, Angular Leafspot은 다른 클래스와 비교했을 때 상당한 양의 이미지를 가지고 있다. 따라서 더 큰 데이터셋과 새로운 이미지를 사용한 테스트를 수행하여 그것이 모델 결과에 미치는 영향을 입증해야 한다.

이 프로젝트의 CV 프로토 솔루션은 농업 현장에서 실행되기 위한 어플리케이션이기 때문에 캡처된 이미지의 밝기 변화를 감지할 수 있다. 이를 염두에 두고, 모델의 성능을 여러 밝기 변동에서 테스트하기 위해 모델에 다양한 밝기 프로필을 가진 여러 이미지를 제시하는 테스트가 진행되었다. 이를 위해 테스트 데이터셋의 모든 이미지의 밝기를 반복적으로 변경하는 Python 알고리즘이 사용되었다. 모델에 의해 제시된 최종 이미지는 그림7에서 볼 수 있다.

CPTSCQ_2023_v28n12_67_f0007.png 이미지

Fig. 7. Dataset brightness control

데이터 세트는 훈련용 80%와 테스트용 20%로 분할한다. 이상치는 Python 언어의 균일 분포 함수를 통해 생성한다. 이 함수는 온도에 대해 0에서 50 사이의 값을, 습도 변수에 대해 0에서 100 사이의 값을 생성한다. 그 후, 이러한 값들은 원래의 데이터 세트에 추가한다. 수행된 테스트에서 모델은 테스트 세트에서 93.562%의 정확도를 보여준다. 온도와 습도의 관측치 및 생성된 이상치를 보여주는 시각화 그래프는 그림 8과 9에 정리하였다.

CPTSCQ_2023_v28n12_67_f0008.png 이미지

Fig. 8. Visualization of test temperature observations

CPTSCQ_2023_v28n12_67_f0009.png 이미지

Fig. 9. Visualization of test humidity observations

모델이 사용한 결정 기준을 더 잘 이해하기 위해 Lundberg가 제시한 Shapley Additive exPlanations (SHAP) 프레임워크를 사용한다. 이 프레임워크는 게임 이론의 개념을 기반으로 한 Shapley 값에 기반한다. 프레임워크의 목적은 Shapley 값을 사용하여 모델의 최종 결과에 각 예측 변수가 얼마나 기여하는지 설명하는 것이다. 모델은 출력으로 '내부 값' 또는 '이상치' 두 가지 대안만 갖는다. 이 값들은 각 관측치의 주변 기여도를 기반으로 계산한다. 주어진 관측치가 이상치로 감지되면 모델 출력은 '-1'이 될 것이며, 내부 값으로 감지된 관측치는 '1'이 될 것이다. SHAP 프레임워크는 해석 가능한 그래프를 생성하기 위한 다양한 도구를 제공한다. 이 그래프들은 주어진 변수가 모델 입력 관측치를 기반으로 최종 모델 순위에 어떤 영향을 미쳤는지를 보여준다. 이 영향은 순위 내에서의 Shapley 값의 중요성을 기반으로 한다. 그림 22은 데이터 세트의 샘플에 대한 여덟 개의 분류를 보여준다.

CPTSCQ_2023_v28n12_67_f0010.png 이미지

Fig. 10. Model classifications and their impact

이 샘플로부터 모델이 만든 최종 분류 내에서 각 값과 변수의 중요성을 관찰할 수 있다. 예를 들어, 훈련 중에 모델에 제시된 훈련 샘플을 고려할 때 예상보다 훨씬 높은 온도 값은 이상치로 분류될 수 있다. 마찬가지로 훈련 단계에서 모델에 제시된 온도 샘플을 고려하면 예상보다 훨씬 낮은 값이 감지되어 이상치로 분류될 수 있다. SHAP 프레임워크는 해석 가능한 그래프를 생성하기 위한 여러 도구를 제공한다. 이 그래프들은 모델 입력 관찰을 기반으로 한 최종 모델 순위에 주어진 변수가 어떤 영향을 미쳤는지 보여준다. 이 영향은 차례로 순위 내에서 Shapley 값의 관련성을 고려한다. 요약하면, 구현된 모델은 제시된 이상치를 감지하고 실제 온도와 습도 값과 그렇지 않은 값을 구별할 수 있다.

CPTSCQ_2023_v28n12_67_f0011.png 이미지

Fig. 11. Correlation Matrix

혼동 행렬은 모델의 성능을 측정하고 평가하기 위해 사용되는 대표적인 지표이며, 얼마나 정확하게 예측된 값이 실제 관측된 값에 맞는지를 나타내는 행렬 형태의 지표로 볼 수 있다. 혼동 행렬에서는 각 셀의 색상이 숫자의 크기에 따라 어두워진다. 그림을 통해 네 가지 딸기 잎이 높은 정확도로 구별된 것을 확인할 수 있다. 그러나 위트 병 잎은 다른 잎 이미지 데이터의 예측 정확도보다는 약간 낮은 정확도를 보였다.

혼동 행렬을 통해 이 연구의 정확도, 회수율, 정밀도를 얻을 수 있다. 정확도는 올바르게 예측된 데이터의 비율을 전체 데이터 양에 대한 것이며, 회수율은 실제 양성에 대한 참 양성의 비율이고, 정밀도는 예측된 양성 중 참 양성의 비율이며, 모델이 얼마나 정확하게 양성 인스턴스를 식별하는지를 반영한다.

CPTSCQ_2023_v28n12_67_f0012.png 이미지

Fig. 12. Learning Curve

위 그림은 이 연구의 학습 곡선 결과이다. 일련의 학습 과정의 결과로 모델은 0.8560의 정확도를 달성하였으며, 학습 시간은 약 1시간이었으며 에폭 수는 30으로 설정되었다. 1시간의 학습 시간은 ImageNet 데이터 세트에 학습된 RegNet과 EfficientNet 모델의 앙상블을 사용하여 모든 30 에폭의 학습을 완료하는 데 걸린 시간을 나타낸다. 이 연구에서는 최적화 및 손실 함수로 Adam 최적화 및 CrossEntropyLoss 함수를 사용하였다. 학습 곡선 그래프는 각 학습 및 검증 데이터 세트의 손실 함수 값과 예측 정확도를 보여준다. 훈련 손실은 0.0147로 측정되었고, 검증 손실은 0.1420이었다.

학습 곡선 그래프에서 볼 수 있듯이, 낮은 에폭에서도 높은 예측 정확도가 표시된다. 전반적으로 학습 시작부터 높은 정확도를 보이며, 에폭 수가 증가함에 따라 지속적으로 증가한다는 것을 확인할 수 있다. 각 해충 유형별로 다른 정확도에 대해서는, 각 유형의 이미지 품질과 이미지 특성의 차이 때문일 것으로 보인다. 본 프로젝트에서는 딸기 해충 분류에 관한 기존 연구와 모델의 성능을 비교하지 않았다. 딸기를 위한 여러 가지 유형의 해충을 분류한 연구를 찾을 수 없었기 때문이다. 전반적으로 학습 시작부터 높은 정확도를 보이며, 에폭 수가 증가함에 따라 지속적으로 증가한다는 것을 확인할 수 있다. 다섯 가지 상태의 잎 이미지 데이터에 대한 높은 예측 정확도의 원인은 강력한 ImageNet 모델의 사용과 앙상블 학습으로 인한 효과적인 데이터 학습, 뿐만 아니라 데이터 전처리 과정 중 학습 인식에 문제가 있을 수 있는 노이즈 이미지 데이터 또는 잎이미지 데이터의 사용으로 인한 것이다. 미리 지우는 방법을 적용하는 것이 적절한 이유로 간주된다. 이미지 데이터는 일련의 전처리 과정을 통해 학습되었으며, 이를 통해 높은 정확도로 다섯 가지 유형의 잎 이미지 데이터를 구별할 수 있는 모델 연구가 진행되었다.

3.3. Model discussion

Table 3. Advantages and disadvantages of each research model

CPTSCQ_2023_v28n12_67_t0003.png 이미지

이 연구에서는 인식 및 이미지 캡처, 모델 적용 및 감지, 그리고 사용자 접근의 세 가지 주요 레이어를 포함하는 복잡한 컴퓨터 비전 시스템을 사용하였다. 이 시스템은 인터넷 연결이 없는 원격 지역에서도 고정밀 모델을 구현하고 사용할 수 있지만, 시스템 구조의 복잡성으로 인한 구현 및 유지 관리에 어려움이 있음을 확인할 수 있었다.

다양한 질병 이미지가 포함된 데이터셋을 활용하여 높은 정확도를 달성하지만, 데이터 라벨링 과정의 시간 소모 및 데이터셋의 편향성으로 인해 일반화 능력이 제한될 수도 있다. 이상치 탐지에 특화된 트리 기반 알고리즘인Isolation Forest Classifier를 사용하여 낮은 메모리 요구 사항과 선형 시간 복잡도로 효율적인 처리를 가능하게 한다. 그러나 모델의 범용성이 제한될 수 있음을 본 연구를 통해 확인하였다. 라벨이 없는 데이터에 대한 예측을 가능하게 하는 Pseudo-Labeling 방법을 통해 데이터 활용도를 높이고 반지도 학습을 통해 모델 성능을 개선하지만, Pseudo-Labeling 데이터의 오류가 모델 성능에 영향을 줄 수 있다.

IV. Conclusions

본 연구는 스마트팜과 지능형 사물인터넷(IoT) 플랫폼을 중심으로 한 연구를 제시하였다. 제안된 플랫폼은 다양한 데이터 분석 기법과 실제 농장 환경에서의 응용을 통해 검증되었다. 특히, 이 플랫폼은 디지털 농장 환경 구현을 위한 기회를 제공하며, CV, ML, WSN과 같은 첨단 기술들이 통합되어 IoT 플랫폼 내에서 구현된다. 본 연구의 주요 목적은 딸기 잎에서 발생하는 해충 감염 초기 증상을 높은 정확도로 탐지하는 딥러닝 기반의 분류 모델을 개발하는 것이었다. 이를 위해 Pseudo-Labeling 전처리 방법과 RegNet, EfficientNet 등의 ImageNet 모델을 활용하였다. 앙상블 학습의 적용을 통해, 모델의 정확도와 안정성이 향상되었다. 전반적으로, 높은 예측 정확도를 달성하는 데 성공하였고, 제안된 모델은 향후 인공 지능 서비스와 상업화의 가능성을 일부 제시하였다. 센서 노드의 활용, CV 모델의 테스트, LoRa 통신의 검증, 그리고 ML 모델의 실시간 모니터링 기능 등 다양한 방법을 통해 이 연구는 농업의 혁신과 스마트팜의 발전에 크게 기여할 것으로 예상된다. 그러나, 이 연구에는 몇 가지 한계점이 존재한다. 첫째, 사용된 데이터셋은 특정 지역과 조건에 한정되어 있어, 다른 환경 조건이나 다양한 종류의 농작물에 대한 모델의 적용성에 제한이 있을 수 있다. 둘째, 모델은 상대적으로 큰 데이터셋에 대한 처리 능력이 제한적이며, 실시간 데이터 처리와 대규모 데이터셋에 대한 확장성이 충분히 검증되지 않았다. 셋째, 본 연구에서 사용된 모델은 특정 질병이나 해충에 대한 편향성을 보일 수 있으며, 이는 일반화 능력을 저하시킬 수 있다.

향후 연구에서는 이러한 한계점을 해결하기 위한 방안이 모색될 필요가 있으며, 다양한 지역과 환경 조건에서 수집된 데이터를 포함하는 확장된 데이터셋을 사용하여 모델의 범용성과 적용성을 개선할 수 있다.

ACKNOWLEDGEMENT

“This research was supported by the MSIT(Ministry of Science and ICT), Korea, under the Grand Information Technology Research Center support program(IITP-2023-2020-0-01489) supervised by the IITP(Institute for Information & communications Technology Planning & Evaluation)”

참고문헌

  1. H. You, C. Son, "Recognizing Apple Leaf Diseases via Segmentation-Aware Deep Convolutional Neural Networks for Smart Farm," Journal of Korean Institute of Information Technology. Vol. 17, No. 6, pp.73-83, 2019. DOI : 10.14801/jkiit.2019.17.6.73
  2. A. Fuentes, S. Yoon, S. Kim, and D. Park, "A Robust Deep-Learning-Based Detector for Real-Time Tomato Plant Diseases and Pests Recognition," Sensors, Vol. 17, No. 9, 2017. DOI:10.3390/s17092022
  3. J. Han, E. Choi, E. Kim, Y. Lee, and M. Lee, "Development of Enhanced Mushroom Image Classification Model based EfficientNet," In Proceeding of the 2021 General Conference of Korea Contents Association, Virtual, pp. 15-19 November 2021; pp. 399-400.
  4. E. K. Kabanga, and C. Kim, "Malware Images Classification Using Convolutional Neural Network, " Journal of Computer and Communications, Vol. 6, pp. 153-158, 2018. DOI:10.4236/JCC.2018.61016
  5. B. Ji, "Prediction of Rheological Properties of Asphalt Binders Through Transfer Learning of EfficientNet," Journal of the Korean Recycled Construction Resources Institute, Vol. 9, No. 3, pp. 348-355, Sep 2021. DOI: 10.14190/JRCR.2021.9.3.348
  6. M. Kim, and C. Choi, "Superpixel-based Apple Leaf Disease Classification using Convolutional Neural Network," Journal of Broadcast Engineering, Vol. 25, pp. 208-217, May 2020. DOI: 10.5909/JBE.2020.25.2.208
  7. J. Kang, I. Kim, H. Lim, and J. Gwak, "A Crack Detection of Wooden Cultural Assets using EfficientNet model," Korean Society of Computer Information, Vol. 29, pp. 125-127, 2021.
  8. C. Dong, Z. Zhang, J. Yue, and L. Zhou, "Automatic recognition of strawberry diseases and pests using convolutional neural network," Smart Agricultural Technology, Vol. 1, 2021. DOI: 10.1016/j.atech.2021.100009
  9. J. Xiao, P. Chung, H. Wu, Q. Phan, J. Yeh, and T. Hou, "Detection of Strawberry Diseases Using a Convolutional Neural Network," Plants, 2021. DOI: 10.3390/plants10010031
  10. U. Atila, M. Ucar, L. Akyol, and K. Ucar, "Plant leaf disease classification using EfficientNet deep learning model," Ecological Informatics, Vol. 61, 101182, 2021. DOI: 10.1016/j.ecoinf.2020.101182
  11. I. Radosavovic, R. Kosaraju, R. Girshick, K. He, and P. Dollar, Designing Network Design Spaces; Conell University: Ithaca, NY, USA, 2020. DOI: 10.48550/arXiv.2003.13678
  12. D. Chung, and D.Tai, "A fruits recognition system based on a modern deep learning technique," Journal of Physics: Conference Series, Vol. 1327, 012050. 2019. DOI: 10.1088/1742-6596/1327/1/012050
  13. H. Ham, D. Kim, J. Chae, S. Lee, Y. Kim, H. Cho, and H. Cho, "A Study of Tomato Disease Classification System Based on Deep Learning," The Transactions of the Korean Institute of Electrical Engineers, Vol. 69, No. 2, p.349-355, 2019. DOI:10.5370/KIEE.2020.69.2.349
  14. H. Kim, and D. Kim, "Deep-Learning-Based Strawberry Leaf Pest Classification for Sustainable Smart Farms" Journal of Sustainability, Vol. 15, Issue. 10, 2023. DOI: 10.3390/su15107931
  15. J. Kim, "Pathogen, Insect and Weed Control Effects of Secondary Metabolites from Plants," Journal of the Korean Society for Applied Biological Chemistry, Vol. 48, pp. 1-15, 2005.
  16. Y. Choi, N. Kim, B. Paudel, and H. Kim, "Strawberry Pests and Diseases Detection Technique Optimized for Symptoms Using Deep Learning Algorithm," Journal of Bio-Environment Control. 2022, Vol. 31, pp. 255-260. DOI: 10.12791/KSBEC.2022.31.3.255
  17. H. Ko, and J. Lee, "Diagnosis and Control of Major Parasitic Nematodes of Strawberries; National Institute of Agricultural Sciences" Jeonju, Republic of Korea, 2017. Available online: (accessed on 1 March 2023).
  18. H. Kim, D. Kim, "Early Detection of Strawberry Diseases and Pests using Deep Learning," ICIC Express Letter, Part B Application, Vol. 13, pp. 1069-1075, 2022. DOI: 10.24507/icicelb.13.10.1069
  19. Ultralytics/yolov5: v6.1-TensorRT, TensorFlow Edge TPU and OpenVINO Export and Inference. Zenodo 2022.(accessed on 14 June 2022).
  20. F. T. Liu, K. M. Ting and Z. -H. Zhou, "Isolation Forest," 2008 Eighth IEEE International Conference on Data Mining, Pisa Italy, pp. 413-422, 2008. DOI: 10.1109/ICDM.2008.17.
  21. F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, A. Muller, J. Nothman, and G. Louppe, et al. "Scikit-learn: Machine Learning in Python," Journal of Machine Learning Research. DOI:10.48550/arxiv.1201.0490
  22. D.I. Patricio, and R. Rieder, "Computer vision and artificial intelligence in precision agriculture for grain crops: A systematic review," Comput and Electronics of Agriculture, 2018, Vol. 153, pp. 69-81, 2018. DOI:10.1016/j.compag. 2018.08.001
  23. Kaggle-Plant Pathology 2020 in PyTorch. Available online (accessed on 1 March 2023).
  24. Kaggle-Plant Pathology 2020: EDA + Models. Available online (accessed on 1 March 2023).