3.0.0-rc1
Pre-release
Pre-release
·
93 commits
to master
since this release
3.0 (#474) * Relax syntax a bit * Add AGENTS.md file * ML-396 migrate Regressors to NumPower * ML-396 stan check commented in git actions * ML-396 added rule to phpcs to remove wornings on new_with_parentheses * ML-396 restored files structure for phpstan * ML-396 phpcs fix for Benchmarks\Regressors * ML-396 phpcs fix for docs\Regressors * ML-396 fix renamed Xavier1 to XavierNormal * ML-396 reverted changes in AdalineBench for RuntimeException * ML-396 renamed XavierUniform into Xavier1Uniform * ML-396 fixed NumPower::truncatedNormal() signature * ML-396 fixed Xavier1Uniform toString value * ML-396 added Xavier2Uniform * ML-396 refactored usage of packSamples with global function array_pack * ML-396 refactored usage of packSamples with global function array_pack * ML-396 refactored usage of packSamples with global function array_pack * ML-396 refactored usage of packSamples with global function array_pack * ML-396 improved RidgeTest with different types of tests * Remove unused depth and maxDepth parameters from array_pack function * ML-396 add Xavier2Normal, rename XavierNormal to Xavier1Normal, and update Xavier docs * ML-396 refactoring array_pack * ML-417 change location for tests cache * ML-417 fix ogisticRegression::featureImportances() to NumPower * ML-417 improved Softmax::activate in more efficient way * ML-417 fix old Tensor API for NDArray * ML-417 improved Softmax::activate in more efficient way * ML-417 fix for MulticlassTest * ML-417 align multiclass targets with network output * ML-417 php cs fix * ML-417 add diff option for php cs fixer * ML-417 align Softmax with Multiclass column layout * ML-417 change docs for Softmax * Add check for NumPower at runtime instead of installtime (#415) * Initial commit * Add min version check * Widen test tolerances * Fix tests * Revert "Fix tests" This reverts commit f492b84702a044da3af09d8595700a14a10e4cf5. * Widen tolerances * Fix AI slop * Remove more AI slop * Fix KDTree Edge pruning + optimize traversal (#422) * Initial commit * Fix test * Add BoxPrunable interface * Optimize Dataset sort() (#431) * Update CHANGELOG * Purity to proper V-measure (#435) * Initial commit * Fix docs * Update CHANGELOG * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix mangled Swish layer (#437) * Fix Activation Function interface * Fix initializers * A little nicer * Fix some tests * Fix more tests * Refactor data providers * Fix more tests * Appease Stan * More appeasement * More appeasement * More appeasement * More appeasement * Update to Amp 2.0 * Better spatial tree testing * Fix MLP Regressor test * Fix tests * Remove tsne window (#436) * Initial commit * Add tests * Remove loss-based window (#443) * Optimize defaults (#441) * Initial commit * Bump window for non-eval early stopping * No hidden default * Optimize tests * More test workers * Remove duplicate tests * Fix epsilon smoothing bugs * Fix Softmax NumPower version (#438) * Disk based snapshots (#444) * Initial commit * A little nicer * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Don't unset snapshot path * Stream params from disk * No need to clone parameters anymore * Clean up snapshot file after training * Make snapshot path transient * Better validation * Add docs * Better testing --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update CHANGELOG * Fix Batch Norm NumPower version (#445) * Break apart cross entropy (#440) * Initial commit * Don't allow BCE on multiclass estimators * Better comments * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix slop --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix Huber Loss NumPower version(#446) * Update CHANGELOG * Update CHANGELOG * Remove Word Stemmer tokenizer * Add numerical stability to SoftPlus * Gaussian nb per class epsilon (#450) * Initial commit * Update CHANGELOG * One hot encoder exclude categories (#454) * Create a 'drop' parameter (#339) * Bump version and fix coding style * Optimize Labeled randomize() (#452) * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Chris Lloyd <chrislloyd403@gmail.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Stop using deprecated contains() * Prevent using wrong distance kernels * Update CHANGELOG * Initial commit * A little nicer * Nicer naming * Appease Stan * Fix test * Fix CI * Fix typo * Fix SVC Save/Load missing class map (#449) * Initial commit * A little nicer * Load model after classes * Test sad path * Prevent torn state on load * Make saving as atomic as possible * Better error handling * More validation * Optimize true-negative counting (#451) * Adaboost defer sample weight renormalize (#457) * Initial commit * Unset variable * Optimize N-gram and K-skip N-gram tokenizers (#459) * Initial commit * Fix degenerate settings * Update CHANGELOG * Modernize unit tests * Appease Stan up to level 6 * Update AGENTS.md * Update CHANGELOG * Update CHANGELOG * Ignore opencode stuff * Add space * Add new interfaces to docs * Clean up a bit * Isolate Swoole tests * Tighten tolerances * Optimize Loda binning (#455) * Initial commit * A little nicer * Swoole workers now configurable (#464) * Add windowed evals to Softmax Classifier, Logistic Regression, Adaline, Adaboost (#462) * Initial commit * A little nicer * Appease Stan * Remove loss change from logs * Add to Adaboost * Update CHANGELOG * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * A little nicer --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix Ridge tests * PCA, LDA, SVD to Numpower (#461) * Initial commit * A little nicer * Remove plan * Add tests * Check for empty dataset * Update the docs * Fix test * A little nicer * Update README * A little nicer * Improve the docs * Update suggestions * Appease Stan * Integers are now Categorical (#463) * Intial commit * Fix benchmark * Fix type-hint * Fix test * Tighten tolerances * Fix tests * Parallel KNN and Isolation Forest (#465) * Intial commit * Update the docs * Parallelize Isolation Forest * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * A little nicer * Fix coding style * A little nicer * Make Backend transient * Fix exception class * Nicer * A little nicer * A little nicer * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Appease Stan --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Remove unused script * Fix test * Tsne numpower (#466) * Intial commit * Tweak benchmark * Fix test * A little nicer * Remove MAE loss function * Make backend() public * A little nicer * Nicer * Optimize Swoole backend task scheduling * Nicer after callback * Better logging * Surface scores and combinations * Warn if workers > physical cpu cores * Autodetect Amp CPUs in test * GMM Cluster Epsilon (#467) * Intial commit * Update CHANGELOG * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Numpower dtypes (#469) * Initial commit * Fix interface * Fix typo * Fix tests * Remove comment slop * Remove more comment slop * Remove even more comment slop * More comment slop * Revert numpower (#470) * Intial commit * Save game * Fix tests * Remove * Clean up a bit * Update CHANGELOG * A little nicer * Add Float Type Converter * Fix typo in CHANGELOG for categorical data type * Fix grammar in CHANGELOG for Adaboost entry * Update CHANGELOG.md * Fix typehinting * Change parameter name * Interval discretizer now outputs ordered categories * A little nicer * Better validation * Can now clear neural network Adaptive optimizer state * Add more tests * Add even more tests * Limit degree of polynomial * Even more tests * Neural network cleanup (#472) * Intial commit * Update CHANGELOG * Overall persistence improvements (#471) * Initial commit * A little nicer * Save game * Detect cycles in object gaph traversal * A little nicer * Use crc32 for payload * Update the docs * Update CHANGELOG * A little nicer * Change file mode to 'wb' for binary write Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add type check for offset in offsetSet method Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add type validation for Set members in offset methods Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Change checksum type from 'crc32' to 'crc32b' Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix serialization section in model persistence documentation Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update RBX V1 reference to RBX V2 in documentation Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update IteratorAggregate implementation for Set class Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add tests * A little nicer * A little nicer * Nicer * Fix test namespaces * Validate schemas * Strict comparison * Nicer * Remove test * Close handle if still open * Recurse into array elements * A little nicer * Break out RBX V2 --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update CHANGELOG * Update CHANGELOG * Update CHANGELOG * Add typehints * Appease Stan * Add missing type hints * Use set object * More set optimizations * Fix adaboost snapshotting * Murmur3 new default Token Hashing Vectorizer hash function * Dataset fold() now returns excess samples in last fold * Fix typehinting * Optimize diagonal distance kernel * Tighter typehinting * Convert depcrecated object storage syntax * Remove exception slop * Remove window * Upgrade guide (#476) * Intial commit * Expand on new features * Update Pipeline initialization syntax in documentation Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update cost function defaults in upgrade documentation Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * One Hot Encoder casts features to floats instead of integers * Revert "One Hot Encoder casts features to floats instead of integers" This reverts commit e8b794bdab5b15e54e84528b2f8580856a889349. * Improve the migration guide * Improve the migration guide * A little nicer * Improve Tuple * Improve the guide * Check if committee fully-trained * Check for empty array * Guard empty dataset * Consistent ITree search route * Guard fold() * Guard number of subsets * Fix Bootstrap Aggregator * Improve the docs * Canonicalize He and Xavier 2 initializers * Remove slop * Fix more slop * Update AGENTS.md * Fix tests * Fix AI slop * Fix Multiclass layer gradient (#480) * Initial commit * Refactor loss calculation to use transposed output Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update expected outputs in MulticlassTest Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix AI slop --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Scheduler Interface (#482) * Optimizer refactor (#483) * Initial commit * Update the docs * A little nicer * Added some tests * Fix typo * A little nicer * Add learning rate to logging * MLP Smart final layer projections (#484) * Initial commit * A little nicer * Neural Network refactor - decouple update step (#485) * Initial commit * Update the docs * A little nicer * Added some tests * Fix typo * A little nicer * Add learning rate to logging * Initial commit * A little nicer * Save game * Revert * Save game * Save game * Nicer * Fix tests * Clean up a bit * Even nicer * Even nicer * Rename accumulate * Clean up a bit * Tick scheduler * Optimize gradient norm calculation in LogisticRegression Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Enhance gradient accumulation step handling Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Optimize gradient norm calculation in SoftmaxClassifier Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Optimize gradient norm calculation in Adaline Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Refactor MLPRegressor constructor parameters Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix documentation for optimizer parameter update Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Cleanup GitHub CoPilot AI slop * Remove more CoPilot AI slop * Fix more AI slop * Fix global L2 norm * Nicer * Nicer docs * Clean up AI slop --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Revert "Neural Network refactor - decouple update step (#485)" (#487) This reverts commit 1771da181037683575bdf88e13d8947a1d036514. * Neural Network refactor - gradient accumulation and clipping (#488) * Initial commit * Update the docs * A little nicer * Added some tests * Fix typo * A little nicer * Add learning rate to logging * Initial commit * A little nicer * Save game * Revert * Save game * Save game * Nicer * Fix tests * Clean up a bit * Even nicer * Even nicer * Rename accumulate * Clean up a bit * Tick scheduler * Optimize gradient norm calculation in LogisticRegression Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Enhance gradient accumulation step handling Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Optimize gradient norm calculation in SoftmaxClassifier Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Optimize gradient norm calculation in Adaline Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Refactor MLPRegressor constructor parameters Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix documentation for optimizer parameter update Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Cleanup GitHub CoPilot AI slop * Remove more CoPilot AI slop * Fix more AI slop * Fix global L2 norm * Nicer * Nicer docs * Clean up AI slop * Remove gradient clipping from linear models * Update CHANGELOG * Add citations * A little nicer * Clean up a bit * A little nicer * Compensate for short batches * Freeze first k layers of pretrained network * Update CHANGELOG * Add tests * Optimize backprop over frozen layers * Expand Network interface * Fix typo * Improve the docs --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update the upgrade guide * Improve the docs * Add tests * Nicer * Improve the docs * Update CHANGELOG * Improve the upgrade guide * A little nicer * Remove duplicate Removed the ability to clear neural network Adaptive optimizer state. --------- Co-authored-by: Samuel Akopyan <samuel.akopyan@thrivedx.com> Co-authored-by: Samuel Akopyan <sakopyan@oktopost.com> Co-authored-by: Samuel Akopyan <apphp.com@gmail.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Chris Lloyd <chrislloyd403@gmail.com>