Skip to main content

A collection of functions to help you easily train and run Tensorflow Keras

Project description

Keras Toolkit

A collection of functions to help you easily train and run Tensorflow Keras

Get the complete API reference here.

Quickstart

Install the library:

pip install keras-toolkit

You can now use it:

import keras_toolkit as kt

# kt reduces the number of lines from ~100 to ~3
strategy = kt.accelerator.auto_select(verbose=True)
decoder = kt.image.build_decoder(with_labels=True, target_size=(300, 300))
dtrain = kt.image.build_dataset(paths, labels, bsize=BATCH_SIZE, decode_fn=decoder)

with strategy.scope():
    model = tf.keras.Sequential([...])
    model.compile(...)

model.fit(...)

Usage

To automatically select an accelerator (e.g. TPU, GPU, CPU) and run on that accelerator:

import keras_toolkit as kt
strategy = kt.accelerator.auto_select(verbose=True)

with strategy.scope():
    # your keras code here
    model = tf.keras.Sequential([...])

To restrict the GPU memory usage of TensorFlow (e.g. to 2GB):

import keras_toolkit as kt

kt.accelerator.limit_gpu_memory(2*1024)

To build an image dataset from a list of paths and a list of labels (associated with the paths):

import keras_toolkit as kt

dtrain = kt.image.build_dataset(paths, labels)
# => <PrefetchDataset shapes: ((None, 256, 256, 3), (None,)), types: (tf.float32, tf.int32)>

# Fit your keras model on that new tf.data.Dataset:
model.fit(dtrain, ...)

If you only have a list of image paths, it will create tf.data.Dataset without labels:

dtrain = kt.image.build_dataset(paths)
# => <PrefetchDataset shapes: (None, 256, 256, 3), types: tf.float32>

You can also customize the dataset (e.g. batch size, custom image loader, custom augmentation, etc.):

# This is just the default
img_decoder = kt.image.build_decoder(target_size=(512, 512))
augmenter = kt.image.build_augmenter()

dset = build_dataset(
    paths, labels, 
    decode_fn=img_decoder,
    bsize=64,
    cache="./cache_dir/",
    augment=augmenter,
    shuffle=False,
    random_state=42
)

Acknowledgement

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

keras-toolkit-0.1.0rc6.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

keras_toolkit-0.1.0rc6-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file keras-toolkit-0.1.0rc6.tar.gz.

File metadata

  • Download URL: keras-toolkit-0.1.0rc6.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for keras-toolkit-0.1.0rc6.tar.gz
Algorithm Hash digest
SHA256 f6d4572f9a43ca670015558d3a331203eab6c6aab61b2c6ff9dd4ed8665b5f61
MD5 9a4f9198c252efb817e666775aff9cc7
BLAKE2b-256 db08a4a145607a900d6c0a964e798aacb55505b63196cda157d02aa75617bcd9

See more details on using hashes here.

File details

Details for the file keras_toolkit-0.1.0rc6-py3-none-any.whl.

File metadata

  • Download URL: keras_toolkit-0.1.0rc6-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for keras_toolkit-0.1.0rc6-py3-none-any.whl
Algorithm Hash digest
SHA256 89ff93f8b37409f1471c94e23b0a60f6bdff47fea09aeb4f33e009b20c71a7f6
MD5 fb2821553a6db040b10fec53d98ef462
BLAKE2b-256 07ecf49bb540685a9795ed05154d26079a1495653870c2992eab06cb391240d4

See more details on using hashes here.

Supported by

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