# Enhancing Medication Event Classification with Syntax Parsing and Adversarial Learning

Zsolt Szántó, Balázs Bánáti, Tamás Zombori

► To cite this version:

Zsolt Szántó, Balázs Bánáti, Tamás Zombori. Enhancing Medication Event Classification with Syntax Parsing and Adversarial Learning. 19th IFIP International Conference on Artificial Intelligence Applications and Innovations (AIAI), Jun 2023, León, Spain. pp.114-124, 10.1007/978-3-031-34111-3_11 hal-05449801

HAL Id: hal-05449801

https://inria.hal.science/hal-05449801v1

Submitted on 9 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
<figure><img src="image_2.png" /></figure>

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
# Enhancing Medication Event Classification with Syntax Parsing and Adversarial Learning

Zsolt Szántó(✉), Balázs Bánáti, and Tamás Zombori

Institute of Informatics, University of Szeged, Szeged, Hungary

szantozs@inf.u-szeged.hu

**Abstract.** In this paper, we introduce a method for extracting detailed information from raw medical notes that could help medical providers more easily understand a patient's medication history and make more informed medical decisions. Our system uses NLP techniques for finding the names of medications and details about the changes to their disposition in unstructured clinical notes.

The system was created to extract data from the Contextualized Medication Event Dataset in three subtasks. Our system utilizes a solution based on a large language model enriched with adversarial examples for the medication extraction and event classification tasks. To extract more detailed contextual information about the medication changes, we were motivated by aspect-based sentiment analysis and used the local context focus mechanism to highlight the relevant parts of the context and extended it with information from dependency syntax.

Both adversarial learning and the syntax-enhanced local focus mechanism improved the results of our system.

**Keywords:** Medication event classification · Dependency parsing · Adversarial learning

## 1 Introduction

Understanding the complete medication history is necessary for having a fuller picture of the patient, but in many cases, medication-related information is documented only as unstructured clinical notes. This can make it challenging for healthcare providers to obtain a comprehensive view of a patient's medication history including information on medication changes, dosages, and adverse reactions. The automatic analysis of these notes could help medical providers have a fuller background on the patient, better understand the reasons behind medication changes, and identify the healthcare provider who ordered a medication change, as well as the reason for the change. This would allow for more informed medical decisions and improve patient safety.

The Contextualized Medication Event Dataset (CMED) [14] and the National NLP Clinical Challenges 2022 Track 1 aimed at the extraction of these medication events from clinical notes. As well as identifying names of medications, this dataset
<table><caption>**Table 1.** Frequency of event and context classes in the training and test data.</caption><thead><tr><th>Task</th><th>Label</th><th>#train</th><th>#test</th></tr></thead><tbody><tr><td rowspan="3">Event</td><td>NoDisposition</td><td>5260</td><td>1326</td></tr><tr><td>Disposition</td><td>1412</td><td>335</td></tr><tr><td>Undetermined</td><td>557</td><td>122</td></tr><tr><td rowspan="6">Action</td><td>Start</td><td>568</td><td>131</td></tr><tr><td>Stop</td><td>340</td><td>67</td></tr><tr><td>Increase</td><td>129</td><td>22</td></tr><tr><td>Decrease</td><td>54</td><td>13</td></tr><tr><td>UniqueDose</td><td>285</td><td>88</td></tr><tr><td>OtherChange</td><td>1</td><td>0</td></tr><tr><td rowspan="2">Negation</td><td>Unknown</td><td>35</td><td>14</td></tr><tr><td>Negated</td><td>32</td><td>6</td></tr><tr><td></td><td>NotNegated</td><td>1380</td><td>329</td></tr></tbody></table><table><thead><tr><th>Task</th><th>Label</th><th>#train</th><th>#test</th></tr></thead><tbody><tr><td rowspan="4">Temporality</td><td>Past</td><td>744</td><td>173</td></tr><tr><td>Present</td><td>494</td><td>132</td></tr><tr><td>Future</td><td>145</td><td>29</td></tr><tr><td>Unknown</td><td>29</td><td>1</td></tr><tr><td rowspan="4">Certainty</td><td>Certain</td><td>1176</td><td>281</td></tr><tr><td>Hypothetical</td><td>134</td><td>33</td></tr><tr><td>Conditional</td><td>100</td><td>15</td></tr><tr><td>Unknown</td><td>2</td><td>6</td></tr><tr><td rowspan="3">Actor</td><td>Physician</td><td>1278</td><td>311</td></tr><tr><td>Patient</td><td>106</td><td>17</td></tr><tr><td>Unknown</td><td>28</td><td>7</td></tr></tbody></table>

