Deepdetect Versions Save

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

v0.17.0

3 years ago

Features

  • ml: data augmentation for object detection with torch backend (95942b9)
  • ml: Visformer architecture with torch backend (40ec03f)
  • torch: add batch size > 1 for detection models (91bde66)
  • torch: image data augmentation with random geometric perspectives (d163fd8)
  • api: introduce predict output parameter (c9ee71a)
  • api: use DTO for NCNN init parameters (2ee11f0)

Bug Fixes

  • build: docker builds with tcmalloc (6b8411a)
  • doc: api traced models list (342b909)
  • graph: loading weights from previous model does not fail (5e7c8f6)
  • torch: fix faster rcnn model export for training (cbbbd99)
  • torch: retinanet now trains correctly (351d6c6)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.17.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.17.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.17.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.17.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.16.0

3 years ago

Features

  • torch: add confidence threshold for classification (0e75d88)
  • torch: add more backbones to traced detection models (f4d05e1)
  • torch: allow FP16 inference on GPU (705d3d7)
  • torch: madgrad optimizer (0657d82)
  • torch: training of detection models on backend torch (b920999)

Bug Fixes

  • torch: default gradient clipping to true when using madgrad (5979019)
  • remove dirty git flag on builds (6daa4f5)
  • services names were not always case insentitive (bee3183)
  • chains: cloning of image crops in chains (2e62b7e)
  • ml: refinedet image dimensions configuration via API (20d56e4)
  • TensorRT: fix some memory allocation weirdness in trt backend (4f952c3)
  • timeseries: throw if no data found (a95e7f9)
  • torch: allow partial or mismatching weights loading only if finetuning (23666ea)
  • torch: Fix underflow in CSVTS::serialize_bounds (c8b11b6)
  • torch: fix very long ETA with iter_size != 1 (0c716a6)
  • torch: parameters are added only once to solver during traced model training (86cbcf5)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.16.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.16.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.16.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.16.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.15.0

3 years ago

