scikit-learn-intelex icon indicating copy to clipboard operation
scikit-learn-intelex copied to clipboard

PCA perf fix and out of preview

Open md-shafiul-alam opened this issue 8 months ago • 23 comments

The PR aims to improve the performance of oneAPI PCA implementation and refactor the codes to align with sklearnex design principals. Associated oneDAL PR#2601 (should be merged before to ensure the current PR is working properly).

Changes proposed in this pull request:

  • Remove mean center from sklearnex (implemented in oneDAL)
  • Align dispatcher with existing algorithms
  • Refactor code to provide better structure and to remove redundant parts

md-shafiul-alam avatar Nov 07 '23 13:11 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Dec 22 '23 17:12 md-shafiul-alam

/azp run CI

md-shafiul-alam avatar Dec 22 '23 18:12 md-shafiul-alam

Azure Pipelines successfully started running 1 pipeline(s).

azure-pipelines[bot] avatar Dec 22 '23 18:12 azure-pipelines[bot]

/intelci: run

md-shafiul-alam avatar Jan 08 '24 23:01 md-shafiul-alam

/azp run CI

md-shafiul-alam avatar Jan 09 '24 01:01 md-shafiul-alam

Azure Pipelines successfully started running 1 pipeline(s).

azure-pipelines[bot] avatar Jan 09 '24 01:01 azure-pipelines[bot]

/intelci: run

md-shafiul-alam avatar Jan 09 '24 02:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 10 '24 15:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 10 '24 17:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 10 '24 20:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 18 '24 14:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 19 '24 08:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 19 '24 09:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 19 '24 11:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 19 '24 15:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 22 '24 16:01 md-shafiul-alam

Perhaps not within scope of this PR, but still facing issues with spmd pca using n_components with float and generally with predict method.

ethanglaser avatar Jan 24 '24 22:01 ethanglaser

/intelci: run

md-shafiul-alam avatar Jan 30 '24 11:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 31 '24 10:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 31 '24 13:01 md-shafiul-alam

/intelci: run

md-shafiul-alam avatar Jan 31 '24 14:01 md-shafiul-alam

@md-shafiul-alam if there some blocker, can we just leave updated pca in preview and merge it as is? You can probably do required minor fixes as follow up.

samir-nasibli avatar Feb 05 '24 23:02 samir-nasibli

/intelci: run

ethanglaser avatar Feb 07 '24 22:02 ethanglaser

I am not sure if there is anything else to be done to move PCA out of preview other than finalizing this PR

ethanglaser avatar Mar 04 '24 17:03 ethanglaser

I am not sure if there is anything else to be done to move PCA out of preview other than finalizing this PR

Finalizing this PR in case of moving out of the preview taking a long time. I already need this changes on main. Let's leave currently all changes on preview and merge. Afterwards we can do moving out PR

samir-nasibli avatar Mar 05 '24 11:03 samir-nasibli

/intelci: run

md-shafiul-alam avatar Mar 06 '24 07:03 md-shafiul-alam

transform method is already wrapped, and fit_transform calls fit and transform. Do we still need to wrap fit_transform? @samir-nasibli

md-shafiul-alam avatar Mar 06 '24 14:03 md-shafiul-alam

transform method is already wrapped, and fit_transform calls fit and transform. Do we still need to wrap fit_transform? @samir-nasibli

It could probably work, but in this case you will do the same data transfer several times from device to host and back. Better to do it at once.

samir-nasibli avatar Mar 06 '24 16:03 samir-nasibli

/intelci: run

md-shafiul-alam avatar Mar 08 '24 08:03 md-shafiul-alam

/intelci: run

Alexsandruss avatar Mar 12 '24 22:03 Alexsandruss