Add x-dockge.url labels to all services with web UIs

- Added x-dockge.url=https://service. labels to all services that have Traefik routers
- Enables Dockge to display direct links to service web interfaces
- Covers all stacks: core, infrastructure, media, productivity, monitoring, utilities, etc.
This commit is contained in:
2026-01-16 20:19:14 -05:00
parent 4a7e36723b
commit 15582a36ad
68 changed files with 3953 additions and 76 deletions

View File

@@ -0,0 +1,43 @@
name: Tests
on:
push:
pull_request:
jobs:
tests:
name: PHP ${{ matrix.php }}
runs-on: ubuntu-22.04
strategy:
matrix:
php: ['7.4', '8.0', '8.1', '8.2', '8.3']
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 10
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v2
coverage: none
- name: Setup Problem Matchers
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- name: Install PHP Dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --no-interaction --no-progress
- name: Execute PHPcs
run: vendor/bin/phpcs --standard=psr2 src/
- name: Execute PHPUnit
run: vendor/bin/phpunit

View File

@@ -0,0 +1,93 @@
name: Continuous Integration
on:
- push
- pull_request
jobs:
tests:
strategy:
matrix:
include:
- operating-system: 'ubuntu-latest'
php-version: '7.1'
style-fix: 'none'
- operating-system: 'ubuntu-latest'
php-version: '7.2'
style-fix: 'none'
- operating-system: 'ubuntu-latest'
php-version: '7.3'
style-fix: 'none'
- operating-system: 'ubuntu-latest'
php-version: '7.4'
- operating-system: 'ubuntu-latest'
php-version: '8.0'
- operating-system: 'windows-latest'
php-version: '7.4'
job-description: 'on Windows'
- operating-system: 'macos-latest'
php-version: '7.4'
job-description: 'on macOS'
name: PHP ${{ matrix.php-version }} ${{ matrix.job-description }}
runs-on: ${{ matrix.operating-system }}
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
extensions: parallel
- name: Get Composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-${{ matrix.composer-flags }}
restore-keys: |
composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-
composer-${{ runner.os }}-${{ matrix.php-version }}-
composer-${{ runner.os }}-
composer-
- name: Remove php-cs-fixer if not needed
run: composer remove --dev --no-update amphp/php-cs-fixer-config
if: matrix.style-fix == 'none'
- name: Install dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
retry_wait_seconds: 30
command: |
composer update --optimize-autoloader --no-interaction --no-progress ${{ matrix.composer-flags }}
composer info -D
- name: Run tests
run: vendor/bin/phpunit ${{ matrix.phpunit-flags }}
- name: Run style fixer
run: vendor/bin/php-cs-fixer --diff --dry-run -v fix
if: matrix.style-fix != 'none'
env:
PHP_CS_FIXER_IGNORE_ENV: 1

View File

@@ -0,0 +1,29 @@
kramdown:
input: GFM
toc_levels: 2..3
baseurl: "/parallel"
layouts_dir: ".shared/layout"
includes_dir: ".shared/includes"
exclude: ["Gemfile", "Gemfile.lock", "README.md", "vendor"]
safe: true
repository: amphp/parallel
gems:
- "jekyll-github-metadata"
- "jekyll-relative-links"
defaults:
- scope:
path: ""
type: "pages"
values:
layout: "docs"
shared_asset_path: "/parallel/asset"
navigation:
- processes
- workers
- worker-pool

View File

