<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Archiving and Interchange DTD v2.3 20070202//EN" "archivearticle.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="methods-article" dtd-version="2.3" xml:lang="EN">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Plant Sci.</journal-id>
<journal-title>Frontiers in Plant Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Plant Sci.</abbrev-journal-title>
<issn pub-type="epub">1664-462X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fpls.2023.1273029</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Plant Science</subject>
<subj-group>
<subject>Methods</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>DIC-Transformer: interpretation of plant disease classification results using image caption generation technology</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Zeng</surname>
<given-names>Qingtian</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Sun</surname>
<given-names>Jian</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/2400166"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Wang</surname>
<given-names>Shansong</given-names>
</name>
<xref ref-type="author-notes" rid="fn001">
<sup>*</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2400210"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<institution>College of Computer Science and Engineering, Shandong University of Science and Technology</institution>, <addr-line>Qingdao</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>Edited by: Yalin Wu, Lushan Botanical Garden (CAS), China</p>
</fn>
<fn fn-type="edited-by">
<p>Reviewed by: Jana Shafi, Prince Sattam Bin Abdulaziz University, Saudi Arabia</p>
<p>Parvathaneni Naga Srinivasu, Prasad V. Potluri Siddhartha Institute of Technology, India</p>
</fn>
<fn fn-type="corresp" id="fn001">
<p>*Correspondence: Shansong Wang, <email xlink:href="mailto:sswang@sdust.edu.cn">sswang@sdust.edu.cn</email>
</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>25</day>
<month>01</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>14</volume>
<elocation-id>1273029</elocation-id>
<history>
<date date-type="received">
<day>05</day>
<month>08</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>12</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2024 Zeng, Sun and Wang</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Zeng, Sun and Wang</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Disease image classification systems play a crucial role in identifying disease categories in the field of agricultural diseases. However, current plant disease image classification methods can only predict the disease category and do not offer explanations for the characteristics of the predicted disease images. Due to the current situation, this paper employed image description generation technology to produce distinct descriptions for different plant disease categories. A two-stage model called DIC-Transformer, which encompasses three tasks (detection, interpretation, and classification), was proposed. In the first stage, Faster R-CNN was utilized to detect the diseased area and generate the feature vector of the diseased image, with the Swin Transformer as the backbone. In the second stage, the model utilized the Transformer to generate image captions. It then generated the image feature vector, which is weighted by text features, to improve the performance of image classification in the subsequent classification decoder. Additionally, a dataset containing text and visualizations for agricultural diseases (ADCG-18) was compiled. The dataset contains images of 18 diseases and descriptive information about their characteristics. Then, using the ADCG-18, the DIC-Transformer was compared to 11 existing classical caption generation methods and 10 image classification models. The evaluation indicators for captions include Bleu1&#x2013;4, CiderD, and Rouge. The values of BLEU-1, CIDEr-D, and ROUGE were 0.756, 450.51, and 0.721. The results of DIC-Transformer were 0.01, 29.55, and 0.014 higher than those of the highest-performing comparison model, Fc. The classification evaluation metrics include accuracy, recall, and F1 score, with accuracy at 0.854, recall at 0.854, and F1 score at 0.853. The results of DIC-Transformer were 0.024, 0.078, and 0.075 higher than those of the highest-performing comparison model, MobileNetV2. The results indicate that the DIC-Transformer outperforms other comparison models in classification and caption generation.</p>
</abstract>
<kwd-group>
<kwd>transformer</kwd>
<kwd>image caption</kwd>
<kwd>image classification</kwd>
<kwd>plant diseases</kwd>
<kwd>Faster R-CNN</kwd>
</kwd-group>
<contract-num rid="cn001">2022ZD0119500</contract-num>
<contract-num rid="cn002">U1931207</contract-num>
<contract-num rid="cn005">2015TDJH102 </contract-num>
<contract-sponsor id="cn001">National Key Research and Development Program of China<named-content content-type="fundref-id">10.13039/501100012166</named-content>
</contract-sponsor>
<contract-sponsor id="cn002">National Natural Science Foundation of China<named-content content-type="fundref-id">10.13039/501100001809</named-content>
</contract-sponsor>
<contract-sponsor id="cn003">Science and Technology Development Fund<named-content content-type="fundref-id">10.13039/501100003009</named-content>
</contract-sponsor>
<contract-sponsor id="cn004">Taishan Scholar Foundation of Shandong Province<named-content content-type="fundref-id">10.13039/100012620</named-content>
</contract-sponsor>
<contract-sponsor id="cn005">Shandong University of Science and Technology<named-content content-type="fundref-id">10.13039/501100004295</named-content>
</contract-sponsor>
<counts>
<fig-count count="10"/>
<table-count count="12"/>
<equation-count count="29"/>
<ref-count count="71"/>
<page-count count="22"/>
<word-count count="13958"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-in-acceptance</meta-name>
<meta-value>Sustainable and Intelligent Phytoprotection</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1" sec-type="intro">
<label>1</label>
<title>Introduction</title>
<p>Rapid and accurate detection of plant diseases is crucial for increasing agricultural productivity. Traditionally, agriculture professionals rely on manual diagnosis to identify plant abnormalities caused by disease (<xref ref-type="bibr" rid="B1">Al-Hiary et&#xa0;al., 2011</xref>). However, this approach requires significant human and material resources and is not realistic (<xref ref-type="bibr" rid="B44">Ngugi et&#xa0;al., 2021</xref>). In response to these challenges, the use of image processing technology for automated diagnosis of plant diseases has garnered increased attention (<xref ref-type="bibr" rid="B4">Boulent et&#xa0;al., 2019</xref>).</p>
<p>In recent years, there has been remarkable progress in image classification due to the emergence of deep learning and neural networks. Among them, convolutional neural networks (CNNs) have shown good performance in image classification (such as <xref ref-type="bibr" rid="B57">Sun et&#xa0;al., 2022</xref>; <xref ref-type="bibr" rid="B55">Singh et&#xa0;al., 2023</xref>). However, a good CNN requires a large amount of training data (<xref ref-type="bibr" rid="B27">Keshari et&#xa0;al., 2018</xref>). Unfortunately, in the field of agricultural plant disease identification, the available labeled data are of poor quality and limited in quantity (<xref ref-type="bibr" rid="B56">Singh et&#xa0;al., 2020</xref>). Therefore, the first challenge in the task of classifying agricultural plant diseases through image classification is introduced: how to enhance the model&#x2019;s classification performance with a relatively small number of images.</p>
<p>Among the existing agricultural diseases, some diseases have very similar pathogenic characteristics. For instance, &#x201c;apple anthracnose&#x201d; and &#x201c;pear anthracnose&#x201d; in <xref ref-type="fig" rid="f1">
<bold>Figure&#xa0;1</bold>
</xref> are challenging to differentiate based on visual features alone. As a result, the accuracy of CNN-based models in identifying similar disease classes is significantly reduced (<xref ref-type="bibr" rid="B52">Rzanny et&#xa0;al., 2022</xref>). However, this rarely occurs when agricultural professionals observe and confirm the disease. This presents a second challenge in identifying images of agricultural diseases: how to develop a model that can accurately identify specific plant diseases by replicating the process of manual disease diagnosis.</p>
<fig id="f1" position="float">
<label>Figure&#xa0;1</label>
<caption>
<p>Examples of two diseases with similar pathogenic characteristics.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g001.tif"/>
</fig>
<p>To address both of these challenges, this article introduces image caption generation techniques for the following reasons:</p>
<list list-type="order">
<list-item>
<p>Image caption generation technology creates visual semantics based on features in disease images and then generates textual descriptions of affected areas using these visual semantics (<xref ref-type="bibr" rid="B68">Yang et&#xa0;al., 2022</xref>). This process closely resembles the behavior of agricultural experts manually identifying disease categories. This can address the second challenge presented.</p>
</list-item>
<list-item>
<p>The image classification task is single-task learning. When there are limited training data in the dataset, CNN-based image classification models may struggle to learn sufficient discriminant features, leading to slower performance in recognizing image classes (<xref ref-type="bibr" rid="B42">Luo et&#xa0;al., 2018</xref>). When there are limited image data samples, leveraging the benefits of multi-task learning can effectively mitigate the performance decline caused by the small sample size. Multi-task learning aims to extract useful information from other tasks and apply it to the current task, leading to an improved model performance model (<xref ref-type="bibr" rid="B51">Ruder, 2017</xref>). Image caption generation technology can extract rich semantic features from images (<xref ref-type="bibr" rid="B67">Xian et&#xa0;al., 2022</xref>). These visually and semantically rich features are shared during training, typically serving as discriminant features for recognizing objects. Therefore, by utilizing image caption generation technology, the model will continue to have a positive impact on image recognition even when there are relatively few image samples. Therefore, the combination of image captioning technology and image classification tasks addresses the first challenge. CNN-based image classification models may struggle to learn sufficient discriminant features, leading to slower performance in recognizing image classes (<xref ref-type="bibr" rid="B42">Luo et&#xa0;al., 2018</xref>). When there are limited image data samples, leveraging the benefits of multi-task learning can effectively mitigate the performance decline caused by the small sample size. Multi-task learning aims to extract useful information from other tasks and apply it to the current task, leading to an improved model performance model (<xref ref-type="bibr" rid="B51">Ruder, 2017</xref>). Image caption generation technology can extract rich semantic features from images (<xref ref-type="bibr" rid="B67">Xian et&#xa0;al., 2022</xref>). These visually and semantically rich features are shared during training, typically serving as discriminant features for recognizing objects. Therefore, by utilizing image caption generation technology, the model will continue to have a positive impact on image recognition even when there are relatively few image samples. Therefore, the combination of image captioning technology and image classification tasks addresses the first challenge.</p>
</list-item>
<list-item>
<p>By utilizing image caption generation technology, it is possible to combine images and text to create a multi-modal presentation. This tool is valuable for agricultural managers who need to analyze both visual and textual information simultaneously, allowing them to interpret agricultural plant disease classification results more comprehensively.</p>
</list-item>
</list>
<p>From the early methods to the recent advancements in deep learning, the accuracy of image caption generation has continuously improved. This has led to increased attention to the diversity of captions based on accuracy, which can generate more stylized image captions (<xref ref-type="bibr" rid="B16">Ghandi et&#xa0;al., 2023</xref>). In the field of agricultural diseases, the use of image caption generation technology is limited. While existing image recognition and classification technology for agricultural diseases is advancing, most models only provide the names of disease classes without clear explanations of the classification results (<xref ref-type="bibr" rid="B32">Kumar and Kumar, 2023</xref>). This lack of easy-to-understand explanations hinders farmers without specialized knowledge from correctly interpreting the recognition results, which does not align with real-world application needs. Given the current situation, this paper utilizes image caption generation technology in conjunction with image classification technology to produce descriptive information about disease characteristics based on the results of plant disease identification.</p>
<p>Based on image caption generation technology, a method called DIC-Transformer is proposed for agricultural plant disease image classification. This method can generate descriptive interpretations of disease areas in images.</p>
<p>The fourth section breaks down the method into four modules to accomplish three tasks: detection, interpretation, and classification. The four modules are the region detection module, sequence encoding module, caption generation module, and classification module. The disease region detection module completes the task of detecting the disease region. The second and third modules complete the interpretation task. The purpose of the interpretation task is to generate a textual description of the disease image features. The purpose of the classification task is to train a classifier that can identify categories of plant diseases. Finally, the name of the disease corresponding to the image is displayed. In the fifth section, the experimental part, we evaluate the DIC-Transformer on our self-constructed dataset (ADCG-18). The dataset contains 3,971 images, 9,040 instances of disease areas, and 3,971 textual descriptions. Experiments demonstrate that the DIC-Transformer method applied to the ADCG-18 dataset can address the proposed research topic. The article&#x2019;s contributions are divided into the following three parts:</p>
<list list-type="bullet">
<list-item>
<p>A method for plant disease image classification is proposed. This method can output the name of the disease class and additionally generate an explanatory description of the characteristics of this disease class.</p>
</list-item>
<list-item>
<p>An agricultural disease caption generation dataset is collected, named ADCG-18, which contains images of 18 diseases and textual descriptions of the corresponding images.</p>
</list-item>
<list-item>
<p>Extensive experiments prove that the performance of the DIC-Transformer on the dataset ADCG-18 is the best.</p>
</list-item>
</list>
<p>This paper is divided into six chapters: Abstract, Introduction, Related Work, Dataset Construction, Methods, Experiments, and Conclusion. The Abstract introduces the limitations of existing methods, the structure of the DIC-Transformer, the dataset, and the experimental results. The Introduction outlines the article&#x2019;s structure and the primary contributions. The Methods section outlines the principles and core concepts of DIC-Transformer. The Experimental section introduces the planned experiments, including the hardware configuration, software version, framework information, various parameters used, evaluation indicators, and the quantitative and qualitative analyses of the results. The Conclusion briefly outlines the issues addressed by our proposed model, its primary contributions, its limitations, and the future directions for improving the model.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related work</title>
<sec id="s2_1">
<label>2.1</label>
<title>Object detection</title>
<p>The continuous advancement of artificial intelligence, big data, and other technologies has ushered in new opportunities and challenges for image processing technology. The application of image processing technology in various fields is also more and more extensive and deep (<xref ref-type="bibr" rid="B34">Li et&#xa0;al., 2023</xref>). The rapid evolution of deep learning has also revolutionized the field of object detection. A large number of models of object detection use CNN models related to deep learning, such as R-CNN (<xref ref-type="bibr" rid="B18">Girshick et&#xa0;al., 2014</xref>), Fast R-CNN (<xref ref-type="bibr" rid="B17">Girshick, 2015</xref>), and Faster R-CNN (<xref ref-type="bibr" rid="B49">Ren et&#xa0;al., 2015</xref>). These methods improve detection performance by transforming object detection problems into classification and bounding box regression problems for candidate regions. In addition, these methods are essentially two-stage structures. After further development, single-stage detectors YOLO7 (You Only Look Once) (<xref ref-type="bibr" rid="B64">Wang et al., 2023</xref>) and SSD (Single Shot MultiBox Detector) (<xref ref-type="bibr" rid="B35">Liu et al., 2016</xref>) appeared. These methods reduce the complex candidate region generation process and improve the detection speed by predicting the class and location of the target directly on the image, but the detection accuracy in some scenarios is slightly inferior to that of the two-stage model. As object detection continues to evolve, researchers are constantly improving algorithms to improve performance. For example, attention mechanism, multi-scale feature fusion, and target shape information are introduced to enhance detection performance. <xref ref-type="table" rid="T1">
<bold>Table&#xa0;1</bold>
</xref> summarizes the techniques related to objective detection, showing the name of the method, the time it was proposed, and the advantages and disadvantages of the method. Since the method proposed in this paper mainly requires the accuracy of the object detection module, the two-stage object detection model Faster R-CNN based on deep learning was selected as the disease area detection module of DIC-Transformer.</p>
<table-wrap id="T1" position="float">
<label>Table&#xa0;1</label>
<caption>
<p>Summary of work related to object detection.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="left">Object Detection</th>
<th valign="top" align="center">Time</th>
<th valign="top" align="left">Advantages</th>
<th valign="top" align="left">Disadvantages</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">R-CNN</td>
<td valign="top" align="left">2014</td>
<td valign="top" align="left">SS is used to generate regions, and CNN is used to extract features</td>
<td valign="bottom" align="left">The training is multi-stage, the space consumption is large, and the detection is slow; duplicate calculations are performed at the time of feature extraction</td>
</tr>
<tr>
<td valign="top" align="left">Fast R-CNN</td>
<td valign="top" align="left">2015</td>
<td valign="top" align="left">The speed is higher than that of R-CNN; end-to-end training is achieved</td>
<td valign="top" align="left">An external SS module is required to generate the candidate region, which can only run on the CPU and is slow</td>
</tr>
<tr>
<td valign="top" align="left">SSD</td>
<td valign="top" align="left">2016</td>
<td valign="top" align="left">High accuracy, fast detection, small targets, and ease of use</td>
<td valign="top" align="left">Sensitive to target intensity; sensitive to dataset quality; performance degradation in complex scenarios</td>
</tr>
<tr>
<td valign="top" align="left">Faster R-CNN (Swin Transformer)</td>
<td valign="top" align="left">2022</td>
<td valign="top" align="left">High detection accuracy and great speed improvement, truly realize the end-to-end object detection framework</td>
<td valign="top" align="left">It takes a relatively long time</td>
</tr>
<tr>
<td valign="top" align="left">YOLO7</td>
<td valign="top" align="left">2022</td>
<td valign="top" align="left">Faster speeds, sufficient accuracy, and lower computing resource requirements</td>
<td valign="top" align="left">The accuracy is inflated; inaccurate detection of small targets; not versatile enough</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Image caption generation</title>
<p>Image caption generation is a task that involves generating human-like descriptions or captions for given images. By generating textual descriptions related to the image, additional semantic information can be provided, enabling the computer to understand the image content more fully and deeply. Image captioning models generally come in three classes: template-based (TB), retrieval-based, and artificial neural network (ANN)-based (<xref ref-type="bibr" rid="B3">Bai and An, 2018</xref>).</p>
<p>The template-based (TB) model is a traditional image caption model, which requires the appropriate title structure to be defined in advance. <xref ref-type="bibr" rid="B31">Kulkarni et&#xa0;al. (2013)</xref> proposed a method called Babytalk, which combines computer vision and natural language processing techniques. First, they used computer vision algorithms to extract key visual features from images, such as objects, people, and scenes. They then used these features as input to generate simple descriptions related to the image through natural language processing models. However, image captioning technology based on TB mode can only detect image content visually, which generally causes problems such as complexity, creativity, and extracted sentence coverage. In addition, unlike the manually written image title information, if the main structure of the caption is a constrained template, it will make the generated caption a bit unnatural (<xref ref-type="bibr" rid="B8">Deorukhkar and Ket, 2022</xref>).</p>
<p>The retrieval-based image caption generation technology retrieves a sentence or set of sentences from a pre-defined text description dataset based on a given query image to generate the title that best matches the image features of the target image. The generated caption can be either a defined statement or a statement composed of multiple retrieved statements (<xref ref-type="bibr" rid="B3">Bai and An, 2018</xref>). <xref ref-type="bibr" rid="B22">Hodosh et&#xa0;al. (2013)</xref> treated caption generation as a ranking task. Captions and images are then mapped into the latent space based on canonical relevance. Also, the top-ranking caption for the target image is selected by calculating the cosine similarity between the caption and the image. In addition, two developments in caption retrieval were proposed by <xref ref-type="bibr" rid="B46">Ordonez et&#xa0;al. (2016)</xref> to score the relationship between captions and images. The two developments are as follows: one is the retrieval of the entire available image, and the other is the retrieval of captions based on the geometric distance of scenes and objects. In <xref ref-type="bibr" rid="B25">Jeong et&#xa0;al. (2023)</xref>, a novel search-type radiology report generation module called X-REM is proposed to improve clinical accuracy. Compared to the benchmark retrieval method, X-REM increases the number of zero error reports and reduces the average error severity.</p>
<p>ANN-based models use an encoder&#x2013;decoder architecture when generating image captions. Images are first encoded to generate a corresponding high-level representation and then decoded using language modeling algorithms. There are two types of ANN-based models: 1) recursion-based models and 2) transformer-based models (<xref ref-type="bibr" rid="B47">Parvin et&#xa0;al., 2023</xref>).</p>
<p>The recursive encoder&#x2013;decoder structure is widely used in multiple tasks, such as machine translation, language generation, and code generation. Among them, long short-term memory network (LSTM) (<xref ref-type="bibr" rid="B43">Naga Srinivasu et&#xa0;al., 2023</xref>) and gated recurrent units (GRUs) are neural network units that are often used to construct recursive structures. For example, <xref ref-type="bibr" rid="B70">Ye et&#xa0;al. (2018)</xref> utilized attention mechanisms and linear transformations to improve image caption generation. Through steps such as calculating similarity, normalizing processing, and weighted summation, dynamically focus on image areas to generate more accurate and coherent captions. <xref ref-type="bibr" rid="B69">Yang et&#xa0;al. (2018)</xref> introduced a shared backbone network that is used to extract image features. Then, on top of the backbone network, multiple domain-specific task networks are built to process image caption generation tasks in different fields. Each task network has its own independent decoder for generating captions for the corresponding domain.</p>
<p>However, the recursion-based encoder&#x2013;decoder architecture needs to be generated word by word in the process of generating the caption sequence, so the parallel computation is not possible, resulting in a slower speed (<xref ref-type="bibr" rid="B28">Khan et&#xa0;al., 2022</xref>). Due to the nature of the self-attention mechanism in the Transformer model, the representation of each position can be computed simultaneously with other locations without the need for sequential loop structures. This makes the Transformer model highly parallel computing power (<xref ref-type="bibr" rid="B28">Khan et&#xa0;al., 2022</xref>). At the same time, the transformer model consists of multiple stacked encoder and decoder layers, each with multiple self-attention sublayers and feedforward neural network sublayers. This multi-layered structure enables the gradual extraction of higher-level abstract features and more accurate predictions. These features make the Transformer-based caption generation model have advantages in handling long-distance dependency, parallel computing, and abstract feature extraction. They enable the model to better understand the image content and produce accurate, smooth captions. In the study of <xref ref-type="bibr" rid="B65">Wang et&#xa0;al. (2020)</xref>, a geometry perception converter is constructed to obtain the geometric representation capabilities of encoders and decoders. <xref ref-type="bibr" rid="B36">Liu et&#xa0;al. (2021a)</xref> proposed a full-network structure CPtr based on Transformer for image caption generation tasks. By combining image feature representation with position encoding through an encoder, the decoder uses multiple Transformer layers to produce accurate captions. The attention mechanism is used to interact with the image with the text to improve the modeling ability. CPtr has shown excellent performance in image understanding and caption generation. In the study of <xref ref-type="bibr" rid="B47">Parvin et&#xa0;al. (2023)</xref>, a transformer-based image description generative model is proposed that does not rely on recurrent or convolutional neural networks and is able to capture the interrelationships between objects. Experiments on COCO and Flickr datasets prove that the proposed method outperforms various state-of-the-art models in various evaluation indicators. In the study of <xref ref-type="bibr" rid="B13">Fang et&#xa0;al. (2022)</xref>, ViTCAP, an image captioning model based on a pure visual transformer, is proposed, in which a grid representation is used without extracting regional features. In the study of <xref ref-type="bibr" rid="B14">Fei (2022)</xref>, an attention-aligned converter for image captions is proposed, called A<sup>2</sup>, which is a perturbation-based, self-supervised way to guide attention learning without any annotation overhead. In the study of <xref ref-type="bibr" rid="B38">Liu et&#xa0;al. (2022)</xref>, a new model based on the encoder&#x2013;decoder framework is proposed. In the encoder, the features of different layers in the ResNet-50 are fused to extract multi-scale information. In the decoder, a multi-layer aggregation converter (MLAT) is proposed to utilize the extracted information to fully generate sentences. In the study of <xref ref-type="bibr" rid="B26">Jing and Jin-guang (2023)</xref>, a hybrid structure image caption generation model based on a convolutional neural network and Transformer was proposed. It mainly fuses lightweight high-precision attention with convolutional networks to form attention residual blocks, which are used to extract visual features from input images. The features are then entered into the sequence model transformer. <xref ref-type="table" rid="T2">
<bold>Table&#xa0;2</bold>
</xref> is a summary of the related technologies for image caption generation and lists the proposed time, advantages, and disadvantages of different methods. Then, the appropriate type of method is chosen according to the actual needs. Transformer architecture is first used in natural language processing and later widely used in the field of computer vision. Many transformer-based image captioning models were introduced in the study of <xref ref-type="bibr" rid="B45">Ondeng et&#xa0;al. (2023)</xref>, including those pre-trained using visual language, which has produced several state-of-the-art models, etc. Recent models show the Transformer&#x2019;s advantages in image caption generation. Therefore, the image caption generation model in this article used a transformer-based structure.</p>
<table-wrap id="T2" position="float">
<label>Table&#xa0;2</label>
<caption>
<p>Summary of work related to image caption generation.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="left">Image caption</th>
<th valign="top" align="left">Method</th>
<th valign="top" align="center">Time</th>
<th valign="top" align="left">Advantages</th>
<th valign="top" align="left">Disadvantages</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Template-based</td>
<td valign="top" align="left">Babytalk</td>
<td valign="top" align="center">2013</td>
<td valign="top" align="left">Descriptions can be accurately generated.</td>
<td valign="top" align="left">The content is single and relatively fixed, and the degree of human involvement is high.</td>
</tr>
<tr>
<td valign="top" align="left">Retrieval-based</td>
<td valign="top" align="left">X-REM</td>
<td valign="top" align="center">2023</td>
<td valign="top" align="left">Improved accuracy; simple to implement.</td>
<td valign="top" align="left">Performance depends on dataset size and retrieval algorithms;<break/>The generated descriptions are also relatively limited.</td>
</tr>
<tr>
<td valign="top" align="left">ANN-based</td>
<td valign="top" align="left">ALT<break/>MLADIC<break/>CPtr<break/>DPP<break/>ViTCAP<break/>A<sup>2</sup>
<break/>MLAT</td>
<td valign="top" align="center">2018<break/>2018<break/>2021<break/>2022<break/>2022<break/>2022<break/>2022</td>
<td valign="top" align="left">Automatically learn features in images; high flexibility and generalization ability; strong contextual comprehension.</td>
<td valign="top" align="left">High data demand; long training time; it is difficult to explain the specific decision-making process of the model for the generation of image captions.</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Dataset construction</title>
<sec id="s3_1">
<label>3.1</label>
<title>Image collection and preprocessing</title>
<p>To establish a plant disease image dataset, it is first necessary to determine which plants and diseases are selected. Then, high-quality images are collected, and finally, the images are preprocessed according to the requirements. The specific process is as follows:</p>
<list list-type="order">
<list-item>
<p>Determination of plant species and diseases: Before collecting images, it is first necessary to determine the plant species and diseases. The difficulty of image collection is taken into account when determining plant species and diseases. If a plant disease can be searched for more images and related image characterization information through common search engines, then the disease is listed as a candidate. Finally, 18 diseases belonging to 10 plant species are selected as research objects to construct the dataset, for example, common plants such as apples, pears, and tomatoes.</p>
</list-item>
<list-item>
<p>Image collection: Images are collected in a variety of ways, such as search engine downloads, web crawling, and manual collection. The image collection is mainly based on web crawling and search engine downloads, supplemented by manual collection. In the end, more than 50,000 candidate images are collected. At the same time, the collection of images complies with relevant regulations such as copyright and privacy.</p>
</list-item>
<list-item>
<p>Image preprocessing: More than 50,000 images need to be processed to ensure that they are fit for use. Disease-affected areas in plant disease images need to have clear outlines, obvious symptoms, appropriate exposure, and other features. Low-quality, blurry, or unclear images need to be removed. The image filtering process is as follows:</p>
<list list-type="bullet">
<list-item>
<p>Auto-filtering: For images that are not related to agricultural plant diseases, such as people, watermarks, and text, we use deep learning models to identify and remove them.</p>
</list-item>
<list-item>
<p>Manual filtering: After automatic filtering, because the content of the image is generally very complex, some images still do not meet the requirements, and relevant agricultural professionals need manual screening to ensure that the dataset images are basic and suitable for use.</p>
</list-item>
</list>
</list-item>
</list>
<p>The filtered image is more suitable for use in terms of content and resolution. In addition, most of the images are based on different backgrounds, closer to real agricultural scenes. Finally, a dataset containing 3,971 high-quality images for 18 diseases is constructed.</p>
<p>In summary, the ADCG-18 contains two modes, text and image, which have the characteristics of data diversity. Many different forms of data can enrich feature representation: images and text are two different forms of data that can provide complementary information to describe an object or scene. By using both image and text data, richer and more comprehensive feature representations can be obtained, which improves the performance and generalization ability of the model.</p>
<p>Data augmentation and transfer learning are also possible: fusing image and text data can augment the size and diversity of datasets to achieve data augmentation and improve the robustness and generalization of models. In addition, transfer learning between image and text data can help learning in one domain and improve the effectiveness of the model by helping another with what is learned in another. Therefore, it would be beneficial to consider both image and text data when building datasets. However, while data diversity is beneficial, there may be some potential biases, such as modal bias and data association bias. Modal bias is due to semantic differences between images and text, and models can produce bias when processing data with different modalities. For example, in image recognition tasks, the model may be more inclined to classify by image features and ignore the information described by text. Data correlation bias is the possibility of correlation bias when image and text data are combined through association rules or manual matching. Even if the association rule or matching process is deterministic, it is inevitable that there will be some errors or biases, resulting in the inaccurate correlation of images and text in the dataset.</p>
<p>These biases can affect the performance and generalization ability of the model, allowing the model to perform poorly against real-world samples. Therefore, when using datasets containing image and text information, it is necessary to pay attention to and minimize these potential biases and make corresponding preprocessing and adjustments to improve the robustness and accuracy of the model.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Data segmentation</title>
<p>The ADCG-18 contains 18 types of diseases due to the presence of data-enhanced similar images in the dataset, so it cannot be randomly divided according to the proportion when dividing the dataset. It is necessary to divide the images of each disease category according to the proportion and finally combine each divided disease data into the final dataset. Otherwise, the data images in the training set and the test set will be duplicated, resulting in higher experimental results than the real results. The data in this article are divided according to a 7:3 ratio. <xref ref-type="table" rid="T3">
<bold>Table&#xa0;3</bold>
</xref> shows the results of the dataset division. The method of image enhancement is shown in <xref ref-type="fig" rid="f2">
<bold>Figure&#xa0;2</bold>
</xref>.</p>
<table-wrap id="T3" position="float">
<label>Table&#xa0;3</label>
<caption>
<p>Dataset segmentation results.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="left"/>
<th valign="top" align="center">Image_num</th>
<th valign="top" align="center">Instance_num</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">Test set</td>
<td valign="top" align="center">1,180</td>
<td valign="top" align="center">2,842</td>
</tr>
<tr>
<td valign="top" align="center">Train set</td>
<td valign="top" align="center">2,791</td>
<td valign="top" align="center">6,198</td>
</tr>
<tr>
<td valign="top" align="center">Total</td>
<td valign="top" align="center">3,971</td>
<td valign="top" align="center">9,040</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>Image num is the number of disease images. Instance_num is the number of disease instances.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<fig id="f2" position="float">
<label>Figure&#xa0;2</label>
<caption>
<p>Examples of plant disease images of 18 types in the dataset.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g002.tif"/>
</fig>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Dataset details</title>
<p>The ADCG-18 contains two parts: images and textual descriptions. In addition, the images and textual descriptions in the dataset should correspond to each other. In order to achieve this, it is necessary to determine which descriptive keywords are unique to a certain disease class and ensure that the characteristic keywords in the textual description of each disease are clearly distinguished from the others.</p>
<p>Collect the description of diseases in the dataset from Internet resources such as relevant agricultural websites and then artificially extract sentences that meet the requirements for use. Finally, the textual description of each image consists of approximately six to 14 words. Note that each image corresponds to one textual description.</p>
<p>Image labeling uses relevant tools to mark the disease area in the image, including the label of each disease category and the disease area&#x2019;s true bounding box location. We use the image annotation tool LabelMe (<xref ref-type="bibr" rid="B62">Torralba et&#xa0;al., 2010</xref>) to manually mark the boundaries of the disease area in the image and save the boundary information in a JSON file. The version of LabelMe is 4.5.13. <xref ref-type="fig" rid="f3">
<bold>Figure&#xa0;3</bold>
</xref> shows the result of a hand-annotated image.</p>
<fig id="f3" position="float">
<label>Figure&#xa0;3</label>
<caption>
<p>An example image processed by LabelMe.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g003.tif"/>
</fig>
<p>Since at least one disease region exists per image, there are more disease instances (NOAD) than images (NOAI) for each class. Since the symptoms of each disease are different, the number of bounding boxes for each disease varies greatly. For example, in <xref ref-type="table" rid="T4">
<bold>Table&#xa0;4</bold>
</xref>, Infection of Peanut_leaf_spot and Pear_Rust are characterized by the presence of more small-area spots on the foliage, and the number of instances is 1,478 and 951, respectively, which is much higher than the average number of instances. <xref ref-type="fig" rid="f4">
<bold>Figure&#xa0;4</bold>
</xref> shows some image samples and corresponding textual descriptions. <xref ref-type="fig" rid="f5">
<bold>Figure&#xa0;5</bold>
</xref> shows the characteristic images of 18 diseases.</p>
<table-wrap id="T4" position="float">
<label>Table&#xa0;4</label>
<caption>
<p>Statistical analysis of datasets.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">SN</th>
<th valign="top" align="center">Category name</th>
<th valign="top" align="center">NOAI</th>
<th valign="top" align="center">NOAD</th>
<th valign="top" align="center">NOTRI</th>
<th valign="top" align="center">NOTRD</th>
<th valign="top" align="center">NOTI</th>
<th valign="top" align="center">NOTD</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">1</td>
<td valign="top" align="center">Anthrax</td>
<td valign="top" align="center">165</td>
<td valign="top" align="center">344</td>
<td valign="top" align="center">116</td>
<td valign="top" align="center">219</td>
<td valign="top" align="center">49</td>
<td valign="top" align="center">125</td>
</tr>
<tr>
<td valign="top" align="center">2</td>
<td valign="top" align="center">Apple_bitter_rot</td>
<td valign="top" align="center">252</td>
<td valign="top" align="center">408</td>
<td valign="top" align="center">176</td>
<td valign="top" align="center">270</td>
<td valign="top" align="center">76</td>
<td valign="top" align="center">138</td>
</tr>
<tr>
<td valign="top" align="center">3</td>
<td valign="top" align="center">apple_cracking</td>
<td valign="top" align="center">156</td>
<td valign="top" align="center">248</td>
<td valign="top" align="center">110</td>
<td valign="top" align="center">175</td>
<td valign="top" align="center">46</td>
<td valign="top" align="center">73</td>
</tr>
<tr>
<td valign="top" align="center">4</td>
<td valign="top" align="center">Apple_mould_heart_disease</td>
<td valign="top" align="center">195</td>
<td valign="top" align="center">277</td>
<td valign="top" align="center">135</td>
<td valign="top" align="center">177</td>
<td valign="top" align="center">60</td>
<td valign="top" align="center">100</td>
</tr>
<tr>
<td valign="top" align="center">5</td>
<td valign="top" align="center">Apple_water_heart_disease</td>
<td valign="top" align="center">230</td>
<td valign="top" align="center">898</td>
<td valign="top" align="center">162</td>
<td valign="top" align="center">684</td>
<td valign="top" align="center">68</td>
<td valign="top" align="center">214</td>
</tr>
<tr>
<td valign="top" align="center">6</td>
<td valign="top" align="center">Brown_rot</td>
<td valign="top" align="center">261</td>
<td valign="top" align="center">289</td>
<td valign="top" align="center">173</td>
<td valign="top" align="center">184</td>
<td valign="top" align="center">88</td>
<td valign="top" align="center">105</td>
</tr>
<tr>
<td valign="top" align="center">7</td>
<td valign="top" align="center">Citrus_schizoderma</td>
<td valign="top" align="center">381</td>
<td valign="top" align="center">557</td>
<td valign="top" align="center">291</td>
<td valign="top" align="center">324</td>
<td valign="top" align="center">90</td>
<td valign="top" align="center">233</td>
</tr>
<tr>
<td valign="top" align="center">8</td>
<td valign="top" align="center">cracking</td>
<td valign="top" align="center">371</td>
<td valign="top" align="center">673</td>
<td valign="top" align="center">263</td>
<td valign="top" align="center">388</td>
<td valign="top" align="center">108</td>
<td valign="top" align="center">285</td>
</tr>
<tr>
<td valign="top" align="center">9</td>
<td valign="top" align="center">Jujube_Anthrax</td>
<td valign="top" align="center">219</td>
<td valign="top" align="center">649</td>
<td valign="top" align="center">150</td>
<td valign="top" align="center">337</td>
<td valign="top" align="center">69</td>
<td valign="top" align="center">312</td>
</tr>
<tr>
<td valign="top" align="center">10</td>
<td valign="top" align="center">Mango_Anthracnose</td>
<td valign="top" align="center">217</td>
<td valign="top" align="center">343</td>
<td valign="top" align="center">152</td>
<td valign="top" align="center">258</td>
<td valign="top" align="center">65</td>
<td valign="top" align="center">85</td>
</tr>
<tr>
<td valign="top" align="center">11</td>
<td valign="top" align="center">Olive_anthracnose</td>
<td valign="top" align="center">115</td>
<td valign="top" align="center">234</td>
<td valign="top" align="center">77</td>
<td valign="top" align="center">137</td>
<td valign="top" align="center">38</td>
<td valign="top" align="center">97</td>
</tr>
<tr>
<td valign="top" align="center">12</td>
<td valign="top" align="center">Papaya_anthracnose</td>
<td valign="top" align="center">212</td>
<td valign="top" align="center">673</td>
<td valign="top" align="center">149</td>
<td valign="top" align="center">499</td>
<td valign="top" align="center">63</td>
<td valign="top" align="center">174</td>
</tr>
<tr>
<td valign="top" align="center">13</td>
<td valign="top" align="center">Peanut_leaf_spot</td>
<td valign="top" align="center">235</td>
<td valign="top" align="center">1,478</td>
<td valign="top" align="center">164</td>
<td valign="top" align="center">1,140</td>
<td valign="top" align="center">71</td>
<td valign="top" align="center">338</td>
</tr>
<tr>
<td valign="top" align="center">14</td>
<td valign="top" align="center">Pear_Rust</td>
<td valign="top" align="center">268</td>
<td valign="top" align="center">951</td>
<td valign="top" align="center">190</td>
<td valign="top" align="center">680</td>
<td valign="top" align="center">78</td>
<td valign="top" align="center">271</td>
</tr>
<tr>
<td valign="top" align="center">15</td>
<td valign="top" align="center">Penicillium</td>
<td valign="top" align="center">165</td>
<td valign="top" align="center">187</td>
<td valign="top" align="center">115</td>
<td valign="top" align="center">136</td>
<td valign="top" align="center">50</td>
<td valign="top" align="center">51</td>
</tr>
<tr>
<td valign="top" align="center">16</td>
<td valign="top" align="center">strawberry_anthracnose</td>
<td valign="top" align="center">174</td>
<td valign="top" align="center">204</td>
<td valign="top" align="center">121</td>
<td valign="top" align="center">139</td>
<td valign="top" align="center">53</td>
<td valign="top" align="center">65</td>
</tr>
<tr>
<td valign="top" align="center">17</td>
<td valign="top" align="center">Tomato_anthracnose</td>
<td valign="top" align="center">188</td>
<td valign="top" align="center">348</td>
<td valign="top" align="center">130</td>
<td valign="top" align="center">251</td>
<td valign="top" align="center">58</td>
<td valign="top" align="center">97</td>
</tr>
<tr>
<td valign="top" align="center">18</td>
<td valign="top" align="center">Tomato_cotton blight</td>
<td valign="top" align="center">167</td>
<td valign="top" align="center">279</td>
<td valign="top" align="center">117</td>
<td valign="top" align="center">200</td>
<td valign="top" align="center">50</td>
<td valign="top" align="center">79</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>SN, the category index; NOAI, the total number of images; NOAD, the total number of disease areas; NOTRI, the number of images in the training set; NOTRD, the number of disease areas in the training set; NOTI, the number of images in the test set; NOTD, the number of disease areas in the test set.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<fig id="f4" position="float">
<label>Figure&#xa0;4</label>
<caption>
<p>Dataset examples.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g004.tif"/>
</fig>
<fig id="f5" position="float">
<label>Figure&#xa0;5</label>
<caption>
<p>Examples of plant disease images of 18 types in the dataset.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g005.tif"/>
</fig>
<p>In addition, as depicted in <xref ref-type="fig" rid="f3">
<bold>Figure&#xa0;3</bold>
</xref>, we primarily describe the quantity, color, size, sharpness of boundary lines, brightness, darkness, and the degree of variation in characteristics when constructing the dataset. These characteristics encompass all the pathogenesis features of the disease and can fully describe the occurrence of the disease. The text is stored in a JSON file as a dictionary. Each entry begins with a disease name followed by a description of its features. It is important to note that image name labels have been included in the text dataset to link each statement to an image, which aids in the model&#x2019;s training process.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Methods</title>
<sec id="s4_1">
<label>4.1</label>
<title>Overview</title>
<p>
<xref ref-type="fig" rid="f6">
<bold>Figure&#xa0;6</bold>
</xref> shows the overall structure diagram of the model DIC-Transformer proposed in this paper, with the DIC-Transformer divided into four modules. &#x2460; is a disease region detection module, which is used to obtain relevant information about the disease area in the image. Relevant information is divided into two categories: location vectors and visual feature vectors of disease areas. &#x2461; and &#x2462; are sequence encoding module and caption generation module, respectively, which are used for image caption generation tasks. &#x2463; is a classification module designed to classify images. We divide these four modules into two stages, where the first stage model includes module &#x2460; and the second stage model includes modules &#x2461;, &#x2462;, and &#x2463;.</p>
<fig id="f6" position="float">
<label>Figure&#xa0;6</label>
<caption>
<p>Model overview diagram. The numbers at the bottom of the figure represent four modules: &#x2460; represents the region detection module, &#x2461; represents the sequence encoding module, &#x2462; represents the caption generation module, and &#x2463; represents the classification module.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g006.tif"/>
</fig>
<p>The first stage model, the region detection module, can acquire the label of the disease image and the vector representation of the disease area feature in the image. These feature vectors are integrated into the sequence as inputs to the sequence coding module. The average value of the integrated visual feature vector sequence is used to represent the entire image. The output of the sequence encoding module, in turn, serves as keywords and values for attention blocks in each text generation module. The input to the text generation module is a sequence of word vectors, and the first position of the sequence is the symbol [Start], which marks the beginning of generating the word vector sequence. The output of the text generation module is a sequence of word vectors similar to the input. The text generation module is like RNN one word input, the Q is calculated by the word that has appeared, the K and V are calculated by the sequence coding module, and the result is obtained after all the text generation modules and then FC+Softmax. After that, the result is used as input to the text generation module, and the whole process is repeated until the symbol END is output. The output of the END symbol at this point indicates that a text sequence has been generated. The output of each layer of the text generation module is a visual vector weighted by text features. Now, it is used as the keyword and value of the classification module, and the average value of the visual feature vector sequence is used as the query of the classification module. Finally, the output of the disease classification module is the probability for each category. In order to clearly describe the implementation details of each module, a symbology is established.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Region detection module</title>
<p>The region detection module is used to obtain the feature vectors and bounding box coordinates for each disease area in the image. Let <inline-formula>
<mml:math display="inline" id="im1">
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>S</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> denote the set of images, where <italic>S</italic> denotes the total number of images. Let <inline-formula>
<mml:math display="inline" id="im2">
<mml:mrow>
<mml:msup>
<mml:mi>D</mml:mi>
<mml:mi>s</mml:mi>
</mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> denote disease areas that appear in each image <italic>I<sub>s</sub>
</italic>. Each disease area contains two types of information: a) <inline-formula>
<mml:math display="inline" id="im3">
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the label of the diseased area, where <italic>T</italic> represents the total number of categories for disease areas, and b) <inline-formula>
<mml:math display="inline" id="im4">
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the bounding box coordinates of each diseased area. Specifically, the region detection module learns two mapping functions: <italic>&#xb5;<sub>a</sub>
</italic> and <italic>&#xb5;<sub>b</sub>
</italic>. <italic>&#xb5;<sub>a</sub>
</italic> is used to obtain the category labels of each disease area, while <italic>&#xb5;<sub>b</sub> </italic>is used to obtain the bounding box coordinates for each disease area. The details of the two functions are shown in <xref ref-type="disp-formula" rid="eq1">Equations 1</xref>, <xref ref-type="disp-formula" rid="eq2">2</xref>.</p>
<disp-formula id="eq1">
<label>(1)</label>
<mml:math display="block" id="M1">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mo>&#x2217;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo>&#x2217;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq2">
<label>(2)</label>
<mml:math display="block" id="M2">
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>d</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mo>&#x2217;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo>&#x2217;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>&#x3b1;<sub>a</sub>
</italic> represents the weight of the function <italic>&#xb5;<sub>a</sub>
</italic> and <italic>&#x3b1;<sub>b</sub> </italic>represents the weight of the function <italic>&#xb5;<sub>b</sub>
</italic>. Area &#x2460; in <xref ref-type="fig" rid="f6">
<bold>Figure&#xa0;6</bold>
</xref> represents the region detection module, where <inline-formula>
<mml:math display="inline" id="im5">
<mml:mrow>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
</mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represents the features of diseased areas in the image. These features are obtained from the feature map generated by the last convolutional layer of the backbone network in the object detection process. Specifically, <inline-formula>
<mml:math display="inline" id="im6">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the feature vector of a specific disease area in the image. The default value for <italic>C</italic> is 1,024.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Sequence encoding module</title>
<p>The structure of the sequence encoding module is shown in area &#x2461; in <xref ref-type="fig" rid="f6">
<bold>Figure&#xa0;6</bold>
</xref>. The intermediate variable of the function <italic>&#xb5;<sub>a</sub>
</italic> in the region detection module is used as input to the sequence encoding module, where the intermediate variable is essentially the visual vector generated by the integration of all disease regions in the image. This collection of visual vectors is referred to as the visual vector sequence, denoted as <inline-formula>
<mml:math display="inline" id="im7">
<mml:mrow>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
</mml:msup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mn>1</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula>
<mml:math display="inline" id="im8">
<mml:mrow>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. To encode this sequence of visual vectors, an input embedding layer is utilized, which consists of two fully connected layers with an output dimension of <inline-formula>
<mml:math display="inline" id="im9">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, having a default value of 1,024. This process is represented by <xref ref-type="disp-formula" rid="eq3">Equation 3</xref>.</p>
<disp-formula id="eq3">
<label>(3)</label>
<mml:math display="block" id="M3">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
</mml:msup>
<mml:mo>;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im10">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is the weight of <inline-formula>
<mml:math display="inline" id="im11">
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The self-attention mechanism can be regarded as an improvement mechanism for the attention mechanism in a certain application scenario. It becomes less dependent on external information and has a superior performance in capturing internal correlations in data or features. The calculation process of the self-attention mechanism is as follows: first, the input data is converted into an embedding vector. According to the embedding vector, the three vectors of <inline-formula>
<mml:math display="inline" id="im12">
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>q</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>q</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>}</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im13">
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>y</mml:mi>
<mml:mfenced>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula>
<mml:math display="inline" id="im14">
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>}</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> are obtained. Calculate a score for each vector. To ensure gradient stability, use score normalization by dividing by., where <inline-formula>
<mml:math display="inline" id="im15">
<mml:mrow>
<mml:msqrt>
<mml:mi>Y</mml:mi>
</mml:msqrt>
</mml:mrow>
</mml:math>
</inline-formula> is a scaling factor to prevent the input values for the softmax function from becoming too large. Apply a softmax activation function to score. The specific process is represented by <xref ref-type="disp-formula" rid="eq4">Equation 4</xref>.</p>
<disp-formula id="eq4">
<label>(4)</label>
<mml:math display="block" id="M4">
<mml:mrow>
<mml:mtext mathvariant="italic">Self&#xa0;Atention</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:msup>
<mml:mi>K</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msqrt>
<mml:mi>Y</mml:mi>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>V</mml:mi>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im16">
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The attention mechanism is position-insensitive, and even swapping the position of two elements in the sequence has no effect on the encoded result. Therefore, a positional vector notation is proposed in the Transformer to add a fixed positional vector to each position of the sequence. However, the visual vector sequences in this paper only have a spatial position relationship and no context relationship. Therefore, for the use of positional encoding, we use the four coordinates of the visual bounding box as positional encoding, discarding the original sine cosine function. In addition, the multi-head self-attention mechanism is used to study the relationships within the visual vector sequence. The self-attention mechanism is repeated <italic>h</italic> times in the long self-attention mechanism. The specific process is represented by <xref ref-type="disp-formula" rid="eq5">Equation 5</xref>.</p>
<disp-formula id="eq5">
<label>(5)</label>
<mml:math display="block" id="M5">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">Concat</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>O</mml:mi>
</mml:msup>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mtext mathvariant="italic">Self&#xa0;Atention</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>Q</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>K</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>V</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im17">
<mml:mrow>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>O</mml:mi>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula>
<mml:math display="inline" id="im18">
<mml:mrow>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>Q</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>K</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>V</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mfrac>
<mml:mi>a</mml:mi>
<mml:mi>h</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The sequence coding module consists of two sublayers: the multi-head self-attention layer and the feedforward neural network layer. Each sublayer is followed by the AddNorm function. The AddNorm function is a common regularization operation commonly used in neural networks. It combines residual connectivity and layer normalization to enhance the representation and training effect of the network. The calculation process of the sequence encoding module is shown in <xref ref-type="disp-formula" rid="eq6">Equations 6</xref>, <xref ref-type="disp-formula" rid="eq7">7</xref>.</p>
<disp-formula id="eq6">
<label>(6)</label>
<mml:math display="block" id="M6">
<mml:mrow>
<mml:msubsup>
<mml:mi>A</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>;</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>;</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>;</mml:mo>
<mml:msubsup>
<mml:mi>D</mml:mi>
<mml:mn>2</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq7">
<label>(7)</label>
<mml:math display="block" id="M7">
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mi>F</mml:mi>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>A</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>A</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im19">
<mml:mrow>
<mml:msubsup>
<mml:mi>A</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. The output of each layer of the encoder in the sequence encoding block is <inline-formula>
<mml:math display="inline" id="im20">
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, N represents the number of encoders in the sequence encoding module.</p>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Caption generation module</title>
<p>Area &#x2462; in <xref ref-type="fig" rid="f6">
<bold>Figure&#xa0;6</bold>
</xref> shows the structure of the caption generation module. This module predicts the next word based on the input word and ensures that the resulting sentence visually corresponds to the disease area in the image. Prediction begins upon recognizing the marker [<italic>Start</italic>]} and concludes when the marker [<italic>End</italic>]} is generated. Both [<italic>Start</italic>]} and [<italic>End</italic>]} are zero vectors. The input to the caption generation module is denoted as <inline-formula>
<mml:math display="inline" id="im21">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>l</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula>
<mml:math display="inline" id="im22">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the description statement corresponding to the visual part <italic>D<sub>s</sub>
</italic>. The output of the caption generation module is represented as <inline-formula>
<mml:math display="inline" id="im23">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mfenced close="}" open="{">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>l</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>.</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mfenced close="]" open="[">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula>
<mml:math display="inline" id="im24">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. Here, <italic>L</italic> is the length of the input statement and <inline-formula>
<mml:math display="inline" id="im25">
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> is the number of words in the database.</p>
<p>The input statement of the module needs to be encoded by the word embedding layer, which consists of two fully connected layers with an output dimension of <inline-formula>
<mml:math display="inline" id="im26">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>. The embedding layer process is represented by <xref ref-type="disp-formula" rid="eq8">Equation 8</xref>.</p>
<disp-formula id="eq8">
<label>(8)</label>
<mml:math display="block" id="M8">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2217;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im27">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is the weight of <inline-formula>
<mml:math display="inline" id="im28">
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The decoder model consists of N identical decoder blocks stacked, each consisting of three different sublayers. There are residual connections and layer normalization between each sublayer. Moreover, the masked multi-head self-attention sub-layer uses a mask to prevent information from future output words from being used when training a given output word. The form of MASK is shown in <xref ref-type="disp-formula" rid="eq9">Equation 9</xref>.</p>
<disp-formula id="eq9">
<label>(9)</label>
<mml:math display="block" id="M9">
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>K</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo stretchy="true">[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ef;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22f1;</mml:mo>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x22ee;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo stretchy="true">]</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>M</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>K</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Thus, the process of self-attention with masking can be expressed as <xref ref-type="disp-formula" rid="eq10">Equation 10</xref>.</p>
<disp-formula id="eq10">
<label>(10)</label>
<mml:math display="block" id="M10">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>M</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>k</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>O</mml:mi>
</mml:msup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>f</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>A</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>Q</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>K</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>K</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>V</mml:mi>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>V</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>M</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi>K</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im29">
<mml:mrow>
<mml:msup>
<mml:mi>W</mml:mi>
<mml:mi>O</mml:mi>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula>
<mml:math display="inline" id="im30">
<mml:mrow>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>Q</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>K</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>W</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>V</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mfrac>
<mml:mi>a</mml:mi>
<mml:mi>h</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The first layer decoder in the caption generation module is taken as an example, and formulas are used to describe the working process of the decoder. The input encoded by the embedding layer is first copied three times and then input into a masked self-attention block to obtain an output, which can be represented by <xref ref-type="disp-formula" rid="eq11">Equation 11</xref>.</p>
<disp-formula id="eq11">
<label>(11)</label>
<mml:math display="block" id="M11">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msup>
<mml:mo>,</mml:mo>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mfenced>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>k</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mfenced>
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2217;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2217;</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mo>&#x2217;</mml:mo>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im31">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msup>
<mml:mo>,</mml:mo>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>C</mml:mi>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. The output <inline-formula>
<mml:math display="inline" id="im32">
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> of the first-layer encoder in the sequence encoding module is <italic>K</italic>, <italic>V</italic>, and <inline-formula>
<mml:math display="inline" id="im33">
<mml:mrow>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msup>
<mml:mo>,</mml:mo>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is <italic>Q</italic>. Then, <italic>Q</italic>, <italic>K</italic>, and <italic>V</italic> are used to calculate multi-head self-attention, the purpose of which is to explore the implicit relationship between visual features and semantic features, essentially using visual vectors weighted by text features to generate descriptive statements. The specific process can be represented by <xref ref-type="disp-formula" rid="eq12">Equations 12</xref>, <xref ref-type="disp-formula" rid="eq13">13</xref>.</p>
<disp-formula id="eq12">
<label>(12)</label>
<mml:math display="block" id="M12">
<mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msup>
<mml:mo>,</mml:mo>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq13">
<label>(13)</label>
<mml:math display="block" id="M13">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mi>F</mml:mi>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im34">
<mml:mrow>
<mml:msubsup>
<mml:mi>B</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mo>'</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula>
<mml:math display="inline" id="im35">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mn>1</mml:mn>
<mml:mi>s</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the output of the first layer decoder of the caption generation module.</p>
<p>The caption generation module contains a total of N decoders, and the output of the last layer decoder is <inline-formula>
<mml:math display="inline" id="im36">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>t</mml:mi>
<mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. Then, two fully connected layers are used to convert the output <inline-formula>
<mml:math display="inline" id="im37">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> into the distribution probability of each word in the database. This probability can be expressed using <xref ref-type="disp-formula" rid="eq14">Equation 14</xref>.</p>
<disp-formula id="eq14">
<label>(14)</label>
<mml:math display="block" id="M14">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="true">^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im38">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="true">^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is the weight of <italic>MLP_gen</italic>.</p>
</sec>
<sec id="s4_5">
<label>4.5</label>
<title>Classification module</title>
<p>The structure of the classification module is shown in area &#x2463; in <xref ref-type="fig" rid="f6">
<bold>Figure&#xa0;6</bold>
</xref>. The purpose of the classification module is to predict disease image categories based on the output of the caption generation module. The output of the caption generation module serves as <italic>K</italic> and <italic>V</italic> for attention blocks in the classification decoder. Its output is essentially a visual vector weighted by text features. In addition, the classification module and the caption generation module have the same number of decoders. Let <inline-formula>
<mml:math display="inline" id="im39">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>M</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>s</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>F</mml:mi>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>'</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denote a complete image of an agricultural disease, which is taken as the <italic>Q</italic> in the attention block. Taking the first attention block in the classification module as an example, the operation process is represented by <xref ref-type="disp-formula" rid="eq15">Equations 15</xref>, <xref ref-type="disp-formula" rid="eq16">16</xref>.</p>
<disp-formula id="eq15">
<label>(15)</label>
<mml:math display="block" id="M15">
<mml:mrow>
<mml:msubsup>
<mml:mi>C</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>H</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>T</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>F</mml:mi>
<mml:msubsup>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq16">
<label>(16)</label>
<mml:math display="block" id="M16">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>F</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>C</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im40">
<mml:mrow>
<mml:msubsup>
<mml:mi>C</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula>
<mml:math display="inline" id="im41">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is the output of the first decoder in the classification module. Let <inline-formula>
<mml:math display="inline" id="im42">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:msup>
<mml:mi>C</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denote the output of the last decoder. The output <inline-formula>
<mml:math display="inline" id="im43">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> of the last decoder is then converted into a probability distribution of the agricultural disease image category through two fully connected layers. The probability equation is shown in <xref ref-type="disp-formula" rid="eq17">Equation 17</xref>.</p>
<disp-formula id="eq17">
<label>(17)</label>
<mml:math display="block" id="M17">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="true">^</mml:mo>
</mml:mover>
<mml:mo>=</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mi>L</mml:mi>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>;</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im44">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mo stretchy="true">^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>&#x211d;</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <italic>T</italic> is the number of disease categories, and <italic>&#x3b1;<sub>cls</sub> </italic>is the weight of <italic>MLP<sub>cls</sub>
</italic>.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Experimental</title>
<sec id="s5_1">
<label>5.1</label>
<title>Experimental content</title>
<p>The DIC-Transformer mainly includes three modules: disease region detection module, image caption generation module, and classification module. Then, the results of Faster R-CNN experiments in 16 different backbones are analyzed, and an optimal object detection model is selected to process the input images. Next, the second task, the image caption generation task, needs to be tested and analyzed, and its main job is to compare DIC-Transformer with some existing caption generation models. Finally, we need to evaluate the performance of the classifier. Since DIC-Transformer is a two-stage method, the experiment mainly consists of two tasks:</p>
<list list-type="order">
<list-item>
<p>Object detection backbone comparison experiment based on Faster R-CNN.</p>
</list-item>
<list-item>
<p>Quantitative and qualitative analyses of the DIC-Transformer. This task is divided into the following four experiments:</p>
<list list-type="alpha-lower">
<list-item>
<p>Comparative experiment of image caption generation model.</p>
</list-item>
<list-item>
<p>Comparative experiments of classification models.</p>
</list-item>
<list-item>
<p>Ablation experiments of DIC-Transformer.</p>
</list-item>
<list-item>
<p>Qualitative analysis of DIC-Transformer and classic image caption generation models.</p>
</list-item>
</list>
</list-item>
</list>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Experimental details</title>
<p>Object detection backbone comparison experiments based on Faster R-CNN are implemented in two open-source frameworks, Detectron2 (<xref ref-type="bibr" rid="B66">Wu et&#xa0;al., 2019</xref>) and MMDetection (<xref ref-type="bibr" rid="B6">Chen et&#xa0;al., 2019</xref>). Detectron2 is a robust object detection platform developed by FAIR (Facebook AI Research) in 2019. Several state-of-the-art detection and segmentation algorithms are already integrated, eliminating the need to develop these networks from the ground up. There are two types of object detectors: one-stage and two-stage detectors. Detectron2 is a two-stage system, and the detection task is carried out in two steps. The first step is to extract the region of interest (RoI). The second step involves target classification and positioning. The nature of these two-stage detectors makes them slower than one-stage detectors such as YOLO and SSD, but they can produce more accurate results. Under Detectron2, we utilize the Faster R-CNN + FPN algorithm and employ a pre-trained model. In Detectron2, there are no epochs, only iterations. However, the maximum number of iterations can be artificially set based on the size of the dataset.</p>
<p>MMDetection is an open-source project initiated by SenseTime and the Chinese University of Hong Kong for object detection tasks. It implements a wide range of object detection algorithms based on PyTorch and encapsulates the processes of dataset construction, model building, training strategies, and other tasks into modules. When building a new algorithm with MMDetection, the process typically involves the following steps: registering the dataset, registering a model, building a configuration file, and conducting training and validation.</p>
<p>The second stage of the DIC-Transformer is trained and tested on an NVIDIA P100-16G with CUDA 11.3 using Python 3.8 and PyTorch 1.10 on Ubuntu 18.04. Additionally, the version of Detectron2 is v0.6, and the version of MMDetection is 2.25.1.</p>
<p>The parameters used in the experimental process are detailed in <xref ref-type="table" rid="T5">
<bold>Table&#xa0;5</bold>
</xref>. Both frameworks employ the same parameter settings, where unexposed parameters utilize the default values within the framework.</p>
<table-wrap id="T5" position="float">
<label>Table&#xa0;5</label>
<caption>
<p>Faster R-CNN benchmark experiment parameter setting.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Parameter</th>
<th valign="middle" align="center">Pre-trained model</th>
<th valign="middle" align="center">Optimizer</th>
<th valign="middle" align="center">Warm-up strategy</th>
<th valign="middle" align="center">Warm-up iters</th>
<th valign="middle" align="center">Warm-up ratio</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Value</td>
<td valign="middle" align="center">ImageNet</td>
<td valign="middle" align="center">SGD</td>
<td valign="middle" align="center">Liner</td>
<td valign="middle" align="center">1,000</td>
<td valign="middle" align="center">0.001</td>
</tr>
<tr>
<td valign="middle" align="center">Parameter</td>
<td valign="middle" align="center">BatchSize</td>
<td valign="middle" align="center">Learning rate</td>
<td valign="middle" align="center">Momentum</td>
<td valign="middle" align="center">Weight decay</td>
<td valign="middle" align="center">Iteration rounds</td>
</tr>
<tr>
<td valign="middle" align="center">Value</td>
<td valign="middle" align="center">16</td>
<td valign="middle" align="center">0.02</td>
<td valign="middle" align="center">0.9</td>
<td valign="middle" align="center">0.0001</td>
<td valign="middle" align="center">10,000</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The region detection module is used to extract the feature and location of the disease area as the input of the caption generation module. The parameters for all comparison and ablation experiments are shown in <xref ref-type="table" rid="T6">
<bold>Table&#xa0;6</bold>
</xref>.</p>
<table-wrap id="T6" position="float">
<label>Table&#xa0;6</label>
<caption>
<p>Comparative experiment parameter settings for DIC-Transformer.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Parameter</th>
<th valign="middle" align="center">Noamopt Warmup</th>
<th valign="middle" align="center">Optim Alpha</th>
<th valign="middle" align="center">Optim Beta</th>
<th valign="middle" align="center">Optim Epsilon</th>
<th valign="middle" align="center">Noamopt</th>
<th valign="middle" align="center">Optimizer</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Value</td>
<td valign="middle" align="center">Adam</td>
<td valign="middle" align="center">0.9</td>
<td valign="middle" align="center">0.999</td>
<td valign="middle" align="center">1e&#x2212;4</td>
<td valign="middle" align="center">True</td>
<td valign="middle" align="center">2,000</td>
</tr>
<tr>
<td valign="middle" align="center">Parameter</td>
<td valign="middle" align="center">Noamopt Factor</td>
<td valign="middle" align="center">Grad Clip</td>
<td valign="middle" align="center">BatchSize</td>
<td valign="middle" align="center">Learning Rate</td>
<td valign="middle" align="center">T-Depth</td>
<td valign="middle" align="center">Epoch</td>
</tr>
<tr>
<td valign="middle" align="center">Value</td>
<td valign="middle" align="center">1</td>
<td valign="middle" align="center">0.1</td>
<td valign="middle" align="center">16</td>
<td valign="middle" align="center">2e&#x2212;4</td>
<td valign="middle" align="center">6</td>
<td valign="middle" align="center">30</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The second stage of the DIC-Transformer is trained and tested on NVIDIA P100-16G with CUDA 11.3 using Python 3.8 and PyTorch 1.10 on Ubuntu 18.04. Additionally, the Detectron2 version used is v0.6, and the MMDetection version is 2.25.1.</p>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Evaluation metrics</title>
<p>We mainly evaluate three tasks: object detection task, image caption generation task, and image classification task. Object detection task uses <italic>mAP</italic>/<italic>mAP</italic>
<sub>50</sub>/<italic>mAP</italic>
<sub>75</sub> as quantitative indicators. The image caption generation task uses BLEU, Cider-D, and Rouge as quantitative indicators. Image classification task uses Acc, Recall, and F1 as quantitative indicators. Some basic concepts of evaluation indicators are as follows.</p>
<sec id="s5_3_1">
<label>5.3.1</label>
<title>IoU</title>
<p>This represents an intersection over the previous union, essentially the overlap between the predicted range and the true range divided by the sum of the predicted range and the true range. <xref ref-type="disp-formula" rid="eq18">Equation 18</xref> is the calculation process of the IoU.</p>
<disp-formula id="eq18">
<label>(18)</label>
<mml:math display="block" id="M18">
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>U</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:msup>
<mml:mo>&#x2229;</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
</mml:msup>
<mml:mi>G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:msup>
<mml:mo>&#x222a;</mml:mo>
<mml:mtext>&#xa0;</mml:mtext>
</mml:msup>
<mml:mi>G</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>P</italic> is the predicted bounding box and <italic>G</italic> is the ground-truth bounding box.</p>
</sec>
<sec id="s5_3_2">
<label>5.3.2</label>
<title>Confusion matrix</title>
<p>This is a summary of the prediction results, where TP represents the number of predictions that will be positive to positive classes. FN differs from TP in that it is the number of positive classes predicted as negative classes. FP is the exact opposite of FN, and it is the number of negative classes predicted as positive classes. The final TN is the exact opposite of TP, which represents the number of predicted negative classes as negative classes. In the taxonomic issue, for a disease category like strawberry anthracnose, the sample labeled &#x201c;strawberry anthracnose&#x201d; is considered a positive sample, while all other samples are considered negative. Therefore, in the classification problem, TP represents the image predicted by the model as strawberry anthracnose, and the true label is also strawberry anthracnose, i.e., the number of samples correctly predicted as positive. FN represents the image that the model predicts to be non-strawberry anthracnose, while the true label is strawberry anthracnose, i.e., the number of samples that are falsely predicted as positive. TN represents the image that the model predicts to be non-strawberry anthracnose, while the true label is also not strawberry anthracnose, i.e., the number of samples correctly predicted to be negative. FP represents the image that the model predicts to be strawberry anthracnose, but the true label is not strawberry anthracnose, i.e., the number of samples that are incorrectly predicted as positive.</p>
</sec>
<sec id="s5_3_3">
<label>5.3.3</label>
<title>Precision</title>
<p>It indicates the proportion of samples that are actually positive in a sample that is predicted to be positive. The calculation process is shown in <xref ref-type="disp-formula" rid="eq19">Equation 19</xref>.</p>
<disp-formula id="eq19">
<label>(19)</label>
<mml:math display="block" id="M19">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s5_3_4">
<label>5.3.4</label>
<title>mAP</title>
<p>It measures the ability of the trained model to detect all classes. <italic>mAP</italic>/<italic>mAP</italic>
<sub>50</sub>/<italic>mAP</italic>
<sub>75</sub> is <italic>mAP<sup>IoU</sup>
</italic>
<sup>=0.5:0.05:0.95</sup>/<italic>mAP<sup>IoU</sup>
</italic>
<sup>=0.5</sup>/<italic>mAP<sup>IoU</sup>
</italic>
<sup>=0.75</sup>. <italic>IoU</italic> = 0.5:0.05:0.95 means that the intersection over union ratio is calculated for values ranging from 0.5 to 0.95, with an interval of 0.05. <xref ref-type="disp-formula" rid="eq20">Equation 20</xref> represents the calculation process of <italic>mAP</italic>.</p>
<disp-formula id="eq20">
<label>(20)</label>
<mml:math display="block" id="M20">
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>K</mml:mi>
</mml:msubsup>
<mml:mi>A</mml:mi>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>K</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>AP</italic> is defined as the area between the interpolated precision-recall curve and the X-axis, <italic>K</italic> represents the number of categories, and <italic>AP<sub>i</sub>
</italic> represents the <italic>AP</italic> value for a category.</p>
</sec>
<sec id="s5_3_5">
<label>5.3.5</label>
<title>BLEU</title>
<p>What the BLEU algorithm is actually doing: judging how similar two sentences are. <xref ref-type="disp-formula" rid="eq21">Equation 21</xref> represents the implementation of BLEU.</p>
<disp-formula id="eq21">
<label>(21)</label>
<mml:math display="block" id="M21">
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>n</mml:mi>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>c</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where the purpose of the first summation symbol in the formula is to calculate all the candidates because there may be several sentences in the calculation. Then, the purpose of the second summation symbol is to count all n-gram in the candidate. The number of n-gram in the reference statement is denoted by <inline-formula>
<mml:math display="inline" id="im45">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>n</mml:mi>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. Thus, the numerator is the representation of how many n-gram appears in a given candidate reference statement. The number of n-gram&#x2032; in the candidate is represented by <inline-formula>
<mml:math display="inline" id="im45a">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. Therefore, the denominator is the number of n-gram among all candidates.</p>
</sec>
<sec id="s5_3_6">
<label>5.3.6</label>
<title>Cider-D</title>
<p>The purpose of A is to prevent gaming problems with evaluation indicators. The problem with gaming is to prevent optimizing the algorithm for a certain evaluation indicator so that when the human gives a low score, the evaluation index gives a high score. <xref ref-type="disp-formula" rid="eq22">Equations 22</xref>, <xref ref-type="disp-formula" rid="eq23">23</xref> describe the calculation process for this evaluation metric.</p>
<disp-formula id="eq22">
<label>(22)</label>
<mml:math display="block" id="M22">
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>100</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:mfrac>
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>j</mml:mi>
</mml:munder>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>e</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>l</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>*</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>min</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>&#x261;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi>&#x261;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>&#x261;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:msup>
<mml:mi>&#x261;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mo>&#x2264;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
<mml:msup>
<mml:mi>&#x261;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>|</mml:mo>
<mml:mo>|</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq23">
<label>(23)</label>
<mml:math display="block" id="M23">
<mml:mrow>
<mml:mtext mathvariant="italic">Cider&#xa0;D&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>l</italic>(<italic>x<sub>i</sub>
</italic>) is the length of the text generated by the model and <italic>l</italic>(<italic>y<sub>ij</sub>
</italic>) is the length of the real text. Multiplying by 100 makes the value of Cider-D similar in size to the value of other evaluation indicators. <italic>g<sup>n</sup>
</italic> consists of <italic>g</italic>
<sub>1</sub>, <italic>g</italic>
<sub>2&#x2026;</sub> <italic>g<sub>n</sub>
</italic>. <italic>g<sub>k</sub>
</italic> is used to calculate the TF-IDF value for each N-gram. We set <italic>&#x3b4;</italic> = 6 and N = 4.</p>
</sec>
<sec id="s5_3_7">
<label>5.3.7</label>
<title>Rouge</title>
<p>Rouge metrics are very similar to BLEU metrics. The main difference is that ROUGE is based on recall, while BLEU focuses more on precision. The calculation process is shown in <xref ref-type="disp-formula" rid="eq24">Equation 24</xref>.</p>
<disp-formula id="eq24">
<label>(24)</label>
<mml:math display="block" id="M24">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>g</mml:mi>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>&#x3b2;</italic> = 1.2. The calculation process for <italic>R<sub>lcs</sub>
</italic> and <italic>P<sub>lcs</sub>
</italic> is shown in <xref ref-type="disp-formula" rid="eq25">Equations 25</xref>, <xref ref-type="disp-formula" rid="eq26">26</xref>, respectively.</p>
<disp-formula id="eq25">
<label>(25)</label>
<mml:math display="block" id="M25">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mi>C</mml:mi>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq26">
<label>(26)</label>
<mml:math display="block" id="M26">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mi>C</mml:mi>
<mml:mi>S</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>X</italic> represents the text generated by the model, and the length is <italic>m</italic>. <italic>Y</italic> represents the real text of the image, and the length is <italic>n</italic>. <italic>LCS</italic> is the longest common subsequence.</p>
</sec>
<sec id="s5_3_8">
<label>5.3.8</label>
<title>Acc</title>
<p>The full name of ACC is Accuracy, which stands for accuracy. The accuracy can be expressed by <xref ref-type="disp-formula" rid="eq27">Equation 27</xref>.</p>
<disp-formula id="eq27">
<label>(27)</label>
<mml:math display="block" id="M27">
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>T</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>T</mml:mi>
<mml:mi>N</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s5_3_9">
<label>5.3.9</label>
<title>Recall</title>
<p>It indicates the proportion of correctly predicted true values among all positive cases, which can be understood as how many correct targets are recalled. The calculation process is shown in <xref ref-type="disp-formula" rid="eq28">Equation 28</xref>.</p>
<disp-formula id="eq28">
<label>(28)</label>
<mml:math display="block" id="M28">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>l</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>F</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s5_3_10">
<label>5.3.10</label>
<title>F1</title>
<p>The core idea of F1 is to improve Precision and Recall as much as possible and also to make the difference between the two as small as possible. <xref ref-type="disp-formula" rid="eq29">Equation 29</xref> represents the calculation process for evaluating criterion F1.</p>
<disp-formula id="eq29">
<label>(29)</label>
<mml:math display="block" id="M29">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <italic>P</italic> is precision.</p>
</sec>
</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Experimental results</title>
<sec id="s5_4_1">
<label>5.4.1</label>
<title>Object detection benchmark experiment based on Faster R-CNN</title>
<p>The primary objective of this experiment is to assess the impact of different feature extraction networks on object detection. In the end, 16 backbones are selected to evaluate the overall performance of the Faster R-CNN. The backbones fall into 10 main types: ResNet (<xref ref-type="bibr" rid="B21">He et&#xa0;al., 2016</xref>), Res2Net (<xref ref-type="bibr" rid="B15">Gao et&#xa0;al., 2019</xref>), ResNeSt (<xref ref-type="bibr" rid="B71">Zhang et&#xa0;al., 2022</xref>), RegNet (<xref ref-type="bibr" rid="B48">Radosavovic et&#xa0;al., 2020</xref>), HrNet (<xref ref-type="bibr" rid="B58">Sun et&#xa0;al., 2019</xref>), HarDNet (<xref ref-type="bibr" rid="B5">Chao et&#xa0;al., 2019</xref>), EfficientNet (<xref ref-type="bibr" rid="B61">Tan and Le, 2019</xref>), MobileNetV2 (<xref ref-type="bibr" rid="B53">Sandler et&#xa0;al., 2018</xref>), VoVNet (<xref ref-type="bibr" rid="B33">Lee et&#xa0;al., 2019</xref>), and Swin Transformer (<xref ref-type="bibr" rid="B37">Liu et&#xa0;al., 2021b</xref>). While the experiments are conducted using two different frameworks, Detectron2 and MMDetection, the parameters remain consistent. <xref ref-type="table" rid="T5">
<bold>Table&#xa0;5</bold>
</xref> shows the parameter settings used in the current experiment, and undisclosed parameters use the default settings of the respective frameworks.</p>
<p>In the first stage of object detection, the size of the input image is not fixed, but we normalize the size of the image in the dataset. This means that the processed image has a moderate aspect ratio and sharp pixels. Before extracting the image features in the initial stage, we standardize the image size to 448 &#xd7; 448 and extract 1 &#xd7; 1,024 feature tensors using the feature extractor. These are then saved in an npy file for use in subsequent image caption generation tasks. It should be noted that there will be multiple diseased regions in an image, and each diseased region will generate a 1 &#xd7; 1,024 tensor. Therefore, there will be several tensors in the.npy file corresponding to an image. The Faster R-CNN model used to extract image features utilizes the Swin Transformer as its backbone. In the Swin Transformer, the default stride of the convolution is set to 2, and the size of the convolution kernel is 3 &#xd7; 3. This is because in the Swin Transformer Block, the convolutional kernel size of each 2D convolutional layer is set to 3 &#xd7; 3 for local feature extraction. It is important to note that the size of the convolutional kernel can be adjusted based on the specific task and dataset to achieve optimal performance. In the Swin Transformer, using a 3 &#xd7; 3 size as the default is a common choice, but it can be adjusted as necessary. Specifically, in a Swin Transformer Block, a 2D convolutional layer typically employs a convolution operation with a stride of 2. Using a two-step convolution can effectively decrease the size of the feature map and reduce the computational workload. This configuration is used in the Swin Transformer to achieve a balance between chunk processing and attention mechanisms, leading to improved performance and results. The activation function used in the encoder&#x2013;decoder is ReLU, which enhances the expressive capability of the features through non-linear transformation. It strengthens the part with larger values and suppresses the part with smaller values, resulting in better expression of the relevant features.</p>
<p>
<xref ref-type="table" rid="T7">
<bold>Tables&#xa0;7</bold>
</xref>, <xref ref-type="table" rid="T8">
<bold>8</bold>
</xref> show the experimental results under the Detectron2 and MMDetection frameworks, respectively. Finally, the Swin Transformer is selected for feature extraction. Swin Transformer adopts a hierarchical structure, creating layered representations by initially using small-sized patches and gradually merging adjacent patches into deeper layers of the Transformer. When <italic>IoU</italic> = 0.5:0.05:0.95, <italic>mAP</italic> is 0.674. When <italic>IoU</italic> = 0.5, <italic>mAP</italic>
<sub>50</sub> is 0.862. When <italic>IoU</italic> = 0.75, <italic>mAP</italic>
<sub>75</sub> is 0.793. The results indicate that, among the tested backbones, the Swin Transformer performs the best. Moreover, the experimental results show that there is no absolute linear upward relationship between the backbone performance and parameter scale, and the appropriate parameter scale should be analyzed according to the specific use scenario. For example, ResNet-101 and ResNet-50 have <italic>mAP</italic>
<sub>50</sub> values of 0.771 and 0.788, respectively, indicating a proportional relationship between backbone performance and parameter scale. However, HarDNet-68 and HarDNet-39 achieve <italic>mAP</italic> values of 0.679 and 0.729, respectively, suggesting an inversely proportional relationship between backbone performance and parameter scale.</p>
<table-wrap id="T7" position="float">
<label>Table&#xa0;7</label>
<caption>
<p>Faster R-CNN benchmark experiment (Detectron2 framework).</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Framework</th>
<th valign="middle" align="center">Backbone</th>
<th valign="middle" align="center">
<italic>mAP</italic>
</th>
<th valign="middle" align="center">
<italic>mAP</italic>
<sub>50</sub>
</th>
<th valign="middle" align="center">
<italic>mAP</italic>
<sub>75</sub>
</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center">Faster R-CNN</td>
<td valign="bottom" align="center">HarDNet-68</td>
<td valign="bottom" align="center">0.472</td>
<td valign="bottom" align="center">0.679</td>
<td valign="bottom" align="center">0.514</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">HarDNet-39</td>
<td valign="top" align="center">0.469</td>
<td valign="top" align="center">0.729</td>
<td valign="top" align="center">0.506</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">EfficientNet-B4</td>
<td valign="top" align="center">0.544</td>
<td valign="top" align="center">0.781</td>
<td valign="top" align="center">0.640</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">EfficientNet-B0</td>
<td valign="top" align="center">0.532</td>
<td valign="top" align="center">0.740</td>
<td valign="top" align="center">0.618</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">MobileNetV2</td>
<td valign="top" align="center">0.511</td>
<td valign="top" align="center">0.734</td>
<td valign="top" align="center">0.600</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">VoVNet-19</td>
<td valign="top" align="center">0.625</td>
<td valign="top" align="center">0.792</td>
<td valign="top" align="center">0.733</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">VoVNet-99</td>
<td valign="top" align="center">0653</td>
<td valign="top" align="center">0.812</td>
<td valign="top" align="center">0.763</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">Swin Transformer</td>
<td valign="top" align="center">0.674</td>
<td valign="top" align="center">0.862</td>
<td valign="top" align="center">0.793</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="T8" position="float">
<label>Table&#xa0;8</label>
<caption>
<p>Faster R-CNN benchmark experiment (MMDetection framework).</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Framework</th>
<th valign="top" align="center">Backbone</th>
<th valign="top" align="center">
<italic>mAP</italic>
</th>
<th valign="top" align="center">
<italic>mAP</italic>
<sub>50</sub>
</th>
<th valign="top" align="center">
<italic>mAP</italic>
<sub>75</sub>
</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center">Faster R-CNN</td>
<td valign="bottom" align="center">ResNet-101</td>
<td valign="bottom" align="center">0.580</td>
<td valign="bottom" align="center">0.771</td>
<td valign="bottom" align="center">0.671</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">ResNet-50</td>
<td valign="top" align="center">0.585</td>
<td valign="top" align="center">0.788</td>
<td valign="top" align="center">0.694</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">Res2Net-101</td>
<td valign="top" align="center">0.582</td>
<td valign="top" align="center">0.772</td>
<td valign="top" align="center">0.682</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">RegNetX-3.2GF</td>
<td valign="top" align="center">0.580</td>
<td valign="top" align="center">0.798</td>
<td valign="top" align="center">0.683</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">ResNeSt-50</td>
<td valign="top" align="center">0.525</td>
<td valign="top" align="center">0.746</td>
<td valign="top" align="center">0.597</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">ResNeSt-101</td>
<td valign="top" align="center">0.609</td>
<td valign="top" align="center">0.821</td>
<td valign="top" align="center">0.705</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">HrNet w-18</td>
<td valign="top" align="center">0.584</td>
<td valign="top" align="center">0.782</td>
<td valign="top" align="center">0.649</td>
</tr>
<tr>
<td valign="top" align="left"/>
<td valign="top" align="center">HrNet w-32</td>
<td valign="top" align="center">0.599</td>
<td valign="top" align="center">0.782</td>
<td valign="top" align="center">0.691</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_4_2">
<label>5.4.2</label>
<title>Quantitative and qualitative analyses of DIC-Transformer</title>
<p>We show the changes in various information during the model training process in the form of a line chart. <xref ref-type="fig" rid="f7">
<bold>Figure&#xa0;7</bold>
</xref> shows the change process of learning rate during model training. <xref ref-type="fig" rid="f8">
<bold>Figure&#xa0;8</bold>
</xref> shows the changes in the three losses in the training process, which are the loss changes in the image caption generation module, the loss changes in the image classification module, and the total loss changes in the model. <xref ref-type="fig" rid="f3">
<bold>Figure&#xa0;3</bold>
</xref> shows the variation curves of various evaluation indicators of image classification and image subtitle generation results.</p>
<fig id="f7" position="float">
<label>Figure&#xa0;7</label>
<caption>
<p>Model learning rate change curve.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g007.tif"/>
</fig>
<fig id="f8" position="float">
<label>Figure&#xa0;8</label>
<caption>
<p>Model loss change curve.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g008.tif"/>
</fig>
<sec id="s5_4_2_1">
<label>5.4.2.1</label>
<title>DIC-Transformer image caption generation performance test</title>
<p>This is followed by a simple description of the eight image caption generation models to be compared. AoANet (<xref ref-type="bibr" rid="B24">Huang et&#xa0;al., 2019</xref>) introduces a new multi-level attention mechanism to enhance image caption generation by incorporating attention weighting in an attention weight. UpDown (<xref ref-type="bibr" rid="B2">Anderson et&#xa0;al., 2018</xref>) introduces underlying and top-level attention mechanisms, proposes trainable underlying features, and combines the attention mechanism with the language model. Adaatt (<xref ref-type="bibr" rid="B39">Lu et&#xa0;al., 2017</xref>) introduces visual flags to guide the allocation of attention, proposes an adaptive attention mechanism, and builds an end-to-end generative model. ShowTell (<xref ref-type="bibr" rid="B63">Vinyals et&#xa0;al., 2015</xref>) utilizes attention mechanisms and employs Multilayer Perceptron (MLP) as generators, combining CNN and LSTM. FC (<xref ref-type="bibr" rid="B50">Rennie et&#xa0;al., 2017</xref>) uses a CNN-encoded image as input to predict the second word. Instead of using a static spatial pool representation of the image, the attention model in Att2in (<xref ref-type="bibr" rid="B10">Dosovitskiy et&#xa0;al., 2020</xref>) dynamically reweights the input space (CNN) feature to focus on a specific area of the image at each time step. <italic>M</italic>
<sup>2</sup> Transformer (<xref ref-type="bibr" rid="B7">Cornia et&#xa0;al., 2020</xref>) integrates prior knowledge of learning, learns multi-level representations of relationships between image regions, and uses mesh connections to leverage low-level and high-level features during the decoding stage. DLCT (<xref ref-type="bibr" rid="B40">Luo et&#xa0;al., 2021</xref>) enhances contextual information and fine-grained details through a new bidirectional self-attention (DWSA) and a locally constrained cross-attention module. ExpansionNet v2 (<xref ref-type="bibr" rid="B23">Hu et&#xa0;al., 2022</xref>) explores the potential performance bottlenecks in input length in deep learning methods.</p>
<p>LATGeO (<xref ref-type="bibr" rid="B11">Dubey et&#xa0;al., 2023a</xref>) proposes a novel attention mechanism that is capable of efficiently processing geometrically related objects in images when generating image descriptions. This method not only considers global information but also pays attention to the spatial relationship between different objects in the image through a fine-grained local attention mechanism. The proposed framework, label-attention transformer with geometrically coherent objects (LATGeO (<xref ref-type="bibr" rid="B12">Dubey et&#xa0;al., 2023b</xref>)) acquires proposals of geometrically coherent objects using a deep neural network (DNN) and generates captions by investigating their relationships using label attention module (LAM). Stack-Captioning (<xref ref-type="bibr" rid="B19">Gu et&#xa0;al., 2018</xref>), a coarse-to-fine multi-stage prediction framework for image captioning, is composed of multiple decoders, each of which operates on the output of the previous stage, producing increasingly refined image descriptions. A new diffusion model-based paradigm tailored for image captioning is proposed, namely, Semantic-Conditional Diffusion Networks (SCD-Net; <xref ref-type="bibr" rid="B41">Luo et&#xa0;al., 2023</xref>), which breaks the deeply rooted conventions in learning Transformer-based encoder&#x2013;decoder.</p>
<p>Next, we test the performance of the DIC-Transformer and the above model on the image classification task based on ADCG-18. The criteria used to evaluate the model are Bleu1, Bleu2, Bleu3, Bleu4, CiderD, and Rough, which are common in the field of caption generation. Finally, <xref ref-type="table" rid="T9">
<bold>Table&#xa0;9</bold>
</xref> shows the test results of seven classic caption generation models and the DIC-Transformer model.</p>
<table-wrap id="T9" position="float">
<label>Table&#xa0;9</label>
<caption>
<p>Comparison results of DIC-Transformer and classic image caption generation models.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Method</th>
<th valign="top" align="center">Bleu1</th>
<th valign="top" align="center">Bleu2</th>
<th valign="top" align="center">Bleu3</th>
<th valign="top" align="center">Bleu4</th>
<th valign="top" align="center">CiderD</th>
<th valign="top" align="center">Rough</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center">Fc</td>
<td valign="bottom" align="center">0.746</td>
<td valign="bottom" align="center">0.535</td>
<td valign="bottom" align="center">0.364</td>
<td valign="bottom" align="center">0.249</td>
<td valign="bottom" align="center">420.96</td>
<td valign="bottom" align="center">0.707</td>
</tr>
<tr>
<td valign="top" align="center">Att2in</td>
<td valign="top" align="center">0.712</td>
<td valign="top" align="center">0.466</td>
<td valign="top" align="center">0.242</td>
<td valign="top" align="center">0.159</td>
<td valign="top" align="center">342.95</td>
<td valign="top" align="center">0.637</td>
</tr>
<tr>
<td valign="top" align="center">DLCT</td>
<td valign="top" align="center">0.721</td>
<td valign="top" align="center">0.502</td>
<td valign="top" align="center">0.348</td>
<td valign="top" align="center">0.293</td>
<td valign="top" align="center">434.54</td>
<td valign="top" align="center">0.664</td>
</tr>
<tr>
<td valign="top" align="center">LATGeO</td>
<td valign="top" align="center">0.682</td>
<td valign="top" align="center">0.472</td>
<td valign="top" align="center">0.305</td>
<td valign="top" align="center">0.214</td>
<td valign="top" align="center">335.26</td>
<td valign="top" align="center">0.636</td>
</tr>
<tr>
<td valign="top" align="center">Stack-Captioning</td>
<td valign="top" align="center">0.706</td>
<td valign="top" align="center">0.495</td>
<td valign="top" align="center">0.335</td>
<td valign="top" align="center">0.257</td>
<td valign="top" align="center">362.24</td>
<td valign="top" align="center">0.669</td>
</tr>
<tr>
<td valign="top" align="center">UpDown</td>
<td valign="top" align="center">0.679</td>
<td valign="top" align="center">0.489</td>
<td valign="top" align="center">0.316</td>
<td valign="top" align="center">0.228</td>
<td valign="top" align="center">383.40</td>
<td valign="top" align="center">0.657</td>
</tr>
<tr>
<td valign="top" align="center">SCD-Net</td>
<td valign="top" align="center">0.714</td>
<td valign="top" align="center">0.451</td>
<td valign="top" align="center">0.253</td>
<td valign="top" align="center">0.161</td>
<td valign="top" align="center">351.24</td>
<td valign="top" align="center">0.640</td>
</tr>
<tr>
<td valign="top" align="center">AoANet</td>
<td valign="top" align="center">0.727</td>
<td valign="top" align="center">0.539</td>
<td valign="top" align="center">0.353</td>
<td valign="top" align="center">0.280</td>
<td valign="top" align="center">431.09</td>
<td valign="top" align="center">0.677</td>
</tr>
<tr>
<td valign="top" align="center">
<italic>M</italic>
<sup>2</sup> Transformer</td>
<td valign="top" align="center">0.738</td>
<td valign="top" align="center">0.543</td>
<td valign="top" align="center">0.378</td>
<td valign="top" align="center">0.271</td>
<td valign="top" align="center">433.71</td>
<td valign="top" align="center">0.685</td>
</tr>
<tr>
<td valign="top" align="center">ExpansionNet v2</td>
<td valign="top" align="center">0.741</td>
<td valign="top" align="center">0.549</td>
<td valign="top" align="center">0.386</td>
<td valign="top" align="center">0.287</td>
<td valign="top" align="center">437.09</td>
<td valign="top" align="center">0.708</td>
</tr>
<tr>
<td valign="top" align="center">LATGeO</td>
<td valign="top" align="center">0.739</td>
<td valign="top" align="center">0.531</td>
<td valign="top" align="center">0.363</td>
<td valign="top" align="center">0.278</td>
<td valign="top" align="center">432.12</td>
<td valign="top" align="center">0.701</td>
</tr>
<tr>
<td valign="middle" align="center">Ours</td>
<td valign="middle" align="center">0.756</td>
<td valign="middle" align="center">0.561</td>
<td valign="middle" align="center">0.404</td>
<td valign="middle" align="center">0.294</td>
<td valign="middle" align="center">450.51</td>
<td valign="middle" align="center">0.721</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In this paper, there are seven comparison methods used for image caption generation tasks, which are roughly divided into two categories: one is the top-down method, and the other is a bottom-up approach. Experiments show no significant difference between top-down and bottom-up approaches. For example, the ShowTell method exhibits the worst results in the top-down method, whereas the Fc method performs the best effect, showing little difference from the optimal method in the bottom-up method. The model with the highest CiderD score is AoANet, with a value of 431.09. However, the model presented in this paper achieves a CiderD score of 450.51, which is 19.42 points higher than the CiderD score of AoANet.</p>
</sec>
<sec id="s5_4_2_2">
<label>5.4.2.2</label>
<title>DIC-Transformer classification performance test</title>
<p>The purpose of this experiment is to demonstrate that DIC-Transformer is superior to other classification models in terms of classification performance. To compare with classical classification methods, DIC-Transformer is evaluated on ADCG-18, and the results are shown in <xref ref-type="table" rid="T10">
<bold>Table&#xa0;10</bold>
</xref>. Under the context of error propagation (where the region detection module is trained solely on the training set), the classical CNN model with the best classification performance is MobilenetV2, achieving an Acc value of 0.830. In contrast, DIC-Transformer achieves an Acc value of 0.854, which is 0.024 higher than the Acc of MobilenetV2. In addition, in the absence of error propagation (where the region detection module is trained using both the training and testing sets), the DIC-Transformer&#x2019;s ACC value increases by an additional 0.031, resulting in an Acc value of 0.885. The results show that in the classification performance comparison experiment using the ADCG-18, DIC-Transformer outperforms other classical classification models, showing a better classification effect.</p>
<table-wrap id="T10" position="float">
<label>Table&#xa0;10</label>
<caption>
<p>Comparison results of DIC-Transformer and classical CNN models.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Method</th>
<th valign="top" align="center">Acc</th>
<th valign="top" align="center">Recall</th>
<th valign="top" align="center">F1</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center">AlexNet, <xref ref-type="bibr" rid="B30">Krizhevsky et&#xa0;al. (2012)</xref>
</td>
<td valign="bottom" align="center">0.743</td>
<td valign="bottom" align="center">0.641</td>
<td valign="bottom" align="center">0.652</td>
</tr>
<tr>
<td valign="middle" align="center">ResNet-101</td>
<td valign="top" align="center">0.827</td>
<td valign="top" align="center">0.779</td>
<td valign="top" align="center">0.786</td>
</tr>
<tr>
<td valign="top" align="center">EfficientNet</td>
<td valign="top" align="center">0.814</td>
<td valign="top" align="center">0.775</td>
<td valign="top" align="center">0.778</td>
</tr>
<tr>
<td valign="top" align="center">VggNet, <xref ref-type="bibr" rid="B54">Simonyan and Zisserman (2014)</xref>
</td>
<td valign="top" align="center">0.772</td>
<td valign="top" align="center">0.698</td>
<td valign="top" align="center">0.705</td>
</tr>
<tr>
<td valign="top" align="center">GoogleNet, <xref ref-type="bibr" rid="B59">Szegedy et&#xa0;al. (2015)</xref>
</td>
<td valign="top" align="center">0.754</td>
<td valign="top" align="center">0.683</td>
<td valign="top" align="center">0.695</td>
</tr>
<tr>
<td valign="top" align="center">InceptionV3, <xref ref-type="bibr" rid="B60">Szegedy et&#xa0;al. (2016)</xref>
</td>
<td valign="top" align="center">0.717</td>
<td valign="top" align="center">0.640</td>
<td valign="top" align="center">0.653</td>
</tr>
<tr>
<td valign="top" align="center">MobileNetV2</td>
<td valign="top" align="center">0.830</td>
<td valign="top" align="center">0.776</td>
<td valign="top" align="center">0.778</td>
</tr>
<tr>
<td valign="top" align="center">RepVGG, <xref ref-type="bibr" rid="B9">Ding et&#xa0;al. (2021)</xref>
</td>
<td valign="top" align="center">0.793</td>
<td valign="top" align="center">0.705</td>
<td valign="top" align="center">0.712</td>
</tr>
<tr>
<td valign="top" align="center">GhostNet, <xref ref-type="bibr" rid="B20">Han et&#xa0;al. (2020)</xref>
</td>
<td valign="top" align="center">0.752</td>
<td valign="top" align="center">0.685</td>
<td valign="top" align="center">0.689</td>
</tr>
<tr>
<td valign="top" align="center">SqueezeNet, <xref ref-type="bibr" rid="B29">Koonce and Koonce (2021)</xref>
</td>
<td valign="top" align="center">0.784</td>
<td valign="top" align="center">0.725</td>
<td valign="top" align="center">0.732</td>
</tr>
<tr>
<td valign="bottom" align="center">Ours w/EP</td>
<td valign="bottom" align="center">0.854</td>
<td valign="bottom" align="center">0.854</td>
<td valign="bottom" align="center">0.853</td>
</tr>
<tr>
<td valign="top" align="center">Ours w/o EP</td>
<td valign="top" align="center">0.885</td>
<td valign="top" align="center">0.885</td>
<td valign="top" align="center">0.886</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_4_2_3">
<label>5.4.2.3</label>
<title>Ablation experiment of DIC-Transformer</title>
<p>In this set of ablation experiments, the main purpose is to verify the contribution of each module in the model. The modules involved in the experiment include the patch embedding module, the region detection module, the caption generation module, and the position encoding module. The results are shown in <xref ref-type="table" rid="T11">
<bold>Table&#xa0;11</bold>
</xref>. In Experiments I and II, the region detection module is not used, and the image is divided into 16 * 16 and 32 * 32 grid input to the sequence encoding module. This method of dividing images comes from VIT (<xref ref-type="bibr" rid="B10">Dosovitskiy et&#xa0;al., 2020</xref>), called the PetchEmbedding method. In Experiment III, the visual feature vector outputted by the region detection module is used as the input to the sequence encoding module. The output of the sequence encoding module is then fed into the caption generation module to obtain the visual vector weighted by text features. Finally, this vector is used as the input of the classification module to obtain the category label of the disease. In addition, the positional coding module is used in the sequence encoding module. Experiment IV is based on Experiment III but without a position coding module. Experiment V removes the caption generation module from the setup in Experiment IV, and the visual feature vectors generated by the sequence encoding module are directly inputted to the classification module to classify the image. Experiments VI and VII remove the caption generation module from the setup in Experiments I and II, respectively. They directly input the visual feature vectors obtained by the segmented image processed by the sequence encoding module into the classification module to obtain the category label of the image.</p>
<table-wrap id="T11" position="float">
<label>Table&#xa0;11</label>
<caption>
<p>In the presence of error propagation, the effect of a single module on model performance results.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" colspan="5" align="center">Ablation</th>
<th valign="top" colspan="6" align="center">Image caption</th>
<th valign="top" colspan="3" align="center">Classification</th>
<th valign="top" align="center">Index</th>
</tr>
<tr>
<th valign="top" align="center">P16</th>
<th valign="top" align="center">P32</th>
<th valign="top" align="center">Detection</th>
<th valign="top" align="center">Describe</th>
<th valign="top" align="center">Position</th>
<th valign="top" align="center">Bleu1</th>
<th valign="top" align="center">Bleu2</th>
<th valign="top" align="center">Bleu3</th>
<th valign="top" align="center">Bleu4</th>
<th valign="top" align="center">CiderD</th>
<th valign="top" align="center">Rouge</th>
<th valign="top" align="center">Acc</th>
<th valign="top" align="center">Recall</th>
<th valign="top" align="center">F1</th>
<th valign="top" align="center"/>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center" rowspan="5">&#x2713;</td>
<td valign="top" align="center" rowspan="6">
<break/>
<break/>&#x2713;</td>
<td valign="top" align="center" rowspan="2"/>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="3"/>
<td valign="top" align="center">0.612</td>
<td valign="top" align="center">0.443</td>
<td valign="top" align="center">0.285</td>
<td valign="top" align="center">0.204</td>
<td valign="top" align="center">404.67</td>
<td valign="top" align="center">0.537</td>
<td valign="top" align="center">0.714</td>
<td valign="top" align="center">0.714</td>
<td valign="top" align="center">0.711</td>
<td valign="top" align="center">I</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.632</td>
<td valign="top" align="center">0.487</td>
<td valign="top" align="center">0.313</td>
<td valign="top" align="center">0.224</td>
<td valign="top" align="center">413.25</td>
<td valign="top" align="center">0.583</td>
<td valign="top" align="center">0.786</td>
<td valign="top" align="center">0.786</td>
<td valign="top" align="center">0.782</td>
<td valign="top" align="center">II</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.722</td>
<td valign="top" align="center">0.539</td>
<td valign="top" align="center">0.389</td>
<td valign="top" align="center">0.283</td>
<td valign="top" align="center">430.71</td>
<td valign="top" align="center">0.678</td>
<td valign="top" align="center">0.837</td>
<td valign="top" align="center">0.837</td>
<td valign="top" align="center">0.834</td>
<td valign="top" align="center">III</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="4">&#x2713;</td>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.756</td>
<td valign="top" align="center">0.561</td>
<td valign="top" align="center">0.404</td>
<td valign="top" align="center">0.295</td>
<td valign="top" align="center">450.51</td>
<td valign="top" align="center">0.721</td>
<td valign="top" align="center">0.854</td>
<td valign="top" align="center">0.854</td>
<td valign="top" align="center">0.853</td>
<td valign="top" align="center">IV</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="3">&#x2713;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.846</td>
<td valign="top" align="center">0.846</td>
<td valign="top" align="center">0.844</td>
<td valign="top" align="center">V</td>
</tr>
<tr>
<td valign="top" align="center" rowspan="2">&#x2713;</td>
<td valign="top" align="center" rowspan="2"/>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.478</td>
<td valign="top" align="center">0.478</td>
<td valign="top" align="center">0.467</td>
<td valign="top" align="center">VI</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.425</td>
<td valign="top" align="center">0.425</td>
<td valign="top" align="center">0.416</td>
<td valign="top" align="center">VII</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>The &#x2713; in the table means that the model in the experiment contains the current module, and the model in the experiment does not contain the current module without the &#x2713; symbol.</p>
</fn>
</table-wrap-foot>
</table-wrap>
<p>Experiments I, II, and III are conducted to verify the influence of the region detection module on the overall model performance, as shown in <xref ref-type="table" rid="T11">
<bold>Table&#xa0;11</bold>
</xref>. Taking Bleu as an example, the average values of Experiments I and II are 0.612 and 0.632, respectively, while the average value of Experiment III is 0.722. The latter is 0.11 and 0.09 higher than the average values of the previous two experiments. This difference is due to the image meshing method used in Experiments I and II, which results in the divided images containing much background information. Additionally, Experiments I and II demonstrate that meshing the image into 32 * 32 works better than dividing it into 16 * 16 grids. Notably, location information is utilized in both experiments. Experiments III and IV evaluate the effect of the position coding module in the sequence encoding module on the overall model performance. In Experiment IV, the bounding box coordinates of the disease area in the image are used as location encoding. The mean value of Bleu1 in Experiment IV using position coding is 0.756, whereas the mean value of Bleu1 in Experiment III without position coding is 0.722, resulting in a difference of 0.034. This indicates that using bounding box coordinates as position coding has a positive impact on the model&#x2019;s performance. Experiments IV and V evaluate the influence of the caption generation module on classification performance. Taking Acc as an example, the classification result of the model containing the caption generation module is 0.854, while the classification result of the model without the caption generation module is 0.846. The results indicate that the introduction of the caption generation module to weigh visual feature vectors with text features can improve classification performance. In addition, in both experiments, location information is used. Experiments VI and VII remove the caption generation module based on Experiments I and II, respectively. The results show that the classification performance is significantly reduced, with the classification accuracy being 0.478 and 0.425, respectively.</p>
<p>Finally, the influence of error propagation on model performance in DIC-Transformer is quantitatively analyzed. In effect, all the images in the dataset are used as the training set for the first stage disease region detection module. This eliminates errors caused by the region detection module. Next, the trained disease area detector is used to obtain the feature information and disease area location details of the image. The ablation experiment is then repeated using the obtained data. The results of this experiment are summarized in <xref ref-type="table" rid="T12">
<bold>Table&#xa0;12</bold>
</xref>. The mean accuracy in the final results of Experiments X, XI, and XII is 0.875, while Experiments VIII, IX, XIII, and XIV are consistent with the results presented in <xref ref-type="table" rid="T11">
<bold>Table&#xa0;11</bold>
</xref>, as they do not involve the region detection module.</p>
<table-wrap id="T12" position="float">
<label>Table&#xa0;12</label>
<caption>
<p>In the absence of error propagation, the effect of a single module on model performance results.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" colspan="5" align="center">Ablation</th>
<th valign="top" colspan="6" align="center">Image caption</th>
<th valign="top" colspan="3" align="center">Classification</th>
<th valign="top" align="center">Index</th>
</tr>
<tr>
<th valign="top" align="center">P16</th>
<th valign="top" align="center">P32</th>
<th valign="top" align="center">Detection</th>
<th valign="top" align="center">Describe</th>
<th valign="top" align="center">Position</th>
<th valign="top" align="center">Bleu1</th>
<th valign="top" align="center">Bleu2</th>
<th valign="top" align="center">Bleu3</th>
<th valign="top" align="center">Bleu4</th>
<th valign="top" align="center">CiderD</th>
<th valign="top" align="center">Rouge</th>
<th valign="top" align="center">Acc</th>
<th valign="top" align="center">Recall</th>
<th valign="top" align="center">F1</th>
<th valign="top" align="center"/>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center" rowspan="5">&#x2713;</td>
<td valign="top" align="center" rowspan="6">
<break/>
<break/>&#x2713;</td>
<td valign="top" align="center" rowspan="2"/>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="3"/>
<td valign="top" align="center">0.612</td>
<td valign="top" align="center">0.443</td>
<td valign="top" align="center">0.285</td>
<td valign="top" align="center">0.204</td>
<td valign="top" align="center">404.67</td>
<td valign="top" align="center">0.537</td>
<td valign="top" align="center">0.714</td>
<td valign="top" align="center">0.714</td>
<td valign="top" align="center">0.711</td>
<td valign="top" align="center">VIII</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.632</td>
<td valign="top" align="center">0.487</td>
<td valign="top" align="center">0.313</td>
<td valign="top" align="center">0.224</td>
<td valign="top" align="center">413.25</td>
<td valign="top" align="center">0.583</td>
<td valign="top" align="center">0.786</td>
<td valign="top" align="center">0.786</td>
<td valign="top" align="center">0.782</td>
<td valign="top" align="center">IX</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.764</td>
<td valign="top" align="center">0.583</td>
<td valign="top" align="center">0.411</td>
<td valign="top" align="center">0.325</td>
<td valign="top" align="center">478.56</td>
<td valign="top" align="center">0.729</td>
<td valign="top" align="center">0.862</td>
<td valign="top" align="center">0.862</td>
<td valign="top" align="center">0.8</td>
<td valign="top" align="center">X</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="4">&#x2713;</td>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">0.7778</td>
<td valign="top" align="center">0.599</td>
<td valign="top" align="center">0.416</td>
<td valign="top" align="center">0.346</td>
<td valign="top" align="center">490.22</td>
<td valign="top" align="center">0.74</td>
<td valign="top" align="center">0.885</td>
<td valign="top" align="center">0.885</td>
<td valign="top" align="center">0.886</td>
<td valign="top" align="center">XI</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center" rowspan="3">&#x2713;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.877</td>
<td valign="top" align="center">0.877</td>
<td valign="top" align="center">0.877</td>
<td valign="top" align="center">XII</td>
</tr>
<tr>
<td valign="top" align="center" rowspan="2">&#x2713;</td>
<td valign="top" align="center" rowspan="2"/>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.478</td>
<td valign="top" align="center">0.478</td>
<td valign="top" align="center">0.467</td>
<td valign="top" align="center">XIII</td>
</tr>
<tr>
<td valign="top" align="center">&#x2713;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">0.425</td>
<td valign="top" align="center">0.425</td>
<td valign="top" align="center">0.416</td>
<td valign="top" align="center">XIV</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>The &#x2713; in the table means that the model in the experiment contains the current module, and the model in the experiment does not contain the current module without the &#x2713; symbol.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
<sec id="s5_4_2_4">
<label>5.4.2.4</label>
<title>Case study of the DIC-Transformer</title>
<p>To demonstrate the superiority of the proposed DIC-Transformer in the field of image caption generation, we compare it with the AoANet, AdaAtt, UpDown, and ShowTell models. The caption generation results of each model are shown in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9</bold>
</xref>. It should be noted that the image caption dataset used in the experiment is Chinese, and the statements in the case study are translated into English for ease of understanding. The red part of the figure represents the wrong word, the blue part represents the missing word or the wrong combination of words and other inaccurate results, and the green part represents the correct disease keyword. Based on the four examples in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9</bold>
</xref>, we perform a meticulous analysis of the captions generated by each model, and the results are as follows:</p>
<list list-type="order">
<list-item>
<p>As illustrated in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9</bold>
</xref>, the captions generated by the other four models lack relevant disease feature keywords. Specifically, the models AoANet and UpDown do not generate the color of the rings, the model AdaAttNet does not include any ring-related statements, and the model ShowTell omits the color of the disease area.</p>
</list-item>
<list-item>
<p>In the case of apple mold heart disease shown in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9</bold>
</xref>, the image caption generated by the model AoANet repeats the phrase &#x201c;gray-green mold&#x201d; twice, and the model AdaAttNet also repeats the word &#x201c;mold&#x201d; twice, both of which result in semantic confusion. Although both UpDown and ShowTell did not have duplicate issues, they both lacked the keyword &#x201c;mold&#x201d;.</p>
</list-item>
<list-item>
<p>In the last image, the caption generated by models AOANet and UpDown lacks color information. The model AdaAttNet generates words with repetitive meanings in captions. The model ShowTell generates the wrong word &#x201c;with&#x201d;.</p>
</list-item>
</list>
<fig id="f9" position="float">
<label>Figure&#xa0;9</label>
<caption>
<p>Comparison of caption generation results with real caption.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g009.tif"/>
</fig>
<p>However, the DIC-Transformer model we build generates comprehensive keywords and fluent sentences. The above experimental results can fully prove the superiority of the DIC-Transformer in image caption generation. In order to more fully evaluate the quality of the generated statements, we invite experts or volunteers to perform a manual evaluation of the generated statements. This can be carried out through subjective scoring or preference sorting. By gathering opinions and feedback from evaluators, we can determine the advantages of the utterances generated by our model over other methods in terms of readability, fluency, and accuracy. In addition to expert assessments, we also conduct user surveys to gain a broader perspective. By inviting real users to rate and rank the generated statements, we can obtain more feedback that verifies the superiority of the statements generated by our model in terms of user experience. Through the above statistical analysis methods, we can objectively prove the superiority of the statements generated by our model over other methods.</p>
</sec>
<sec id="s5_4_2_5">
<label>5.4.2.5</label>
<title>Summary of the comparison results between DIC-Transformer and other methods</title>
<p>In this paper, we conduct a total of three experiments, and the specific results of the experiments are as follows.</p>
<p>The first experiment is the Faster R-CNN benchmark experiment, which aims to select an optimal backbone for Faster R-CNN. Specifically, we select 16 different backbones based on the dataset to test the performance of Faster R-CNN in detecting disease regions, and the experimental results show Swin Transformer works best as backbones.</p>
<p>In the second experiment, the DIC-Transformer is compared with seven existing image caption generation models. The experimental results in <xref ref-type="table" rid="T7">
<bold>Table&#xa0;7</bold>
</xref> show that the model proposed by us based on ADCG-18 performs well in the field of image caption generation, and the performance is due to the other seven existing models. First, we consider the caption generation accuracy of the model. Compared to other models, DIC-Transformer can more accurately generate caption descriptions that match the content of the image. Second, we evaluate the language fluency and sentence quality of the model. The results show that the captions generated by DIC-Transformer are more natural and smooth, and the sentence structure is more reasonable and coherent. In contrast, other models may have some imperfections or non-conform to grammatical rules in terms of language expression.</p>
<p>The third experiment aims to test the classification performance of the DIC-Transformer based on ADCG-18. We compare the DIC-Transformer with seven classical CNN models, and the results show that the classification performance of the DIC-Transformer is better than that of other existing models. <xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10</bold>
</xref> shows the variation curves of the evaluation indicators related to image classification and image caption.</p>
<fig id="f10" position="float">
<label>Figure&#xa0;10</label>
<caption>
<p>The change curve of evaluation indicators related to image classification and image caption generation.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1273029-g010.tif"/>
</fig>
<p>In summary, our experimental results show that our proposed method has better performance than other methods in different tasks. This provides broad prospects for the application of our method in areas such as caption generation and image classification.</p>
<p>To evaluate the results of image caption generation, it is necessary to comprehensively consider the indicators of accuracy, completeness, semantic consistency, naturalness, and information richness and combine the experimental results for objective evaluation. The quantitative experimental results prove the accuracy of the model, and the indicators such as completeness and information richness of the generated sentences are also superior in the qualitative analysis section.</p>
</sec>
</sec>
</sec>
</sec>
<sec id="s6" sec-type="conclusions">
<label>6</label>
<title>Conclusion</title>
<p>In this paper, we propose a model called DIC-Transformer, which is capable of generating explanatory textual descriptions corresponding to the classification results of agricultural plant diseases. Then, we collect a dataset called ADCG-18, which includes images of 18 diseases and their corresponding textual descriptions. We conduct numerous experiments on the proposed method from multiple angles on this constructed dataset to demonstrate the method&#x2019;s superiority. For the two challenges presented in the Introduction section, the experimental results indicate that the identification accuracy of DIC transformers reaches 85.4% in a relatively small sample, which is 2.4% higher than that of the model with the best performance based on CNN. This demonstrates that the DIC-Transformer effectively addresses the first challenge of enhancing image classification performance in the context of limited data volume. In response to the second challenge, we introduced technology for generating image captions. The technology can generate descriptive information based on images, similar to how agricultural experts describe plant diseases. The results of ablation experiments show that combining image caption generation and image classification technology can improve the accuracy of image classification. Based on ADCG-18, the results of the six evaluation indexes Bleu1, Bleu2, Bleu3, Bleu4, Cider-D, and Rouge of the proposed DIC-Transformer model are 0.756, 0.561, 0.404, 0.294, 450.51, and 0.721, respectively. These results indicate that the model outperforms other models.</p>
<p>Image caption generation technology can accurately describe the diseases affecting crops, enhance the precision of disease identification, aid in early detection and diagnosis of plant diseases, and minimize crop losses. It can also be integrated with other agricultural intelligence technologies, such as drones and sensors, to achieve automatic monitoring and management of farmland. This integration can enable farmers and agricultural practitioners to accurately identify diseases through image capture, even without expertise in disease identification. This will help reduce the barrier to identifying diseases and promote the adoption and application of agricultural technology.</p>
<p>However, the model we propose still has certain limitations. The DIC-Transformer is a two-stage model that suffers from the issue of error propagation, as depicted in <xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10</bold>
</xref>. For instance, a distinctive characteristic of peanut leaves is their green color. If the first-stage region detection module fails to recognize this aspect, the second-stage caption generation module will not generate a corresponding caption. In our upcoming work, we intend to integrate the initial stage of the feature extraction module with the subsequent caption generation and classification modules to create a comprehensive model. This will help prevent some of the issues that arise with two-stage models and improve their performance.</p>
</sec>
<sec id="s7" sec-type="data-availability">
<title>Data availability statement</title>
<p>The raw data supporting the conclusions of this article will be made available by the authors, without undue reservation.</p>
</sec>
<sec id="s8" sec-type="author-contributions">
<title>Author contributions</title>
<p>QZ: Funding acquisition, Writing &#x2013; original draft, Writing &#x2013; review &amp; editing. JS: Methodology, Validation, Writing &#x2013; original draft. SW: Investigation, Software, Writing &#x2013; review &amp; editing.</p>
</sec>
</body>
<back>
<sec id="s9" sec-type="funding-information">
<title>Funding</title>
<p>The author(s) declare financial support was received for the research, authorship, and/or publication of this article. This work is supported by National Key R&amp;D Program of China (2022ZD0119500 and 2022ZD0119501); NSFC (U1931207 and 61702306); Sci. &amp; Tech. Development Fund of Shandong Province of China (ZR2022MF288); the Taishan Scholar Program of Shandong Province (ts20190936), and SDUST Research Fund (2015TDJH102 and 2019KJN024); Shandong Chongqing Science and technology cooperation project (cstc2020jscx-lyjsAX0008).</p>
</sec>
<sec id="s10" sec-type="COI-statement">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec id="s11" sec-type="disclaimer">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Al-Hiary</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Bani-Ahmad</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Reyalat</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Braik</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Alrahamneh</surname> <given-names>Z.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Fast and accurate detection and classification of plant diseases</article-title>. <source>Int. J. Comput. Appl.</source> <volume>17</volume>, <fpage>31</fpage>&#x2013;<lpage>38</lpage>. doi: <pub-id pub-id-type="doi">10.5120/2183-2754</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Anderson</surname> <given-names>P.</given-names>
</name>
<name>
<surname>He</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Buehler</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Teney</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Johnson</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Gould</surname> <given-names>S.</given-names>
</name>
<etal/>
</person-group>. (<year>2018</year>). &#x201c;<article-title>Bottom-up and top-down attention for image captioning and visual question answering</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE conference on computer vision and pattern recognition</conf-name>. <publisher-name>Salt Lake City, UT, USA</publisher-name>. <fpage>6077</fpage>&#x2013;<lpage>6086</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2018.00636</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bai</surname> <given-names>S.</given-names>
</name>
<name>
<surname>An</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>A survey on automatic image caption generation</article-title>. <source>Neurocomputing</source> <volume>311</volume>, <fpage>291</fpage>&#x2013;<lpage>304</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.neucom.2018.05.080</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Boulent</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Foucher</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Th&#xe9;au</surname> <given-names>J.</given-names>
</name>
<name>
<surname>St-Charles</surname> <given-names>P.-L.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Convolutional neural networks for the automatic identification of plant diseases</article-title>. <source>Front. Plant Sci.</source> <volume>10</volume>, <elocation-id>941</elocation-id>. doi: <pub-id pub-id-type="doi">10.3389/fpls.2019.00941</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Chao</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Kao</surname> <given-names>C.-Y.</given-names>
</name>
<name>
<surname>Ruan</surname> <given-names>Y.-S.</given-names>
</name>
<name>
<surname>Huang</surname> <given-names>C.-H.</given-names>
</name>
<name>
<surname>Lin</surname> <given-names>Y.-L.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>HarDNet: A Low Memory Traffic Network</article-title>,&#x201d; in <conf-name>2019 IEEE/CVF International Conference on Computer Vision (ICCV)</conf-name>, <conf-loc>Seoul, Korea (South)</conf-loc>, <fpage>3552</fpage>&#x2013;<lpage>3561</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ICCV.2019.00365</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Pang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Cao</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Xiong</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
<etal/>
</person-group>. (<year>2019</year>). <article-title>MMDetection: Open mmlab detection toolbox and benchmark</article-title>. <source>arXiv</source> e-prints, <volume>2019</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1906.07155</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Cornia</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Stefanini</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Baraldi</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Cucchiara</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>Meshed-memory transformer for image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition ( CVPR)</conf-name>, <conf-loc>Seattle, WA, USA</conf-loc>, <fpage>10578</fpage>&#x2013;<lpage>10587</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR42600.2020.01059</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Deorukhkar</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Ket</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>A detailed review of prevailing image captioning methods using deep learning techniques</article-title>. <source>Multimedia Tools Appl.</source> <volume>81</volume>, <fpage>1313</fpage>&#x2013;<lpage>1336</lpage>. doi: <pub-id pub-id-type="doi">10.1007/s11042-021-11293-1</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Ding</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Ma</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Han</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Ding</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Repvgg: Making vgg-style convnets great again</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Nashville, TN, USA</conf-loc>, <fpage>13733</fpage>&#x2013;<lpage>13742</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR46437.2021.01352</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dosovitskiy</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Beyer</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Kolesnikov</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Weissenborn</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Zhai</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Unterthiner</surname> <given-names>T.</given-names>
</name>
<etal/>
</person-group>. (<year>2020</year>). <article-title>An image is worth 16x16 words: Transformers for image recognition at scale</article-title>. <source>arXiv e-prints</source>, <volume>2020</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2010.11929</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dubey</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Olimov</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Rafique</surname> <given-names>M. A.</given-names>
</name>
<name>
<surname>Kim</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Jeon</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2023</year>a). <article-title>Label-attention transformer with geometrically coherent objects for image captioning</article-title>. <source>Inf. Sci.</source> <volume>623</volume>, <fpage>812</fpage>&#x2013;<lpage>831</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.ins.2022.12.018</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dubey</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Olimov</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Rafique</surname> <given-names>M. A.</given-names>
</name>
<name>
<surname>Kim</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Jeon</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2023</year>b). <article-title>Label-attention transformer with geometrically coherent objects for image captioning</article-title>. <source>Inf. Sci.</source> <volume>623</volume>, <fpage>812</fpage>&#x2013;<lpage>831</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.ins.2022.12.018</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Fang</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Hu</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Liang</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Gan</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>L.</given-names>
</name>
<etal/>
</person-group>. (<year>2022</year>). &#x201c;<article-title>Injecting semantic concepts into end-to-end image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>New Orleans, LA, USA</conf-loc>, <fpage>18009</fpage>&#x2013;<lpage>18019</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR52688.2022.01748</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Fei</surname> <given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). &#x201c;<article-title>Attention-aligned transformer for image captioning</article-title>,&#x201d; <conf-name>AAAI</conf-name>, Vol. <volume>36</volume> (<issue>1</issue>), <fpage>607</fpage>&#x2013;<lpage>615</lpage>.</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname> <given-names>S.-H.</given-names>
</name>
<name>
<surname>Cheng</surname> <given-names>M.-M.</given-names>
</name>
<name>
<surname>Zhao</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>X.-Y.</given-names>
</name>
<name>
<surname>Yang</surname> <given-names>M.-H.</given-names>
</name>
<name>
<surname>Torr</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Res2net: A new multi-scale backbone architecture</article-title>. <source>IEEE Trans. Pattern Anal. Mach. Intell.</source> <volume>43</volume>, <fpage>652</fpage>&#x2013;<lpage>662</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TPAMI.2019.2938758</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ghandi</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Pourreza</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Mahyar</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Deep learning approaches on image captioning: A review</article-title>. <source>ACM Computing Surveys</source> <volume>56</volume>, <fpage>1</fpage>&#x2013;<lpage>39</lpage>. doi: <pub-id pub-id-type="doi">10.1145/3617592</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Girshick</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Fast R-CNN</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE International Conference on Computer Vision (ICCV)</conf-name>, <conf-loc>Santiago, Chile</conf-loc>, <fpage>1440</fpage>&#x2013;<lpage>1448</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ICCV.2015.169</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Girshick</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Donahue</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Darrell</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Malik</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2014</year>). &#x201c;<article-title>Rich feature hierarchies for accurate object detection and semantic segmentation</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition</conf-name>, <conf-loc>Columbus, OH, USA</conf-loc>, <fpage>580</fpage>&#x2013;<lpage>587</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2014.81</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Gu</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Cai</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>T.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>Stack-Captioning: Coarse-to-Fine Learning for Image Captioning</article-title>,&#x201d; in <conf-name>Proceedings of the AAAI conference on artificial intelligence</conf-name>, Vol. <volume>1</volume>. <fpage>26</fpage>.</citation>
</ref>
<ref id="B20">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Han</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Tian</surname> <given-names>Q.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Xu</surname> <given-names>C.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>GhostNet: More features from cheap operations</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Seattle, WA, USA</conf-loc>, <fpage>1580</fpage>&#x2013;<lpage>1589</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR42600.2020.00165</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>He</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Ren</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Deep residual learning for image recognition</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Las Vegas, NV, USA</conf-loc>, <fpage>770</fpage>&#x2013;<lpage>778</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2016.90</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hodosh</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Young</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Hockenmaier</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>Framing image description as a ranking task: Data, models and evaluation metrics</article-title>. <source>J. Artif. Intell. Res.</source> <volume>47</volume>, <fpage>853</fpage>&#x2013;<lpage>899</lpage>. doi: <pub-id pub-id-type="doi">10.1613/jair.3994</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname> <given-names>J. C.</given-names>
</name>
<name>
<surname>Cavicchioli</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Capotondi</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>ExpansionNet v2: Block static expansion in fast end to end training for image captioning</article-title>. <source>arXiv</source>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2208.06551</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Huang</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Wei</surname> <given-names>X.-Y.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Attention on attention for image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)</conf-name>, <conf-loc>Seoul, Korea (South)</conf-loc>, <fpage>4634</fpage>&#x2013;<lpage>4643</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ICCV.2019.00473</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jeong</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Tian</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Hartung</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Behzadi</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Calle</surname> <given-names>J.</given-names>
</name>
<etal/>
</person-group>. (<year>2023</year>). <article-title>Multimodal image-text matching improves retrieval-based chest x-ray report generation</article-title>. <source>arXiv</source> e-prints, <volume>2023</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2303.17579</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jing</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Jin-guang</surname> <given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Image caption generation method based on channel attention and transformer</article-title>. <source>Comput. Modernization</source> <volume>0</volume>(<issue>05</issue>), <fpage>8</fpage>&#x2013;<lpage>12</lpage>.</citation>
</ref>
<ref id="B27">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Keshari</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Vatsa</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Singh</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Noore</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>Learning structure and strength of cnn filters for small sample size training</article-title>,&#x201d; in <conf-name>proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</conf-name>, <conf-loc>Salt Lake City, UT, USA</conf-loc>, <fpage>9349</fpage>&#x2013;<lpage>9358</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2018.00974</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Khan</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Naseer</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Hayat</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Zamir</surname> <given-names>S. W.</given-names>
</name>
<name>
<surname>Khan</surname> <given-names>F. S.</given-names>
</name>
<name>
<surname>Shah</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Transformers in vision: A survey</article-title>. <source>ACM computing surveys (CSUR)</source> <volume>54</volume>, <fpage>1</fpage>&#x2013;<lpage>41</lpage>. doi: <pub-id pub-id-type="doi">10.1145/3505244</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Koonce</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Koonce</surname> <given-names>B.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and &lt;0.5MB model size</article-title>. <source>arXiv</source> e-prints. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1602.07360</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Krizhevsky</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Sutskever</surname> <given-names>I.</given-names>
</name>
<name>
<surname>Hinton</surname> <given-names>G. E.</given-names>
</name>
</person-group> (<year>2012</year>). <article-title>Imagenet classification with deep convolutional neural networks</article-title>. <source>Commun. ACM</source> <volume>60</volume> (<issue>6</issue>), <fpage>84</fpage>&#x2013;<lpage>90</lpage>.</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kulkarni</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Premraj</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Ordonez</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Dhar</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Choi</surname> <given-names>Y.</given-names>
</name>
<etal/>
</person-group>. (<year>2013</year>). <article-title>Babytalk: Understanding and generating simple image descriptions</article-title>. <source>IEEE Trans. Pattern Anal. Mach. Intell.</source> <volume>35</volume>, <fpage>2891</fpage>&#x2013;<lpage>2903</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TPAMI.2012.162</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Kumar</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Kumar</surname> <given-names>V.</given-names>
</name>
</person-group> (<year>2023</year>). &#x201c;<article-title>Vegetable plant leaf image classification using machine learning models</article-title>,&#x201d; in <conf-name>Proceedings of Third International Conference on Advances in Computer Engineering and Communication Systems. Lecture Notes in Networks and Systems</conf-name>, vol <volume>612</volume>. <publisher-name>Springer</publisher-name>, <publisher-name>Singapore</publisher-name>.</citation>
</ref>
<ref id="B33">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Lee</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Hwang</surname> <given-names>J.-W.</given-names>
</name>
<name>
<surname>Lee</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Bae</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Park</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>An energy and gpu-computation efficient backbone network for real-time object detection</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW)</conf-name>, <conf-loc>Long Beach, CA, USA</conf-loc>, <fpage>752</fpage>&#x2013;<lpage>760</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPRW.2019.00103</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Jia</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Yao</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Lin</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>Y.</given-names>
</name>
<etal/>
</person-group>. (<year>2023</year>). <article-title>A longan yield estimation approach based on uav images and deep learning</article-title>. <source>Front. Plant Sci.</source> <volume>14</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.3389/fpls.2023.1132909</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Anguelov</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Erhan</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Szegedy</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Reed</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Fu</surname> <given-names>C.-Y.</given-names>
</name>
<etal/>
</person-group>. (<year>2016</year>). &#x201c;<article-title>SSD: Single Shot MultiBox Detector</article-title>,&#x201d; in <conf-name>Computer Vision&#x2013;ECCV 2016: 14th European Conference, Amsterdam, The Netherlands, October 11&#x2013;14, 2016, Proceedings, Part I 14</conf-name>. <fpage>21</fpage>&#x2013;<lpage>37</lpage> (Springer).</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Zhu</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>a). <article-title>Cptr: Full transformer network for image captioning</article-title>. <source>arXiv</source> e-prints, <volume>2021</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2101.10804</pub-id>
</citation>
</ref>
<ref id="B37">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Lin</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Cao</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Hu</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Wei</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>Z.</given-names>
</name>
<etal/>
</person-group>. (<year>2021</year>b). &#x201c;<article-title>Swin transformer: Hierarchical vision transformer using shifted windows</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)</conf-name>, <conf-loc>Montreal, QC, Canada</conf-loc>, <fpage>10012</fpage>&#x2013;<lpage>10022</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ICCV48922.2021.00986</pub-id>
</citation>
</ref>
<ref id="B38">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Zhao</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Shi</surname> <given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Remote-sensing image captioning based on multilayer aggregated transformer</article-title>. <source>IEEE Geosci. Remote Sens. Lett.</source> <volume>19</volume>, <fpage>1</fpage>&#x2013;<lpage>5</lpage>. doi: <pub-id pub-id-type="doi">10.1109/LGRS.2022.3150957</pub-id>
</citation>
</ref>
<ref id="B39">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Lu</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Xiong</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Parikh</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Socher</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Knowing when to look: Adaptive attention via a visual sentinel for image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Honolulu, HI, USA</conf-loc>, <fpage>375</fpage>&#x2013;<lpage>383</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2017.345</pub-id>
</citation>
</ref>
<ref id="B40">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Luo</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Ji</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Cao</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Wu</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Huang</surname> <given-names>F.</given-names>
</name>
<etal/>
</person-group>. (<year>2021</year>). &#x201c;<article-title>Dual-level collaborative transformer for image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the AAAI conference on artificial intelligence</conf-name>, Vol. <volume>35</volume>, <fpage>2286</fpage>&#x2013;<lpage>2293</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2101.06462</pub-id>
</citation>
</ref>
<ref id="B41">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Luo</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Pan</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Yao</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Feng</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Chao</surname> <given-names>H.</given-names>
</name>
<etal/>
</person-group>. (<year>2023</year>). &#x201c;<article-title>Semantic-conditional diffusion networks for image captioning</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</conf-name>., <fpage>23359</fpage>&#x2013;<lpage>23368</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2212.03099</pub-id>
</citation>
</ref>
<ref id="B42">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Luo</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>L.</given-names>
</name>
<name>
<surname>He</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Zhou</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>How does the data set affect cnn-based image classification performance</article-title>?,&#x201d; in <conf-name>2018 5th international conference on systems and informatics (ICSAI)</conf-name>, <conf-loc>Nanjing, China</conf-loc>, <fpage>361</fpage>&#x2013;<lpage>366</lpage> (IEEE). doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ICSAI.2018.8599448</pub-id>
</citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Naga Srinivasu</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Krishna</surname> <given-names>T. B.</given-names>
</name>
<name>
<surname>Ahmed</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Almusallam</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Khaled Alarfaj</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Allheeib</surname> <given-names>N.</given-names>
</name>
<etal/>
</person-group>. (<year>2023</year>). <article-title>Variational autoencoders-basedself-learning model for tumor identification and impact analysis from 2-d mri images</article-title>. <source>J. Healthcare Eng.</source> <volume>2023</volume>, <fpage>1566123</fpage>.</citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ngugi</surname> <given-names>L. C.</given-names>
</name>
<name>
<surname>Abelwahab</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Abo-Zahhad</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Recent advances in image processing techniques for automated leaf pest and disease recognition&#x2013;a review</article-title>. <source>Inf. Process. Agric.</source> <volume>8</volume>, <fpage>27</fpage>&#x2013;<lpage>51</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.inpa.2020.04.004</pub-id>
</citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ondeng</surname> <given-names>O.</given-names>
</name>
<name>
<surname>Ouma</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Akuon</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>A review of transformer-based approaches for image captioning</article-title>. <source>Appl. Sci.</source> <volume>13</volume>, <fpage>11103</fpage>. doi: <pub-id pub-id-type="doi">10.3390/app131911103</pub-id>
</citation>
</ref>
<ref id="B46">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ordonez</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Han</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Kuznetsova</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Kulkarni</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Mitchell</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Yamaguchi</surname> <given-names>K.</given-names>
</name>
<etal/>
</person-group>. (<year>2016</year>). <article-title>Large scale retrieval and generation of image descriptions</article-title>. <source>Int. J. Comput. Vision</source> <volume>119</volume>, <fpage>46</fpage>&#x2013;<lpage>59</lpage>. doi: <pub-id pub-id-type="doi">10.1007/s11263-015-0840-y</pub-id>
</citation>
</ref>
<ref id="B47">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Parvin</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Naghsh-Nilchi</surname> <given-names>A. R.</given-names>
</name>
<name>
<surname>Mohammadi</surname> <given-names>H. M.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Transformer-based local-global guidance for image captioning</article-title>. <source>Expert Syst. Appl.</source> <volume>223</volume>, <fpage>119774</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.eswa.2023.119774</pub-id>
</citation>
</ref>
<ref id="B48">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Radosavovic</surname> <given-names>I.</given-names>
</name>
<name>
<surname>Kosaraju</surname> <given-names>R. P.</given-names>
</name>
<name>
<surname>Girshick</surname> <given-names>R.</given-names>
</name>
<name>
<surname>He</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Doll&#xe1;r</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>Designing network design spaces</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Seattle, WA, USA</conf-loc>, <fpage>10425</fpage>&#x2013;<lpage>10433</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR42600.2020.01044</pub-id>
</citation>
</ref>
<ref id="B49">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ren</surname> <given-names>S.</given-names>
</name>
<name>
<surname>He</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Girshick</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks</article-title>. <source>IEEE Transactions on Pattern Analysis and Machine Intelligence</source> <volume>39</volume> (<issue>6</issue>), <fpage>1137</fpage>&#x2013;<lpage>1149</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/TPAMI.2016.2577031</pub-id>
</citation>
</ref>
<ref id="B50">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Rennie</surname> <given-names>S. J.</given-names>
</name>
<name>
<surname>Marcheret</surname> <given-names>E.</given-names>
</name>
<name>
<surname>Mroueh</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Ross</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Goel</surname> <given-names>V.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Self-critical sequence training for image captioning</article-title>,&#x201d; <source>arXiv</source> e-prints, 2016. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1612.00563</pub-id>
</citation>
</ref>
<ref id="B51">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ruder</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>An overview of multi-task learning in deep neural networks</article-title>. <source>arXiv</source> e-prints, <volume>2017</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1706.05098</pub-id>
</citation>
</ref>
<ref id="B52">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rzanny</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Wittich</surname> <given-names>H. C.</given-names>
</name>
<name>
<surname>M&#xe4;der</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Deggelmann</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Boho</surname> <given-names>D.</given-names>
</name>
<name>
<surname>W&#xe4;ldchen</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Image-based automated recognition of 31 poaceae species: The most relevant perspectives</article-title>. <source>Front. Plant Sci.</source> <volume>12</volume>, <fpage>3315</fpage>. doi: <pub-id pub-id-type="doi">10.3389/fpls.2021.804140</pub-id>
</citation>
</ref>
<ref id="B53">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Sandler</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Howard</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Zhu</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Zhmoginov</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>L.-C.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>Mobilenetv2: Inverted residuals and linear bottlenecks</article-title>,&#x201d; <source>arXiv</source> e-prints, <volume>2018</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1801.04381</pub-id>
</citation>
</ref>
<ref id="B54">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Simonyan</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Zisserman</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Very deep convolutional networks for large-scale image recognition</article-title>. <source>arXiv</source> e-prints, <volume>2014</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1409.1556</pub-id>
</citation>
</ref>
<ref id="B55">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Singh</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Chug</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Singh</surname> <given-names>A. P.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Classification of beans leaf diseases using fine tuned cnn model</article-title>. <source>Proc. Comput. Sci.</source> <volume>218</volume>, <fpage>348</fpage>&#x2013;<lpage>356</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.procs.2023.01.017</pub-id>
</citation>
</ref>
<ref id="B56">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Singh</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Jain</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Jain</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Kayal</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Kumawat</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Batra</surname> <given-names>N.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>PlantDoc: A dataset for visual plant disease detection</article-title>,&#x201d; <source>arXiv</source> e-prints, <volume>2019</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1911.10317</pub-id>
</citation>
</ref>
<ref id="B57">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sun</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Qu</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Xie</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Pan</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>W.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Research on plant disease identification based on cnn</article-title>. <source>Cogn. Robotics</source> <volume>2</volume>, <fpage>155</fpage>&#x2013;<lpage>163</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.cogr.2022.07.001</pub-id>
</citation>
</ref>
<ref id="B58">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Sun</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Xiao</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Deep high-resolution representation learning for human pose estimation</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Long Beach, CA, USA</conf-loc>, <fpage>5686</fpage>&#x2013;<lpage>5696</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2019.00584</pub-id>
</citation>
</ref>
<ref id="B59">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Szegedy</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Jia</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Sermanet</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Reed</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Anguelov</surname> <given-names>D.</given-names>
</name>
<etal/>
</person-group>. (<year>2015</year>). &#x201c;<article-title>Going deeper with convolutions</article-title>,&#x201d; <source>arXiv</source> e-prints, <volume>2014</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1409.4842</pub-id>
</citation>
</ref>
<ref id="B60">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Szegedy</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Vanhoucke</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Ioffe</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Shlens</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Wojna</surname> <given-names>Z.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Rethinking the inception architecture for computer vision</article-title>,&#x201d; in <source>Proceedings of the IEEE conference on computer vision and pattern recognition</source>, <fpage>2818</fpage>&#x2013;<lpage>2826</lpage>.</citation>
</ref>
<ref id="B61">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tan</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Le</surname> <given-names>Q.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>EfficientNet: Rethinking Model Scaling for convolutional neural networks</article-title>,&#x201d; in <conf-name>International conference on machine learning</conf-name>. <fpage>6105</fpage>&#x2013;<lpage>6114</lpage> (PMLR). doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.1905.11946</pub-id>
</citation>
</ref>
<ref id="B62">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Torralba</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Russell</surname> <given-names>B. C.</given-names>
</name>
<name>
<surname>Yuen</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Labelme: Online image annotation and applications</article-title>. <source>Proc. IEEE</source> <volume>98</volume>, <fpage>1467</fpage>&#x2013;<lpage>1484</lpage>. doi: <pub-id pub-id-type="doi">10.1109/JPROC.2010.2050290</pub-id>
</citation>
</ref>
<ref id="B63">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Vinyals</surname> <given-names>O.</given-names>
</name>
<name>
<surname>Toshev</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Bengio</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Erhan</surname> <given-names>D.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Show and tell: A neural image caption generator</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</conf-name>, <conf-loc>Boston, MA, USA</conf-loc>, <fpage>3156</fpage>&#x2013;<lpage>3164</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR.2015.7298935</pub-id>
</citation>
</ref>
<ref id="B64">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>C.-Y.</given-names>
</name>
<name>
<surname>Bochkovskiy</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Liao</surname> <given-names>H.-Y. M.</given-names>
</name>
</person-group> (<year>2023</year>). &#x201c;<article-title>YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</conf-name>, <conf-loc>Vancouver, BC, Canada</conf-loc>, <fpage>7464</fpage>&#x2013;<lpage>7475</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPR52729.2023.00721</pub-id>
</citation>
</ref>
<ref id="B65">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>Q.</given-names>
</name>
<name>
<surname>Wan</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Chan</surname> <given-names>A. B.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>On diversity in image captioning: Metrics and methods</article-title>. <source>IEEE Trans. Pattern Anal. Mach. Intell.</source> <volume>44</volume>, <fpage>1035</fpage>&#x2013;<lpage>1049</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TPAMI.2020.3013834</pub-id>
</citation>
</ref>
<ref id="B66">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Wu</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Kirillov</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Massa</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Lo</surname> <given-names>W.-Y.</given-names>
</name>
<name>
<surname>Girshick</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2019</year>) <source>Detectron2</source>. Available at: <uri xlink:href="https://github.com/facebookresearch/detectron2">https://github.com/facebookresearch/detectron2</uri>.</citation>
</ref>
<ref id="B67">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xian</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Tang</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Ma</surname> <given-names>H.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Adaptive path selection for dynamic image captioning</article-title>. <source>IEEE Trans. Circuits Syst. Video Technol.</source> <volume>32</volume>, <fpage>5762</fpage>&#x2013;<lpage>5775</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TCSVT.2022.3155795</pub-id>
</citation>
</ref>
<ref id="B68">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Yang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). &#x201c;<article-title>ReFormer: The relational transformer for image captioning</article-title>,&#x201d; <source>arXiv</source> e-prints, <volume>2021</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.48550/arXiv.2107.14178</pub-id>
</citation>
</ref>
<ref id="B69">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Zhao</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Xu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Feng</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Zhao</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>X.</given-names>
</name>
<etal/>
</person-group>. (<year>2018</year>). <article-title>Multitask learning for cross-domain image captioning</article-title>. <source>IEEE Trans. Multimedia</source> <volume>21</volume>, <fpage>1047</fpage>&#x2013;<lpage>1061</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TMM.2018.2869276</pub-id>
</citation>
</ref>
<ref id="B70">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ye</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Han</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>N.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Attentive linear transformation for image captioning</article-title>. <source>IEEE Trans. Image Process.</source> <volume>27</volume>, <fpage>5514</fpage>&#x2013;<lpage>5524</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TIP.2018.2855406</pub-id>
</citation>
</ref>
<ref id="B71">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Wu</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Zhu</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Lin</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>Z.</given-names>
</name>
<etal/>
</person-group>. (<year>2022</year>). &#x201c;<article-title>ResNeSt: split-attention networks</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW)</conf-name>, <conf-loc>New Orleans, LA, USA</conf-loc>, <fpage>2736</fpage>&#x2013;<lpage>2746</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/CVPRW56347.2022.00309</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>