allows for the detailed analysis of the context of medication-related events. It aims to extract more detailed information from the text about the mentioned medications: like whether the use of the medication was started or stopped, or identifying the person requesting the change. This is a context classification problem where the goal is to find the information that relates to the specific expression, eg. being able to correctly identify if one medicine was started, but another was stopped for a patient within the same note.

Nowadays the most generic approach for this type of problem is using a pre-trained language model and fine-tuning it for our tasks. We applied two main additions to this standardized framework. One of our modifications is aiming to handle the noisy, error-ridden nature of the clinical notes, for this problem we applied adversarial attacks throughout the training process. The other was used for the context classification task and motivated by the state-of-the-art algorithms of aspect-based sentiment analysis as they both aim to identify the context relevant to the selected phrase. We also used syntactic relations to help find the more closely related parts of the sentences.

## 2 Dataset

The aim of the shared task was to find new ways to extract information from raw medical notes using NLP techniques. The full Contextualized Medication Event Dataset is comprised of 500 clinical notes that contain a total of 9012 medication mentions. The annotation of these documents can be divided into three levels, each reliant on the last. These three tasks are the following:

- Medication Extraction: The first task is to identify all the medications mentioned in clinical notes; this is a standard sequence labeling task.

- Event Classification: Once we have extracted these mentions, we classify each of them into one of three categories: **Disposition** (meaning a change in the
<figure><img src="image_3.png" /><figcaption>**Fig. 1.** The annotation of two sentences in the Contextualized Medication Event Dataset.</figcaption></figure>

medication was discussed), **NoDisposition** (meaning no change was discussed), or **Undetermined** (meaning we need more information to make a determination).

- **Context Classification:** For medication mentions that fall into the Disposition category, we go a step further and classify them according to five different dimensions: Action (did the medication start or stop?), Negation (was it negated in any way?), Temporality (is it a past or a present change?), Certainty (was it hypothetical or conditional?), and Actor (who initiated the medication change?). This gives us a more complete understanding of the context in which the medication was mentioned.

As we mentioned earlier there are 9012 examples for event classification (the medication mentions) and only 1747 of them are in the **Disposition** category (ones with change in the medication). The detailed sizes of the different classes are shown in Table 1. There are three dimensions - the Actor, the Certainty, and Negation - where one class dominates the dataset: for these their most frequent label makes up more than 80 percent of the data. The distribution of different Actions is more balanced: the **Start**, the **Stop**, and the **UniqueDose** occur in more than 20 percent of the medication event changes.

Figure 1 shows an annotation for two example sentences. The colored boxes show the four different medications mentioned in the text. The color of the mention indicates the classification of the event, there are three with a change in disposition (marked orange) and one with no disposition change (marked blue). All three with a changed disposition are further annotated by the five context categories. We can see that the physician ordered the stop of the *hydrochlorothiazide* and the start of the *ramipril* and *nitrate*. All of these changes are in the present and are not negated, hypothetical, or conditional.

## 3 Method

Our system consists of two separable components. First, we solve the medication extraction and the event classification tasks in one step. Therefore in this step, we start from the raw text and find the mentions of medications and assign event classes (**Disposition**, **NoDisposition** and **Undetermined**) to each of them.
<figure><img src="image_4.png" /><figcaption>**Fig. 2.** The architecture of our system with an example document. The dashed line text boxes contain the example sentences and our outputs.</figcaption></figure>

In the second step, we work only with the medications tagged as **Disposition**: we use the related parts of the sentence to assign values to all of the predefined categories of Action, Negation, Temporality, Certainty, and Actor.

The full architecture is shown in Fig. 2.

## 3.1 Medication Event Recognition

First, we devised a solution for the medication extraction and the event classification tasks in the same step. Our basic architecture was similar to a named entity recognition setup. We handled the problem as a token classification task, annotated the texts with IOB encoding, and used the three event labels as entity types.