@@ -0,0 +1,85 @@
name: Continuous Integration
on:
- push
- pull_request
jobs:
tests:
strategy:
matrix:
include:
- operating-system: 'ubuntu-latest'
php-version: '7.4'
- operating-system: 'ubuntu-latest'
php-version: '8.0'
- operating-system: 'ubuntu-latest'
php-version: '8.1'
- operating-system: 'windows-latest'
php-version: '8.1'
job-description: 'on Windows'
- operating-system: 'macos-latest'
php-version: '8.1'
job-description: 'on macOS'
- operating-system: 'ubuntu-latest'
php-version: '8.2'
name: PHP ${{ matrix.php-version }} ${{ matrix.job-description }}
runs-on: ${{ matrix.operating-system }}
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Get Composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-${{ matrix.composer-flags }}
restore-keys: |
composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-
composer-${{ runner.os }}-${{ matrix.php-version }}-
composer-${{ runner.os }}-
composer-
- name: Install dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
retry_wait_seconds: 30
command: |
composer update --optimize-autoloader --no-interaction --no-progress ${{ matrix.composer-flags }}
composer info -D
- name: Run tests
run: vendor/bin/phpunit ${{ matrix.phpunit-flags }}
- name: Run static analysis
run: vendor/bin/psalm.phar
- name: Run style fixer
env:
PHP_CS_FIXER_IGNORE_ENV: 1
run: vendor/bin/php-cs-fixer --diff --dry-run -v fix
if: runner.os != 'Windows'

View File

@@ -0,0 +1,135 @@
name: Continuous Integration
on:
push: null
pull_request:
branches:
- master
jobs:
unit_tests:
strategy:
matrix:
include:
- operating-system: 'ubuntu-latest'
php-version: '7.1'
- operating-system: 'ubuntu-latest'
php-version: '7.2'
- operating-system: 'ubuntu-latest'
php-version: '7.3'
- operating-system: 'ubuntu-latest'
php-version: '7.4'
- operating-system: 'ubuntu-latest'
php-version: '8.0'
composer-flags: '--ignore-platform-req=php'
- operating-system: 'windows-latest'
php-version: '8.0'
composer-flags: '--ignore-platform-req=php'
- operating-system: 'macos-latest'
php-version: '8.0'
composer-flags: '--ignore-platform-req=php'
name: PHP ${{ matrix.php-version }} on ${{ matrix.operating-system }}
runs-on: ${{ matrix.operating-system }}
steps:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Use LF line ends
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout code
uses: actions/checkout@v2
- name: Get Composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-${{ matrix.composer-flags }}
restore-keys: |
composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-
composer-${{ runner.os }}-${{ matrix.php-version }}-
- name: Install dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
retry_wait_seconds: 30
command: |
php_version=$(php -v)
composer update --optimize-autoloader --no-interaction --no-progress ${{ matrix.composer-flags }}
composer info -D
- name: Run unit tests
run: vendor/bin/phpunit --verbose
coding_standards:
strategy:
matrix:
include:
- operating-system: 'ubuntu-latest'
php-version: '8.0'
composer-flags: '--ignore-platform-req=php'
name: Coding standards
runs-on: ${{ matrix.operating-system }}
steps:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Use LF line ends
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout code
uses: actions/checkout@v2
- name: Get Composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-${{ matrix.composer-flags }}
restore-keys: |
composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-
composer-${{ runner.os }}-${{ matrix.php-version }}-
- name: Install dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
retry_wait_seconds: 30
command: |
php_version=$(php -v)
composer update --optimize-autoloader --no-interaction --no-progress ${{ matrix.composer-flags }}
composer info -D
- name: Run style fixer
env:
PHP_CS_FIXER_IGNORE_ENV: 1
run: vendor/bin/php-cs-fixer --diff --dry-run -v fix

View File

