Metadata-Version: 2.1
Name: Keras_JukeBox
Version: 0.0.3
Summary: A UI based callback for tf-keras
Home-page: https://github.com/pk00095/keras_jukebox/archive/0.0.3.tar.gz
Author: T Pratik
Author-email: pk00095@gmail.com
License: UNKNOWN
Description: # Acknowledgement
          
        This project is supported by [Segmind](https://segmind.com)
        
        # keras JukeBox
        
        This is a UI based hyper-parameter controller, which let's you control the following.
        
        * start, pause and stop a live training.
        * reset the learning rate on dynamically while training is in progress.
        * take a snapshot at will
        
        more functionalities are to be added
        
        # Dependencies
        
        This package depends on **MQTT** protocol for communication. So, it is expected that an MQTT broker is up and running in 'localhost' at port 1883(default port).
        
        Install it by :
        
        ```
        
        sudo apt-get update
        sudo apt-get install mosquitto
        sudo apt-get install mosquitto-clients
        
        ```
        
        Python dependencies:
        
        * python >= 3.6.8
        * paho-mqtt
        * PyQt5
        * tensorflow >= 1.14
        
        **Note: This package is intended and tested for tensorflow-keras api and NOT keras with tensorflow 'backend'**
        
        # Usage
        
        you can try the following example
        
        save the follwing example **fashion_mnist_jukebox.py**
        
        ```
        from __future__ import absolute_import, division, print_function, unicode_literals
        
        import tensorflow as tf
        from tensorflow import keras
        
        
        # import the callback
        from keras_jukebox import JukeBoxCallback
        
        
        fashion_mnist = keras.datasets.fashion_mnist
        
        (train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()
        
        
        train_images = train_images / 255.0
        
        test_images = test_images / 255.0
        
        model = keras.Sequential([
            keras.layers.Flatten(input_shape=(28, 28)),
            keras.layers.Dense(128, activation='relu'),
            keras.layers.Dense(10, activation='softmax')
        ])
        
        
        model.compile(optimizer='adam',
                      loss='sparse_categorical_crossentropy',
                      metrics=['accuracy'])
        
        # pass the jukebox callback to model.fit method
        model.fit(train_images, train_labels, epochs=10, callbacks=[JukeBoxCallback(verbose=1)])
        ```
        
        and run it.
        You will notice that the script starts but training doesn't, which is because it is paused and needs a JukeBox-UI to start.
        
        Now, open a new terminal(Alt+ctrl+T) and start the JukeBox by typing:
        
        ```
        
        start_jukebox
        
        ```
        
        and you should see the UI pop up, note the algorithm is in **pause** mode by default. Hit the play button to start the training.
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Requires-Python: >=3.6
Description-Content-Type: text/markdown