Features

  • nbeats: default backcast loss coeff to zero, allows very short forecast length to learn smoothly (db17a41)
  • timeseries: add MAE and MSE metrics (847830d)
  • timeseries: do not output per serie metrics as a default, add prefix _all for displaying all metrics (5b6bc4e)
  • torch: model publishing with the platform (da14d33)
  • torch: save last model at training service interruption (b346923)
  • torch: SWA for RANGER/torch (https://arxiv.org/abs/1803.05407) (74cf54c)
  • torch/csvts: create db incrementally (4336e89)

Bug Fixes

  • caffe/detection: fix rare spurious detection decoding, see bug 1190 (94935b5)
  • chore: add opencv imgcodecs explicit link (8ff5851)
  • compile flags typo (8f0c947)
  • docker cpu link in readme (1541dcc)
  • tensorrt tests on Jetson nano (25b12f5)
  • nbeats: make seasonality block work (d035c79)
  • torch: display msg if resume fails, also fails if not best_model.txt file (d8c5418)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.15.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.15.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.15.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.15.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.14.0

3 years ago

Features

  • bench: Add parameters for torch image backend (5d24f3d)
  • ml: ViT support for Realformer from https://arxiv.org/abs/2012.11747v2 (5312de7)
  • nbeats: add parameter coefficient to backcast loss (35b3c31)
  • torch: add inference for torch detection models (516eeb6)
  • torch: Sharpness Aware Minimization (2010.01412) (45a8408)
  • torch: support for multiple test sets (c0dcec9)
  • torch: temporal transformers (encoder only) (non autoreg) (3538eb7)
  • CSV parser support for quotes and string labels (efa4c79)
  • new cropping action parameters in chains (6597b53)
  • running custom methods from jit models (73d1eef)
  • torch/txt: display msg if vocab not found (31837ec)
  • SSD MAP-x threshold control (acd252a)
  • use oatpp::DTO to parse img-input-connector APIData (33aee72)

Bug Fixes

  • build: pytorch with custom spdlog (1fb19a0)
  • caffe/cudnn: force default engine option in case of cudnn not compiled in (b6dec4e)
  • chore: typo when trying to use syslog (374e6c4)
  • client: Change python package name to dd_client (b96b0fa)
  • csvts: read from memory (6d1dba8)
  • csvts: throw proper error when a csv file is passed at training time (90aab20)
  • docker: ensure pip3 is working on all images (a374a58)
  • ncnn: update innerproduct so that it does not pack data (9d88187)
  • torch: add error message when repository contains multiple models (a08285f)
  • -Werror=deprecated-copy gcc 9.3 (0371cfa)
  • action cv macros with opencv >= 3 (37d2926)
  • caffe build spdlog dependency (62e781a)
  • docker /opt/models permissions (82e2695)
  • prevent softmax after layer extraction (cbee659)
  • tag syntax for github releases (4de3807)
  • torch backend CPU build and tests (44343f6)
  • typo in oatpp chain HTTP endpoint (955b178)
  • torch: gather torchscript model parameters correctly (99e4dbe)
  • torch: set seed of torchdataset during training (d02404a)
  • torch/ranger: allow not to use lookahead (d428d08)
  • torch/timeseries: in case of db, correctly finalize db (aabedbd)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.14.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.14.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.14.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.14.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.13.0

3 years ago

Features

  • support for batches for NCNN image models (b85d79e)
  • ml: retain_graph control via API for torch autograd (d109558)
  • ml: torch image basic data augmentation (b9f8525)
  • ncnn: use master from tencent/ncnn (044e181)
  • upgrade oatpp to pre-1.2.5 (596f6f4)

Bug Fixes

  • torch: csvts forecast mode needs sequence of length backcast during predict (4c89a1c)
  • add missing spdlog patch (4d0a4fa)
  • caffe linkage with our spdlog (967fdef)
  • copy .git in docker image builder (570323d)
  • deactivate the csvts NCNN test when caffe is not built (5a5c8f1)
  • missing support for parent_id in chains with Python client (a5fad50)
  • NCNN chain with images and actions (38b1d07)
  • throw if hard image read error in caffe classification input (f1c0d09)
  • doc: similarity search_nn number of results API (5eaf343)
  • torch: remove potential segfault in csvts connector (ba96b4e)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.13.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.13.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.13.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.13.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.12.0

3 years ago

Highlights

  • Vision Transformer (ViT) image classification models support with libtorch
  • Support for native Torch vision classification models
  • Improved N-BEATS for multivariate time-series
  • OATPP new webserver interface

Features

  • switch back to cppnet-lib by default (ebe3b15)
  • torch: native models can load weights from any jit file (69af7f4)
  • torch: update libtorch to 1.7.1 (41d5375)
  • add access log for oat++ (4291bf8)
  • add cudnn cmake find package (5983ffd)
  • add some more error messages to log (e4ec772)
  • enable backtrace on segfault for oatpp (96b2184)
  • enhance cppnetlib req timing logs (6fc3e76)
  • gives also per target error and not only global eucl when selecting measure:eucll (dd2fc79)
  • introduce aotpp interface for deepdetect (04b79f4)
  • print stacktrace on segfault (11ab359)
  • provide predict/transform duration in ms (0197991)
  • service stats provide predict and transform duration total (9a24125)
  • track oatpp request timing (68749d3)
  • ml: image regression model training with libtorch (968c551)
  • tools: trace_torchvision can trace models for loading weights with dd native models (c11b551)
  • torch: Add multigpu support for native models training (33cd1df)
  • torch: Add native resnet support (0a01e57)
  • torch: add wide resnet and resnext to the vision models (aba6efb)
  • use jolibrain fork of faiss (8eb6e53)
  • use oatpp by default (c1d6620)
  • vision transformer (ViT) multi-gpu with torch (88b65c2)
  • graph: correct data size computation if different ouputs of an op have different sizes (288dd5b)
  • ml: added vision tranformer (ViT) as torch native template (72c0269)
  • ml: torch db stores encoded images instead of tensors (e7f3c19)
  • ml: torch regression and classification models training from list of files without db (e049caa)
  • torch: clip gradient options for all optimizers (c2ddee5)
  • torch: implement resume mllib option for torchlib: if true, reuse previous solver state (02e3177)
  • torch/nbeats: allow different sizes for backcast and forecast , also implements minimal change in csvtstorchinputconn in order to do forecast of signals instead of label predicting (d4e27f3)
  • torch/timeseries: add (p)ReLU layers in recurrent template, allowing to compute mlp-like embeddings before LSTM layers (930bee2)
  • torch/timeseries: log much more info on data (17d9a49)
  • allow to disable warning on build (75b2928)
  • one protobuf to rule them all (37a0867)

Bug Fixes

  • allows mean+std image transform with NCNN inference (c038f47)
  • benchmark tool to pass input size on every predict call (997023a)
  • bounds on two ml tests with non deterministic outputs (eeb783a)
  • broken API doc formatting (8b0ab32)
  • caffe backend internal exception if bbox rescaling fails (47d589f)
  • copy oatpp static files in docker images (d6568d8)
  • copy service name between input and output rapidjson document (46456dd)
  • ddimg logger ptr (4e9e871)
  • do not display all euclidean metrics for autoencoders (8e09e48)
  • ensure redownloaded test archives are extracted (d09eb2a)
  • fix compilation w/o caffe (0e693c5)
  • forward our cuda to xgboost (021b5a8)
  • init XXX_total_duration_ms to 0ms (292d891)
  • missing libboost-stacktrace-dev dep in docs (37e6008)
  • models flops and number of parameters in API (b856534)
  • NCNN backend using the common protobuf (a8dc531)
  • NCNN bbox loop (8d029c9)
  • NCNN best parameter for classification models (a7ac187)
  • ONNX tensorrt engine with correct enqueueV2 (1aede85)
  • pass CUDA_ARCH correctly to caffe (3b9f5a1)
  • raise error is jsonapi is invalid (0e0a892)
  • refinedet vovnet deploy parameter setup (d7ff1e6)
  • reraise same signal on abort (391568d)
  • scale image input with NCNN (49cddfe)
  • setuptools drop support of python27 (71cd789)
  • simsearch build with annoy (39a9cda)
  • some HTTP return codes (703553f)
  • start-dede.sh permissions (66b49c4)
  • tensorrt input size for caffe source models (5488c99)
  • tensorrt max workspace size overflow (0358c4a)
  • tentative torch faster tests (cbdefa7)
  • torch image input connector mean and std scaling (13374dd)
  • wrong NCNN bbox output scaling (113c7d2)
  • wrong template_params with torch from DD API (bee39c4)
  • build: allow cmake 3.10 (Ubuntu 18.04) for builds with -DUSE_CPU_ONLY=ON (d6fff8d)
  • build: fix tensorrt-oss include (bdf4ec2)
  • caffe: check model destination permissions (913489e)
  • csv: remove trailing \n from header if there are any, robustify in case of data passed from mem (400b53a)
  • csvts: clarify error msg on seq lenths (ad99049)
  • csvts: fix typo in logged msg (a81b291)
  • nbeats: fix for multi gpu (627c8db)
  • nbeats: fix loss for backcast part (986728c)
  • oatpp: use parent _logger object (88fc246)
  • timeseries: throw exception if recurrent template w/o layers specification (efc49de)
  • timeseries: throw if smthg wrong with scaling values (bf316b9)
  • torch: also remove not best models in case of native model (45819df)
  • torch: correctly implements range state comparison (c58a0df)
  • torch: Display correct remaining time and iteration duration (ec7c031)
  • torch: do not add linear head if native model (f81b997)
  • torch: loosen ut test (30659c8)
  • torch: loosen ut test 2 (ad6da05)
  • torch: when resume, override solver parameters after solver reload (d08695d)
  • torch/timeseries: restore previous behavior wrt timesteps API param : timestep not used at predict time (a343d4b)
  • ViT blocks modification for importing pre-trained models (f7f66a4)
  • torch/timeseries: check if number of labels is not larger than number of columns (294a5ed)
  • ViT: typo that changed computations a lot (95acf05)
  • tensorrt refinedet CI and linking to nvcaffeparsers with tensorrt OSS (846d6f5)
  • torch/native: do not fail if trying to load weights before (late) allocation of native model (e0e1d9b)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.12.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.12.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.12.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.12.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.11.0

3 years ago

Features

  • bench: support for regression model benchmarking (a385292)
  • make python client an install package (ec2f5e2)
  • one protobuf to rule them all (77912fe)
  • api: add versions and compile flags to /info (67b1d99), closes #897
  • caffe: add new optimizers flavors to API (d534a16)
  • ml: tensorrt support for regression models (77a016b)
  • tensorrt: Add support for onnx image classification models (a8b81f2)
  • torch: ranger optimizer (ie rectified ADAM + lookahead) + \ (a3004f0)

Bug Fixes

  • torch: best model was never saved on last iteration (6d1aa4d)
  • torch: clip gradient in rectified adam as stated in annex B of original paper (1561269)
  • torch: Raise an exception if gpu is not available (1f0887a)
  • add pytorch fatbin patch (43a698c)
  • add tool to generate debian buster image with the workaround (5570db4)
  • building documentation up to date for 18.04, tensorrt and tests (18ba916)
  • docker adds missing pytorch deps (314160c)
  • docker build readme link from doc (c6682bf)
  • handle int64 in conversion from json to APIData (863e697)
  • ignore JSON conversion throw in partial chains output (742c1c7)
  • missing main in bench.py (8b8b196)
  • proper cleanup of tensorrt models and services (d6749d0)
  • put useful informations in case of unexpected exception (5ab90c7)
  • readme table of backends, models and data formats (f606aa8)
  • regression benchmark tool parameter (3840218)
  • tensorrt output layer lookup now throws when layer does not exist (ba7c839)
  • csvts/torch: allow to read csv timeserie directly from query (76023db)
  • doc: update to neural network templates and output connector (2916daf)
  • docker: don't share apt cache between arch build (75dc9e9)
  • graph: correctly discard dropout (16409a6)
  • stats: measure of inference count (b517910)
  • timeseries: do not segfault if no valid files in train/test dir (1977bba)
  • torch: add missing header needed in case of building w/o caffe backend (2563b74)
  • torch: load weights only once (0052a03)
  • torch: reload solver params on API device (30fa16f)
  • tensorrt fp16 and int8 selector (36c7488)
  • torch/native: prevent loading weights before instanciating native model (b15d767)
  • torch/timeseries: do not double read query data (d54f60d)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.11.0
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.11.0
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.11.0
  • GPU with torch backend: docker pull jolibrain/deepdetect_gpu_torch:v0.11.0
  • All images available on https://hub.docker.com/u/jolibrain

v0.10.1

3 years ago

Features

  • timeseries: MAPE, sMAPE, MASE, OWA metrics (c1f4ef9)
  • automatically push image build for master (19e9674)
  • build: add script to create cppnet-lib debian package (28247b4)
  • build: allow to change CUDA_ARCH (67ad43e)
  • dede: Training for image classification with torch (6e81915)
  • docker: publish image as soon as ready (957e07c)
  • docker: publish image as soon as ready (5f7013d)
  • docker: rework Dockerfile (8bc9ddf)
  • docker: use prebuild cppnet-lib (c929773)
  • graph: lstm autoencoder (038a74c)
  • nbeats: expose hidden size param in API (d7e5515)
  • add auto release tools (98b41b0)
  • imginputfile: histogram equalization of input image (2f0061c), closes #778
  • imginputfile: histogram equalization of input image (576f2d8), closes #778
  • stats: added service statistics mechanism (1839e4a)
  • torch: in case of timeseries, warn if file do not contain enough timesteps (1a5f905)
  • torch: nbeats (f288665)
  • torch: upgrade to torch 1.6 (f8f7dbb)
  • torch,native: extract_layer (d37e182)
  • add json output to dd_bench.py (874fc01)
  • added bw image input support to dd_bench (6e558d6)
  • trains-status: add tflops to body.measures (af31c8b), closes #785
  • Docker images optimization (fba637a)
  • format the code with clang-format (07d6bdc)
  • LSTM over torch , preliminary internal graph representation (25faa8b)
  • update all docker images to ubuntu 18.04 (eaf0421)

Bug Fixes

  • fix split_data in csvts connector (8f554b5)
  • build: CUDA_ARCH not escaped correctly (696087f)
  • build: ensure all xgboost submodules are checkouted (12aaa1a)
  • clang-format: signed/unsigned comparaison (af8e144)
  • clang-format: signed/unsigned comparaison (0ccabb6)
  • clang-format: typo in dataset tarball command (04ddad7)
  • csvts: correctly store and print test file names (12d4639)
  • dede: Remove unnecessary caffe include that prevent build with torch only (a471b82)
  • dede: support all version of spdlog while building with syslog (81f47c9)
  • docker: add missing .so at runtime (4cc24ce)
  • docker: add missing gpu_tensorrt.Dockerfile (97ff2b3)
  • docker: add some missing runtime deps (0883a33)
  • docker: add some missing runtime deps (a91f35f)
  • docker: fixup base runtime image (6238dd4)
  • docker: install rapidjson-dev package (30fb2ca)
  • native: do not raise exception if no template_param is given (d0705ab)
  • nbeats: correctly setup trend and seasonality models (implement paper version and not code version) (75accc6)
  • nbeats: much lower memory use in case of large dim signals (639e222)
  • tests: inc iteration of torchapi.service_train_image test (4c93ace)
  • torch: Fix conditions to add classification head. (f46a710)
  • torch/timeseries: unscale prediction output if needed (aa30e88)
  • /api/ alias when deployed on deepdetect.com (4736893)
  • add support and automated processing of categorical variables in timeseries data (1a9af3e)
  • allow serialization/deserializationt of Inf/-Inf/NaN (976c892)
  • allows to specify size and color/bw with segmentation models (58ecb4a)
  • build with -DUSE_TENSORRT_OSS=ON (39bd675)
  • convolution layer initialization of SE-ResNeXt network templates (69ff0fb)
  • in tensorrt builds, remove forced cuda version and unused lib output + force-select tensorrt when tensorrt_oss is selected (9430fb4)
  • input image transforms in API doc (f513f17)
  • install cmake version 3.10 (10666b8)
  • missing variant package in docker files (dcf738b)
  • race condition in xgboost|dede build (fd32eae)
  • remove unecessary limit setting call to protobuf codedstream (ae26f59)
  • replace db":true by db":false in json files when copying models (06ac6df)
  • set caffe smooth l1 loss threshold to 1 (0e329f0)
  • ssd_300_res_128 deploy file is missing a quote (4e52a0e)
  • svm prediction with alll db combinations (d8e2961)
  • svm with db training (6e925f2)
  • tensorrt does not support blank_label (7916500)
  • typo in docker image builder (cb5ae19)
  • unusual builds (ie w/o torch or with tsne only lead to build errors (241bf6b)
  • update caffe cudnn engine without template (ca58c51)
  • torch: handle case where sequence data is < wanted timestep (b6d394a)
  • TRT: refinedet (b6152b6)

Docker images:

  • CPU version: docker pull jolibrain/deepdetect_cpu:v0.10.1
  • GPU (CUDA only): docker pull jolibrain/deepdetect_gpu:v0.10.1
  • GPU (CUDA and Tensorrt) :docker pull jolibrain/deepdetect_cpu_tensorrt:v0.10.1
  • All images available on https://hub.docker.com/u/jolibrain

v0.9.6

3 years ago

Features & updates

  • BERT + GPT2 training / finetuning / inference with Torch C++ API #673
  • TensorRT 5, 6 & 7 OSS #683
  • lr dropout #668 as an implementation of https://arxiv.org/abs/1912.00144 (also see https://github.com/jolibrain/caffe/pull/58)
  • confidence on OCR/CTC output prediction #694
  • support for logger inside chain actions #693
  • added support for OCR models (CRNN) Squeeze-Excitation ResNet-50 and ResNeXt-50 #685

API changes

  • mllib.lr_dropout#668
  • image rotation action in chains #677

Bug fixes

  • inverted ymin and ymax in detection model output, #690
  • chain action crop failing when bbox is not within the image #693
  • fixed bug in raw measure data output for model calibration #679
  • fixed error message on wrong TensorRT model filename #681
  • fixed potentially empty chain output #692

v0.9.7

4 years ago

This release updates to C++ torch 1.4, improves speed and accuracy when training object detection models, and fixes various issues.

Features & Updates

Models

  • added RefineDet VoVNet39 512x512 architecture for SotA object detection #700

API changes

  • fine-grained CUDNN engine selection #696

Bug fixes

  • Fixed Dlib logger in chains #699
  • Fixes to torch API unit tests #704
  • Fixed TensorRT classification best API keyword behavior #720
  • Fixed logging from within output connectors #705
  • Fixed rare case in metrics #708
  • Fixed CUDA arch for FAISS builds #710
  • Fix to rotate actions in chains #713
  • Fix of Torch backend build along with Caffe #714
  • Fixed error handling on model parser failure #712