{"id":"dbf3dd3d-1816-4b07-9d75-acfabe5f2a74","arxiv_id":"2509.08697","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":5.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":5,"one_line_summary":"FAUST replaces the Forward-Forward goodness score with triplet/tuplet similarity losses and achieves near-backpropagation accuracy on MNIST, Fashion-MNIST, and CIFAR-10 with single-pass inference.","lead":"This paper presents FAUST, a version of the Forward-Forward learning algorithm that uses similarity between anchor, positive, and negative examples instead of a goodness score, allowing classification with a single forward pass. On CIFAR-10, it reaches 56.22% accuracy with a simple MLP, close to backpropagation's 57.63%.","discovery_kind":"extension","skeptic_critique":{"model":"deepseek-v4-flash","headline":"CIFAR-10 result rests on unexamined choice of one representative image per class; a different choice could shift accuracy materially.","rationale":"The reader's weakest_assumption identifies representative selection; I agree. The central claim is empirical: FAUST approaches BP on CIFAR-10. The mechanism that produces this accuracy explicitly depends on a small set of fixed reference images. Since no selection criterion, seed, or repeated trials are reported, the single number could reflect a favorable draw rather than a stable property. This is more load-bearing than other issues (e.g., possible discrepancy between Algorithm 1 line 10 passing embeddings vs Section IV-D passing activations, or baseline tuning) because it directly concerns the headline result and is acknowledged as an open choice in the conclusion. A simple resampling experiment would settle it. Therefore I recommend no change to the CONDITIONAL verdict; the paper should add robustness evidence before the claim is accepted.","tokens_in":7474,"tokens_out":6600,"duration_ms":73331,"concrete_test":"On CIFAR-10 with the 4/800 configuration, run FAUST-representative tuplet under 20 independent random choices of one representative per class, fixing all hyperparameters and seeds for data order. Report mean ± std test accuracy and the best/worst. Also run two deterministic choices: representatives closest to the per-class pixel mean and farthest from it. If the spread across choices exceeds ~1.5% or the mean falls below ~55%, the reported 56.22% is not robust to representative selection and the claim of approaching BP needs qualification.","verdict_should_be":"UNCHANGED","load_bearing_attack":"Section IV-C defines FAUST-representative tuplet by extracting one image from each class to serve as both the positive anchor in every training tuplet and the cached prototype for inference (Eq. 5, Algorithm 1). Because the same fixed images appear on both sides of the loss, the optimization goal is conditional on this particular choice: all embeddings of a class are pulled toward one specific image, and a test sample is classified by distance to that same image. The paper never states how R was selected (random seed? first sample? chosen to maximize accuracy?) and reports only a single accuracy (56.22% on CIFAR-10, Table 1). If R is atypical or unlucky, both the learned embedding and the nearest-prototype decision degrade. This is not a minor implementation detail: the representative set is the only class model used at inference, so the headline result is a property of the algorithm-plus-a-particular-R, not of FAUST alone. The absence of variance or sensitivity analysis makes the central claim less secure.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes FAUST, a modification of the Forward-Forward (FF) algorithm that replaces the FF goodness score with similarity-based objectives (triplet margin loss and (N+1)-tuplet loss). Learning is performed greedily layer-wise with local gradients, and inference uses cached class representatives or centroids in the embedding space, requiring a single forward pass per test input. Three variants are presented: FAUST-vanilla triplet, FAUST-vanilla tuplet, and FAUST-representative tuplet. Experiments on MNIST, Fashion-MNIST, and CIFAR-10 with MLP architectures report that FAUST-representative tuplet achieves 98.39% on MNIST, 89.47% on Fashion-MNIST, and 56.22% on CIFAR-10 (4-layer/800-neuron setting), compared with backpropagation values of 98.64%, 90.40%, and 57.63%, respectively. The authors claim this narrows the gap between FF and backpropagation while improving inference efficiency.","tokens_in":7761,"tokens_out":4858,"duration_ms":58521,"significance":"If the reported results are reproducible, the paper makes a useful contribution to the biologically plausible / backpropagation-free learning literature: it provides a concrete algorithm that replaces FF's goodness objective with a metric-learning objective, offers a layer-wise local training scheme, and achieves near-backpropagation accuracy on CIFAR-10 with a simple MLP and single-pass inference. The explicit pseudocode, t-SNE visualization, and convergence analysis are strengths, as is the attempt to reduce the inference cost of FF. However, the significance is moderated by experimental and algorithmic gaps: the representative-selection rule is unspecified, the gradient flow through representatives is ambiguous, one algorithm step contradicts the prose, and the quantitative comparison includes baselines taken from other papers without re-running under identical conditions. These issues must be resolved before the central claim can be accepted.","major_comments":[{"comment":"The representative set R is load-bearing: one image per class is used both as the positive anchor in every training tuplet and as the cached prototype at inference. The manuscript never states how R is selected (random seed, first sample, or chosen to maximize accuracy), nor does it report sensitivity to this choice. Since the same images appear on both sides of the objective, the reported accuracy is conditioned on a particular R; a different choice could materially change the result. Please specify the selection rule, report results over multiple random representative sets and training seeds, and provide a sensitivity analysis.","section":"Section IV-C / Algorithm 1"},{"comment":"It is unclear whether gradients flow through the representative embeddings f^r_i during training. The text says the embeddings are 'cached as fixed reference points for the entire batch' (Section IV-C), which suggests they are detached, but the pseudocode updates W1 and W2 using a loss computed from f_i and f^r_i without specifying a stop-gradient on f^r_i. If representatives are fixed, the positives/negatives never receive gradient and are not adapted to be class-consistent; if they are not fixed, the optimization is different. This ambiguity affects the interpretation of the method and its convergence behavior.","section":"Algorithm 1, lines 3–9"},{"comment":"Section IV-D states that 'the activations prior to the embedding layer are passed onto subsequent layers,' defining g_{i+1} = phi(W1 g_i) as the input to the next layer. But Algorithm 1 line 10 says 'Pass x = f_i, r = f^r_i to the next layer,' i.e., it passes the embedding, not the activation g_i. This is an internal inconsistency in the central training algorithm. Please correct the pseudocode or the prose, and specify which input representation is actually used by subsequent layers.","section":"Algorithm 1 line 10 vs. Section IV-D"},{"comment":"The experimental comparison is not fully controlled. FFCM and Collab FF results are taken from their original papers (as indicated by the dagger), while the other results are presumably re-run or newly run; architecture, hyperparameter, and data-preprocessing differences can easily explain gaps on the order of 1–2%. In addition, only a single accuracy per configuration is reported, with no error bars or seed variation. On CIFAR-10 the gap between FAUST-representative (56.22%) and BP (57.63%) is 1.41 percentage points, which is within typical seed noise for this architecture. Please report mean and standard deviation over multiple seeds and, for external baselines, either re-run them under identical conditions or clearly state the protocol differences.","section":"Table 1 / Section VI-A"}],"minor_comments":[{"comment":"Typographical issues: lines 4 and 6 use '<-=' instead of '<-'. Also, 'FAUST-vanilla tupletand' appears in Section VI-A without a space.","section":"Algorithm 1"},{"comment":"The Fisher discriminant score F is used in the caption and text but never defined. Please give the exact formula used to compute F.","section":"Figure 2"},{"comment":"The y-axis label 'Error' with '×10^2' is confusing; the plotted values look like percentages (e.g., 80–20), so the label/scale should be clarified.","section":"Figure 3"},{"comment":"Hyperparameters are described only as 'fine-tuned' (optimizer, batch size, learning rate). For reproducibility, please report the final hyperparameter values for each dataset and variant, including learning-rate schedule, batch size, embedding size, and margin alpha if used.","section":"Section V"},{"comment":"Reference [8] is incomplete: it lists authors and year but no title or venue. In addition, reference [22] (Chen et al., SimCLR) should include the publication venue.","section":"References"}],"recommendation":"major_revision","confidential_remarks":null},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Quick take: this does something genuinely useful—it replaces FF's goodness score with a (N+1)-tuplet loss over cached class representatives, and that gives single-pass inference and better numbers than prior FF variants on three small benchmarks. The CIFAR-10 result (56.22 vs 57.63 BP) is the eye-catcher and it looks credible as a single run, but the whole thing rests on how the one representative image per class is chosen, and that choice is never described. Not a trivial omission.\n\nWhat's new: the specific combination of tuplet loss, layer-wise FF, and fixed representatives is not in FFCM, SymBa-FF, or Collab FF. The paper correctly identifies FF's inference cost and solves it with a single forward pass plus cached prototypes—a real practical gain. Experiments are honestly reported: they mark baselines whose numbers they took from other papers, and they show convergence curves. They also acknowledge the representative approach is a constrained variant of the full tuplet objective, which is fair.\n\nSoft spots: first, the representative selection rule is unspecified. Section IV-C says 'we extract one image from each class' but no selection criterion. If random, the result is a draw from a distribution; if tuned, that's data-dependent. Either way, one number isn't enough. The stress-test note is right: the representative is both the training anchor and the inference prototype, so a bad choice degrades both. That is load-bearing.\n\nSecond, no error bars or seed variation anywhere. The differences between FAUST-representative and FFCM on Fashion-MNIST are large enough to survive noise, but the gap to BP on CIFAR-10 is 1.4 points, and that gap could easily shift a point or two with a different seed.\n\nThird, two baselines (FFCM, Collab FF) are not re-run under identical conditions. The paper is upfront, so it's a fair limitation, but it means the comparison table mixes apples and oranges.\n\nMinor: the vanilla tuplet loss in Eq. 4 is a soft-margin variant, not exactly the original N-pair loss, but it's stated clearly, so no problem.\n\nOverall, a solid incremental contribution with one required revision: demonstrate robustness to the representative choice, ideally by sampling multiple reps or reporting variance across random selections. I'd send it to a competent referee. It deserves peer-review time. I'd cite it as related work in FF research, but I wouldn't build on it until the representative question is answered. Worth a reading-group discussion on the representative issue alone.","headline":"A serious but incremental FF variant whose headline number hinges on an unspecified choice of one representative image per class; worth refereeing, but the authors must show robustness to that choice.","tokens_in":8198,"tokens_out":2729,"would_cite":true,"duration_ms":29704,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"A similarity-based rewrite of the Forward-Forward algorithm reaches 56.22% on CIFAR-10 with a simple MLP, within 1.4 points of backpropagation, while needing only one forward pass at test time.","keywords":["Forward-Forward algorithm","similarity learning","tuplet loss","biologically plausible learning","local learning","single-pass inference","CIFAR-10","FAUST"],"falsifier":"Train FAUST-representative tuplet on CIFAR-10 several times, each time choosing a different image as the representative for each class, including deliberately atypical images. If test accuracy varies by more than a couple of points across choices, the representative selection, not the similarity objective, determines the reported result.","tokens_in":7446,"feed_emoji":"🧠","tokens_out":4686,"duration_ms":44720,"temperature":0.7,"pith_summary":"The paper claims that the Forward-Forward (FF) learning rule, a backpropagation-free alternative whose goodness-score objective trails backprop in accuracy, can be reshaped as a similarity-learning problem. The proposed algorithm, FAUST, replaces the FF goodness score with (N+1)-tuplet losses over anchor-positive-negative embeddings, so each layer learns to pull same-class embeddings together and push different classes apart. Its representative variant caches one image per class as a fixed reference for training and as a nearest-neighbor prototype for inference, making test-time classification a single forward pass. On MNIST, Fashion-MNIST, and CIFAR-10, FAUST beats prior FF variants and on CIFAR-10 scores 56.22% versus backprop's 57.63%. If the claim holds, bio-plausible local learning can operate at near-backprop accuracy without the memory and locking costs of backpropagation.","feed_headline":"No-backprop training reaches 56.22% on CIFAR-10","feed_subtitle":"A similarity-based Forward-Forward variant runs one forward pass and trails backprop by 1.4 points.","key_machinery":"The load-bearing mechanism is the (N+1)-tuplet loss applied per layer with a cached set of class representatives R: one image per class, fixed across training. Each anchor forms a tuplet with its class representative as positive and all other representatives as negatives; embeddings of representatives are cached for the batch, cutting forward passes to B + C per batch. A trainable linear embedding layer maps each hidden layer's activations to a lower-dimensional space where distances are measured, while raw activations continue to the next layer. Inference sums Euclidean distances from the test embedding to each cached representative over all layers and picks the closest class.","core_discovery":"The central discovery is that the bottleneck in FF is not the local, layer-wise learning scheme itself but the goodness-score objective and its inference procedure. By swapping in a similarity-based tuplet objective and training each layer greedily on embeddings, FAUST learns discriminative representations layer by layer; t-SNE visualizations show class clusters sharpening from a Fisher score of 2.97 at layer 1 to 9.81 at layer 4. The representative-tuplet variant constrains the tuplet optimization to fixed per-class anchors, which simplifies the problem and yields the best accuracy: 98.43% on MNIST, 89.67% on Fashion-MNIST, and 56.22% on CIFAR-10. The paper reads this as evidence that the e","pith_inferences":["If representative choice is the real bottleneck, selecting each class's representative by clustering (e.g., the image closest to the class centroid) could push accuracy further; the paper does not test this.","The cached-representative trick converts tuplet loss into a fixed-prototype metric-learning problem, so the method should transfer to few-shot and open-set settings where prototypes are naturally used.","A direct ablation varying the representative image across random seeds or using deliberately atypical images would show how much of the reported 56.22% rests on representative choice rather than the similarity objective.","Because inference is single-pass and layer-local, FAUST could be combined with online or continual learning updates that add new class representatives without retraining earlier layers; the paper leaves this untested."],"forward_implications":["FAUST achieves single-pass inference for all classes; the optimal form of FF requires C forward passes per test input.","The similarity objective closes most of the FF-to-backprop accuracy gap: within 0.93% on MNIST/Fashion-MNIST and 1.4 points on CIFAR-10.","Because layers are trained locally with no backward pass, FAUST inherits FF's freedom from backward locking and from storing intermediate activations for backprop.","Fixed representatives simplify the tuplet optimization and give the best accuracy among the three FAUST variants, suggesting the constrained subproblem helps rather than hurts.","Deep layers keep improving: the Fisher discriminant score rises from 2.97 to 9.81 across four layers on Fashion-MNIST, showing layer-wise training builds increasingly separable representations."],"supporting_citations":[{"why":"Defines the Forward-Forward algorithm with goodness scores whose objective and inference FAUST replaces.","marker":"[3]"},{"why":"Supplies the triplet loss and anchor-positive-negative formulation that FAUST builds on.","marker":"[6]"},{"why":"Provides the (N+1)-tuplet loss that FAUST adapts as its similarity objective.","marker":"[17]"},{"why":"Closest prior work combining FF with contrastive loss; a baseline FAUST must beat and lies in the same subcategory.","marker":"[13]"},{"why":"Collaborative FF baseline whose reported accuracy FAUST exceeds on all three datasets.","marker":"[12]"},{"why":"Motivates the trainable linear embedding layer that improves learned representations in FAUST.","marker":"[22]"},{"why":"Prototypical networks support the idea of caching per-class representatives for classification.","marker":"[18]"},{"why":"Backpropagation is the benchmark whose accuracy FAUST approaches.","marker":"[1]"}],"fun_headline_variants":["Similarity objective boosts Forward-Forward to near-backprop accuracy","FAUST: single-pass Forward-Forward hits 56.22% on CIFAR-10","New Forward-Forward variant nails 98.43% on MNIST, 56.22% on CIFAR-10","Similarity-based tuplet loss closes the gap to backprop without backward passes","FAUST reshapes Forward-Forward: single forward pass, near-backprop accuracy"],"cache_read_input_tokens":2688,"weakest_assumption_plain":"The method relies on one image per class standing in for the whole class during both training and inference; if that image is atypical, the learned embeddings and final accuracy suffer, and the paper does not measure how sensitive the result is to that choice.","fun_headline_variants_meta":{"raw":{"variants":["Similarity objective boosts Forward-Forward to near-backprop accuracy","FAUST: single-pass Forward-Forward hits 56.22% on CIFAR-10","New Forward-Forward variant nails 98.43% on MNIST, 56.22% on CIFAR-10","Similarity-based tuplet loss closes the gap to backprop without backward passes","FAUST reshapes Forward-Forward: single forward pass, near-backprop accuracy"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000511,"raw_usage":{"total_tokens":2320,"prompt_tokens":742,"completion_tokens":1578,"prompt_tokens_details":{"cached_tokens":256},"prompt_cache_hit_tokens":256,"prompt_cache_miss_tokens":486,"completion_tokens_details":{"reasoning_tokens":1477}},"tokens_in":486,"tokens_out":1578,"duration_ms":10168,"temperature":1.0,"reasoning_tokens":1477,"cache_read_input_tokens":256,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-05T14:16:27.738595+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Train FAUST-representative tuplet on CIFAR-10 several times, each time choosing a different image as the representative for each class, including deliberately atypical images. If test accuracy varies by more than a couple of points across choices, the representative selection, not the similarity objective, determines the reported result.","supporting_citations":[{"cited_title":"Facenet: A unified embed- ding for face recognition and clustering,","cited_arxiv_id":null,"evidence_quote":"Supplies the triplet loss and anchor-positive-negative formulation that FAUST builds on."},{"cited_title":"Improved deep metric learning with multi-class n-pair loss objective,","cited_arxiv_id":null,"evidence_quote":"Provides the (N+1)-tuplet loss that FAUST adapts as its similarity objective."},{"cited_title":"Marginal contrastive loss: A step forward for forward-forward,","cited_arxiv_id":null,"evidence_quote":"Closest prior work combining FF with contrastive loss; a baseline FAUST must beat and lies in the same subcategory."},{"cited_title":"Layer collaboration in the forward-forward algorithm,","cited_arxiv_id":null,"evidence_quote":"Collaborative FF baseline whose reported accuracy FAUST exceeds on all three datasets."},{"cited_title":"A simple framework for contrastive learning of visual representations,","cited_arxiv_id":null,"evidence_quote":"Motivates the trainable linear embedding layer that improves learned representations in FAUST."}],"review_version":1}