{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/improving-bert-performance-for-aspect-based","title":"Improving BERT Performance for Aspect-Based Sentiment Analysis","arxiv_id":"2010.11731","date":"2020-10-22","proceeding":"ICNLSP 2021 11","authors":["Akbar Karimi","Leonardo Rossi","Andrea Prati"],"abstract":"Aspect-Based Sentiment Analysis (ABSA) studies the consumer opinion on the market products. It involves examining the type of sentiments as well as sentiment targets expressed in product reviews. Analyzing the language used in a review is a difficult task that requires a deep understanding of the language. In recent years, deep language models, such as BERT \\cite{devlin2019bert}, have shown great progress in this regard. In this work, we propose two simple modules called Parallel Aggregation and Hierarchical Aggregation to be utilized on top of BERT for two main ABSA tasks namely Aspect Extraction (AE) and Aspect Sentiment Classification (ASC) in order to improve the model's performance. We show that applying the proposed models eliminates the need for further training of the BERT model. The source code is available on the Web for further research and reproduction of the results.","url_abs":"https://arxiv.org/abs/2010.11731v2","url_pdf":"https://arxiv.org/pdf/2010.11731v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"improving-bert-performance-for-aspect-based","repo_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"improving-bert-performance-for-aspect-based","repo_url":"https://github.com/akkarimi/Adversarial-Training-for-ABSA","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"aspect-extraction","task_name":"Aspect Extraction"},{"task_slug":"aspect-based-sentiment-analysis-1","task_name":"Aspect-Based Sentiment Analysis"},{"task_slug":"aspect-based-sentiment-analysis","task_name":"Aspect-Based Sentiment Analysis (ABSA)"},{"task_slug":"sentiment-analysis","task_name":"Sentiment Analysis"},{"task_slug":"sentiment-classification","task_name":"Sentiment Classification"}],"methods":[{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"attention-dropout","method_name":"Attention Dropout"},{"method_slug":"bert","method_name":"BERT"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"linear-warmup-with-linear-decay","method_name":"Linear Warmup With Linear Decay"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"weight-decay","method_name":"Weight Decay"},{"method_slug":"wordpiece","method_name":"WordPiece"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/aspect-extraction-on-semeval-2014-task-4-sub-1","task":"Aspect Extraction","dataset":"SemEval-2014 Task-4","model":"PH-SUM","rank_in_archive_order":3,"of":6,"metrics":{"Laptop (F1)":"86.09","Mean F1 (Laptop + Restaurant)":"84.215","Restaurant (F1)":"82.34"},"uses_additional_data":false},{"leaderboard":"/sota/aspect-based-sentiment-analysis-on-semeval","task":"Aspect-Based Sentiment Analysis (ABSA)","dataset":"SemEval-2014 Task-4","model":"PH-SUM","rank_in_archive_order":12,"of":48,"metrics":{"Laptop (Acc)":"79.55","Mean Acc (Restaurant + Laptop)":"82.96","Restaurant (Acc)":"86.37"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2010.11731","atlas_url":"https://app.syntology.ai/?focus=2010.11731","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2010.11731"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IMPLabUniPr/BERT-for-ABSA","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/akkarimi/Adversarial-Training-for-ABSA","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_draft_wrong":3,"ran_honours":2,"unverified":6},"by_repo_kind":{"official":{"samples":11,"ran":5,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"0f786c407fb1ee4c","entry":"swish","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/modeling.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/modeling.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":2,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"0f786c407fb1ee4c"}},{"code_sha256_prefix":"cf9ffa02a42184af","entry":"whitespace_tokenize","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/tokenization.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/tokenization.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":2,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cf9ffa02a42184af"}},{"code_sha256_prefix":"fdc64f4c72036ae4","entry":"gelu","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/modeling.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/modeling.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"fdc64f4c72036ae4"}},{"code_sha256_prefix":"5eff22fa0a651276","entry":"url_to_filename","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/file_utils.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/file_utils.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5eff22fa0a651276"}},{"code_sha256_prefix":"c58d57224530d17e","entry":"warmup_linear","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/run_ae.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/run_ae.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c58d57224530d17e"}},{"code_sha256_prefix":"cf9c448c96f48428","entry":"cached_path","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/file_utils.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/file_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cf9c448c96f48428"}},{"code_sha256_prefix":"2b7167d132905cdd","entry":"convert_examples_to_features","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/absa_data_utils.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/absa_data_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"2b7167d132905cdd"}},{"code_sha256_prefix":"aeb20ed962ccdd7f","entry":"evaluate","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"eval/evaluate_ae.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/eval/evaluate_ae.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aeb20ed962ccdd7f"}},{"code_sha256_prefix":"a6aab787fcf8b10d","entry":"filename_to_url","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/file_utils.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/file_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a6aab787fcf8b10d"}},{"code_sha256_prefix":"b1a7180868dd8d6a","entry":"load_tf_weights_in_bert","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/modeling.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/modeling.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b1a7180868dd8d6a"}},{"code_sha256_prefix":"a4e183f24a5ad1a7","entry":"load_vocab","repo":"IMPLabUniPr/BERT-for-ABSA","repo_kind":"official","path":"src/tokenization.py","file_url":"https://github.com/IMPLabUniPr/BERT-for-ABSA/blob/HEAD/src/tokenization.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a4e183f24a5ad1a7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}