Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Agent for Neural Network training supervision

Project description

TAFNN

N|Solid

Build Status

TAFNN is a Python based library, that helps Deep / Machine Learning specialists to track their models during training without accessing server, and getting notifications full of their desired information via beloved Social Media platforms.

N|Solid

PROS

  • Built as lightweight as possible
  • Takes 14 arguments, therefore users can check almost everything while their model is training
  • Back-End is built on Flask framework, and open-sourced. You can contribute to implement more Social Media platforms' APIs.

TODO

  • Finish working on Back-End for Facebook Messenger.

Used Frameworks & Libraries

FaceDNR is built totally on Python technology.

Installation

Python 3.6+ required to use.

Get the package from PyPi

$ pip install TAFNN

Usage

Import the TAFNN and reach 'teller' function. Define the TAFNN.teller function inside the training loop, and pass the arguments.

$ import TAFNN as tiffany
$ tiffany.teller(arg1, arg2)

Arguments

  $iteration argument is for counting iterations. type = number.

  $distribution argument is basically a divider, for every how many iterations do you need to send the GET request. type = number.

  $distrmessage - your message after reaching specific number of iterations, when iterations % distribution == 0. type = string.

  $maxiter is a maximum of iterations, after which the model finishes training. Make sure to send +1, as long as
  python takes the 'y' from range(x , y) and finishes the loop when technically y = (y - 1). type = number.

  $maxitermessage is a message you want to send after reaching maxiter size. type = string.

  $epochdistribution is the same as 'distribution' argument, but for epochs. type = number.

  $epoch counts epochs. type = number.

  $epochmessage is sended after reaching number of epochs when epochs % epochdistribution == 0 . type = string

  $testloss takes test loss as an information. type = number.

  $valloss takes validation loss as an information. type = number.

  $maxdelay is maximum amount of delay, after which server will automatically tell you that something might be crashed,
  and you've to check the server. type = number.

  $maxdelaydelta is a maximum dynamic change of maxdelay. For instance, if maxdelay = 5 (5 seconds), and maxdelaydelta = 1,
  you won't be notified until the request is delayed for more than 6 seconds.
  In case you're saving checkpoint for every certain number of iterations, and it takes longer time than average iteration
  time, that's where you use 'maxdelaydelta' argument. type = number.

  $maxdelaymessage is a message for you to receive after reaching maximum time of delay.  type = string.

  $profile_link is a link of your Facebook profile, that will be used by the agent to send you all the information later on.
  type = string.

JSON Instance

The API sends the JSON array, that is basically stringified version of combination of dictionaries.

Implementations

The Flask server is deployed on Heroku, and implemented only in Facebook Messenger for now. Next Social Media Platforms:

TODOs

- Finish working on Back-End for Facebook Messenger.

License

BSD 3-Clause Licence

Project details


Release history Release notifications

This version

1.8

Download files

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

Files for TAFNN, version 1.8
Filename, size File type Python version Upload date Hashes
Filename, size TAFNN-1.8-py3-none-any.whl (4.5 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size TAFNN-1.8.tar.gz (3.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page