@@ -0,0 +1,100 @@
name: Continuous Integration
on:
- push
- pull_request
jobs:
tests:
strategy:
matrix:
include:
- operating-system: 'ubuntu-latest'
php-version: '7.1'
composer-require-checker-version: none
- operating-system: 'ubuntu-latest'
php-version: '7.2'
composer-require-checker-version: 2.1.0
- operating-system: 'ubuntu-latest'
php-version: '7.3'
composer-require-checker-version: 2.1.0
- operating-system: 'ubuntu-latest'
php-version: '7.4'
composer-require-checker-version: 3.3.0
- operating-system: 'ubuntu-latest'
php-version: '8.0'
composer-flags: '--ignore-platform-req=php'
composer-require-checker-version: 3.3.0
- operating-system: 'windows-latest'
php-version: '7.4'
composer-require-checker-version: 3.3.0
job-description: 'on Windows'
- operating-system: 'macos-latest'
php-version: '7.4'
composer-require-checker-version: 3.3.0
job-description: 'on macOS'
name: PHP ${{ matrix.php-version }} ${{ matrix.job-description }}
runs-on: ${{ matrix.operating-system }}
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Get Composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-${{ matrix.composer-flags }}
restore-keys: |
composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}-
composer-${{ runner.os }}-${{ matrix.php-version }}-
composer-${{ runner.os }}-
composer-
- name: Install dependencies
uses: nick-invision/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
retry_wait_seconds: 30
command: |
composer update --optimize-autoloader --no-interaction --no-progress ${{ matrix.composer-flags }}
composer info -D
- name: Run tests
run: vendor/bin/phpunit ${{ matrix.phpunit-flags }}
- name: Run style fixer
run: vendor/bin/php-cs-fixer --diff --dry-run -v fix
env:
PHP_CS_FIXER_IGNORE_ENV: 1
- name: Install composer-require-checker
run: php -r 'file_put_contents("composer-require-checker.phar", file_get_contents("https://github.com/maglnet/ComposerRequireChecker/releases/download/${{ matrix.composer-require-checker-version }}/composer-require-checker.phar"));'
if: runner.os != 'Windows' && matrix.composer-require-checker-version != 'none'
- name: Run composer-require-checker
run: php composer-require-checker.phar check composer.json --config-file $PWD/composer-require-check.json
if: runner.os != 'Windows' && matrix.composer-require-checker-version != 'none'

View File

@@ -0,0 +1,29 @@
kramdown:
input: GFM
toc_levels: 2..3
baseurl: "/sync"
layouts_dir: ".shared/layout"
includes_dir: ".shared/includes"
exclude: ["Gemfile", "Gemfile.lock", "README.md", "vendor"]
safe: true
repository: amphp/sync
gems:
- "jekyll-github-metadata"
- "jekyll-relative-links"
defaults:
- scope:
path: ""
type: "pages"
values:
layout: "docs"
shared_asset_path: "/sync/asset"
navigation:
- mutex
- semaphore
- concurrent-iterator

View File

@@ -0,0 +1 @@
github: [andrewdalpino]

View File

@@ -0,0 +1,39 @@
name: "Code Checks"
on: [push, pull_request]
jobs:
Build:
name: PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [windows-latest, ubuntu-latest, macos-latest]
php-versions: ['7.4', '8.0', '8.1']
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
tools: pecl
extensions: mbstring, fileinfo
ini-values: memory_limit=-1
- name: Validate composer.json
run: composer validate
- name: Install Dependencies
run: composer install
- name: Static Analysis
run: composer analyze
- name: Unit Tests
run: composer test
- name: Coding Style
run: composer check

View File

@@ -0,0 +1,35 @@
name: "Static analysis"
on:
push:
branches:
- "main"
- "master"
pull_request: null
jobs:
static-analysis:
runs-on: "ubuntu-latest"
name: "PHPStan on PHP ${{ matrix.php }}"
strategy:
fail-fast: false
matrix:
php:
- "8.1"
steps:
- name: "Check out repository code"
uses: "actions/checkout@v2"
- name: "Setup PHP"
uses: "shivammathur/setup-php@v2"
with:
php-version: "${{ matrix.php }}"
tools: "composer"
- name: "Install Composer dependencies"
uses: "ramsey/composer-install@v2"
with:
dependency-versions: "highest"
- name: "Perform static analysis"
run: "make phpstan"

View File

@@ -0,0 +1 @@
github: [andrewdalpino]

View File

@@ -0,0 +1,39 @@
name: "Code Checks"
on: [push, pull_request]
jobs:
Build:
name: PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [ubuntu-latest, macos-latest]
php-versions: ['8.0', '8.1', '8.2']
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
tools: composer, pecl
extensions: svm, mbstring, gd, fileinfo
ini-values: memory_limit=-1
- name: Validate composer.json
run: composer validate
- name: Install Dependencies
run: composer install
- name: Static Analysis
run: composer analyze
- name: Unit Tests
run: composer test
- name: Check Coding Style
run: composer check

