DualSpectralCF: Training-Free Sign-Aware Spectral Collaborative Filtering

arXiv:2608.10247 · cs.IR, cs.LG, cs.SI · Submitted 2026-08-10 · Read on arXiv

Guanqun Yang, Tong Qi, Xiaoxue Han

Stevens Institute of Technology · University of Maryland, College Park

cs.IR, cs.LG, cs.SI

Submitted: 2026-08-10

Updated: 2026-08-12

Comments: Accepted at CIKM 2026. Code: https://github.com/guanqun-yang/DualSpectralCF

Code: https://github.com/guanqun-yang/DualSpectralCF

License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/

Importance score: 100/100

The gist: DualSpectralCF: Training-Free Sign-Aware Spectral Collaborative Filtering Abstract Real-world recommendation platforms routinely collect explicit negative feedback such as 1-star reviews, hate-button

Terminology

Summary

DualSpectralCF: Training-Free Sign-Aware Spectral Collaborative Filtering

Abstract

Real-world recommendation platforms routinely collect explicit negative feedback such as 1-star reviews, hate-button clicks, distrust between users, and very-low watch-ratio videos. Learned sign-aware recommenders exploit this signal for clear accuracy gains, but only at the cost of gradient-based training. In parallel, a line of training-free spectral collaborative filtering methods matches or beats learned graph recommenders at a fraction of the cost, yet operates on positive interactions alone. We bridge these two lines with DualSpectralCF, a training-free framework of two components that attach to any spectral backbone of the form r̂u = F (M) ru: a signed input signal ru± that encodes the user’s explicit dislikes, and a signed item-item operator M± that blends like-together and dislike-together similarity. The framework is backbone-agnostic and adds just two scalar hyperparameters. We instantiate DualSpectralCF on ChebyCF, GF-CF, and Turbo-CF, and evaluate on five sign-aware benchmarks: every instance matches or beats its unsigned backbone on all 5 datasets, with Recall@20 lifts up to +32.6% with backbone-specific (gamma, kappa) tuning and +1.9% to +16.0% for DualSpectralCF-Cheby at the fixed default (gamma=−0.5, kappa=0.1), and the family runs 7.7 to 155.3× faster than SIGformer while reaching 70.7% to 90.7% of its accuracy. Sign-awareness helps most for cold-start users, with up to +29.2% Recall@20 on Epinions users with 1 to 5 training items.

Introduction

Collaborative filtering (CF) is a foundational technique in modern recommender systems: it predicts a user’s preference for unseen items by aggregating the past behavior of other users with similar interaction patterns. Over the past decade, CF has moved from classical matrix-factorization-style systems to graph-based formulations that view the user-item interaction matrix as a bipartite graph. Unlike matrix factorization, which captures only single-step user-item associations, the bipartite graph lets evidence travel along multi-hop paths such as u 1 →i 1 →u 2 →i 2, recommending i 2 to u 1 through a user u 2 who shares an item with u 1 even when the two share no other item.

The standard graph-based CF pipeline, however, considers positive interactions only: a user-item edge exists when the user interacted with the item, and is otherwise absent. Many production platforms also collect explicit negative feedback, such as 1-star Amazon reviews, hate-button clicks in KuaiRand, user-to-user distrust in Epinions, and very-low watch-ratio videos in KuaiRec. Unlike an absent edge in the user-item interaction graph, which may simply mean the user has not yet seen the item, this signal reveals what the user actively dislikes. A line of sign-aware recommenders has emerged to use both signs: SiReN and PANE-GNN split the bipartite graph by sign and fuse the halves through learned attention, NFARec models signed feedback sequences with a Transformer Hawkes process, and SIGformer and DFGNN fold signed spectral information into a Transformer and a dual-frequency GNN, respectively. More recent signed models unify the dual encoders into a single encoder (LSGRec) or apply a Gegenbauer-basis spectral convolution to signed bipartite graphs (GegenNet). These methods deliver clear accuracy gains from the additional signal, but each is gradient-based and considerably more expensive than the closed-form spectral methods that our training-free framework, DualSpectralCF, builds on.

