All Projects → JovianML → fastai_slack

JovianML / fastai_slack

Licence: MIT license
Get Slack notifications while training FastAI models

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to fastai slack

mobile-deep-learning-classifier
Tutorial on building and deploying a Mobile Deep Learning Classifier for food
Stars: ✭ 64 (+357.14%)
Mutual labels:  fastai
icedata
IceData: Datasets Hub for the *IceVision* Framework
Stars: ✭ 41 (+192.86%)
Mutual labels:  fastai
Fastpages
An easy to use blogging platform, with enhanced support for Jupyter Notebooks.
Stars: ✭ 2,888 (+20528.57%)
Mutual labels:  fastai
fastai-fall2018
🏃Notebooks from the USCF Deep Learning course (fast.ai v3)
Stars: ✭ 12 (-14.29%)
Mutual labels:  fastai
amazon-sagemaker-endpoint-deployment-of-fastai-model-with-torchserve
Deploy FastAI Trained PyTorch Model in TorchServe and Host in Amazon SageMaker Inference Endpoint
Stars: ✭ 60 (+328.57%)
Mutual labels:  fastai
Fastai
The fastai deep learning library
Stars: ✭ 21,718 (+155028.57%)
Mutual labels:  fastai
google-retrieval-challenge-2019-fastai-starter
fast.ai starter kit for Google Landmark Retrieval 2019 challenge
Stars: ✭ 62 (+342.86%)
Mutual labels:  fastai
hugdatafast
The elegant integration of huggingface/nlp and fastai2 and handy transforms using pure huggingface/nlp
Stars: ✭ 19 (+35.71%)
Mutual labels:  fastai
fast.ai notes
📓 Notes for fast.ai courses: intro to ML, Practical DL and Cutting edge DL.
Stars: ✭ 65 (+364.29%)
Mutual labels:  fastai
Fastbook
The fastai book, published as Jupyter Notebooks
Stars: ✭ 13,998 (+99885.71%)
Mutual labels:  fastai
deepprojects
A non-ending collection of jupyter notebooks
Stars: ✭ 30 (+114.29%)
Mutual labels:  fastai
all-classifiers-2019
A collection of computer vision projects for Acute Lymphoblastic Leukemia classification/early detection.
Stars: ✭ 24 (+71.43%)
Mutual labels:  fastai
Course V3
The 3rd edition of course.fast.ai
Stars: ✭ 4,785 (+34078.57%)
Mutual labels:  fastai
docker-containers
Docker images for fastai
Stars: ✭ 143 (+921.43%)
Mutual labels:  fastai
fastai-num-linalg-v2-zh
📖 [译] fast.ai 数值线性代数讲义 v2
Stars: ✭ 72 (+414.29%)
Mutual labels:  fastai
coronavirus-mask-image-dataset
Image dataset from Instagram of people wearing medical masks, no mask, or a non-medical (DIY) mask
Stars: ✭ 57 (+307.14%)
Mutual labels:  fastai
Nbdev
Create delightful python projects using Jupyter Notebooks
Stars: ✭ 3,061 (+21764.29%)
Mutual labels:  fastai
mlapp
ML model serving app based on APIs
Stars: ✭ 70 (+400%)
Mutual labels:  fastai
Vaaku2Vec
Language Modeling and Text Classification in Malayalam Language using ULMFiT
Stars: ✭ 68 (+385.71%)
Mutual labels:  fastai
Fast Bert
Super easy library for BERT based NLP models
Stars: ✭ 1,678 (+11885.71%)
Mutual labels:  fastai

Slack Notifications for FastAI

Get slack notifications for FastAI model training.

Demo: https://jvn.io/aakashns/2e505d1a5e7b49e18e7849da3280b9da

fastai_slack provides a simple callback to receive Slack notifcations while training FastAI models, with just one extra line of code.

fastai_slack sends notifications to your chosen Slack workspace & channel for the following events:

  • Start of training
  • Losses and metrics at the end of every epoch (or every few epochs)
  • End of training
  • Exceptions that occur during training (with stack trace)

Installation and Usage

See this Jupyter notebook for a detailed setup and usage example: https://jvn.io/aakashns/2e505d1a5e7b49e18e7849da3280b9da

  1. Install the fastai_slack library using pip:
pip install fastai_slack
  1. Generate a Slack incoming webhook URL, which will allow you to send notifications to a Slack channel of your choice. More details here: https://api.slack.com/incoming-webhooks

The webhook URL should be kept secret, so fastai_slack provides a helpful read_webhook_url method to safely input webhook URL within Jupyter.

from fastai_slack import read_webhook_url
webhook_url = read_webhook_url()
  1. While calling the fit method to train the model, passing in a SlackCallback configured with:

name: project/job name which will be included in every notification webhook_url: The Slack incoming webhook URL (read from user input earlier) frequency: How often to send a notification (defaults to 1 i.e. every epoch)

Here's a complete example:

from fastai.vision import *
from fastai_slack import SlackCallback

# Create a learner
data = ImageDataBunch.from_folder(untar_data(URLs.MNIST),train='training', valid='testing')
learn = cnn_learner(data, models.resnet18, metrics=accuracy)

# Create a callback
slack_cb = SlackCallback('mnist', webhook_url, frequency=2)

# fit with callback
learn.fit(8, callbacks=[slack_cb])

Here's what the notifications look like:

Configuration

Instead of passing the webhook URL manually each time, you can also set a system wide environment variable with the name FASTAI_SLACK_WEBHOOK contaning the URL, and it will be read automatically by SlackCallback. For instance, on Mac/Linux, you might need to add the following like to your ~/.bashrc:

FASTAI_SLACK_WEBHOOK=https://hooks.slack.com/services/T00000/B0000/XXXXXXXXXXX
# Replace the URL above with your Slack incoming webhook URL

Contributing

fastai_slack is open source, and you can view the source code here: https://github.com/jvn-io/fastai_slack

Please use Github to report bugs, request/propose feature. Pull requests with bug fixes and PRs are most welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].