To solve this token classification problem, we utilized a large language model and extended it with a CRF layer on top of that. This idea involves merging the transfer learning capabilities of pre-trained language models such as BERT with the structured predictions made by CRF. This method was successfully applied to different token classification tasks, like Portuguese named entity recognition [20] or text anonymization in medical documents [15].

**Adversarial Learning.** Next, we aimed to handle the error-prone nature of the clinical notes. Previous studies showed that adversarial attacks can increase the generalization abilities of natural language processing systems, especially in the case of medical documents [16].
To apply adversarial attacks we used the iterative version of the fast gradient sign method [5,11] (IFGSM) with text-specific modifications [4]. These modifications were needed as the traditional attacking methods are more often applied to images where the pixels are continuous values, as opposed to words in a document.

The gradient attack could make changes in the embedding layer of the large language model, but generating documents from the attacked embeddings is not a straightforward task. After a gradient attack, we reconstruct the attacked document by searching for the closest word piece to each embedding. We only accept a new adversarial example where the text is changed compared to the original. The size of the changes is controlled by the $\epsilon$ parameter of the IFGSM attack. Larger $\epsilon$ makes more changes. We started with a small $\epsilon$ value (1) and increased it with a fixed step size (1) to a maximum of 10 iterations until we found a change in the text. Every second epoch we generate 200 adversarial examples that we add to the training set.

## 3.2 Medication Context Classification

For the last subtask, our methods were motivated by the field of aspect-based sentiment analysis. Aspect-based sentiment analysis [2] is a well-researched area that has similarities to these types of problems. In sentiment analysis, the task is to determine which sentiments are associated with which target. For example, in the sentence "I love the last jedi, but not a fan of the rise of skywalker" there is positive sentiment about The Last Jedi Star Wars movie, but for The Rise of Skywalker the writer shared a negative opinion.

**Local Context Focus Mechanism.** For aspect-based sentiment analysis the local context focus [23] (LCF) mechanism was efficiently used. This method pays more attention to the words that are more closely related to our target.

For the context classification task, we applied this LCF mechanism to prioritize the local context of the given target expressions: in our case the given medication. The architecture of the LCF is shown at the bottom of Fig. 2. First, the text is encoded by two language models, one handles the global and one the local context. The local language model has two extra layers, a context features dynamic weighted (CDW) layer and a multi-headed self-attention, these highlight the tokens that are close to the target medication. The outputs of the local and global model are concatenated and there is another multi-headed self-attention over that. The CDW layer weights the tokens by calculating how many tokens were between the target expression and the given token, the tokens closer to the target get higher weights. This method helps to highlight the context of the medication, but a token that is far from the target is not necessarily irrelevant.
**Syntax-Based Weighting.** To describe more precisely the context of the medication, we applied syntax-based dynamic weighting [17].

<figure><img src="image_5.png" /><figcaption>**Fig. 3.** Dependency structure for a part of a sentence. Blue and red edges indicate the route between the medication mentions and the verb they are the syntactic dependent of. (Color figure online)</figcaption></figure>

Figure 3 shows the dependency tree of a part of a sentence that contains three medication mentions. The medication names are marked in italics, the verbs showing the type of disposition change are colored blue for the **stop** and red for the **start** action; these verbs' dependency relations to the medications are marked the same colors also.

The figure shows that while the name of the medication *hydrochlorothiazide* is equally close to the **start** action verb *put* and the **stop** action verb, in the dependency tree it is directly reachable with one step from *stop*, but not from *put*.

Despite this method's drawback that the dependency trees can only possibly consider one sentence at a time and cannot handle a following sentence referring back to a previously mentioned medication, we found that using the syntactic information improves our results for this task.

So far we have described a method for a single context classification task, but in this dataset, we had five separate classification problems for each of the dispositions.

Like in the two previous tasks, we also applied adversarial learning in the same way. For implementation, we used the PyABSA [22] framework that was initially developed for aspect-based sentiment analysis. We used SpaCy's [9] English transformer model for dependency tree parsing.

# 4 Results

## 4.1 Experimental Setup