A complementary line of work treats each user’s interaction row as a signal on the item-item similarity graph and produces recommendations by passing it through a low-pass filter that suppresses noisy high-frequency components while retaining smooth low-frequency ones. The pipeline is closed-form and training-free, yet it matches or beats learned graph neural network (GNN) recommenders at a fraction of the cost. GF-CF showed that this signal processing view recovers the accuracy of GCN-based CF; later work made it faster or more flexible by replacing the eigendecomposition with polynomial filters (Turbo-CF, PolyCF, and ChebyCF) or by adding a sharpening step that emphasizes top items (BSPM). Closed-form positive-only methods such as EASE and PSGE likewise avoid gradient training, while SpectralCF, JGCF, and GDE vary the polynomial basis or reweight spectral features. However, this spectral family has so far focused on positive interactions and has not been extended to incorporate explicit negative feedback. DualSpectralCF closes this gap.

We build DualSpectralCF from two components. A standard spectral CF method scores items as r̂u = F (M) ru, where ru is the user’s interaction row and F (M) is a fixed filter applied to an item-item operator M. Our first component replaces the binary input ru with a signed input signal ru± that also encodes the user’s explicit dislikes, controlled by a scalar gamma. Our second component replaces M with a signed item-item operator M± that combines two kinds of item-to-item similarity, items that users commonly like together and items that users commonly dislike together, controlled by a scalar kappa. Each component thus changes a different part of the same scoring equation r̂u = F (M) ru (the input ru for one, the operator M for the other), so the two are independent and complementary. Together they attach to any backbone of this form, keeping the framework backbone-agnostic and training-free while adding exactly two hyperparameters beyond those the backbone already uses. We instantiate DualSpectralCF on three heterogeneous backbones to obtain DualSpectralCF-Cheby (on ChebyCF), DualSpectralCF-GF (on GF-CF), and DualSpectralCF-Turbo (on Turbo-CF). The default (gamma=−0.5, kappa=0.1) works for DualSpectralCF-Cheby on 4 of 5 datasets; DualSpectralCF-GF and DualSpectralCF-Turbo benefit from per-dataset kappa.

The contributions are:

• Accuracy. DualSpectralCF matches or beats every unsigned spectral backbone on all 5 datasets and beats LightGCN on 4 of 5, reaching 70.7% to 90.7% of SIGformer’s Recall@20 (Table 1).

• Generality. The two components transfer across different spectral backbones; the default (gamma, kappa)=(−0.5, 0.1) works without modification for DualSpectralCF-Cheby on 4 of 5 datasets, and DualSpectralCF-GF/DualSpectralCF-Turbo need only per-dataset kappa (Table 2).

• Efficiency. DualSpectralCF-GF and DualSpectralCF-Cheby sit on the training-free Pareto frontier, and the family runs 7.7 to 155.3× faster than SIGformer at 16.1% to 58.8% time overhead over the unsigned backbones (Figure 1(d), Table 3).

• Cold-start. Sign-awareness most helps cold-start users, whose sparse positive histories make the negative channel proportionally more informative (§3.5).

Method (DualSpectralCF)

A Common Spectral Backbone Abstraction. Let R ∈ 0, 1 U × I denote the binary user-item interaction matrix and let ru ∈ 0, 1 I be user u’s interaction row. Define the symmetrically normalized interaction matrix R̃ = D−1/2 U R D−1/2 I, the item-item Laplacian L∗ = I − R̃⊤ R̃, and the item-item similarity P̂ = R̃⊤ R̃. Every training-free spectral CF backbone we consider can be written as r̂u = F (M; hp) ru, where M is an item-item operator (either L∗ or P̂), F is a scalar-valued graph filter applied to M, and hp denotes backbone-specific hyperparameters. The three backbones we evaluate differ only in the form of F: F GF (L∗) = P̂ + alpha HI (L∗; eta), F Turbo (P̂) = Σ K k=1 ak P̂◦s k, F Cheby (L∗) = DI −beta HC (L∗; phi) + alphaHI (L∗; eta) DI beta. where ◦s denotes a Hadamard power, HC and HI are Chebyshev and ideal-pass filters with HC (L̃) = Σ K k=0 ck Tk (L̃), and the coefficients ck come from Chebyshev interpolation of a plateau transfer function at the Chebyshev nodes.

