Skip to main content

utils & misc 4 mlm8s

Project description

mlm8s

miscellaneous for machine-learning in TensorFlow
pip install keras_tuner
pip install mlm8s

Imports:

from mlm8s import ListedPaths, paths2labels, strings2onehot, paths2label_dicts, map_via_dict
from mlm8s import GeneratorDataset, HyperModel, connect
from mlm8s import standardize, normalize, stretch, rotate_deg, flatten, correlate
from mlm8s import create_meshgrid, span_polar_basis
from mlm8s import group_unique
from mlm8s import print_plot_play
from mlm8s import get_sampling_matrix, soft_threshold, deadzone_l1_loss, lasso_l1, norm_l0, huber_loss
from mlm8s import lipschitz_grad_lasso, nesterov_momentum, ista_prox_lasso, fista

Labels from Paths:

from mlm8s import ListedPaths, paths2label_dicts, map_via_dict

### read PATH2DATA and (onehot-)encode by file-containing folder:

paths = ListedPaths(PATH2DATA)*'ogg'
label_dict = paths2label_dicts(paths(), seperators=['/', '.'], indices=[-2, 0])
labels = map_via_dict(paths2labels(paths()), label_dict)

Class - GeneratorDataset:

Enables alternating results of tf.random* -calls, from within the generator of tf.data.Dataset.from_generator*.

kwargs = dict()
kwargs['paths'] = paths
kwargs['seperators'] = ['/', '.']
kwargs['indices'] = [-2, 0]

### Feature-Engineering with generator, that can use random variables!!
def engineer_features(paths):
    # use data in path to engineer features
    features = tf.random.uniform(shape=[32, 256, 256, 4])
    return features

kwargs['engineer_features'] = engineer_features

### Creating Features & Labels:
def generate_from_paths(batch_size=1024, **kwargs):
    paths = kwargs['paths']
    seperators = kwargs['seperators']
    indices = kwargs['indices']
    engineer_features = kwargs['engineer_features']
    rdm_paths = paths.get_rdm(batch_size)
    features = engineer_features(rdm_paths)
    labels = paths2labels(rdm_paths, seperators, indices)
    labels = map_via_dict(labels, label_dict)
    return features, labels

### Creating tf.data.Dataset, that can generate an infinite number of random batches
###                           from 'generate_from_paths'.
ds = GeneratorDataset(generate_from_paths, batch_size=128, epochs=16, **kwargs)()

for batch in ds.take(1):
    x, y = batch
    print(x.shape, y.shape)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mlm8s-1.0.1.tar.gz (29.4 kB view details)

Uploaded Source

Built Distribution

mlm8s-1.0.1-py3-none-any.whl (33.3 kB view details)

Uploaded Python 3

File details

Details for the file mlm8s-1.0.1.tar.gz.

File metadata

  • Download URL: mlm8s-1.0.1.tar.gz
  • Upload date:
  • Size: 29.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.0 Linux/5.15.0-1036-azure

File hashes

Hashes for mlm8s-1.0.1.tar.gz
Algorithm Hash digest
SHA256 def109e325be99d48179f13c73503b5fa758347ec1e842779cd049e0f5ebfef1
MD5 4125783f4d2e33dd307ece28f1adf2a8
BLAKE2b-256 b311ea76cadf04339572e7e700178961609f12b97d08947092a42f7611e54584

See more details on using hashes here.

File details

Details for the file mlm8s-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: mlm8s-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 33.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.0 Linux/5.15.0-1036-azure

File hashes

Hashes for mlm8s-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 123d57989368a78db33a41be56f753a946fb4f401c58ed1e58043d39ac8fd7f3
MD5 5207e2774c6a806f0ef7f09fb00b8019
BLAKE2b-256 f8546cfdf6a8e724fafda4b546276d643663badb590f204863f2cf9ccd2999a7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page