We used the Contextualized Medication Event Dataset for each of our experiments. The organizers of the National NLP Clinical Challenges 2022 shared task separated 50 clinical notes from the original training set to create a development set. We used that development set to evaluate our intermediate systems. Therefore the training set contains 350, the development set 50 and the test set 100 clinical notes. The training and development set was provided with labels and the test set was released without them.
In the next subsections, we evaluate our system's performance on the development set, then show the results of our final system on the test set as evaluated by the organizers of the shared task.

For evaluation, we applied the official script of the shared task. This script provides strict and lenient scores based on the matching of the spans in the medication extraction task. To achieve strict matching, the span's offsets must be an exact match. While for lenient matching, it is enough for the spans to have some overlap. Like in the official results of the shared task, we always publish our results with lenient matching.

Because of the nondeterministic nature of the training process, we trained all the models three times and selected the best-achieving system from these independent runs. The results of these systems are shown in Table 2 and Table 4, and these are the system that we have submitted for the shared task.

## 4.2 Event Classification

First, we evaluated the medication extraction and the event classification tasks. We are starting from raw text and annotating the medication mentions and classifying them by the type of events.

We used the BERT large model and applied the following parameters during the training: batch size: 6, learning rate: 1e-05, and trained the model for 20 epochs.

<table><caption>**Table 2.** Lenient F1-scores on the medication extraction task on the development set.</caption><thead><tr><th></th><th>Precision</th><th>Recall</th><th>F1</th></tr></thead><tbody><tr><td>CRF-BERT</td><td>0.9572</td><td>0.9752</td><td>0.9661</td></tr><tr><td>CRF-BERT + adv</td><td>0.9573</td><td>0.9772</td><td>0.9671</td></tr></tbody></table>

In the medication extraction task, we have already achieved good results with the CRF-BERT baseline. Table 2 shows that the adversarial examples didn't give us further improvement. This is because the detection of the medication mentions is more dependent on specific word forms.

<table><caption>**Table 3.** Lenient macro F1-scores on the event classification tasks on the development set.</caption><thead><tr><th></th><th>Precision</th><th>Recall</th><th>F1</th></tr></thead><tbody><tr><td>CRF-BERT</td><td>0.8671</td><td>0.8671</td><td>0.8670</td></tr><tr><td>CRF-BERT + adv</td><td>0.8985</td><td>0.8631</td><td>0.8791</td></tr></tbody></table>
However, in the event classification task, where the labels depend more on the context, the application of adversarial examples increased the results. As we can see in Table 3. there is a 1.2% point increment in the case of the macro F1 score in the development set.

## 4.3 Context Classification

For context classification experiments we used the provided gold annotation for the medication extraction and event classification tasks. We applied the same parameters as we used in the previous step. Like in the shared task, we provide lenient combined F1 score. The combined F1 score only accepts a prediction when the class is correct in each of the five dimensions.

<table><caption>**Table 4.** Combined performance of the systems on the event context classification task on the development set.</caption><thead><tr><th></th><th>Precision</th><th>Recall</th><th>F1</th></tr></thead><tbody><tr><td>BERT</td><td>0.5920</td><td>0.5385</td><td>0.5640</td></tr><tr><td>BERT + S-LCF</td><td>0.6070</td><td>0.5520</td><td>0.5782</td></tr></tbody></table>

Table 4 describes the effect of the local context focus mechanism with syntax-based context weighting. These context-specific features increased the performance of the baseline system by 1.4% points.

The detailed results of the syntax-enhanced local focus mechanism system are in Table 5. It shows lenient macro scores over all of the five classification tasks.

<table><caption>**Table 5.** Task level lenient macro F1 scores of the BERT + S-LCF system on the development set.</caption><thead><tr><th></th><th>Precision</th><th>Recall</th><th>F1</th></tr></thead><tbody><tr><td>Action</td><td>0.8109</td><td>0.7376</td><td>0.7725</td></tr><tr><td>Temporality</td><td>0.8358</td><td>0.7602</td><td>0.7962</td></tr><tr><td>Certainty</td><td>0.9502</td><td>0.8643</td><td>0.9052</td></tr><tr><td>Actor</td><td>0.8955</td><td>0.8145</td><td>0.8531</td></tr><tr><td>Negation</td><td>0.9801</td><td>0.8914</td><td>0.9336</td></tr></tbody></table>