Component A: Signed Input Signal. We replace the binary row ru with a signed signal that includes negative feedback: ru± [i] = +1 if (u, i) ∈ E +, −gamma if (u, i) ∈ E −, 0 otherwise, where gamma ∈ R is a single new hyperparameter and E +, E − denote the positive and negative interaction edges. The backbone’s filter F (M) is unchanged; only the input signal is replaced, so component A applies to any backbone of the prediction template above. Why gamma 0 should be optimal, treating negative feedback as evidence against spectrally similar items: a disliked item at position i would carry weight −gamma < 0, which the low-pass filter propagates to nearby items, lowering their scores. Our ablation (§3.3), however, shows the best gamma is in −0.5, −0.25, 0 and never positive across all three backbones and all five datasets. The reason is that an interaction reveals topical attention even when the experience was negative: a user who rated a horror movie 1 star still revealed a taste for horror, so the click signals topical interest while the rating signals a bad experience. With gamma 0, but below the +1 given to likes), so the filter still pushes recommendation mass toward spectrally similar items, just less aggressively.

Component B: Signed Item-Item Operator. The second component replaces the item-item operator M with a signed version that blends positive and negative co-interaction structure. For Laplacian-based backbones (ChebyCF, GF-CF), we define a signed Laplacian L± = I − R̃+⊤ R̃+ + kappa R̃ −⊤ R̃ −, where R̃+ and R̃ − are the normalized positive and negative interaction matrices and kappa ∈ R ≥0 is a second hyperparameter; keeping kappa non-negative adds a positive penalty to item pairs that users frequently dislike together, so the backbone’s low-pass filter downweights them in the predicted scores. For Turbo-CF, which operates on the raw item-item similarity P̂ rather than a Laplacian, the natural analogue is a signed kernel P̂± = R̃+⊤ R̃+ + kappa R̃ −⊤ R̃ −. Why kappa ≈ 0.1 Suffices for Laplacian Backbones: Our joint sweep (§3.3) shows kappa = 0.1 optimal across all five datasets for DualSpectralCF-Cheby; kappa > 0.1 consistently hurts since the negative item-item graph is noisier than the positive one, so the model benefits from only a small perturbation of the positive spectrum, while on DualSpectralCF-GF the best kappa is 0 on every dataset, so its gains come from component A alone (Table 2).

A DualSpectralCF instance composes the two components on a chosen backbone: substitute M± for M and ru± for ru in r̂u = F (M)ru. We sweep a coarse grid, gamma ∈ −0.5, −0.25, 0, 0.25 and kappa ∈ 0, 0.1, 0.5, 1.0, on top of per-dataset retuned backbone hyperparameters; the ranges follow the design of the two components: gamma brackets 0 on both sides to test whether an explicit dislike acts as evidence for or against spectrally similar items, and kappa stays small and non-negative to keep the signed operator well-posed. The pipeline remains training-free: no gradient computation and no learned embeddings, and both components preserve the backbone’s asymptotic cost. The signed input ru± adds at most nnz(ru+) +nnz(ru−) non-zeros and the signed operator M± shares the unsigned operator’s sparsity pattern, requiring no eigendecomposition for the polynomial-filter backbones, so each instance inherits its backbone’s O (K ·nnz(R)) complexity for a degree-K filter, where K is the polynomial order (GF-CF is the K=1 case).

Experiments

Setup. We evaluate on the five sign-aware benchmarks introduced by SIGformer: Amazon-CDs and Amazon-Music, Epinions, KuaiRand, and KuaiRec. The five datasets span 1,411 to 51,267 users and 25,592 to 512,216 positive interactions, with positive-to-negative ratios from 1:0.22 (Amazon-CDs) to 1:5.95 (KuaiRec). Negatives derive from 1-star reviews (Amazon-CDs, Amazon-Music), user-to-user distrust (Epinions), hate-button clicks (KuaiRand), and very-low watch ratios (KuaiRec). We use the full-ranking top-K protocol (each test user is ranked over all items not seen in training, with observed positives and negatives masked from candidates) and report Recall@20. For each (dataset, backbone) pair, we first tune the backbone’s native hyperparameters (e.g., the Chebyshev order for ChebyCF, the similarity exponent and polynomial degree for Turbo-CF, and the alpha/eta weights for GF-CF) against Recall@20 on the unsigned positive-only interaction matrix, matching the original backbone setup, then apply gamma and kappa on top. We compare DualSpectralCF against the unsigned spectral baselines Turbo-CF, GF-CF, BSPM (bug-fixed), and ChebyCF, the learned graph baseline LightGCN, and the learned sign-aware baseline SIGformer.

