Math algorithms in ML on torch
Project description
Nueramic MathML
Nueramic-mathml is a library for visualizing and logging the steps of optimization algorithms in machine learning. The project uses torch for calculations and plotly for visualization.
pip install nueramic-mathml
Quick tour 
Optimization
You can minimize the functions and see a detailed description of each step. After minimizing, you have a history with complete logs. Also available multidimensional optimisation.
def f(x): return x ** 3 - x ** 2 - x # Minimum at x = 1
bounds = (0, 3)
one_optimize.golden_section_search(f, bounds, epsilon=0.01, verbose=True)[0]
Iteration: 0 | point = 1.500 | f(point) = -0.375
Iteration: 1 | point = 0.927 | f(point) = -0.990
Iteration: 2 | point = 1.281 | f(point) = -0.820
Iteration: 3 | point = 1.062 | f(point) = -0.992
Iteration: 4 | point = 0.927 | f(point) = -0.990
Iteration: 5 | point = 1.011 | f(point) = -1.000
Iteration: 6 | point = 0.959 | f(point) = -0.997
Iteration: 7 | point = 0.991 | f(point) = -1.000
Iteration: 8 | point = 1.011 | f(point) = -1.000
Iteration: 9 | point = 0.998 | f(point) = -1.000
Iteration: 10 | point = 1.006 | f(point) = -1.000
Searching finished. Successfully. code 0
1.0059846881033916
Models
You can use our models for classification and regression
from nueramic_mathml.ml import LogisticRegressionRBF
from sklearn.datasets import make_moons
x, y = make_moons(10_000, noise=.1, random_state=84)
x, y = torch.tensor(x), torch.tensor(y)
logistic_model_rbf = LogisticRegressionRBF(x[:1000]).fit(x, y, show_epoch=10)
Epoch: 1 | CrossEntropyLoss: 0.71496
Epoch: 12 | CrossEntropyLoss: 0.35328
Epoch: 23 | CrossEntropyLoss: 0.27769
Epoch: 34 | CrossEntropyLoss: 0.22395
Epoch: 45 | CrossEntropyLoss: 0.19266
Epoch: 56 | CrossEntropyLoss: 0.16695
Epoch: 67 | CrossEntropyLoss: 0.14686
Epoch: 78 | CrossEntropyLoss: 0.13051
Epoch: 89 | CrossEntropyLoss: 0.11724
Epoch: 100 | CrossEntropyLoss: 0.10629
logistic_model_rbf.metrics_tab(x, y)
{'auc_roc': 0.9974513817072977,
'f1': 0.9700730618209839,
'precision': 0.9709476828575134,
'recall': 0.9692000150680542}
Visualizations
You can create beautiful animations of optimization algorithms and regression/classification models.
gen_classification_plot(x, y, model, threshold=0.5, epsilon=0.001)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.
See tutorial on generating distribution archives.
Built Distribution
Close
Hashes for nueramic_mathml-0.75.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b9b7aee63a84296bc867090edbc193f7361fb1e121913fb6920dec49c308347 |
|
MD5 | b4f490c0e3ee184880bd5e22d7b0c98a |
|
BLAKE2b-256 | 68e85ec9a24af38a1e4b4230c905b08e67bcfae5c89f3ccab51b89a0f1ee86ac |