We can see that the action and temporality detection proved to be the most difficult tasks. These tasks have the most classes and the most balanced label distribution. An interesting type of error in the detection of the action type can be seen in the following example, where for finding the correct solution the model
would require mathematical knowledge: *Continue T 40 mg b.i.d. - as 20 mg b.i.d. did not give full control with the generic pills.* In this sentence to decide whether the dose is increased or decreased the model should know if *20* or *40* is larger.

## 4.4 Shared Task Results

The shared task was evaluated in three steps on the test set that was originally released unlabelled. In the first release, the raw text had to be analyzed, thus the event and the context classification tasks contained the error of the lower-level tasks as well. In the second release, the organizers provided the gold medication mentions, in the third release the gold event annotation was also provided and the only task was the context classification. Since our system performs the first and second tasks in one step, we focused on the first and third releases.

<table><caption>**Table 6.** Performance of the final system on the test set of Contextualized Medication Event Dataset. Release 1 only contained raw texts that we ran all of our systems on. The gold event classification in Release 3 could be used for evaluating the context classification task.</caption><thead><tr><th></th><th>Medication F1</th><th>Event F1</th><th>Context F1</th></tr></thead><tbody><tr><td>Release 1</td><td>0.9714</td><td>0.7682</td><td>0.4780</td></tr><tr><td>Release 3</td><td></td><td></td><td>0.5982</td></tr></tbody></table>

The Table 6 shows our official results on the test set. Among the 32 participant teams, our system achieved 8th place on the context classification task both in the case of release 1 and release 3, also 8th place on the event classification in release 1, and 9th place on the medication mention task.

## 5 Related Work

Although the use of a local context focus mechanism and its syntax-based extension was developed in recent years, highlighting part of the context and the application of syntax parsing in context classification tasks is not a new concept. In aspect-based sentiment analysis, both dependency and constituent analysis have been applied for feature extraction [6,10] before the spread of large language models. Several different methods have also been developed for the weighting of the features [7].

In the case of large language models, the first solution that comes to mind is the application of sentence pair classification [19] that doesn't make any change to the structure of the neural network, only modifies the input document. It concatenates the full context and the target word with a separator. This allows the model to identify the target in the context. This simple method improved the results over the previous feature- and word-embedding-based solutions.
In each of our experiments, we applied the large version of BERT, but the application of other large language models such as RoBERTa [13] or DeBERTa [8] is a low-hanging fruit for future improvement. As well as utilizing more domain-specific knowledge from biological and clinical text-based pre-trained language models, like the BioBERT [12] or the Clinical BERT [1].

The distinction between the local and global context was also applied to clinical text analysis. In previous works, the combination of CNN and RNN [18] was used for relation classification where the CNN was motivated by their local context extraction capabilities, while RNNs are more suited for long-term dependencies. Earlier work in the Second i2b2 Shared-Task [21] about obesity classification used dictionary-based solutions to analyze the context of diseases for negation and uncertainty [3].

# 6 Conclusion

Our paper proposes solutions for the extraction and analysis of the medication mentions in clinical notes. For our experiments, we used the Contextualized Medication Event Dataset which contains three tasks. We employed a CRF-BERT-based solution enriched with adversarial examples for the medication extraction and event classification tasks.

In the third task of assigning more detailed context to the medication changes, we implemented a pre-trained language model-based solution that we extended with syntax-based highlighting of the relevant part of the documents. The main motivations of this approach come from the field of sentiment analysis. The usage of the local context focus mechanism and syntax parsing-based weighting successfully improved the results of the context classification as well.

Overall we found that these modifications positively affected the results. In the event classification task, adversarial learning improved our results by 1.2% points while in the context classification task taking syntax into consideration in the local context mechanism resulted in a 1.4% points improvement.

**Acknowledgements.** This research has been supported by the European Union project RRF-2.3.1-21-2022-00004 within the framework of the Artificial Intelligence National Laboratory.

# References

1. Alsentzer, E., et al.: Publicly available clinical BERT embeddings. arXiv preprint arXiv:1904.03323 (2019)