RQ1: Accuracy. Table 1 summarizes the accuracy comparison. Each DualSpectralCF instance matches or beats its unsigned backbone on all 5 datasets: DualSpectralCF-Cheby lifts ChebyCF by +1.9% (KuaiRec) to +16.0% (Epinions) R@20, DualSpectralCF-Turbo lifts Turbo-CF by +5.3% (Amazon-Music) to +34.0% (KuaiRand), and DualSpectralCF-GF lifts GF-CF by +3.8% (Amazon-Music) to +7.0% (KuaiRand) on 4 datasets with a tie on KuaiRec; DualSpectralCF-GF achieves the best Epinions R@20 (0.0848) among all training-free methods, and DualSpectralCF-Cheby beats LightGCN on 4 of 5 datasets despite being training-free. Takeaway: Every DualSpectralCF instance matches or beats its unsigned backbone on all 5 sign-aware benchmarks, and DualSpectralCF-Cheby beats LightGCN on 4 of 5 without any gradient updates.

RQ2: Generality Across Spectral Backbones. Table 2 reports the Recall@20 lift at the best (gamma, kappa) for each (dataset, backbone) pair; this best setting can differ from cell to cell, and the full 4×4 sweep behind it is omitted for space. Three findings hold across all 15 cells. First, the best gamma is always in −0.5, −0.25, 0 and never positive, supporting the attention interpretation in §2.2 as a backbone-agnostic property. Second, the default (gamma=−0.5, kappa=0.1) suffices for DualSpectralCF-Cheby on 4 of 5 datasets; DualSpectralCF-GF and DualSpectralCF-Turbo benefit from per-dataset kappa but from no other tuning. Third, Turbo-CF benefits the most (+4.5% to +32.6%, median +10.3%) versus ChebyCF (median +4.5%) and GF-CF (median +3.4%): its simpler polynomial filter leaves more headroom for the negative signal to add information. Takeaway: The components transfer: Recall@20 lifts reach +32.6% with backbone-specific tuning and +1.9% to +16.0% for DualSpectralCF-Cheby at the fixed default (gamma =−0.5, kappa=0.1); the best gamma is non-positive in all 15 cells, and the default holds for DualSpectralCF-Cheby on 4 of 5 datasets.

RQ3: Efficiency and Pareto Frontier. Figure 1(d) shows the efficiency-accuracy tradeoff and Table 3 the per-instance cost. Adding sign-awareness is cheap: each DualSpectralCF instance adds only 16.1% to 58.8% wall-clock over its unsigned backbone. The cheapest signed instance, DualSpectralCF-GF (8.5 s on average), dominates Turbo-CF and BSPM on both axes. Against the learned SIGformer, the family runs 7.7 to 155.3× faster while trailing its Recall@20 by only 10.2% to 41.4% per dataset. Takeaway: Sign-awareness costs 16.1% to 58.8% extra wall-clock; DualSpectralCF-GF and DualSpectralCF-Cheby sit on the training-free Pareto frontier, and the family runs 7.7 to 155.3× faster than SIGformer at 70.7% to 90.7% of its R@20.

RQ4: Cold-Start Users. On cold-start users with 1 to 5 training items, DualSpectralCF-Cheby lifts Recall@20 over ChebyCF on every dataset: +29.2% (Epinions), +7.0% (Amazon-Music), +5.8% (Amazon-CDs), +3.5% (KuaiRand), and +2.2% (KuaiRec). Table 4 reports only this most-favorable, cold-start bucket (full per-bucket breakdown omitted for space); across buckets the lift shrinks as positive histories grow and turns substantially negative for the most active users (up to-11.1% on KuaiRec at 100 or more items), motivating a per-user adaptive gamma as future work. Takeaway: Sign-awareness helps most for cold-start users (up to +29.2% R@20 on Epinions) but the lift can turn negative for active users on noisier datasets.

