<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">73243</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2025.073243</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Robust Recommendation Adversarial Training Based on Self-Purification Data Sanitization</article-title>
<alt-title alt-title-type="left-running-head">Robust Recommendation Adversarial Training Based on Self-Purification Data Sanitization</alt-title>
<alt-title alt-title-type="right-running-head">Robust Recommendation Adversarial Training Based on Self-Purification Data Sanitization</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Long</surname><given-names>Haiyan</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Chen</surname><given-names>Gang</given-names></name><xref ref-type="aff" rid="aff-2">2</xref><email>chengang9704@stu.xmu.edu.cn</email></contrib>
<contrib id="author-3" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Chen</surname><given-names>Hai</given-names></name><xref ref-type="aff" rid="aff-3">3</xref><email>e21101016@stu.ahu.edu.cn</email></contrib>
<aff id="aff-1"><label>1</label><institution>School of Information Engineering, Liaodong University</institution>, <addr-line>Liaoning, 118003</addr-line>, <country>China</country></aff>
<aff id="aff-2"><label>2</label><institution>School of Aerospace Engineering, Xiamen University</institution>, <addr-line>Xiamen, 361005</addr-line>, <country>China</country></aff>
<aff id="aff-3"><label>3</label><institution>School of Computer Science and Technology, Anhui University</institution>, <addr-line>Hefei, 230039</addr-line>, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Authors: Gang Chen. Email: <email>chengang9704@stu.xmu.edu.cn</email>; Hai Chen. Email: <email>e21101016@stu.ahu.edu.cn</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2026</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>10</day><month>2</month><year>2026</year>
</pub-date>
<volume>87</volume>
<issue>1</issue>
<elocation-id>31</elocation-id>
<history>
<date date-type="received">
<day>13</day>
<month>09</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>17</day>
<month>11</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2026 The Authors.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>Published by Tech Science Press.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_73243.pdf"></self-uri>
<abstract>
<p>The performance of deep recommendation models degrades significantly under data poisoning attacks. While adversarial training methods such as Vulnerability-Aware Training (VAT) enhance robustness by injecting perturbations into embeddings, they remain limited by coarse-grained noise and a static defense strategy, leaving models susceptible to adaptive attacks. This study proposes a novel framework, Self-Purification Data Sanitization (SPD), which integrates vulnerability-aware adversarial training with dynamic label correction. Specifically, SPD first identifies high-risk users through a fragility scoring mechanism, then applies self-purification by replacing suspicious interactions with model-predicted high-confidence labels during training. This closed-loop process continuously sanitizes the training data and breaks the protection ceiling of conventional adversarial training. Experiments demonstrate that SPD significantly improves the robustness of both Matrix Factorization (MF) and LightGCN models against various poisoning attacks. We show that SPD effectively suppresses malicious gradient propagation and maintains recommendation accuracy. Evaluations on Gowalla and Yelp2018 confirm that SPD-trained models withstand multiple attack strategies&#x2014;including Random, Bandwagon, DP, and Rev attacks&#x2014;while preserving performance.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Robustness</kwd>
<kwd>adversarial defense</kwd>
<kwd>recommendation system</kwd>
<kwd>poisoning attack</kwd>
<kwd>self-purification</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Amidst the information explosion, recommender systems have evolved from auxiliary widgets into mission-critical infrastructure, guiding billions of decisions daily. Collaborative filtering (CF) is the most widely used paradigm, powering purchase recommendations from e-commerce giants, next song queues on streaming platforms, and even clinical treatment planning. However, their open-world nature creates a fertile ground for attackers: by faking a small number of user interactions with items, attackers can quietly re-rank items, inflate the visibility of fake products, or suppress competitors&#x2014;a practice known as &#x201C;poisoning attacks&#x201D; [<xref ref-type="bibr" rid="ref-1">1</xref>&#x2013;<xref ref-type="bibr" rid="ref-3">3</xref>]. In addition to causing revenue losses for e-commerce companies, poisoning attacks can also erode user trust and potentially trigger regulatory scrutiny.</p>
<p>As shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>, without effective defense mechanisms, recommender systems under targeted promotion attacks fail to distinguish genuine user behavior from maliciously injected interactions. Consequently, items promoted by attackers&#x2014;often irrelevant to user interests&#x2014;rise significantly in the recommendation rankings, impairing relevance, accuracy, and user experience. In contrast, systems equipped with adversarial defense capabilities (indicated by the shield icon in the diagram) can effectively detect and resist such attacks, maintaining alignment between recommendations and true user preferences [<xref ref-type="bibr" rid="ref-4">4</xref>,<xref ref-type="bibr" rid="ref-5">5</xref>]. This comparison clearly demonstrates the critical role adversarial defense plays in enhancing the robustness and security of recommender systems.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Comparison of recommendation systems under targeted poisoning attack: without defense (top), the system recommends attack-related items irrelevant to user preferences, leading to user dissatisfaction; with our adversarial defense (bottom), the system filters out malicious targets and maintains recommendation quality aligned with true user interests</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-1.tif"/>
</fig>
<p>Existing defense strategies against poisoning attacks can be broadly categorized into three directions. (1) Data-level sanitization treats the problem as anomaly detection, removing suspicious users by identifying distributional irregularities such as rating bursts, repetitive patterns, or graph degree anomalies [<xref ref-type="bibr" rid="ref-6">6</xref>&#x2013;<xref ref-type="bibr" rid="ref-8">8</xref>]. (2) Robust model structures strengthen the model itself, e.g., through Graph Neural Network (GNN)-based architectures with built-in message constraints or certifiable robustness layers, absorbing adversarial shocks without explicit data filtering [<xref ref-type="bibr" rid="ref-9">9</xref>,<xref ref-type="bibr" rid="ref-10">10</xref>]. (3) Adversarial training represents the state-of-the-art in robustness enhancement. By injecting worst-case perturbations into embeddings and optimizing a minimax objective, it reduces the theoretical upper bound of adversarial risk without requiring prior knowledge of attack strategies [<xref ref-type="bibr" rid="ref-11">11</xref>&#x2013;<xref ref-type="bibr" rid="ref-13">13</xref>]. For example, Adversarial Personalized Ranking (APR) improves MF robustness by perturbing embedding parameters [<xref ref-type="bibr" rid="ref-12">12</xref>], while Vulnerability-Aware Training (VAT) adapts perturbation strength based on each user&#x2019;s vulnerability score [<xref ref-type="bibr" rid="ref-14">14</xref>]. However, VAT suffers from an upper bound of protection: once high-intensity noise drastically increases the loss of already vulnerable users, subsequent steps suppress the perturbation, leaving residual poisoned signals and limiting achievable robustness.</p>
<p>To address this issue, we propose a robust recommendation adversarial training strategy based on self-purifying data updates. First, we identify vulnerable users to ensure that the recommendation performance for this group remains robust under adversarial noise perturbations. During each iteration, the model&#x2019;s predicted labels are used to dynamically replace the corresponding training samples of vulnerable users, enabling online self-purification of the training data. This dynamic replacement of vulnerable user labels breaks the defensive noise limitation of VAT (Virtual Adversarial Training), as the updated labels represent the user&#x2019;s true intent under adversarial perturbations. This process enhances the authenticity of user preference representations and allows the model to more effectively adjust the perturbation intensity for these users during training, thereby overcoming the &#x201C;protection ceiling.&#x201D; The dynamic label replacement algorithm enables the target model to progressively acquire robustness by learning from the guidance model&#x2019;s decisions.</p>
<p>The proposed SPD (Self-Purification Data sanitization) innovatively introduces self-purifying updates for high-risk user data and combines it with adaptive adversarial perturbation intensity generation based on interaction behavior features to achieve more robust recommendation model training. In this way, SPD not only effectively reduces the success rate of poisoning attacks but also maintains recommendation quality, thereby avoiding the trade-offs commonly associated with traditional adversarial training methods. In experiments on the Gowalla and Yelp2018 datasets, SPD reduced the success rate of poisoning attacks by <bold>64.38% </bold>compared to the current state-of-the-art method, the VAT baseline. The main contributions of our work are summarized as follows:
<list list-type="bullet">
<list-item>
<p>We introduce Self-Purification Data sanitization (SPD), the first online label correction mechanism that replaces high-risk user interactions with the model&#x2019;s own high-confidence predictions, enabling unsupervised, real-time training data purification.</p></list-item>
<list-item>
<p>We seamlessly couple SPD with vulnerability-aware perturbations, forming the SPD dual-channel closed loop that adaptively adjusts perturbation strength while preserving recommendation accuracy, breaking the robustness-performance trade-off.</p></list-item>
<list-item>
<p>Extensive experiments conducted on Gowalla and Yelp 2018 confirmed that, compared to state-of-the-art defenses, SPD reduced the success rate of poisoning attacks by an average of <bold>64.38% </bold>(with the lowest reduction reaching <bold>97.96%</bold> for Taeget-HR@50) without compromising recommendation quality. This provides a practical example for secure recommendation deployment.</p></list-item>
</list></p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<sec id="s2_1">
<label>2.1</label>
<title>Collaborative Filtering in Recommender Systems</title>
<p>Collaborative Filtering (CF) remains the most classical and representative paradigm in recommender systems, based on the assumption that users with similar interests tend to give similar evaluations to items. Early approaches relied on explicit feedback (e.g., rating matrices), where Matrix Factorization (MF) projected the high-dimensional sparse User&#x2013;Item matrix into a dense latent factor space. Representative methods include SVD&#x002B;&#x002B; [<xref ref-type="bibr" rid="ref-15">15</xref>], ALS [<xref ref-type="bibr" rid="ref-16">16</xref>], and BPR-MF [<xref ref-type="bibr" rid="ref-17">17</xref>].</p>
<p>With the rise of deep learning, AutoEncoder-based and Transformer-based models (e.g., SASRec [<xref ref-type="bibr" rid="ref-18">18</xref>], TiSASRec [<xref ref-type="bibr" rid="ref-19">19</xref>]) further captured sequential and dynamic user preferences. More recently [<xref ref-type="bibr" rid="ref-18">18</xref>,<xref ref-type="bibr" rid="ref-19">19</xref>], Graph Neural Networks (GAT [<xref ref-type="bibr" rid="ref-20">20</xref>]) constructed user&#x2014;item interactions as bipartite graphs, aggregating high-order neighborhood information and improving performance in cold-start and long-tail recommendations.</p>
<p>In industry, large-scale platforms such as Taobao [<xref ref-type="bibr" rid="ref-21">21</xref>], Netflix [<xref ref-type="bibr" rid="ref-22">22</xref>], and Spotify [<xref ref-type="bibr" rid="ref-23">23</xref>] have integrated MF, Deep Neural Network (DNN), and GNN into billion-parameter service frameworks, combined with real-time feature engineering, negative sampling, and reinforcement learning for rapid model updates. However, the data-hungry nature of CF makes it highly dependent on external user interactions, leaving it inherently vulnerable to poisoning attacks.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Poisoning Attacks in Recommender Systems</title>
<p>Poisoning attacks aim to inject malicious data during training to manipulate model outputs. These can be broadly divided into two categories:</p>
<p>Targeted poisoning attacks: Designed to promote or suppress specific items. Typical methods include: (i) push attacks [<xref ref-type="bibr" rid="ref-2">2</xref>,<xref ref-type="bibr" rid="ref-24">24</xref>,<xref ref-type="bibr" rid="ref-25">25</xref>], where adversaries inject high ratings for a target item to raise its rank; (ii) nuke attacks, where negative feedback is injected to degrade a competitor&#x2019;s rank; and (iii) backdoor attacks, where hidden triggers are embedded, activating targeted recommendations when certain patterns occur [<xref ref-type="bibr" rid="ref-26">26</xref>].</p>
<p>Untargeted poisoning attacks: Designed to globally reduce recommendation accuracy, e.g., Cluster Attack [<xref ref-type="bibr" rid="ref-27">27</xref>], which inject random noise or perturb graph structures to disrupt similarity distributions.</p>
<p>In federated or decentralized settings, adversaries may directly upload malicious gradients (e.g., FedRecPoison [<xref ref-type="bibr" rid="ref-28">28</xref>]), creating compound threats across both the data and model levels.</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Robust Recommender Systems</title>
<p>Robust recommender systems aim to maintain reliable performance in the presence of noise, adversarial perturbations, or distribution shifts [<xref ref-type="bibr" rid="ref-29">29</xref>,<xref ref-type="bibr" rid="ref-30">30</xref>]. Early work focused on algorithmic robustness: GNN-based models leveraged high-order neighbor aggregation but were highly sensitive to noisy edges [<xref ref-type="bibr" rid="ref-20">20</xref>]. To address this, contrastive learning approaches such as SGL (Self-supervised Graph Learning for Recommendation) and KGCL (Knowledge-enhanced Graph Contrastive Learning) applied edge masking and subgraph perturbations to enforce self-supervised consistency, improving noise resilience [<xref ref-type="bibr" rid="ref-31">31</xref>].</p>
<p>Meanwhile, smoothing techniques and robust estimation frameworks introduced Cauchy/L1 norms into MF and sequential models, reweighting samples to diminish the impact of anomalies. Adversarial training approaches (e.g., APR, VAT, RAWP-FT [<xref ref-type="bibr" rid="ref-32">32</xref>]) injected worst-case perturbations into embeddings or parameters and optimized minimax objectives, providing theoretical robustness guarantees.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Preliminary</title>
<sec id="s3_1">
<label>3.1</label>
<title>Problem Definition</title>
<p>We formalize the recommendation task within the scope of our study as follows.</p>
<p>Let <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>u</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>u</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>u</mml:mi><mml:mi>m</mml:mi></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> denote the set of users and <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mrow><mml:mi>&#x02110;</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:msub><mml:mi>i</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>i</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:msub><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> denote the set of items. The observed user-item interactions are represented by a binary matrix <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mn>1</mml:mn><mml:msup><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>, where
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:msub><mml:mi>r</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if user u has interacted with item i</mml:mtext></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>otherwise</mml:mtext></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>A recommendation model learns latent embeddings <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">p</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mi>d</mml:mi></mml:msup></mml:math></inline-formula> for each user u and <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">q</mml:mtext></mml:mrow><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow><mml:mi>d</mml:mi></mml:msup></mml:math></inline-formula> for each item i, and predicts the preference score via
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>u</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext mathvariant="bold">p</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msub><mml:mrow><mml:mtext mathvariant="bold">q</mml:mtext></mml:mrow><mml:mi>i</mml:mi></mml:msub><mml:mo>;</mml:mo><mml:mspace width="thinmathspace" /><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:mi mathvariant="normal">&#x0398;</mml:mi></mml:math></inline-formula> denotes all trainable model parameters.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Adversarial Training for Recommender Systems</title>
<p>Virtual Adversarial Training (VAT) is a regularization technique designed to improve the robustness of recommender systems against adversarial perturbations, particularly those arising from poisoning attacks. The central idea is to introduce controlled, adversarial noise during training to force the model to remain stable in a neighborhood around each training sample.</p>
<sec id="s3_2_1">
<label>3.2.1</label>
<title>Adversarial Loss Formulation</title>
<p>The overall training objective under VAT combines the standard recommendation loss with an additional adversarial loss term:
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>VAT</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo>+</mml:mo><mml:msup><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mrow><mml:mtext>emb</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denotes the original loss function (e.g., BPR or cross-entropy), <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> is a hyperparameter controlling the contribution of the adversarial term, And <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:msup><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mtext>emb</mml:mtext></mml:mrow></mml:msup></mml:math></inline-formula> represents the perturbation vector applied to the user and item embeddings <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:mi mathvariant="normal">&#x0398;</mml:mi></mml:math></inline-formula>.</p>
</sec>
<sec id="s3_2_2">
<label>3.2.2</label>
<title>Perturbation Generation</title>
<p>The adversarial perturbation <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msup><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mtext>emb</mml:mtext></mml:mrow></mml:msup></mml:math></inline-formula> is obtained by solving a constrained maximization problem:
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msup><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mrow><mml:mtext>emb</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mi>arg</mml:mi><mml:mo>&#x2061;</mml:mo><mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:mrow></mml:munder><mml:mspace width="1em" /><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd /><mml:mtd><mml:mrow><mml:mtext>subject to</mml:mtext></mml:mrow><mml:mspace width="1em" /><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo><mml:msub><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mo>&#x2217;</mml:mo></mml:mrow></mml:msub><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo><mml:mo>&#x2264;</mml:mo><mml:mi>&#x03C1;</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:mi>g</mml:mi><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mo>&#x2223;</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>&#x03C1;</mml:mi></mml:math></inline-formula> controls the base perturbation scale, and <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:mi>g</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is a scaling function that modulates the
perturbation magnitude based on user-specific vulnerability, quantified by <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mo>&#x2223;</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>.</p>
</sec>
<sec id="s3_2_3">
<label>3.2.3</label>
<title>User-Adaptive Perturbation</title>
<p>For a specific user&#x2013;item interaction <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, the perturbation is computed as:
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msubsup><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>emb</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mi>&#x03C1;</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:mi>g</mml:mi><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mo>&#x2223;</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle><mml:mo>&#x22C5;</mml:mo><mml:mfrac><mml:msub><mml:mi mathvariant="normal">&#x0393;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo><mml:msub><mml:mi mathvariant="normal">&#x0393;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo fence="false" stretchy="false">&#x2016;</mml:mo></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd /><mml:mtd><mml:mi>w</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mspace width="1em" /><mml:msub><mml:mi mathvariant="normal">&#x0393;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2223;</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle></mml:mrow><mml:mrow><mml:mi mathvariant="normal">&#x2202;</mml:mi><mml:msub><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>This user-adaptive scheme ensures that perturbations are scaled according to each user&#x2019;s susceptibility, thereby enhancing defense against targeted attacks without compromising overall recommendation performance.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Proposed Method</title>
<p>This chapter delineates the overall architecture and technical specifics of the proposed Self-Purifying Data (SPD) framework. The central concept of SPD is the seamless integration of prediction-driven data self-purification into the adversarial training process, forming a closed-loop &#x201C;defense-purification-retraining&#x201D; mechanism that effectively circumvents the robustness ceiling inherent in conventional defense approaches.</p>
<p>As illustrated in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>, the SPD framework operates through a structured pipeline designed to mitigate targeted poisoning attacks. The process begins by deriving user and item embeddings from interaction data. These embeddings are first processed by a vulnerability-aware module&#x2014;incorporated from established methods&#x2014;to identify users that are highly susceptible to attacks. The key innovation of our approach resides in the subsequent Self-Purifying Data (SPD) module. Specifically, for users identified as vulnerable, our method dynamically replaces their embeddings with high-confidence predictions generated by the model itself during training. This updating strategy effectively mitigates the influence of potentially poisoned training samples by aligning the latent representations with the underlying true user intent, thereby cutting off the propagation of malicious gradients. Through this purifying step, the model continuously reinforces its robustness using self-generated reliable signals, forming an iterative optimization cycle that progressively improves both accuracy and resistance to poisoning attacks. The refined embeddings are then passed to the recommendation model to produce robust output recommendations.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Adversarial Training with SPD. The proposed adversarial training framework with Self-Purifying Data (SPD). The pipeline begins by employing a vulnerability-aware module (adopted from existing works) to distinguish between vulnerable and invulnerable user embeddings. Our core innovation lies in the subsequent SPD process: applying differentiated perturbation magnitudes based on vulnerability levels, followed by a predictive update that dynamically sanitizes the embeddings of vulnerable users with the model&#x2019;s high-confidence predictions. This closed-loop system effectively suppresses target attack items (e.g., the red dress) in the final recommendation lists, thereby significantly enhancing robustness without compromising recommendation quality</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-2.tif"/>
</fig>
<sec id="s4_1">
<label>4.1</label>
<title>Vulnerability Assessment</title>
<p>Conventional defense mechanisms usually assume that all users are equally exposed to adversarial perturbations. This homogeneous assumption overlooks the fact that users differ significantly in how well their preferences are fitted by the model, leading to heterogeneous vulnerability. Recent work [<xref ref-type="bibr" rid="ref-14">14</xref>] highlights a &#x201C;health paradox,&#x201D; observing that users with smaller training losses&#x2014;whose preferences are well captured by the model&#x2014;are paradoxically more susceptible to poisoning attacks.</p>
<p>The underlying intuition is that small training losses indicate strong model fitting, making these users&#x2019; embeddings highly sensitive: even a few injected fake interactions may be disproportionately amplified during parameter updates. In contrast, users with larger training losses are modeled with greater uncertainty, which inadvertently reduces their sensitivity to small perturbations and thereby enhances robustness.</p>
<p>To quantitatively capture such heterogeneity, we define a user-level vulnerability score as a function of the user&#x2019;s training loss. Let <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denote the loss associated with user <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:mi>u</mml:mi></mml:math></inline-formula>, and let <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mover><mml:mrow><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover></mml:math></inline-formula> be the mean loss across all users. We then define:
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:msub><mml:mi>s</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>g</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mfrac><mml:mrow><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mover><mml:mrow><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>u</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is the Sigmoid function that constrains the score to <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>.</p>
<p>The <xref ref-type="disp-formula" rid="eqn-6">Eq. (6)</xref> reflects the relative position of a user&#x2019;s loss compared to the population average: users with lower-than-average loss obtain higher vulnerability scores, while those with larger losses receive smaller scores. Consequently, <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:msub><mml:mi>s</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:math></inline-formula> provides a dynamic, training-aware measure of susceptibility. In the subsequent sections, we use this indicator both to analyze system-wide weaknesses and to design selective defense strategies that allocate stronger protection to users with higher vulnerability.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Self-Predictive Data Sanitization (SPD)</title>
<p>Virtual Adversarial Training (VAT) can adaptively perturb user embeddings to improve robustness, but residual contamination from poisoned interactions may still persist. To address this, we propose Self-Predictive Data Sanitization (SPD), which leverages the model&#x2019;s high-confidence predictions to cleanse potentially corrupted interactions, particularly for high-risk users.</p>
<p>At the end of each training epoch, the system calculates the vulnerability scores <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:msub><mml:mi>s</mml:mi><mml:mrow><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> for all users and groups the top <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mi>k</mml:mi><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula> high-risk users into a set <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:msub><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mrow><mml:mtext>high</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>. For each <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mi>u</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mrow><mml:mtext>high</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula>, SPD replaces the vulnerable user data with the top <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> high-probability user-item interactions <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:msub><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>u</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> predicted with high confidence using the current iteration model.</p>
<p>We can formalize the protective effect of SPD on high-risk users as follows. Let <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:msub><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub></mml:math></inline-formula> denotes the original interactions of user <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mi>u</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mi>u</mml:mi><mml:mrow><mml:mtext>sanitized</mml:mtext></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the interactions after SPD replacement. The sanitized gradient for user <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mi>u</mml:mi></mml:math></inline-formula> is then computed as:
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:msub><mml:mi mathvariant="normal">&#x2207;</mml:mi><mml:mrow><mml:msub><mml:mrow><mml:mtext mathvariant="bold">p</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mi>u</mml:mi><mml:mrow><mml:mrow><mml:mtext>sanitized</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></disp-formula>which depends only on clean or high-confidence-predicted interactions. Since SPD only modifies interactions for high-risk users, the embeddings of low-risk users remain unchanged, preserving overall model fidelity.</p>
<p>To quantify the reduction in poisoned influence, define the expected discrepancy between sanitized and true-clean gradients:
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:msub><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">|</mml:mo></mml:mrow></mml:mstyle><mml:msub><mml:mi mathvariant="normal">&#x2207;</mml:mi><mml:mrow><mml:msub><mml:mrow><mml:mtext mathvariant="bold">p</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msubsup><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mi>u</mml:mi><mml:mrow><mml:mrow><mml:mtext>sanitized</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi mathvariant="normal">&#x2207;</mml:mi><mml:mrow><mml:msub><mml:mrow><mml:mtext mathvariant="bold">p</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mrow><mml:mtext mathvariant="bold">R</mml:mtext></mml:mrow><mml:mi>u</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">&#x0398;</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:msup><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">|</mml:mo></mml:mrow></mml:mstyle><mml:mn>2</mml:mn></mml:msup></mml:math></disp-formula></p>
<p>The average poisoned gradient risk across high-risk users is then
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mrow><mml:mi>&#x211B;</mml:mi></mml:mrow><mml:mo>&#x2217;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mtext>poison</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>sanitized</mml:mtext></mml:mrow></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mo>&#x2217;</mml:mo><mml:mrow><mml:mrow><mml:mtext>high</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mo>&#x2211;</mml:mo><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mrow><mml:mtext>high</mml:mtext></mml:mrow></mml:mrow></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mi>u</mml:mi></mml:math></disp-formula></p>
<p>Intuitively:<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:msubsup><mml:mrow><mml:mi>&#x211B;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>poison</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext>sanitized</mml:mtext></mml:mrow></mml:mrow></mml:msubsup><mml:mo>&#x226A;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x211B;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>poison</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></disp-formula>because SPD replaces interactions that are likely to be poisoned with model-predicted labels that approximate the clean signal. This formulation directly links the sanitized gradient to SPD: high-risk users&#x2019; embeddings are now updated based on purified data, effectively neutralizing the effect of poisoned interactions.</p>
<p>In summary, SPD acts as a preemptive filter for high-risk users, and when combined with VAT-based adversarial perturbations, it forms a closed-loop defense-purification mechanism that both fortifies embeddings and blocks poisoned gradients, enhancing overall robustness and stability.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Experimental</title>
<sec id="s5_1">
<label>5.1</label>
<title>Experimental Setup</title>
<sec id="s5_1_1">
<label>5.1.1</label>
<title>Dataset</title>
<p>To evaluate the effectiveness and robustness of our proposed method, we conduct experiments on two widely used recommendation datasets: Gowalla and Yelp2018.
<list list-type="bullet">
<list-item>
<p><bold>Gowalla</bold> [<xref ref-type="bibr" rid="ref-33">33</xref>] is a location-based social network dataset containing user check-ins, providing dense interaction data suitable for collaborative filtering research and adversarial robustness evaluation.</p></list-item>
<list-item>
<p><bold>Yelp2018</bold> [<xref ref-type="bibr" rid="ref-32">32</xref>] contains user-business interactions including ratings and reviews, commonly used for benchmarking recommendation models in e-commerce scenarios.</p></list-item>
</list></p>
<p>To ensure reliable evaluation, we filter out users and items with fewer than 10 interactions. For each remaining user, 80% of their interactions are assigned to the training set, while the remaining 20% are used as the test set. Additionally, 10% of the training interactions are randomly selected to form a validation set for hyperparameter tuning.</p>
<p><xref ref-type="table" rid="table-1">Table 1</xref> presents detailed statistics of the datasets after preprocessing, including the number of users, items, and interactions in each split. This setup guarantees consistent evaluation across all baselines while maintaining sufficient diversity in user interactions.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Dataset statistics</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Dataset</th>
<th>#Users</th>
<th>#Items</th>
<th>#Ratings</th>
<th>Sparsity</th>
</tr>
</thead>
<tbody>
<tr>
<td>Gowalla</td>
<td>29,858</td>
<td>40,981</td>
<td>1,027,370</td>
<td>99.92%</td>
</tr>
<tr>
<td>Yelp2018</td>
<td>31,668</td>
<td>38,048</td>
<td>1,561,406</td>
<td>99.88%</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_1_2">
<label>5.1.2</label>
<title>Baselines for Defense</title>
<p>To benchmark the robustness of our proposed method, we compare it against several representative defense strategies, covering detection-based, adversarial training, and denoising-based approaches.
<list list-type="bullet">
<list-item>
<p>GraphRfi [<xref ref-type="bibr" rid="ref-8">8</xref>]: A detection-based method that integrates Graph Convolutional Networks with Neural Random Forests to identify suspicious users and interactions.</p></list-item>
<list-item>
<p>APR: An adversarial training method that injects small perturbations into model parameters during training to improve resistance against maliciously crafted data.</p></list-item>
<list-item>
<p>SharpCF [<xref ref-type="bibr" rid="ref-11">11</xref>]: Enhances APR by considering sharpness-aware minimization, aiming to stabilize the adversarial training process and improve generalization under attack.</p></list-item>
<list-item>
<p>StDenoise [<xref ref-type="bibr" rid="ref-34">34</xref>]: A denoising-based approach that exploits the structural similarity between user and item embeddings for each interaction, helping to remove noise from the training data.</p></list-item>
<list-item>
<p>VAT [<xref ref-type="bibr" rid="ref-14">14</xref>]: Applies Virtual Adversarial Training to perturb user or item embeddings, strengthening model robustness by smoothing the prediction distribution without modifying labels.</p></list-item>
</list></p>
</sec>
<sec id="s5_1_3">
<label>5.1.3</label>
<title>Attack Methods</title>
<p>To evaluate the robustness of recommendation models under adversarial conditions, we consider both heuristic-based and optimization-based attack strategies in a black-box setting, where the attacker has no knowledge of the target model&#x2019;s internal structure or parameters.</p>
<p>Heuristic Attacks: These attacks generate fake user interactions based on simple rules or common patterns. We include:
<list list-type="bullet">
<list-item>
<p><bold>Random Attack</bold> [<xref ref-type="bibr" rid="ref-35">35</xref>], which randomly selects items to inject into fake user profiles, and Bandwagon Attack [<xref ref-type="bibr" rid="ref-36">36</xref>], which preferentially targets popular items to maximize influence.</p></list-item>
<list-item>
<p><bold>Optimization-Based Attacks:</bold> These attacks use adversarial optimization techniques to maximize the effect on the target model. We include Rev Attack [<xref ref-type="bibr" rid="ref-10">10</xref>], which iteratively updates fake user interactions based on a surrogate model, and DP Attack, which crafts poisoned interactions by solving an optimization problem aimed at degrading model performance.</p></list-item>
</list></p>
<p><bold>Attack Configuration.</bold> We simulate targeted promotion attacks following established practices in [<xref ref-type="bibr" rid="ref-14">14</xref>]. The goal of the attack is to promote a specific target item by injecting fake users that interact with both the target and a set of strategically chosen filler items. The injection rate is fixed at 1% to control attack size.</p>
<p>This combination of heuristic and optimization-based attacks allows us to thoroughly assess model robustness under diverse adversarial scenarios.</p>
</sec>
<sec id="s5_1_4">
<label>5.1.4</label>
<title>Performance Evaluation</title>
<p>To maintain consistency with prevailing research practices, we employ a set of commonly adopted evaluation measures. The key indicators for evaluating recommendation quality are the ranked-list metrics Hit Ratio at <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mi>k</mml:mi></mml:math></inline-formula> (HR@<inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mi>k</mml:mi></mml:math></inline-formula>) and Normalized Discounted Cumulative Gain at <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>k</mml:mi></mml:math></inline-formula> (NDCG@<inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:mi>k</mml:mi></mml:math></inline-formula>), which are well-established in prior works [<xref ref-type="bibr" rid="ref-14">14</xref>]. Furthermore, to assess the effectiveness of adversarial attacks, we introduce tailored metrics&#x2014;T-HR@<inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>k</mml:mi></mml:math></inline-formula> and T-NDCG@<inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mi>k</mml:mi></mml:math></inline-formula> [<xref ref-type="bibr" rid="ref-14">14</xref>]&#x2014;designed specifically to gauge the promotion success of target items within the top-<inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>k</mml:mi></mml:math></inline-formula> recommendation lists:<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mrow><mml:mtext>T-HR</mml:mtext></mml:mrow><mml:mrow><mml:mo>@</mml:mo></mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mrow><mml:mi>&#x1D4AF;</mml:mi></mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mrow><mml:mtext>tar</mml:mtext></mml:mrow><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x1D4AF;</mml:mi></mml:mrow></mml:mrow></mml:munder><mml:mfrac><mml:mrow><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>u</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>r</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:munder><mml:mrow><mml:mi mathvariant="double-struck">I</mml:mi></mml:mrow><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">(</mml:mo></mml:mrow></mml:mstyle><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>r</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>:</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.2em" minsize="1.2em">)</mml:mo></mml:mrow></mml:mstyle></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>r</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo></mml:mrow></mml:mfrac></mml:math></disp-formula>where <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mrow><mml:mi>&#x1D4AF;</mml:mi></mml:mrow></mml:math></inline-formula> denotes the collection of target items, <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:msub><mml:mrow><mml:mi>&#x1D4B0;</mml:mi></mml:mrow><mml:mrow><mml:mtext>tar</mml:mtext></mml:mrow></mml:msub></mml:math></inline-formula> refers to the group of authentic users who have previously interacted with the target item <italic>tar</italic>, <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>:</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> indicates the top-<inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mi>k</mml:mi></mml:math></inline-formula> recommended items for user <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mi>u</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:mrow><mml:mi mathvariant="double-struck">I</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> represents an indicator function that yields 1 when the argument condition holds true. Similarly, T-NDCG@<inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mi>k</mml:mi></mml:math></inline-formula> is adapted as the target-centric analogue of NDCG@<inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mi>k</mml:mi></mml:math></inline-formula>, reflecting a comparable adjustment in evaluation focus.</p>
</sec>
<sec id="s5_1_5">
<label>5.1.5</label>
<title>Implementation Details</title>
<p>We evaluate the proposed Self-Purification Data sanitization (SPD) framework, which targets high-risk users by replacing potentially corrupted interactions with high-confidence predictions. This step ensures that the model primarily learns from purified data, effectively mitigating the impact of poisoned interactions.</p>
<p>Training Epochs: All models are trained for 40 epochs. Learning Rate: The learning rate is set to 0.001 for all experiments. High-Risk User Fraction (<inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:mi>k</mml:mi><mml:mi mathvariant="normal">&#x0025;</mml:mi></mml:math></inline-formula>): The top 1% of users ranked by vulnerability score are treated as high-risk and subject to SPD replacement. Validation Set: 1% of each user&#x2019;s training interactions are reserved for hyperparameter tuning and high-confidence prediction generation. Batch Size and Optimization: Batch size is set to 1024, and the Adam optimizer is used for all model updates.</p>
<p>This configuration allows us to systematically evaluate the effectiveness of SPD in reducing the influence of poisoned interactions while maintaining recommendation accuracy. All other training settings are kept consistent with baseline methods to ensure fair comparison.</p>
</sec>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Robustness against Targeted Item Promotion</title>
<p>This subsection evaluates the robustness of the proposed SPD framework against targeted item promotion attacks. We describe the attack simulation setup and evaluation metrics, then compare the attack success rate (ASR) and recommendation performance of SPD with several state-of-the-art defensive methods. Finally, we analyze the impact of varying attack intensities and target item popularity on the defensive efficacy of SPD.</p>
<sec id="s5_2_1">
<label>5.2.1</label>
<title>Robust under Targeted Attacks</title>
<p>As summarized in <xref ref-type="table" rid="table-2">Table 2</xref>, the proposed SPD framework demonstrates consistent and superior robustness across multiple attack types on both Gowalla and Yelp2018 datasets. Under four distinct attack strategies&#x2014;Random, Bandwagon, DP, and Rev&#x2014;SPD consistently achieves the lowest T-HR@50 and T-NDCG@50 values among all compared baselines, indicating a strong capability to suppress malicious item promotion.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Performance comparison under different attack types</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center" rowspan="2">Dataset</th>
<th align="center" rowspan="2">Model</th>
<th colspan="2">Random attack</th>
<th colspan="2">Bandwagon attack</th>
<th colspan="2">DP attack</th>
<th colspan="2">Rev attack</th>
</tr>
<tr>
<th>T-HR@50(%)</th>
<th>T-NDCG@50(%)</th>
<th>T-HR@50(%)</th>
<th>T-NDCG@50(%)</th>
<th>T-HR@50(%)</th>
<th>T-NDCG@50(%)</th>
<th>T-HR@50(%)</th>
<th>T-NDCG@50(%)</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center" rowspan="15">Gowalla</td>
<td>MF</td>
<td>0.148 &#x00B1; 0.030</td>
<td>0.036 &#x00B1; 0.008</td>
<td>0.120 &#x00B1; 0.027</td>
<td>0.029 &#x00B1; 0.007</td>
<td>0.201 &#x00B1; 0.020</td>
<td>0.051 &#x00B1; 0.005</td>
<td>0.246 &#x00B1; 0.097</td>
<td>0.061 &#x00B1; 0.027</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td>0.200 &#x00B1; 0.049</td>
<td>0.050 &#x00B1; 0.012</td>
<td>0.165 &#x00B1; 0.034</td>
<td>0.038 &#x00B1; 0.008</td>
<td>0.292 &#x00B1; 0.034</td>
<td>0.074 &#x00B1; 0.010</td>
<td>0.355 &#x00B1; 0.126</td>
<td>0.084 &#x00B1; 0.030</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>0.159 &#x00B1; 0.061</td>
<td>0.042 &#x00B1; 0.015</td>
<td>0.154 &#x00B1; 0.038</td>
<td>0.036 &#x00B1; 0.009</td>
<td>0.174 &#x00B1; 0.038</td>
<td>0.043 &#x00B1; 0.009</td>
<td>0.206 &#x00B1; 0.042</td>
<td>0.050 &#x00B1; 0.010</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td>0.201 &#x00B1; 0.091</td>
<td>0.054 &#x00B1; 0.026</td>
<td>0.184 &#x00B1; 0.067</td>
<td>0.047 &#x00B1; 0.015</td>
<td>0.034 &#x00B1; 0.021</td>
<td>0.006 &#x00B1; 0.004</td>
<td>0.261 &#x00B1; 0.063</td>
<td>0.067 &#x00B1; 0.018</td>
</tr>
<tr>
<td>&#x002B;SharpCF</td>
<td>0.204 &#x00B1; 0.037</td>
<td>0.049 &#x00B1; 0.010</td>
<td>0.169 &#x00B1; 0.031</td>
<td>0.041 &#x00B1; 0.008</td>
<td>0.303 &#x00B1; 0.024</td>
<td>0.077 &#x00B1; 0.006</td>
<td>0.350 &#x00B1; 0.111</td>
<td>0.087 &#x00B1; 0.031</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td><underline>0.121 &#x00B1; 0.028</underline></td>
<td><underline>0.031 &#x00B1; 0.009</underline></td>
<td><underline>0.101 &#x00B1; 0.038</underline></td>
<td><underline>0.024 &#x00B1; 0.008</underline></td>
<td><underline>0.028 &#x00B1; 0.007</underline></td>
<td><underline>0.006 &#x00B1; 0.001</underline></td>
<td><underline>0.103 &#x00B1; 0.048</underline></td>
<td><underline>0.024 &#x00B1; 0.011</underline></td>
</tr>
<tr>
<td>&#x002B;PUD-VAT</td>
<td><bold>0.067 &#x00B1;</bold> <bold>0.023</bold></td>
<td><bold>0.018 &#x00B1;</bold> <bold>0.008</bold></td>
<td><bold>0.072 &#x00B1;</bold> <bold>0.022</bold></td>
<td><bold>0.014 &#x00B1;</bold> <bold>0.005</bold></td>
<td><bold>0.006 &#x00B1;</bold> <bold>0.003</bold></td>
<td><bold>0.002 &#x00B1;</bold> <bold>0.001</bold></td>
<td><bold>0.026 &#x00B1;</bold> <bold>0.027</bold></td>
<td><bold>0.005 &#x00B1;</bold> <bold>0.004</bold></td>
</tr>
<tr>
<td>Gain</td>
<td>&#x002B;44.63&#x2191;</td>
<td>&#x002B;41.94&#x2191;</td>
<td>&#x002B;28.71&#x2191;</td>
<td>&#x002B;41.67&#x2191;</td>
<td>&#x002B;78.57&#x2191;</td>
<td>&#x002B;66.67&#x2191;</td>
<td>&#x002B;74.76&#x2191;</td>
<td>&#x002B;79.17&#x2191;</td>
</tr>
<tr>
<td>LightGCN</td>
<td>0.234 &#x00B1; 0.116</td>
<td>0.056 &#x00B1; 0.031</td>
<td>0.639 &#x00B1; 0.090</td>
<td>0.153 &#x00B1; 0.024</td>
<td>0.231 &#x00B1; 0.048</td>
<td>0.048 &#x00B1; 0.010</td>
<td>0.718 &#x00B1; 0.134</td>
<td>0.149 &#x00B1; 0.026</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td>0.118 &#x00B1; 0.068</td>
<td>0.029 &#x00B1; 0.019</td>
<td>0.334 &#x00B1; 0.092</td>
<td>0.079 &#x00B1; 0.020</td>
<td>0.585 &#x00B1; 0.092</td>
<td>0.120 &#x00B1; 0.019</td>
<td>1.304 &#x00B1; 0.184</td>
<td>0.259 &#x00B1; 0.037</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>0.099 &#x00B1; 0.023</td>
<td>0.023 &#x00B1; 0.006</td>
<td>0.710 &#x00B1; 0.250</td>
<td>0.161 &#x00B1; 0.052</td>
<td>0.228 &#x00B1; 0.048</td>
<td>0.046 &#x00B1; 0.010</td>
<td>0.564 &#x00B1; 0.067</td>
<td>0.115 &#x00B1; 0.013</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td>0.090 &#x00B1; 0.053</td>
<td>0.022 &#x00B1; 0.015</td>
<td>0.332 &#x00B1; 0.050</td>
<td>0.079 &#x00B1; 0.012</td>
<td>0.190 &#x00B1; 0.037</td>
<td>0.039 &#x00B1; 0.008</td>
<td>0.655 &#x00B1; 0.141</td>
<td>0.132 &#x00B1; 0.027</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td><underline>0.089 &#x00B1; 0.054</underline></td>
<td><underline>0.021 &#x00B1; 0.014</underline></td>
<td><underline>0.259 &#x00B1; 0.047</underline></td>
<td><underline>0.063 &#x00B1; 0.012</underline></td>
<td><underline>0.141 &#x00B1; 0.034</underline></td>
<td><underline>0.028 &#x00B1; 0.007</underline></td>
<td><underline>0.456 &#x00B1; 0.093</underline></td>
<td><underline>0.094 &#x00B1; 0.018</underline></td>
</tr>
<tr>
<td>&#x002B;PUD-VAT</td>
<td><bold>0.067 &#x00B1; 0.048</bold></td>
<td><bold>0.018 &#x00B1; 0.008</bold></td>
<td><bold>0.092 &#x00B1; 0.034</bold></td>
<td><bold>0.020 &#x00B1; 0.013</bold></td>
<td><bold>0.068 &#x00B1; 0.028</bold></td>
<td><bold>0.013 &#x00B1; 0.005</bold></td>
<td><bold>0.026 &#x00B1; 0.019</bold></td>
<td><bold>0.005 &#x00B1; 0.003</bold></td>
</tr>
<tr>
<td>Gain</td>
<td>&#x002B;24.72&#x2191;</td>
<td>&#x002B;14.29&#x2191;</td>
<td>&#x002B;64.48&#x2191;</td>
<td>&#x002B;68.25&#x2191;</td>
<td>&#x002B;51.77&#x2191;</td>
<td>&#x002B;53.57&#x2191;</td>
<td>&#x002B;94.30&#x2191;</td>
<td>&#x002B;94.68&#x2191;</td>
</tr>
<tr>
<td align="center" rowspan="15">Yelp2018</td>
<td>MF</td>
<td>0.035 &#x00B1; 0.007</td>
<td>0.010 &#x00B1; 0.002</td>
<td>0.073 &#x00B1; 0.032</td>
<td>0.020 &#x00B1; 0.009</td>
<td>0.223 &#x00B1; 0.040</td>
<td>0.049 &#x00B1; 0.009</td>
<td>0.153 &#x00B1; 0.025</td>
<td>0.040 &#x00B1; 0.006</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td>0.015 &#x00B1; 0.038</td>
<td>0.007 &#x00B1; 0.010</td>
<td>0.181 &#x00B1; 0.046</td>
<td>0.043 &#x00B1; 0.011</td>
<td>0.376 &#x00B1; 0.198</td>
<td>0.077 &#x00B1; 0.039</td>
<td>0.331 &#x00B1; 0.145</td>
<td>0.075 &#x00B1; 0.031</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>0.032 &#x00B1; 0.009</td>
<td>0.009 &#x00B1; 0.003</td>
<td>0.058 &#x00B1; 0.014</td>
<td>0.015 &#x00B1; 0.003</td>
<td>0.200 &#x00B1; 0.041</td>
<td>0.043 &#x00B1; 0.010</td>
<td>0.129 &#x00B1; 0.027</td>
<td>0.031 &#x00B1; 0.007</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td>0.012 &#x00B1; 0.007</td>
<td>0.004 &#x00B1; 0.002</td>
<td>0.057 &#x00B1; 0.023</td>
<td>0.013 &#x00B1; 0.011</td>
<td>0.185 &#x00B1; 0.038</td>
<td>0.040 &#x00B1; 0.009</td>
<td>0.098 &#x00B1; 0.048</td>
<td>0.022 &#x00B1; 0.011</td>
</tr>
<tr>
<td>&#x002B;SharpCF</td>
<td>0.034 &#x00B1; 0.007</td>
<td>0.010 &#x00B1; 0.002</td>
<td>0.072 &#x00B1; 0.029</td>
<td>0.019 &#x00B1; 0.008</td>
<td>0.226 &#x00B1; 0.041</td>
<td>0.050 &#x00B1; 0.010</td>
<td>0.152 &#x00B1; 0.025</td>
<td>0.040 &#x00B1; 0.006</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td><underline>0.010 &#x00B1; 0.005</underline></td>
<td><underline>0.003 &#x00B1; 0.002</underline></td>
<td><underline>0.040 &#x00B1; 0.031</underline></td>
<td><underline>0.010 &#x00B1; 0.007</underline></td>
<td><underline>0.142 &#x00B1; 0.038</underline></td>
<td><underline>0.028 &#x00B1; 0.007</underline></td>
<td><underline>0.090 &#x00B1; 0.049</underline></td>
<td><underline>0.020 &#x00B1; 0.010</underline></td>
</tr>
<tr>
<td>&#x002B;PUD-VAT</td>
<td><bold>0.009</bold> <bold>&#x00B1; 0.003</bold></td>
<td><bold>0.002</bold> <bold>&#x00B1; 0.002</bold></td>
<td><bold>0.005</bold> <bold>&#x00B1; 0.004</bold></td>
<td><bold>0.001</bold> <bold>&#x00B1; 0.001</bold></td>
<td><bold>0.003</bold> <bold>&#x00B1; 0.002</bold></td>
<td><bold>0.001</bold> <bold>&#x00B1; 0.001</bold></td>
<td><bold>0.006</bold> <bold>&#x00B1; 0.005</bold></td>
<td><bold>0.001</bold> <bold>&#x00B1; 0.001</bold></td>
</tr>
<tr>
<td>Gain</td>
<td>&#x002B;10.00&#x2191;</td>
<td>&#x002B;33.33&#x2191;</td>
<td>&#x002B;88.89&#x2191;</td>
<td>&#x002B;91.67&#x2191;</td>
<td>&#x002B;97.96&#x2191;</td>
<td>&#x002B;96.88&#x2191;</td>
<td>&#x2191;93.02</td>
<td>&#x2191;95.45&#x2191;</td>
</tr>
<tr>
<td>LightGCN</td>
<td>0.381 &#x00B1; 0.064</td>
<td>0.116 &#x00B1; 0.022</td>
<td>1.286 &#x00B1; 0.351</td>
<td>0.299 &#x00B1; 0.083</td>
<td>0.451 &#x00B1; 0.040</td>
<td>0.098 &#x00B1; 0.008</td>
<td>1.761 &#x00B1; 0.368</td>
<td>0.402 &#x00B1; 0.091</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td><underline>0.058 &#x00B1; 0.017</underline></td>
<td><underline>0.018 &#x00B1; 0.008</underline></td>
<td>1.609 &#x00B1; 0.381</td>
<td>0.346 &#x00B1; 0.091</td>
<td>3.939 &#x00B1; 0.417</td>
<td>0.814 &#x00B1; 0.094</td>
<td>5.965 &#x00B1; 0.375</td>
<td>1.472 &#x00B1; 0.125</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>0.434 &#x00B1; 0.074</td>
<td>0.127 &#x00B1; 0.023</td>
<td>0.958 &#x00B1; 0.199</td>
<td>0.200 &#x00B1; 0.042</td>
<td>0.581 &#x00B1; 0.049</td>
<td>0.119 &#x00B1; 0.011</td>
<td>1.597 &#x00B1; 0.087</td>
<td>0.344 &#x00B1; 0.016</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td>0.291 &#x00B1; 0.050</td>
<td>0.090 &#x00B1; 0.018</td>
<td>1.052 &#x00B1; 0.278</td>
<td>0.242 &#x00B1; 0.065</td>
<td>0.370 &#x00B1; 0.034</td>
<td>0.078 &#x00B1; 0.007</td>
<td>1.139 &#x00B1; 0.179</td>
<td>0.249 &#x00B1; 0.041</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td>0.082 &#x00B1; 0.020</td>
<td>0.024 &#x00B1; 0.006</td>
<td><underline>0.694 &#x00B1; 0.181</underline></td>
<td><underline>0.156 &#x00B1; 0.041</underline></td>
<td><underline>0.365 &#x00B1; 0.037</underline></td>
<td><underline>0.076 &#x00B1; 0.008</underline></td>
<td><underline>0.927 &#x00B1; 0.135</underline></td>
<td><underline>0.196 &#x00B1; 0.029</underline></td>
</tr>
<tr>
<td>&#x002B;PUD-VAT</td>
<td><bold>0.026</bold> <bold>&#x00B1; 0.012</bold></td>
<td><bold>0.008</bold> <bold>&#x00B1; 0.005</bold></td>
<td><bold>0.199</bold> <bold>&#x00B1; 0.113</bold></td>
<td><bold>0.039</bold> <bold>&#x00B1; 0.023</bold></td>
<td><bold>0.121</bold> <bold>&#x00B1; 0.012</bold></td>
<td><bold>0.024</bold> <bold>&#x00B1; 0.009</bold></td>
<td><bold>0.419</bold> <bold>&#x00B1; 0.097</bold></td>
<td><bold>0.081</bold> <bold>&#x00B1; 0.017</bold></td>
</tr>
<tr>
<td>Gain</td>
<td>&#x002B;68.29&#x2191;</td>
<td>&#x002B;66.67&#x2191;</td>
<td>&#x002B;71.32&#x2191;</td>
<td>&#x002B;75.64&#x2191;</td>
<td>&#x002B;66.85&#x2191;</td>
<td>&#x002B;68.42&#x2191;</td>
<td>&#x002B;54.80&#x2191;</td>
<td>&#x002B;58.67&#x2191;</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>For example, on the Gowalla dataset with MF as backbone, SPD reduces T-HR@50 to <bold>0.006</bold> under DP Attack, significantly outperforming VAT (0.028) with a <bold>78.57%</bold> relative improvement. Under Rev Attack, SPD achieves a T-NDCG@50 of <bold>0.005</bold>, representing an <bold>79.17%</bold> gain over VAT.</p>
<p>The framework also generalizes effectively to more complex models. When applied to LightGCN under Rev Attack, SPD in <xref ref-type="table" rid="table-2">Table 2</xref> ) reduces T-HR@50 from 0.456(VAT) to <bold>0.026</bold>, an improvement of <bold>94.30%</bold>. Even on the challenging Yelp2018 dataset, SPD maintains strong performance&#x2014;particularly under DP and Rev attacks&#x2014;where it surpasses all baseline methods by a considerable margin.</p>

<p>These results confirm that the integration of self-purification with vulnerability-aware adversarial training effectively disrupts the propagation of malicious gradients from poisoned interactions, thereby overcoming the &#x201C;protection ceiling&#x201D; of standard adversarial training methods. The consistent gains across model architectures, attack strategies, and datasets underscore the practical viability and robustness of the proposed SPD framework.</p>
<p>At the same time, we&#x2019;ve observed that the performance of some baseline methods (e.g., GraphRfi and StDenoise) is suboptimal in certain scenarios, even worse than unprotected models. This phenomenon stems primarily from differences in the inherent mechanisms of different defense methods. Detection-based methods (such as GraphRfi) rely heavily on prior attack knowledge embedded in their training data. When faced with unknown and complex attack patterns, their detection mechanisms can easily fail, resulting in numerous false positives that harm legitimate user data and degrade performance. In contrast, SPD&#x2019;s dynamic cleansing strategy doesn&#x2019;t rely on specific attack hypotheses. Instead, it identifies and replaces high-confidence untrusted interactions, implementing precise defenses at the source of the data. This adaptive mechanism ensures consistent superiority in the face of diverse attacks.</p>
</sec>
<sec id="s5_2_2">
<label>5.2.2</label>
<title>Performance under Targeted Attacks</title>
<p>In addition, <xref ref-type="table" rid="table-3">Table 3</xref> systematically compares the impact of different defense methods on the performance of the MF recommendation model on the Gowalla and Yelp2018 datasets. The analysis shows that the model optimized using the SPD framework (&#x002B;SPD) significantly improves robustness against poisoning attacks while maintaining recommendation accuracy, as demonstrated by the following characteristics:</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Recommendation performance</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center" rowspan="2">Model (Dataset)</th>
<th colspan="2">Clean (%)</th>
<th colspan="2">Random attack (%)</th>
<th colspan="2">Bandwagon attack (%)</th>
<th colspan="2">DP attack (%)</th>
<th colspan="2">Rev attack (%)</th>
</tr>
<tr>
<th>HR@20</th>
<th>NDCG@20</th>
<th>HR@20</th>
<th>NDCG@20</th>
<th>HR@20</th>
<th>NDCG@20</th>
<th>HR@20</th>
<th>NDCG@20</th>
<th>HR@20</th>
<th>NDCG@20</th>
</tr>
</thead>
<tbody>
<tr>
<td>MF (Gowalla)</td>
<td>11.352 &#x00B1; 0.091</td>
<td>7.158 &#x00B1; 0.035</td>
<td>11.306 &#x00B1; 0.077</td>
<td>7.196 &#x00B1; 0.061</td>
<td>11.238 &#x00B1; 0.077</td>
<td>7.106 &#x00B1; 0.042</td>
<td>10.722 &#x00B1; 0.109</td>
<td>8.170 &#x00B1; 0.076</td>
<td>10.698 &#x00B1; 0.090</td>
<td>8.188 &#x00B1; 0.044</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td>10.484 &#x00B1; 0.096</td>
<td>8.074 &#x00B1; 0.103</td>
<td>10.456 &#x00B1; 0.089</td>
<td>8.074 &#x00B1; 0.067</td>
<td>10.412 &#x00B1; 0.058</td>
<td>8.038 &#x00B1; 0.023</td>
<td>10.532 &#x00B1; 0.130</td>
<td>8.120 &#x00B1; 0.089</td>
<td>10.568 &#x00B1; 0.047</td>
<td>8.186 &#x00B1; 0.038</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>10.434 &#x00B1; 0.065</td>
<td>7.968 &#x00B1; 0.026</td>
<td>10.344 &#x00B1; 0.080</td>
<td>7.886 &#x00B1; 0.057</td>
<td>10.304 &#x00B1; 0.059</td>
<td>7.846 &#x00B1; 0.061</td>
<td>10.400 &#x00B1; 0.115</td>
<td>7.942 &#x00B1; 0.079</td>
<td>10.496 &#x00B1; 0.093</td>
<td>8.010 &#x00B1; 0.069</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td>13.058 &#x00B1; 0.063</td>
<td><underline>10.646 &#x00B1; 0.058</underline></td>
<td>12.934 &#x00B1; 0.044</td>
<td><underline>10.520 &#x00B1; 0.013</underline></td>
<td>12.902 &#x00B1; 0.065</td>
<td><underline>10.500 &#x00B1; 0.030</underline></td>
<td>12.946 &#x00B1; 0.056</td>
<td><underline>10.586 &#x00B1; 0.060</underline></td>
<td>13.128 &#x00B1; 0.052</td>
<td><underline>10.720 &#x00B1; 0.065</underline></td>
</tr>
<tr>
<td>&#x002B;SharpCF</td>
<td><underline>13.203 &#x00B1; 0.074</underline></td>
<td>10.020 &#x00B1; 0.090</td>
<td><underline>13.188 &#x00B1; 0.077</underline></td>
<td>10.028 &#x00B1; 0.069</td>
<td><underline>13.025 &#x00B1; 0.060</underline></td>
<td>9.890 &#x00B1; 0.050</td>
<td><underline>13.270 &#x00B1; 0.138</underline></td>
<td>10.082 &#x00B1; 0.098</td>
<td><underline>13.215 &#x00B1; 0.087</underline></td>
<td>10.095 &#x00B1; 0.044</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td><bold>13.424</bold> <bold>&#x00B1; 0.041</bold></td>
<td><bold>10.864</bold> <bold>&#x00B1; 0.047</bold></td>
<td><bold>13.292</bold> <bold>&#x00B1; 0.016</bold></td>
<td><bold>10.764</bold> <bold>&#x00B1; 0.012</bold></td>
<td><bold>13.286</bold> <bold>&#x00B1; 0.029</bold></td>
<td><bold>10.740</bold> <bold>&#x00B1; 0.018</bold></td>
<td><bold>13.396</bold> <bold>&#x00B1; 0.045</bold></td>
<td><bold>10.860</bold> <bold>&#x00B1; 0.036</bold></td>
<td><bold>13.540</bold> <bold>&#x00B1; 0.087</bold></td>
<td><bold>10.980</bold> <bold>&#x00B1; 0.059</bold></td>
</tr>
<tr>
<td>&#x002B;SPD</td>
<td>12.753 &#x00B1; 0.061</td>
<td>10.107 &#x00B1; 0.042</td>
<td>12.452 &#x00B1; 0.043</td>
<td>9.936 &#x00B1; 0.035</td>
<td>12.292 &#x00B1; 0.057</td>
<td>9.948 &#x00B1; 0.049</td>
<td>12.559 &#x00B1; 0.053</td>
<td>10.290 &#x00B1; 0.057</td>
<td>12.513 &#x00B1; 0.061</td>
<td>10.041 &#x00B1; 0.043</td>
</tr>
<tr>
<td>MF (Yelp2018)</td>
<td>3.762 &#x00B1; 0.034</td>
<td>2.974 &#x00B1; 0.039</td>
<td>3.730 &#x00B1; 0.017</td>
<td>2.934 &#x00B1; 0.010</td>
<td>3.744 &#x00B1; 0.040</td>
<td>2.948 &#x00B1; 0.029</td>
<td>3.866 &#x00B1; 0.038</td>
<td>3.028 &#x00B1; 0.033</td>
<td>3.812 &#x00B1; 0.044</td>
<td>3.028 &#x00B1; 0.041</td>
</tr>
<tr>
<td>&#x002B;StDenoise</td>
<td>3.410 &#x00B1; 0.085</td>
<td>2.612 &#x00B1; 0.092</td>
<td>3.288 &#x00B1; 0.040</td>
<td>2.504 &#x00B1; 0.026</td>
<td>3.322 &#x00B1; 0.057</td>
<td>2.522 &#x00B1; 0.047</td>
<td>3.384 &#x00B1; 0.062</td>
<td>2.578 &#x00B1; 0.063</td>
<td>3.380 &#x00B1; 0.104</td>
<td>2.586 &#x00B1; 0.102</td>
</tr>
<tr>
<td>&#x002B;GraphRfi</td>
<td>3.726 &#x00B1; 0.051</td>
<td>2.942 &#x00B1; 0.034</td>
<td>3.664 &#x00B1; 0.038</td>
<td>2.902 &#x00B1; 0.033</td>
<td>3.640 &#x00B1; 0.054</td>
<td>2.882 &#x00B1; 0.029</td>
<td>3.762 &#x00B1; 0.056</td>
<td>2.932 &#x00B1; 0.049</td>
<td>3.718 &#x00B1; 0.053</td>
<td>2.950 &#x00B1; 0.042</td>
</tr>
<tr>
<td>&#x002B;APR</td>
<td><underline>4.094 &#x00B1; 0.022</underline></td>
<td><underline>3.202 &#x00B1; 0.017</underline></td>
<td><underline>4.036 &#x00B1; 0.019</underline></td>
<td><underline>3.160 &#x00B1; 0.018</underline></td>
<td><underline>4.080 &#x00B1; 0.028</underline></td>
<td><underline>3.194 &#x00B1; 0.026</underline></td>
<td>4.012 &#x00B1; 0.059</td>
<td>3.152 &#x00B1; 0.043</td>
<td><underline>4.061 &#x00B1; 0.029</underline></td>
<td><underline>3.205 &#x00B1; 0.024</underline></td>
</tr>
<tr>
<td>&#x002B;SharpCF</td>
<td>3.933 &#x00B1; 0.038</td>
<td>3.108 &#x00B1; 0.045</td>
<td>3.883 &#x00B1; 0.015</td>
<td>3.058 &#x00B1; 0.016</td>
<td>3.910 &#x00B1; 0.051</td>
<td>3.079 &#x00B1; 0.027</td>
<td><underline>4.034 &#x00B1; 0.034</underline></td>
<td><underline>3.161 &#x00B1; 0.037</underline></td>
<td>3.971 &#x00B1; 0.052</td>
<td>3.156 &#x00B1; 0.047</td>
</tr>
<tr>
<td>&#x002B;VAT</td>
<td><bold>4.112</bold> <bold>&#x00B1; 0.023</bold></td>
<td><bold>3.234</bold> <bold>&#x00B1; 0.022</bold></td>
<td><bold>4.074</bold> <bold>&#x00B1; 0.016</bold></td>
<td><bold>3.206</bold> <bold>&#x00B1; 0.014</bold></td>
<td><bold>4.130</bold> <bold>&#x00B1; 0.035</bold></td>
<td><bold>3.246</bold> <bold>&#x00B1; 0.030</bold></td>
<td><bold>4.096</bold> <bold>&#x00B1; 0.044</bold></td>
<td><bold>3.202</bold> <bold>&#x00B1; 0.041</bold></td>
<td><bold>4.218</bold> <bold>&#x00B1; 0.027</bold></td>
<td><bold>3.326</bold> <bold>&#x00B1; 0.024</bold></td>
</tr>
<tr>
<td>&#x002B;SPD</td>
<td>4.029 &#x00B1; 0.021</td>
<td>3.164 &#x00B1; 0.028</td>
<td>3.927 &#x00B1; 0.036</td>
<td>3.145 &#x00B1; 0.021</td>
<td>3.866 &#x00B1; 0.041</td>
<td>3.074 &#x00B1; 0.029</td>
<td>4.016 &#x00B1; 0.039</td>
<td>3.132 &#x00B1; 0.038</td>
<td>4.064 &#x00B1; 0.024</td>
<td>3.237 &#x00B1; 0.048</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>First, in a clean environment (without attacks), &#x002B;SPD achieves an HR@20 of 12.753% <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.061 and an NDCG@20 of 10.107% <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.042 on the Gowalla dataset; on the Yelp2018 dataset, the respective values are 4.112% <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.023% and 3.234% <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.022. While this performance is slightly lower than methods specifically optimized for accuracy (such as &#x002B;VAT), it significantly outperforms the unoptimized basic MF model (Gowalla: 11.352% <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.091; Yelp2018: 3.762% <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.034). This demonstrates that the SPD framework introduces robustness mechanisms without compromising the model&#x2019;s underlying recommendation performance.</p>
<p>More importantly, &#x002B;SPD demonstrates stable defense against four types of poisoning attacks. Under the DP attack on the Gowalla dataset, &#x002B;SPD achieves a HR@20 of 12.559% <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.053, significantly higher than the 10.722% <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.109 achieved by basic MF. Furthermore, its performance fluctuation range (standard deviation) is generally smaller than that of the other compared methods, demonstrating its superior stability. In complex attack scenarios from Yelp 2018 (such as the Rev attack), &#x002B;SPD achieved an NDCG@20 of 3.205% <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.024, significantly outperforming the 3.028% <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.041 achieved by basic MF, further demonstrating its cross-dataset generalization capabilities.</p>
<p>Compared to specialized defense methods, &#x002B;SPD maintained competitive performance in most attack scenarios. For example, under the Bandwagon attack, &#x002B;SPD achieved a near-state-of-the-art NDCG@20 of 9.948% <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.049 on Gowalla, significantly outperforming the unreinforced MF. This demonstrates that SPD&#x2019;s unique design&#x2014;integrating adversarial training and dynamic purification&#x2014;can effectively improve robustness without excessively sacrificing accuracy. Therefore, the SPD framework achieves an ideal trade-off: significantly improving the model&#x2019;s stability under poisoning attacks while maintaining comparable recommendation accuracy. This property makes it particularly suitable for recommender system applications requiring long-term secure deployment. Future work could explore combining SPD with accuracy optimization methods to further enhance its performance in clean environments.</p>
</sec>
<sec id="s5_2_3">
<label>5.2.3</label>
<title>Model Robustness under Stronger Attacks</title>
<p>To evaluate SPD&#x2019;s defense capabilities under more severe attack scenarios, we systematically compared it with the current state-of-the-art defense method, VAT, by injecting increasing proportions of fake users into the RevAdv poisoning attack (1%, 2%, and 3%). The experiments covered two real-world datasets, Gowalla and Yelp, using MF and LightGCN as the baseline recommendation models, respectively. All methods used Target HR@50 and Target NDCG@50 as robustness evaluation metrics, with lower values indicating stronger defense performance.</p>
<p>The experimental results, shown in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>, show that SPD consistently outperformed VAT in all settings, demonstrating greater robustness. Specifically, as the proportion of fake users increased from 1% to 3%, VAT&#x2019;s defense performance significantly declined, while SPD&#x2019;s performance fluctuations were significantly smaller, demonstrating its excellent adaptability to increasing attack intensity.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Robustness of SPD under a larger proportion of fake users</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-3.tif"/>
</fig>
</sec>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Hyperparameter Analysis</title>
<sec id="s5_3_1">
<label>5.3.1</label>
<title>Hyperparameter Analysis (Dynamically Updating User <italic>Percentages</italic>)</title>
<p>To explore the impact of dynamically updating the user ratio on the SPD framework, we conducted a comprehensive hyperparameter analysis. This ratio determines the proportion of users identified as vulnerable and undergoing the self-cleaning process during each training iteration.</p>
<p>The systematic evaluation in <xref ref-type="fig" rid="fig-4">Fig. 4</xref> reveals several critical trends for designing robust defense strategies. A key finding is the existence of a performance saturation point, most clearly demonstrated by the REV method, which achieves diminishing returns beyond a 1.0% label replacement ratio. This provides a crucial operational guideline, indicating that excessive resource allocation for higher replacement ratios may be inefficient.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Robustness changes against poisoning attacks under four poisoning attacks with different label replacement rates</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-4.tif"/>
</fig>
<p>Furthermore, the divergent behaviors of the methods under scrutiny offer insights into their inherent mechanics. While Bandwagon and DP show gradual improvements, the most dramatic trend is exhibited by the Random method, whose significant performance gains with increasing replacement ratios suggest that its stochastic nature benefits disproportionately from a larger volume of corrected labels.</p>
<p>Collectively, these trends converge to identify an optimal operational window between 1.0% and 2.0% for the label replacement ratio. Within this range, all methods, regardless of their underlying strategy, achieve a favorable balance between high poisoning attack resistance and manageable computational cost, thereby offering a concrete, data-driven basis for optimizing defense parameters.</p>
<p>As illustrated in <xref ref-type="fig" rid="fig-5">Fig. 5</xref>, the hyperparameter sensitivity analysis reveals distinct response patterns of each defense method to the label replacement ratio, affirming the broad applicability of the purification mechanism. A key observation is the performance saturation of the REV method, which peaks at approximately 1.0% on both HR@20 and NDCG@20 metrics. This defines a clear efficiency frontier, beyond which further increases in resource allocation yield minimal gains. In contrast, Bandwagon exhibits a more gradual, near-linear improvement, suggesting a steadier but less efficient utilization of purified labels. Most strikingly, the Random method demonstrates the highest sensitivity to the hyperparameter, achieving the most substantial relative performance gain across the evaluated range. This underscores that even simple defense strategies benefit profoundly from the adaptive framework, particularly when finely tuned. deployments.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>The impact of different update user ratios on model recommendation performance under four poisoning attacks</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-5.tif"/>
</fig>
<p>However, beyond certain thresholds (3.0% for HR@20, as indicated by the pink shaded region), further increasing the replacement ratio leads to performance degradation below the clean baseline (dashed line), suggesting that excessive purification may remove meaningful user interactions and impair generalization. Therefore, we identify 1.0% as the optimal operating range, effectively balancing robustness enhancement and performance preservation. These findings provide practical guidance for parameter configuration in real-world deployments.</p>
</sec>
<sec id="s5_3_2">
<label>5.3.2</label>
<title>Hyperparameter Analysis (Learning Rate)</title>
<p><xref ref-type="fig" rid="fig-6">Figs. 6</xref> and <xref ref-type="fig" rid="fig-7">7</xref> present a comprehensive learning rate sensitivity analysis, evaluating recommendation accuracy (HR@20) and attack robustness (Target-HR@50) under four poisoning attack scenarios. The results reveal several important patterns in the interplay between optimization parameters and adversarial performance.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Learning rate sensitivity analysis: Robust performance under different attack models (Target-HR@50 and Target-NDCG@50) as a function of learning rate</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-6.tif"/>
</fig><fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>Learning rate sensitivity analysis: recommendation performance (HR@20 and NDCG@20) under different attack models as a function of learning rate</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-7.tif"/>
</fig>
<p>As shown in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>, as the learning rate increases (up to 0.01), Target-HR@50&#x2019;s performance improves against Bandwagon and REV attacks, while DP and random attacks maintain relatively stable robustness across the entire test range. HR@50 reaches its peak at a learning rate of 0.01, while 0.001 and 0.1 have the lowest attack success rates for all four attack methods. Therefore, our choice of a learning rate of 0.001 is reasonable.</p>
<p>In contrast, <xref ref-type="fig" rid="fig-7">Fig. 7</xref> shows that the HR@20 metric for all attack types follows a typical inverted U-shaped pattern, reaching optimal performance (approximately 12%) at a learning rate of 0.0005. This peak represents the optimal balance between convergence speed and recommendation accuracy stability. Beyond this peak, increasing the learning rate leads to a gradual decline in performance, suggesting that overly aggressive optimization parameters can undermine the model&#x2019;s ability to learn stable feature representations. The optimal operating point occurs at a learning rate of approximately 0.001, where the model maintains 92% of its peak HR@20 performance while significantly improving robustness to Bandwagon and REV attacks (target-HR@50 improves by 37% and 29%, respectively, compared to the 0.0005 setting). This demonstrates that moderately increasing the learning rate above the accuracy minimum can enhance the model&#x2019;s generalization against adversarial perturbations without significantly sacrificing recommendation quality.</p>
</sec>
<sec id="s5_3_3">
<label>5.3.3</label>
<title>Hyperparameter Analysis (<inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula>)</title>
<p>To determine the optimal value for the confidence threshold <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> (a key hyperparameter in our self-update strategy), we conducted a sensitivity analysis of the SPD framework on the Yelp and Gowalla datasets. Experiments employed the RevAdv poisoning attack method and evaluated the defense effectiveness of the MF model under different values of <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> (using Target HR@50 and Target NDCG@50 as metrics, with lower values indicating better defense effectiveness). As shown in <xref ref-type="fig" rid="fig-8">Fig. 8</xref>, the SPD framework exhibited the best defense performance on both datasets when <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> &#x003D; 25. This phenomenon suggests that, under the current experimental setup, the optimal value of <inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> is limitedly dependent on dataset characteristics. Notably, despite the different statistical characteristics of the two datasets, the defense effectiveness exhibited similar trends as a function of <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula>, reaching its optimal value at the same <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> value. This finding suggests that for the RevAdv attack method and matrix factorization model used in this study, a relatively stable optimal range for <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula> may exist. However, we recommend validating this hyperparameter in real-world applications based on specific scenarios to account for potentially changing attack conditions.</p>
<fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>Hyperparameter analysis (Tag updates <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mi>&#x03C4;</mml:mi></mml:math></inline-formula>)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_73243-fig-8.tif"/>
</fig>
</sec>
</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Ablation Experiments</title>
<p>To systematically evaluate the independent contributions and synergistic mechanisms of each core component of the SPD framework, this study designed rigorous ablation experiments. As shown in <xref ref-type="table" rid="table-4">Table 4</xref>, the experiments compared the robustness of the models under four types of poisoning attacks on the Gowalla dataset: Random, Bandwagon, DP, and Rev (measured by T-HR@50 and T-NDCG@50, with lower values indicating better performance).</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Ablation study on SPD framework: contribution of components to MF model&#x2019;s robustness against attacks</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center" rowspan="2">Model</th>
<th colspan="2">Random attack (%)</th>
<th colspan="2">Bandwagon attack (%)</th>
<th colspan="2">DP attack (%)</th>
<th colspan="2">Rev attack (%)</th>
</tr>
<tr>
<th>T-HR@50</th>
<th>T-NDCG@50</th>
<th>T-HR@50</th>
<th>T-NDCG@50</th>
<th>T-HR@50</th>
<th>T-NDCG@50</th>
<th>T-HR@50</th>
<th>T-NDCG@50</th>
</tr>
</thead>
<tbody>
<tr>
<td>MF</td>
<td>0.148 &#x00B1; 0.030</td>
<td>0.036 &#x00B1; 0.008</td>
<td>0.120 &#x00B1; 0.027</td>
<td>0.029 &#x00B1; 0.007</td>
<td>0.201 &#x00B1; 0.020</td>
<td>0.051 &#x00B1; 0.005</td>
<td>0.246 &#x00B1; 0.097</td>
<td>0.061 &#x00B1; 0.027</td>
</tr>
<tr>
<td>&#x002B;SPD_no_V</td>
<td>1.643 &#x00B1; 0.221</td>
<td>0.414 &#x00B1; 0.178</td>
<td>0.944 &#x00B1; 0.0716</td>
<td>0.214 &#x00B1; 0.0229</td>
<td>0.139 &#x00B1; 0.036</td>
<td>0.037 &#x00B1; 0.008</td>
<td>0.691 &#x00B1; 0.216</td>
<td>0.150 &#x00B1; 0.032</td>
</tr>
<tr>
<td>&#x002B;SPD_no_Update</td>
<td><underline>0.121 &#x00B1; 0.028</underline></td>
<td><underline>0.031 &#x00B1; 0.009</underline></td>
<td><underline>0.101 &#x00B1; 0.038</underline></td>
<td><underline>0.024 &#x00B1; 0.008</underline></td>
<td><underline>0.028 &#x00B1; 0.007</underline></td>
<td><underline>0.006 &#x00B1; 0.001</underline></td>
<td><underline>0.103 &#x00B1; 0.048</underline></td>
<td><underline>0.024 &#x00B1; 0.011</underline></td>
</tr>
<tr>
<td>&#x002B;SPD</td>
<td><bold>0.067</bold> <bold>&#x00B1; 0.023</bold></td>
<td><bold>0.018</bold> <bold>&#x00B1; 0.008</bold></td>
<td><bold>0.072</bold> <bold>&#x00B1; 0.022</bold></td>
<td><bold>0.014</bold> <bold>&#x00B1; 0.005</bold></td>
<td><bold>0.006</bold> <bold>&#x00B1; 0.003</bold></td>
<td><bold>0.002</bold> <bold>&#x00B1; 0.001</bold></td>
<td><bold>0.026</bold> <bold>&#x00B1; 0.027</bold></td>
<td><bold>0.005</bold> <bold>&#x00B1; 0.004</bold></td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The experimental results show that the standard matrix factorization (MF) model, as an unprotected baseline, exhibits high vulnerability to all attacks, particularly under Rev attacks, with a T-HR@50 of 0.246%. The SPD_no_V model, which only introduces dynamic label updates but no adversarial noise, exhibits significant performance degradation, with its T-HR@50 rising to 1.643% under Random attacks, demonstrating that blind label updates lacking robustness guarantees amplify attack noise. The SPD_no_Update model, which only introduces adversarial noise, demonstrates basic defensive effectiveness, with its T-HR@50 dropping to 0.028% under DP attacks, demonstrating that adversarial training effectively improves decision boundary stability.</p>
<p>The complete SPD framework, integrating adversarial noise with a dynamic update mechanism, achieves optimal robustness against all attacks. Its T-HR@50 is further reduced to 0.006% during DP attacks, a 78.6% improvement over the next-best result. This result fully demonstrates the necessity of inter-module collaboration: adversarial noise provides fundamental robustness for the system, while dynamic purification based on vulnerability assessment builds on this foundation to achieve precise defense. Together, these two closed-loop approaches surpass the performance ceiling of traditional solutions.</p>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Conclusion</title>
<p>In our research, we proposed the Self-Purifying Data (SPD) framework, which introduces a novel dynamic label replacement approach that combines vulnerability-aware adversarial training with dynamic label correction. Unlike traditional methods, SPD continuously purifies training data, replacing suspicious user-item interactions with labels predicted by high-confidence models, specifically targeting vulnerable users identified by our vulnerability scoring mechanism. This approach effectively surpasses the protection ceiling of traditional adversarial training while maintaining recommendation performance. Extensive experiments demonstrate that SPD significantly reduces the success rate of various poisoning attacks, including DP and Rev attacks, while maintaining or even improving recommendation accuracy. This framework demonstrates strong generalization across both shallow and deep recommendation architectures, providing a practical solution for protecting real-world system security.</p>
</sec>
</body>
<back>
<ack>
<p>This manuscript does not include content generated by artificial intelligence. AI translation tools were solely employed for proofreading some sentences.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>Not applicable.</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>The authors confirm contribution to the paper as follows: Study conception and design: Haiyan Long, Gang Chen; Methodology: Gang Chen, Hai Chen; Validation: Hai Chen, Haiyan Long; Formal analysis: Gang Chen, Hai Chen; Investigation: Haiyan Long, Hai Chen; Resources: Haiyan Long; Data curation: Gang Chen, Hai Chen; Writing&#x2014;original draft preparation: Haiyan Long, Gang Chen, Hai Chen; Writing&#x2014;review and editing: Haiyan Long, Gang Chen, Hai Chen; Visualization: Gang Chen; Supervision: Haiyan Long; Project administration: Haiyan Long; Funding acquisition: Haiyan Long. All authors reviewed the results and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>Not applicable.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest to report regarding the present study.</p>
</sec>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Mu</surname> <given-names>J</given-names></string-name>, <string-name><surname>Gong</surname> <given-names>NZ</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>B</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Data poisoning attacks to deep learning based recommender systems</article-title>. <comment>arXiv: 2101.02644. 2021</comment>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Tang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Wen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Revisiting adversarially learned injection attacks against recommender systems</article-title>. In: <conf-name>Proceedings of the 14th ACM Conference on Recommender Systems; 2020 Sept 22&#x2013;26</conf-name>; <publisher-loc>Online. New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2020</year>. p. <fpage>318</fpage>&#x2013;<lpage>27</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3383313.3412243</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Yue</surname> <given-names>Z</given-names></string-name>, <string-name><surname>He</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Zeng</surname> <given-names>H</given-names></string-name>, <string-name><surname>McAuley</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Black-box attacks on sequential recommenders via data-free model extraction</article-title>. In: <conf-name>Proceedings of the 15th ACM Conference on Recommender Systems</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2021</year>. p. <fpage>44</fpage>&#x2013;<lpage>54</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3460231.3474275</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Qian</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>C</given-names></string-name>, <string-name><surname>Gu</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>B</given-names></string-name>, <string-name><surname>Ji</surname> <given-names>S</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>W</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>F2AT: feature-focusing adversarial training via disentanglement of natural and perturbed patterns</article-title>. <source>IEEE Trans Knowl Data Eng</source>. <year>2025</year>;<volume>37</volume>(<issue>9</issue>):<fpage>5201</fpage>&#x2013;<lpage>13</lpage>. doi:<pub-id pub-id-type="doi">10.1109/TKDE.2025.3580116</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhao</surname> <given-names>C</given-names></string-name>, <string-name><surname>Qian</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>B</given-names></string-name>, <string-name><surname>Gu</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Ji</surname> <given-names>S</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>W</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Adversarial training via multi-guidance and historical memory enhancement</article-title>. <source>Neurocomputing</source>. <year>2025</year>;<volume>619</volume>:<fpage>129124</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.neucom.2024.129124</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Nguyen</surname> <given-names>TT</given-names></string-name>, <string-name><surname>Quoc Viet Hung</surname> <given-names>N</given-names></string-name>, <string-name><surname>Nguyen</surname> <given-names>TT</given-names></string-name>, <string-name><surname>Huynh</surname> <given-names>TT</given-names></string-name>, <string-name><surname>Nguyen</surname> <given-names>TT</given-names></string-name>, <string-name><surname>Weidlich</surname> <given-names>M</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Manipulating recommender systems: a survey of poisoning attacks and countermeasures</article-title>. <source>ACM Comput Surv</source>. <year>2024</year>;<volume>57</volume>(<issue>1</issue>):<fpage>1</fpage>&#x2013;<lpage>39</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3677328</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Geiger</surname> <given-names>D</given-names></string-name>, <string-name><surname>Schader</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Personalized task recommendation in crowdsourcing information systems&#x2014;current state of the art</article-title>. <source>Decis Support Syst</source>. <year>2014</year>;<volume>65</volume>:<fpage>3</fpage>&#x2013;<lpage>16</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.dss.2014.05.007</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>S</given-names></string-name>, <string-name><surname>Yin</surname> <given-names>H</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>T</given-names></string-name>, <string-name><surname>Hung</surname> <given-names>QVN</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Cui</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Gcn-based user representation learning for unifying robust recommendation and fraudster detection</article-title>. In: <conf-name>Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2020</year>. p. <fpage>689</fpage>&#x2013;<lpage>98</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3397271.340116</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wu</surname> <given-names>J</given-names></string-name>, <string-name><surname>Chang</surname> <given-names>CC</given-names></string-name>, <string-name><surname>Yu</surname> <given-names>T</given-names></string-name>, <string-name><surname>He</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Hou</surname> <given-names>Y</given-names></string-name>, <etal>et al.</etal></person-group> <article-title>Coral: collaborative retrieval-augmented large language models improve long-tail recommendation</article-title>. In: <conf-name>Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2024</year>. p. <fpage>3391</fpage>&#x2013;<lpage>401</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3637528.3671901</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Tang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Du</surname> <given-names>X</given-names></string-name>, <string-name><surname>He</surname> <given-names>X</given-names></string-name>, <string-name><surname>Yuan</surname> <given-names>F</given-names></string-name>, <string-name><surname>Tian</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Chua</surname> <given-names>TS</given-names></string-name></person-group>. <article-title>Adversarial training towards robust multimedia recommender system</article-title>. <source>IEEE Trans Knowl Data Eng</source>. <year>2019</year>;<volume>32</volume>(<issue>5</issue>):<fpage>855</fpage>&#x2013;<lpage>67</lpage>. doi:<pub-id pub-id-type="doi">10.1109/TKDE.2019.2893638</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Chen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Li</surname> <given-names>X</given-names></string-name>, <string-name><surname>Lai</surname> <given-names>V</given-names></string-name>, <string-name><surname>Yeh</surname> <given-names>CCM</given-names></string-name>, <string-name><surname>Fan</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zheng</surname> <given-names>Y</given-names></string-name>, <etal>et al.</etal></person-group> <article-title>Adversarial collaborative filtering for free</article-title>. In: <conf-name>Proceedings of the 17th ACM Conference on Recommender Systems</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2023</year>. p. <fpage>245</fpage>&#x2013;<lpage>55</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3604915.3608771</pub-id>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>He</surname> <given-names>X</given-names></string-name>, <string-name><surname>He</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Du</surname> <given-names>X</given-names></string-name>, <string-name><surname>Chua</surname> <given-names>TS</given-names></string-name></person-group>. <article-title>Adversarial personalized ranking for recommendation</article-title>. In: <conf-name>The 41st International ACM SIGIR Conference on Research &#x0026; Development in Information Retrieval</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2018</year>. p. <fpage>355</fpage>&#x2013;<lpage>64</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3209978.3209981</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>R</given-names></string-name>, <string-name><surname>Wu</surname> <given-names>X</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>W</given-names></string-name></person-group>. <article-title>Adversarial learning to compare: self-attentive prospective customer recommendation in location based social networks</article-title>. In: <conf-name>Proceedings of the 13th International Conference on Web Search and Data Mining</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2020</year>. p. <fpage>349</fpage>&#x2013;<lpage>57</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3336191.3371841</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>K</given-names></string-name>, <string-name><surname>Cao</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Wu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>F</given-names></string-name>, <string-name><surname>Shen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Cheng</surname> <given-names>X</given-names></string-name></person-group>. <article-title>Improving the shortest plank: vulnerability-aware adversarial training for robust recommender system</article-title>. In: <conf-name>Proceedings of the 18th ACM Conference on Recommender Systems</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2024</year>. p. <fpage>680</fpage>&#x2013;<lpage>9</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3640457.3688120</pub-id>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Koren</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Factorization meets the neighborhood: a multifaceted collaborative filtering model</article-title>. In: <conf-name>Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2008</year>. p. <fpage>426</fpage>&#x2013;<lpage>34</lpage>. doi:<pub-id pub-id-type="doi">10.1145/1401890.140194</pub-id>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Hu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Koren</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Volinsky</surname> <given-names>C</given-names></string-name></person-group>. <article-title>Collaborative filtering for implicit feedback datasets</article-title>. In: <conf-name>2008 Eighth IEEE International Conference on Data Mining</conf-name>. <publisher-loc>Piscataway, NJ, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2008</year>. p. <fpage>263</fpage>&#x2013;<lpage>72</lpage>. doi:<pub-id pub-id-type="doi">10.1109/ICDM.2008.22</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Rendle</surname> <given-names>S</given-names></string-name>, <string-name><surname>Freudenthaler</surname> <given-names>C</given-names></string-name>, <string-name><surname>Gantner</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Schmidt-Thieme</surname> <given-names>L</given-names></string-name></person-group>. <article-title>BPR: bayesian personalized ranking from implicit feedback</article-title>. <comment>arXiv: 1205.2618. 2012</comment>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Kang</surname> <given-names>WC</given-names></string-name>, <string-name><surname>McAuley</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Self-attentive sequential recommendation</article-title>. In: <conf-name>2018 IEEE International Conference on Data Mining (ICDM)</conf-name>. <publisher-loc>Piscataway, NJ, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2018</year>. p. <fpage>197</fpage>&#x2013;<lpage>206</lpage>. doi:<pub-id pub-id-type="doi">10.1109/ICDM.2018.00035</pub-id>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>J</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>McAuley</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Time interval aware self-attention for sequential recommendation</article-title>. In: <conf-name>Proceedings of the 13th International Conference on Web Search and Data Mining; 2020 Feb 3&#x2013;7</conf-name>; <publisher-loc>Houston, TX, USA. New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2020</year>. p. <fpage>322</fpage>&#x2013;<lpage>30</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3336191.3371786</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Veli&#x010D;kovi&#x0107;</surname> <given-names>P</given-names></string-name>, <string-name><surname>Cucurull</surname> <given-names>G</given-names></string-name>, <string-name><surname>Casanova</surname> <given-names>A</given-names></string-name>, <string-name><surname>Romero</surname> <given-names>A</given-names></string-name>, <string-name><surname>Lio</surname> <given-names>P</given-names></string-name>, <string-name><surname>Bengio</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Graph attention networks</article-title>. <comment>arXiv: 1710.10903. 2017</comment>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>P</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>H</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>B</given-names></string-name>, <string-name><surname>Lee</surname> <given-names>DL</given-names></string-name></person-group>. <article-title>Billion-scale commodity embedding for e-commerce recommendation in alibaba</article-title>. In: <conf-name>Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery &#x0026; Data Mining</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2018</year>. p. <fpage>839</fpage>&#x2013;<lpage>48</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3219819.3219869</pub-id>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gomez-Uribe</surname> <given-names>CA</given-names></string-name>, <string-name><surname>Hunt</surname> <given-names>N</given-names></string-name></person-group>. <article-title>The netflix recommender system: algorithms, business value, and innovation</article-title>. <source>ACM Trans Manage Inform Syst (TMIS)</source>. <year>2015</year>;<volume>6</volume>(<issue>4</issue>):<fpage>1</fpage>&#x2013;<lpage>19</lpage>. doi:<pub-id pub-id-type="doi">10.1145/2843948</pub-id>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Werner</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Organizing music, organizing gender: algorithmic culture and Spotify recommendations</article-title>. <source>Popular Commun</source>. <year>2020</year>;<volume>18</volume>(<issue>1</issue>):<fpage>78</fpage>&#x2013;<lpage>90</lpage>. doi:<pub-id pub-id-type="doi">10.1080/15405702.2020.1715980</pub-id>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wu</surname> <given-names>ZW</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>CT</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>SH</given-names></string-name></person-group>. <article-title>Poisoning attacks against knowledge graph-based recommendation systems using deep reinforcement learning</article-title>. <source>Neural Comput Appl</source>. <year>2022</year>;<volume>34</volume>(<issue>4</issue>):<fpage>3097</fpage>&#x2013;<lpage>115</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s00521-021-06573-8</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wu</surname> <given-names>C</given-names></string-name>, <string-name><surname>Lian</surname> <given-names>D</given-names></string-name>, <string-name><surname>Ge</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhu</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>E</given-names></string-name></person-group>. <article-title>Triple adversarial learning for influence based poisoning attack in recommender systems</article-title>. In: <conf-name>Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery &#x0026; Data Mining</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2021</year>. p. <fpage>1830</fpage>&#x2013;<lpage>40</lpage>.</mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>R</given-names></string-name>, <string-name><surname>Jin</surname> <given-names>D</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name>, <string-name><surname>He</surname> <given-names>D</given-names></string-name>, <string-name><surname>Feng</surname> <given-names>B</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Single-node trigger backdoor attacks in graph-based recommendation systems</article-title>. <comment>arXiv:2506.08401. 2025</comment>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Hao</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Su</surname> <given-names>H</given-names></string-name>, <string-name><surname>Zhu</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Cluster attack: query-based adversarial attacks on graphs with graph-dependent priors</article-title>. <comment>arXiv:2109.13069. 2021</comment>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Rong</surname> <given-names>D</given-names></string-name>, <string-name><surname>Ye</surname> <given-names>S</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>R</given-names></string-name>, <string-name><surname>Yuen</surname> <given-names>HN</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>J</given-names></string-name>, <string-name><surname>He</surname> <given-names>Q</given-names></string-name></person-group>. <article-title>Fedrecattack: model poisoning attack to federated recommendation</article-title>. In: <conf-name>2022 IEEE 38th International Conference on Data Engineering (ICDE)</conf-name>. <publisher-loc>Piscataway, NJ, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2022</year>. p. <fpage>2643</fpage>&#x2013;<lpage>55</lpage>. doi:<pub-id pub-id-type="doi">10.1109/ICDE53745.2022.00243</pub-id>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Yuan</surname> <given-names>G</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Li</surname> <given-names>S</given-names></string-name>, <string-name><surname>Zhong</surname> <given-names>M</given-names></string-name>, <string-name><surname>Li</surname> <given-names>A</given-names></string-name>, <string-name><surname>Ding</surname> <given-names>K</given-names></string-name>, <etal>et al.</etal></person-group> <article-title>MMLRec: a unified multi-task and multi-scenario learning benchmark for recommendation</article-title>. In: <conf-name>Proceedings of the 33rd ACM International Conference on Information and Knowledge Management</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2024</year>. p. <fpage>3063</fpage>&#x2013;<lpage>72</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3627673.3679691</pub-id>.</mixed-citation></ref>
<ref id="ref-30"><label>[30]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Qian</surname> <given-names>F</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>W</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Cui</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>S</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Understanding the robustness of deep recommendation under adversarial attacks</article-title>. <source>ACM Trans Knowl Discov Data</source>. <year>2025</year>;<volume>19</volume>(<issue>7</issue>):<fpage>1</fpage>&#x2013;<lpage>46</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3744570</pub-id>.</mixed-citation></ref>
<ref id="ref-31"><label>[31]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Ma</surname> <given-names>H</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>F</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Chang</surname> <given-names>L</given-names></string-name></person-group>. <article-title>KGCL: a knowledge-enhanced graph contrastive learning framework for session-based recommendation</article-title>. <source>Eng Appl Artif Intell</source>. <year>2023</year>;<volume>124</volume>:<fpage>106512</fpage>. doi:<pub-id pub-id-type="doi">10.1145/3477495.3532009</pub-id>.</mixed-citation></ref>
<ref id="ref-32"><label>[32]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Qian</surname> <given-names>F</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>W</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>J</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>S</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Building robust deep recommender systems: utilizing a weighted adversarial noise propagation framework with robust fine-tuning modules</article-title>. <source>Knowl Based Syst</source>. <year>2025</year>;<volume>314</volume>:<fpage>113181</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.knosys.2025.113181</pub-id>.</mixed-citation></ref>
<ref id="ref-33"><label>[33]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Liang</surname> <given-names>D</given-names></string-name>, <string-name><surname>Charlin</surname> <given-names>L</given-names></string-name>, <string-name><surname>McInerney</surname> <given-names>J</given-names></string-name>, <string-name><surname>Blei</surname> <given-names>DM</given-names></string-name></person-group>. <article-title>Modeling user exposure in recommendation</article-title>. In: <conf-name>Proceedings of the 25th International Conference on World Wide Web; 2016 Apr 11&#x2013;15</conf-name>; <publisher-loc>Montreal, QC, Canada</publisher-loc>. p. <fpage>951</fpage>&#x2013;<lpage>61</lpage>. doi:<pub-id pub-id-type="doi">10.1145/2872427.2883090</pub-id>.</mixed-citation></ref>
<ref id="ref-34"><label>[34]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Tian</surname> <given-names>C</given-names></string-name>, <string-name><surname>Xie</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>N</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>WX</given-names></string-name></person-group>. <article-title>Learning to denoise unreliable interactions for graph collaborative filtering</article-title>. In: <conf-name>Proceedings of the 45th International ACM SIGIR Conference on Research and Development in Information Retrieval</conf-name>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2022</year>. p. <fpage>122</fpage>&#x2013;<lpage>32</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3477495.3531889</pub-id>.</mixed-citation></ref>
<ref id="ref-35"><label>[35]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Lam</surname> <given-names>SK</given-names></string-name>, <string-name><surname>Riedl</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Shilling recommender systems for fun and profit</article-title>. In: <conf-name>Proceedings of the 13th International Conference on World Wide Web; 2004 May 17&#x2013;20</conf-name>; <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>ACM</publisher-name>; <year>2004</year>. p. <fpage>393</fpage>&#x2013;<lpage>402</lpage>. doi:<pub-id pub-id-type="doi">10.1145/988672.988726</pub-id>.</mixed-citation></ref>
<ref id="ref-36"><label>[36]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kapoor</surname> <given-names>S</given-names></string-name>, <string-name><surname>Kapoor</surname> <given-names>V</given-names></string-name>, <string-name><surname>Kumar</surname> <given-names>R</given-names></string-name></person-group>. <article-title>A review of attacks and its detection attributes on collaborative recommender systems</article-title>. <source>Int J Adv Res Comput Sci</source>. <year>2017</year>;<volume>8</volume>(<issue>7</issue>):<fpage>1188</fpage>&#x2013;<lpage>93</lpage>. doi:<pub-id pub-id-type="doi">10.26483/ijarcs.v8i7.4550</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>