View File

@@ -0,0 +1,25 @@
name: "CLA Assistant"
on:
issue_comment:
types: [created]
pull_request_target:
types: [opened, closed, synchronize]
jobs:
CLAssistant:
runs-on: ubuntu-latest
steps:
- name: "CLA Assistant"
if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target'
uses: cla-assistant/github-action@v2.1.3-beta
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PERSONAL_ACCESS_TOKEN : ${{ secrets.CLA_BOT_TOKEN }}
with:
remote-organization-name: 'RubixML'
remote-repository-name: 'Signatures'
path-to-document: 'https://github.com/RubixML/Signatures/blob/master/CLA.md'
path-to-signatures: 'cla-v1.json'
branch: 'master'
allowlist: bot*

View File

@@ -0,0 +1,335 @@
site_name: 'Rubix ML'
theme:
name: material
logo: images/app-icon-medium.png
favicon: images/app-icon-small.png
icon:
repo: fontawesome/brands/github
features:
- navigation.tabs
nav:
- Home: https://rubixml.com
- Getting Started:
- Welcome: index.md
- What is Machine Learning?: what-is-machine-learning.md
- Installation: installation.md
- Basic Introduction: basic-introduction.md
- User Guide:
- Representing Your Data: representing-your-data.md
- Extracting Data: extracting-data.md
- Preprocessing: preprocessing.md
- Exploring Data: exploring-data.md
- Choosing an Estimator: choosing-an-estimator.md
- Training: training.md
- Inference: inference.md
- Cross-validation: cross-validation.md
- Hyper-parameter Tuning: hyper-parameter-tuning.md
- Model Ensembles: model-ensembles.md
- Model Persistence: model-persistence.md
- API Reference:
- Fundamental Interfaces:
- Estimator: estimator.md
- Learner: learner.md
- Online: online.md
- Parallel: parallel.md
- Persistable: persistable.md
- Probabilistic: probabilistic.md
- Ranks Features: ranks-features.md
- Scoring: scoring.md
- Verbose: verbose.md
- Extractors:
- API Reference: extractors/api.md
- Column Filter: extractors/column-filter.md
- Column Picker: extractors/column-picker.md
- Concatenator: extractors/concatenator.md
- CSV: extractors/csv.md
- Deduplicator: extractors/deduplicator.md
- NDJSON: extractors/ndjson.md
- SQL Table: extractors/sql-table.md
- Dataset Objects:
- API Reference: datasets/api.md
- Generators:
- API Reference: datasets/generators/api.md
- Agglomerate: datasets/generators/agglomerate.md
- Blob: datasets/generators/blob.md
- Circle: datasets/generators/circle.md
- Half Moon: datasets/generators/half-moon.md
- Hyperplane: datasets/generators/hyperplane.md
- Swiss Roll: datasets/generators/swiss-roll.md
- Labeled: datasets/labeled.md
- Unlabeled: datasets/unlabeled.md
- Classifiers:
- AdaBoost: classifiers/adaboost.md
- Classification Tree: classifiers/classification-tree.md
- Extra Tree Classifier: classifiers/extra-tree-classifier.md
- Gaussian Naive Bayes: classifiers/gaussian-naive-bayes.md
- K-d Neighbors: classifiers/kd-neighbors.md
- K Nearest Neighbors: classifiers/k-nearest-neighbors.md
- Logistic Regression: classifiers/logistic-regression.md
- Logit Boost: classifiers/logit-boost.md
- Multilayer Perceptron: classifiers/multilayer-perceptron.md
- Naive Bayes: classifiers/naive-bayes.md
- One Vs Rest: classifiers/one-vs-rest.md
- Radius Neighbors: classifiers/radius-neighbors.md
- Random Forest: classifiers/random-forest.md
- Softmax Classifier: classifiers/softmax-classifier.md
- SVC: classifiers/svc.md
- Regressors:
- Adaline: regressors/adaline.md
- Extra Tree Regressor: regressors/extra-tree-regressor.md
- Gradient Boost: regressors/gradient-boost.md
- K-d Neighbors Regressor: regressors/kd-neighbors-regressor.md
- KNN Regressor: regressors/knn-regressor.md
- MLP Regressor: regressors/mlp-regressor.md
- Radius Neighbors Regressor: regressors/radius-neighbors-regressor.md
- Regression Tree: regressors/regression-tree.md
- Ridge: regressors/ridge.md
- SVR: regressors/svr.md
- Clusterers:
- Seeders:
- K-MC2: clusterers/seeders/k-mc2.md
- Plus Plus: clusterers/seeders/plus-plus.md
- Preset: clusterers/seeders/preset.md
- Random: clusterers/seeders/random.md
- DBSCAN: clusterers/dbscan.md
- Fuzzy C Means: clusterers/fuzzy-c-means.md
- Gaussian Mixture: clusterers/gaussian-mixture.md
- K Means: clusterers/k-means.md
- Mean Shift: clusterers/mean-shift.md
- Anomaly Detectors:
- Gaussian MLE: anomaly-detectors/gaussian-mle.md
- Isolation Forest: anomaly-detectors/isolation-forest.md
- Loda: anomaly-detectors/loda.md
- Local Outlier Factor: anomaly-detectors/local-outlier-factor.md
- One Class SVM: anomaly-detectors/one-class-svm.md
- Robust Z-Score: anomaly-detectors/robust-z-score.md
- Meta Estimators:
- Bootstrap Aggregator: bootstrap-aggregator.md
- Committee Machine: committee-machine.md
- Grid Search: grid-search.md
- Persistent Model: persistent-model.md
- Pipeline: pipeline.md
- Transformers:
- API Reference: transformers/api.md
- Standardization and Normalization:
- L1 Normalizer: transformers/l1-normalizer.md
- L2 Normalizer: transformers/l2-normalizer.md
- Max Absolute Scaler: transformers/max-absolute-scaler.md
- Min Max Normalizer: transformers/min-max-normalizer.md
- Robust Standardizer: transformers/robust-standardizer.md
- Z Scale Standardizer: transformers/z-scale-standardizer.md
- Dimensionality Reduction:
- Gaussian Random Projector: transformers/gaussian-random-projector.md
- Linear Discriminant Analysis: transformers/linear-discriminant-analysis.md
- Principal Component Analysis: transformers/principal-component-analysis.md
- Sparse Random Projector: transformers/sparse-random-projector.md
- Truncated SVD: transformers/truncated-svd.md
- t-SNE: transformers/t-sne.md
- Feature Conversion:
- Interval Discretizer: transformers/interval-discretizer.md
- One Hot Encoder: transformers/one-hot-encoder.md
- Numeric String Converter: transformers/numeric-string-converter.md
- Boolean Converter: transformers/boolean-converter.md
- Feature Expansion:
- Polynomial Expander: transformers/polynomial-expander.md
- Imputation:
- Hot Deck Imputer: transformers/hot-deck-imputer.md
- KNN Imputer: transformers/knn-imputer.md
- Missing Data Imputer: transformers/missing-data-imputer.md
- Natural Language:
- BM25 Transformer: transformers/bm25-transformer.md
- Regex Filter: transformers/regex-filter.md
- Text Normalizer: transformers/text-normalizer.md
- Multibyte Text Normalizer: transformers/multibyte-text-normalizer.md
- Stop Word Filter: transformers/stop-word-filter.md
- TF-IDF Transformer: transformers/tf-idf-transformer.md
- Token Hashing Vectorizer: transformers/token-hashing-vectorizer.md
- Word Count Vectorizer: transformers/word-count-vectorizer.md
- Images:
- Image Resizer: transformers/image-resizer.md
- Image Rotator: transformers/image-rotator.md
- Image Vectorizer: transformers/image-vectorizer.md
- Other:
- Lambda Function: transformers/lambda-function.md
- Neural Network:
- Hidden Layers:
- Activation: neural-network/hidden-layers/activation.md
- Batch Norm: neural-network/hidden-layers/batch-norm.md
- Dense: neural-network/hidden-layers/dense.md
- Dropout: neural-network/hidden-layers/dropout.md
- Noise: neural-network/hidden-layers/noise.md
- PReLU: neural-network/hidden-layers/prelu.md
- Swish: neural-network/hidden-layers/swish.md
- Activation Functions:
- ELU: neural-network/activation-functions/elu.md
- GELU: neural-network/activation-functions/gelu.md
- Hyperbolic Tangent: neural-network/activation-functions/hyperbolic-tangent.md
- Leaky ReLU: neural-network/activation-functions/leaky-relu.md
- ReLU: neural-network/activation-functions/relu.md
- SELU: neural-network/activation-functions/selu.md
- Sigmoid: neural-network/activation-functions/sigmoid.md
- Softmax: neural-network/activation-functions/softmax.md
- Soft Plus: neural-network/activation-functions/soft-plus.md
- Soft Sign: neural-network/activation-functions/softsign.md
- SiLU: neural-network/activation-functions/silu.md
- Thresholded ReLU: neural-network/activation-functions/thresholded-relu.md
- Cost Functions:
- Cross Entropy: neural-network/cost-functions/cross-entropy.md
- Huber Loss: neural-network/cost-functions/huber-loss.md
- Least Squares: neural-network/cost-functions/least-squares.md
- Relative Entropy: neural-network/cost-functions/relative-entropy.md
- Initializers:
- Constant: neural-network/initializers/constant.md
- He: neural-network/initializers/he.md
- LeCun: neural-network/initializers/lecun.md
- Normal: neural-network/initializers/normal.md
- Uniform: neural-network/initializers/uniform.md
- Xavier 1: neural-network/initializers/xavier-1.md
- Xavier 2: neural-network/initializers/xavier-2.md
- Optimizers:
- AdaGrad: neural-network/optimizers/adagrad.md
- Adam: neural-network/optimizers/adam.md
- AdaMax: neural-network/optimizers/adamax.md
- Cyclical: neural-network/optimizers/cyclical.md
- Momentum: neural-network/optimizers/momentum.md
- RMS Prop: neural-network/optimizers/rms-prop.md
- Step Decay: neural-network/optimizers/step-decay.md
- Stochastic: neural-network/optimizers/stochastic.md
- Graph:
- Trees:
- Ball Tree: graph/trees/ball-tree.md
- K-d Tree: graph/trees/k-d-tree.md
- Vantage Tree: graph/trees/vantage-tree.md
- Kernels:
- Distance:
- Canberra: kernels/distance/canberra.md
- Cosine: kernels/distance/cosine.md
- Diagonal: kernels/distance/diagonal.md
- Euclidean: kernels/distance/euclidean.md
- Gower: kernels/distance/gower.md
- Hamming: kernels/distance/hamming.md
- Jaccard: kernels/distance/jaccard.md
- Manhattan: kernels/distance/manhattan.md
- Minkowski: kernels/distance/minkowski.md
- Safe Euclidean: kernels/distance/safe-euclidean.md
- Sparse Cosine: kernels/distance/sparse-cosine.md
- SVM:
- Linear: kernels/svm/linear.md
- Polynomial: kernels/svm/polynomial.md
- RBF: kernels/svm/rbf.md
- Sigmoidal: kernels/svm/sigmoidal.md
- Cross Validation:
- Metrics:
- API Reference: cross-validation/metrics/api.md
- Accuracy: cross-validation/metrics/accuracy.md
- Brier Score: cross-validation/metrics/brier-score.md
- F Beta: cross-validation/metrics/f-beta.md
- Informedness: cross-validation/metrics/informedness.md
- MCC: cross-validation/metrics/mcc.md
- Mean Absolute Error: cross-validation/metrics/mean-absolute-error.md
- Mean Squared Error: cross-validation/metrics/mean-squared-error.md
- Median Absolute Error: cross-validation/metrics/median-absolute-error.md
- Probabilistic Accuracy: cross-validation/metrics/probabilistic-accuracy.md
- RMSE: cross-validation/metrics/rmse.md
- R Squared: cross-validation/metrics/r-squared.md
- SMAPE: cross-validation/metrics/smape.md
- Completeness: cross-validation/metrics/completeness.md
- Homogeneity: cross-validation/metrics/homogeneity.md
- Rand Index: cross-validation/metrics/rand-index.md
- Top K Accuracy: cross-validation/metrics/top-k-accuracy.md
- V Measure: cross-validation/metrics/v-measure.md
- Reports:
- API Reference: cross-validation/reports/api.md
- Aggregate Report: cross-validation/reports/aggregate-report.md
- Confusion Matrix: cross-validation/reports/confusion-matrix.md
- Contingency Table: cross-validation/reports/contingency-table.md
- Error Analysis: cross-validation/reports/error-analysis.md
- Multiclass Breakdown: cross-validation/reports/multiclass-breakdown.md
- Validators:
- API Reference: cross-validation/api.md
- Hold Out: cross-validation/hold-out.md
- K Fold: cross-validation/k-fold.md
- Leave P Out: cross-validation/leave-p-out.md
- Monte Carlo: cross-validation/monte-carlo.md
- Tokenizers:
- K-Skip-N-Gram: tokenizers/k-skip-n-gram.md
- N-Gram: tokenizers/n-gram.md
- Sentence: tokenizers/sentence.md
- Whitespace: tokenizers/whitespace.md
- Word: tokenizers/word.md
- Word Stemmer: tokenizers/word-stemmer.md
- Persisters:
- API Reference: persisters/api.md
- Filesystem: persisters/filesystem.md
- Serializers:
- API Reference: serializers/api.md
- Gzip Native: serializers/gzip-native.md
- Native: serializers/native.md
- RBX: serializers/rbx.md
- Loggers:
- Screen: loggers/screen.md
- Backends:
- Amp: backends/amp.md
- Serial: backends/serial.md
- Helpers:
- Params: helpers/params.md
- Strategies:
- Constant: strategies/constant.md
- K Most Frequent: strategies/k-most-frequent.md
- Mean: strategies/mean.md
- Percentile: strategies/percentile.md
- Prior: strategies/prior.md
- Wild Guess: strategies/wild-guess.md
- FAQ: faq.md
extra:
version:
provider: mike
analytics:
provider: google
property: UA-136137674-1
social:
- icon: fontawesome/brands/github
link: https://github.com/RubixML
- icon: fontawesome/brands/telegram
link: https://t.me/RubixML
use_directory_urls: false
plugins:
- search
- git-revision-date-localized:
type: date
enable_creation_date: true
markdown_extensions:
- attr_list
- abbr
- admonition
- pymdownx.highlight:
extend_pygments_lang:
- name: php
lang: php
options:
startinline: true
- pymdownx.superfences
- pymdownx.arithmatex:
generic: true
- toc:
permalink: "#"
- footnotes
extra_javascript:
- https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js
- js/custom.js
extra_css:
- css/custom.css
repo_url: https://github.com/RubixML/ML
site_url: https://rubixml.com
site_description: 'A high-level machine learning and deep learning library for the PHP language.'
copyright: '© 2022 The Rubix ML Community'