…

Improvements for AI systems

Improvements to AI Systems Based on DualSpectralCF

  1. Add a training-free negative-feedback channel to any spectral recommender.
  • What to do: Modify the input signal and item-item operator of existing closed-form CF backbones (e.g., ChebyCF, GF-CF, Turbo-CF) to encode explicit dislikes via two scalars (γ for input weight, κ for dislike-co-occurrence penalty).

  • Improved capability: The system can exploit 1-star ratings, hate-clicks, distrust edges, or low watch-ratio signals without any gradient training, achieving up to +32.6% Recall@20 over its unsigned backbone while remaining 7.7–155× faster than learned sign-aware models like SIGformer.

  1. Enable cold-start personalization with sparse negative signals.
  • What to do: Use the signed input r u± with γ < 0 to treat a disliked item as weak positive evidence of topical interest (not as pure negative), which is especially informative when a user has only 1–5 positive interactions.

  • Improved capability: The system can boost Recall@20 for cold-start users by up to +29.2% (e.g., on Epinions) compared to positive-only spectral CF, without needing learned embeddings or extra training data.

  1. Provide a plug-and-play, backbone-agnostic sign-awareness module.
  • What to do: Wrap any spectral CF of the form r̂ u = F(M) r u with two independent components: (a) replace r u with r u±, and (b) replace M with M± = M + κ·(negative co-occurrence term). Keep the filter F unchanged.

  • Improved capability: The system can upgrade any existing spectral recommender (Laplacian- or similarity-based) to handle explicit negatives with only two hyperparameters, preserving the backbone’s computational complexity (O(K·nnz(R))) and avoiding eigendecomposition for polynomial filters.

  1. Add a sign-aware operator for item-item similarity that penalizes dislike-together pairs.
  • What to do: For Laplacian backbones, use L± = I − R̃+TR̃+ + κ R̃−TR̃−; for similarity-based backbones, use P̂± = R̃+TR̃+ + κ R̃−TR̃−. Keep κ small (≈0.1) to avoid noise from the sparser negative graph.

  • Improved capability: The system can downweight items that users frequently dislike together, improving ranking quality on datasets with explicit negatives, while remaining robust to noisy negative signals (e.g., soft watch-ratio thresholds).

  1. Support per-user adaptive negative weighting for heterogeneous user behavior.
  • What to do: Replace the global γ with a per-user γ u estimated from the cosine agreement between a user’s positive and negative item sets; attenuate the negative channel for users whose likes and dislikes span different topics.

  • Improved capability: The system can avoid over-penalizing active users (where the lift currently turns negative, e.g., -11.1% on KuaiRec for users with ≥100 items) and maintain accuracy gains across all user activity levels.

  1. Enable sign-aware sharpening via a signed ideal-pass filter.
  • What to do: In backbones with an SVD branch (e.g., ChebyCF’s ideal-pass component), replace the positive-only R̃+ with a signed matrix R̃+ − λ R̃− before computing the sharp-cutoff filter.

  • Improved capability: The system can make the high-frequency suppression itself sign-aware, potentially closing part of the 9–30% accuracy gap to learned Transformers while staying training-free.

  1. Provide a fast, Pareto-optimal alternative to learned sign-aware recommenders.
  • What to do: Deploy DualSpectralCF-GF or DualSpectralCF-Cheby as a drop-in replacement for SIGformer in latency-sensitive production settings, where the trade-off of 70.7–90.7% of SIGformer’s Recall@20 for 7.7–155× speedup is acceptable.

  • Improved capability: The system can serve real-time recommendations with explicit negative feedback at near-zero training cost, making sign-aware CF feasible for large-scale platforms with strict latency budgets.

  1. Enable dataset-adaptive negative-signal quality control.
  • What to do: For datasets with weak or noisy negatives (e.g., KuaiRec’s watch-ratio threshold), anneal γ toward 0 and cap κ at 0.1 based on an estimated negative-signal quality metric (e.g., rater disagreement).

  • Improved capability: The system can automatically avoid performance degradation on datasets where negative labels are unreliable, while still exploiting strong signals (1-star ratings, hate-clicks) elsewhere.

Sources

Related papers