godofecht / godofecht/flow-scikit

[Perf #478] KernelRidge RBF fit: eliminate the ~9.7x training gap

Open
#487 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2
Forks
0
Avg merge
4h 33m
Merged PRs (30d)
9

Description

Parent: #478

Canonical v2 Diabetes is the largest current hole: Flow fit 57.95 ms vs sklearn 5.998 ms. Score parity is verified, so this is a pure implementation/performance problem.

Profile RBF Gram construction, symmetry use, distance evaluation, solver choice, factorization, copies/layout and allocation. Determine whether sklearn is using a materially better LAPACK/BLAS path or whether Flow is performing redundant O(n^2)/O(n^3) work. Compare kernel and solve phases independently.

Acceptance: separate Gram/build/solve profiles; count kernel evaluations and matrix copies; use symmetry where legal; benchmark n=100..10k where feasible; retain verified R2 parity; fit >=0.95x first, target >=1.05x.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the KernelRidge RBF fit path and profile Gram construction and solve phases independently against sklearn. Measure kernel evaluations, matrix copies, symmetry use, factorization, and allocation across n=100..10k where feasible; done means the profiles are separated, R2 parity is retained, and performance reaches at least 0.95x, with 1.05x as the target.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.