View File

@@ -0,0 +1 @@
github: [andrewdalpino]

View File

@@ -0,0 +1,93 @@
name: Compile extension
on:
pull_request:
paths:
- ".github/workflows/ci-ext.*"
- "ext/**"
- package.xml
push:
branches:
- "**"
paths:
- ".github/workflows/ci-ext.*"
- "ext/**"
- package.xml
tags-ignore:
- "**"
jobs:
compile:
strategy:
matrix:
image:
- php:7.4-cli
- php:7.4-cli-alpine
- php:8.0-cli
- php:8.0-cli-alpine
- php:8.1-cli
- php:8.1-cli-alpine
- php:8.2-cli
- php:8.2-cli-alpine
name: Image ${{ matrix.image }}
runs-on: ubuntu-latest
container: ${{ matrix.image }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install system dependencies (Alpine)
if: contains(matrix.image, 'alpine')
run: |
apk update
. /etc/os-release
case "$VERSION_ID" in
3.11.* | 3.12.* | 3.13.* | 3.14.* | 3.15.* | 3.16.* | 3.17.*)
apk update && apk add $PHPIZE_DEPS lapack lapack-dev openblas-dev
if [ ! -e /usr/lib/liblapacke.so ]; then
# Fix for Alpine 3.15, 3.16 and 3.17
ln -s /usr/lib/liblapacke.so.3 /usr/lib/liblapacke.so
fi
;;
*)
apk add $PHPIZE_DEPS liblapack lapack-dev openblas-dev
;;
esac
- name: Install system dependencies (Debian)
if: ${{ !contains(matrix.image, 'alpine') }}
run: |
apt-get update -q
apt-get install -qy gfortran liblapack-dev libopenblas-dev liblapacke-dev
- name: Create working directory
run: |
rm -rf /tmp/tensor-package
mkdir /tmp/tensor-package
- name: Create PECL package
run: |
cd /tmp/tensor-package
pecl package "$GITHUB_WORKSPACE/package.xml"
- name: Compile PECL package
run: |
cd /tmp/tensor-package
MAKE="make -j$(nproc)" pecl install tensor-*.tgz
- name: Enable PHP extension
run: docker-php-ext-enable tensor
- name: Check for PHP startup warnings
run: |
php -d display_errors=stderr -d display_startup_errors=1 -d error_reporting=-1 -r ';' 2>/tmp/php-startup-warnings
if [ -s /tmp/php-startup-warnings ]; then
echo 'The PHP extension was successfully installed, but PHP raised these warnings:' >&2
cat /tmp/php-startup-warnings >&2
exit 1
fi
echo "PHP didn't raise any warnings at startup."
- name: Inspect PHP extension
run: php --ri tensor