2. Do, H.H., Prasad, P., Maag, A., Alsadoon, A.: Deep learning for aspect-based sentiment analysis: a comparative review. Expert Syst. Appl. 118, 272–299 (2019)

3. Farkas, R., et al.: Semi-automated construction of decision rules to predict morbidities from clinical texts. J. Am. Med. Inform. Assoc. 16(4), 601–605 (2009)

4. Gong, Z., Wang, W., Li, B., Song, D., Ku, W.S.: Adversarial texts with gradient methods. arXiv preprint arXiv:1801.07175 (2018)
5. Goodfellow, I.J., Shlens, J., Szegedy, C.: Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572 (2014)

6. Hangya, V., Berend, G., Varga, I., Farkas, R.: SZTE-NLP: aspect level opinion mining exploiting syntactic cues. SemEval **2014**, 610 (2014)

7. Hangya, V., Farkas, R.: Filtering and polarity detection for reputation management on tweets. In: CEUR WORKSHOP PROCEEDINGS. SZTE (2013)

8. He, P., Gao, J., Chen, W.: DeBERTaV3: improving DeBERTa using ELECTRA-style pre-training with gradient-disentangled embedding sharing. arXiv preprint arXiv:2111.09543 (2021)

9. Honnibal, M., Montani, I., Van Landeghem, S., Boyd, A.: spaCy: industrial-strength natural language processing in python. arXiv preprint arXiv:1810.04805 (2020)

10. Kong, L., Schneider, N., Swayamdipta, S., Bhatia, A., Dyer, C., Smith, N.A.: A dependency parser for tweets. In: Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1001–1012 (2014)

11. Kurakin, A., Goodfellow, I., Bengio, S.: Adversarial machine learning at scale. arXiv preprint arXiv:1611.01236 (2016)

12. Lee, J., et al.: BioBERT: a pre-trained biomedical language representation model for biomedical text mining. Bioinformatics **36**(4), 1234–1240 (2020)

13. Liu, Y., et al.: RoBERTa: a robustly optimized BERT pretraining approach. arXiv preprint arXiv:1907.11692 (2019)

14. Mahajan, D., Liang, J.J., Tsou, C.H.: Toward understanding clinical context of medication change events in clinical narratives. In: AMIA Annual Symposium Proceedings. vol. 2021, p. 833. American Medical Informatics Association (2021)

15. Mao, J., Liu, W.: Hadoken: a BERT-CRF model for medical document anonymization. In: IberLEF@ SEPLN, pp. 720–726 (2019)

16. Moradi, M., Samwald, M.: Improving the robustness and accuracy of biomedical language models through adversarial training. J. Biomed. Inform. **132**, 104114 (2022). https://doi.org/10.1016/j.jbi.2022.104114

17. Phan, M.H., Ogunbona, P.O.: Modelling context and syntactical features for aspect-based sentiment analysis. In: Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 3211–3220 (2020)

18. Raj, D., Sahu, S., Anand, A.: Learning local and global contexts using a convolutional recurrent network model for relation classification in biomedical text. In: Proceedings of the 21st Conference on Computational Natural Language Learning (CoNLL 2017), Vancouver, Canada, pp. 311–321. Association for Computational Linguistics (Aug 2017). https://doi.org/10.18653/v1/K17-1032

19. Song, Y., Wang, J., Jiang, T., Liu, Z., Rao, Y.: Attentional encoder network for targeted sentiment classification. arXiv preprint arXiv:1902.09314 (2019)

20. Souza, F., Nogueira, R., Lotufo, R.: Portuguese named entity recognition using BERT-CRF. arXiv preprint arXiv:1909.10649 (2019)

21. Uzuner, O.: Second i2b2 workshop on natural language processing challenges for clinical records. AMIA Ann. Symp. Proc. / AMIA Symp. AMIA Symp. **6**, 1252–1253 (2008)

22. Yang, H., Li, K.: PyABSA: open framework for aspect-based sentiment analysis. arXiv preprint arXiv:2208.01368 (2022)

23. Zeng, B., Yang, H., Xu, R., Zhou, W., Han, X.: LCF: a local context focus mechanism for aspect-based sentiment classification. Appl. Sci. **9**(16), 3389 (2019)