• Stars
    star
    2,520
  • Rank 18,198 (Top 0.4 %)
  • Language
    C++
  • License
    Other
  • Created over 9 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Deep Learning API and Server in C++14 support for Caffe, PyTorch,TensorRT, Dlib, NCNN, Tensorflow, XGBoost and TSNE

DeepDetect Logo

Open Source Deep Learning Server & API

Join the chat at https://gitter.im/beniz/deepdetect GitHub release (latest SemVer) GitHub Release Date GitHub commits since latest release (by date)

DeepDetect (https://www.deepdetect.com/) is a machine learning API and server written in C++11. It makes state of the art machine learning easy to work with and integrate into existing applications. It has support for both training and inference, with automatic conversion to embedded platforms with TensorRT (NVidia GPU) and NCNN (ARM CPU).

It implements support for supervised and unsupervised deep learning of images, text, time series and other data, with focus on simplicity and ease of use, test and connection into existing applications. It supports classification, object detection, segmentation, regression, autoencoders, ...

And it relies on external machine learning libraries through a very generic and flexible API. At the moment it has support for:

Please join the community on Gitter, where we help users get through with installation, API, neural nets and connection to external applications.


Build type STABLE DEVEL
SOURCE

All DeepDetect Docker images available from https://docker.jolibrain.com/.

  • To list all available images:
curl -X GET https://docker.jolibrain.com/v2/_catalog
  • To list an image available tags, e.g. for the deepdetect_cpu image:
curl -X GET https://docker.jolibrain.com/v2/deepdetect_cpu/tags/list

Main features

  • high-level API for machine learning and deep learning
  • support for Caffe, Tensorflow, XGBoost, T-SNE, Caffe2, NCNN, TensorRT, Pytorch
  • classification, regression, autoencoders, object detection, segmentation, time-series
  • JSON communication format
  • remote Python and Javacript clients
  • dedicated server with support for asynchronous training calls
  • high performances, benefit from multicore CPU and GPU
  • built-in similarity search via neural embeddings
  • connector to handle large collections of images with on-the-fly data augmentation (e.g. rotations, mirroring)
  • connector to handle CSV files with preprocessing capabilities
  • connector to handle text files, sentences, and character-based models
  • connector to handle SVM file format for sparse data
  • range of built-in model assessment measures (e.g. F1, multiclass log loss, ...)
  • range of special losses (e.g Dice, contour, ...)
  • no database dependency and sync, all information and model parameters organized and available from the filesystem
  • flexible template output format to simplify connection to external applications
  • templates for the most useful neural architectures (e.g. Googlenet, Alexnet, ResNet, convnet, character-based convnet, mlp, logistic regression, SSD, DeepLab, PSPNet, U-Net, CRNN, ShuffleNet, SqueezeNet, MobileNet, RefineDet, VOVNet, ...)
  • support for sparse features and computations on both GPU and CPU
  • built-in similarity indexing and search of predicted features, images, objects and probability distributions

Machine Learning functionalities per library

Caffe Caffe2 XGBoost TensorRT NCNN Libtorch Tensorflow T-SNE Dlib
Serving
Training (CPU) Y Y Y N/A N/A Y N Y N
Training (GPU) Y Y Y N/A N/A Y N Y N
Inference (CPU) Y Y Y N Y Y Y N/A Y
Inference (GPU) Y Y Y Y N Y Y N/A Y
Models
Classification Y Y Y Y Y Y Y N/A Y
Object Detection Y Y N Y Y N N N/A Y
Segmentation Y N N N N N N N/A N
Regression Y N Y N N Y N N/A N
Autoencoder Y N N/A N N N N N/A N
NLP Y N Y N N Y N Y N
OCR / Seq2Seq Y N N N Y N N N N
Time-Series Y N N N Y Y N N N
Data
CSV Y N Y N N N N Y N
SVM Y N Y N N N N N N
Text words Y N Y N N N N N N
Text characters Y N N N N N N Y N
Images Y Y N Y Y Y Y Y Y
Time-Series Y N N N Y N N N N

Tools and Clients

Models

Caffe Tensorflow Source Top-1 Accuracy (ImageNet)
AlexNet Y N BVLC 57.1%
SqueezeNet Y N DeepScale 59.5%
Inception v1 / GoogleNet Y Y BVLC / Google 67.9%
Inception v2 N Y Google 72.2%
Inception v3 N Y Google 76.9%
Inception v4 N Y Google 80.2%
ResNet 50 Y Y MSR 75.3%
ResNet 101 Y Y MSR 76.4%
ResNet 152 Y Y MSR 77%
Inception-ResNet-v2 N Y Google 79.79%
VGG-16 Y Y Oxford 70.5%
VGG-19 Y Y Oxford 71.3%
ResNext 50 Y N https://github.com/terrychenism/ResNeXt 76.9%
ResNext 101 Y N https://github.com/terrychenism/ResNeXt 77.9%
ResNext 152 Y N https://github.com/terrychenism/ResNeXt 78.7%
DenseNet-121 Y N https://github.com/shicai/DenseNet-Caffe 74.9%
DenseNet-161 Y N https://github.com/shicai/DenseNet-Caffe 77.6%
DenseNet-169 Y N https://github.com/shicai/DenseNet-Caffe 76.1%
DenseNet-201 Y N https://github.com/shicai/DenseNet-Caffe 77.3%
SE-BN-Inception Y N https://github.com/hujie-frank/SENet 76.38%
SE-ResNet-50 Y N https://github.com/hujie-frank/SENet 77.63%
SE-ResNet-101 Y N https://github.com/hujie-frank/SENet 78.25%
SE-ResNet-152 Y N https://github.com/hujie-frank/SENet 78.66%
SE-ResNext-50 Y N https://github.com/hujie-frank/SENet 79.03%
SE-ResNext-101 Y N https://github.com/hujie-frank/SENet 80.19%
SENet Y N https://github.com/hujie-frank/SENet 81.32%
VOC0712 (object detection) Y N https://github.com/weiliu89/caffe/tree/ssd 71.2 mAP
InceptionBN-21k Y N https://github.com/pertusa/InceptionBN-21K-for-Caffe 41.9%
Inception v3 5K N Y https://github.com/openimages/dataset
5-point Face Landmarking Model (face detection) N N http://blog.dlib.net/2017/09/fast-multiclass-object-detection-in.html
Front/Rear vehicle detection (object detection) N N http://blog.dlib.net/2017/09/fast-multiclass-object-detection-in.html

More models:

References

Authors

DeepDetect is designed, implemented and supported by Jolibrain with the help of other contributors.

More Repositories

1

joliGEN

Generative AI Image Toolset with GANs and Diffusion for Real-World Applications
Python
196
star
2

dd_performances

DeepDetect performance sheet
Python
92
star
3

fluidnet_cxx

FluidNet re-written with ATen tensor lib
C++
51
star
4

livedetect

Live video client to DeepDetect
Go
50
star
5

wheatley

Next-generation scheduling problem solver based on GNNs and Reinforcement Learning
Python
20
star
6

platform_ui

Web interface to control DeepDetect process
JavaScript
11
star
7

deepdetect-js

DeepDetect javascript client
JavaScript
8
star
8

dd_platform_docker

DeepDetect Platform Dockerfile
Shell
8
star
9

gpustat_server

`gpustat` JSON server
Python
8
star
10

recognition

This is the source code of the backend and online parts of the IK Prize 2016 Recognition projects with Tate Britain, Fabrica and Microsoft
JavaScript
6
star
11

godd

🧠 DeepDetect package for easy integration in any Go project
Go
5
star
12

vicreg-loss

Pytorch implementation of the VICReg loss.
Python
4
star
13

dd_board

Tensorboard logger for DeepDetect server JSON output
Python
4
star
14

platform_data

Jupyter Notebook
3
star
15

libtscaling

Temperature scaling for neural network calibration
C++
3
star
16

ddapi

DeepDetect API Documentation
JavaScript
3
star
17

libvnn

C++ gstreamer-based video streaming library to deep nets with GPU support
C++
3
star
18

dd_ami_tools

DeepDetect AMI Tools
Python
3
star
19

dd_widgets

DeepDetect Python Jupyter Notebook Widgets
Python
3
star
20

platform_annotations

VoTT fork with DeepDectect connector, open source annotation and labeling tool for image and video assets
TypeScript
1
star