View File

@@ -0,0 +1,39 @@
name: "Code Checks"
on: [push, pull_request]
jobs:
build:
name: PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [windows-latest, ubuntu-latest, macos-latest]
php-versions: ['7.4', '8.0', '8.1', '8.2']
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
tools: pecl
extensions: fileinfo
ini-values: memory_limit=-1
- name: Validate composer.json
run: composer validate
- name: Install Dependencies
run: composer install
- name: Static Analysis
run: composer analyze
- name: Run Unit Tests
run: composer test
- name: Check Coding Style
run: composer check

View File

@@ -0,0 +1,26 @@
name: "CLA Assistant"
on:
issue_comment:
types: [created]
pull_request_target:
types: [opened, closed, synchronize]
jobs:
CLAssistant:
runs-on: ubuntu-latest
steps:
- name: "CLA Assistant"
if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target'
uses: cla-assistant/github-action@v2.1.3-beta
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PERSONAL_ACCESS_TOKEN : ${{ secrets.CLA_BOT_TOKEN }}
with:
remote-organization-name: 'RubixML'
remote-repository-name: 'Signatures'
path-to-document: 'https://github.com/RubixML/Signatures/blob/master/CLA.md'
path-to-signatures: 'cla-v1.json'
branch: 'master'
allowlist: bot*

View File

@@ -0,0 +1,42 @@
name: tests
on:
pull_request:
push:
branches: [master]
jobs:
tests:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
php: [7.3, 7.4, 8.0, 8.1, 8.2, 8.3]
stability: [prefer-lowest, prefer-stable]
name: PHP ${{ matrix.php }} - ${{ matrix.stability }}
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v2
coverage: none
- name: Install dependencies
uses: nick-fields/retry@v2
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --${{ matrix.stability }} --prefer-dist --no-interaction --no-progress
- name: Copy PHP Unit Settings
run: cp phpunit.xml.dist phpunit.xml
- name: Execute tests
run: vendor/bin/phpunit --verbose

View File

@@ -0,0 +1,15 @@
language: php
php:
- 7.1
- 7.2
- 7.3
cache:
directories:
- "$HOME/.composer/cache/files"
before_install:
- php --info
- composer self-update
- composer install