Skip to content

Releases: apple/coremltools

coremltools 2.0

20 Sep 22:40
aebd6b3

Choose a tag to compare

  • Support for quantizing Neural Network models (1-8 bits)
  • Support for specifying flexible shapes for model inputs
  • Added NN builder support for new neural network layers: resize_bilinear, crop_resize
  • Added utilities for visualizing and printing summary of neural network models
  • Miscellaneous fixes

coremltools 0.8

02 Feb 23:10
10b2abe

Choose a tag to compare

  • Adds Python 3.5 and 3.6 support
  • Fixed compatibility with Keras 2.1.3
  • Support for xgboost 0.7
  • Fixes: when 1D convolution output is directly fed by flatten layer, Keras converter gives a wrong output shape
  • Fixes: Index range bug in keras converter function "make_output_layers()"
  • Adds custom activation function support in Keras 2 converter
  • Miscellaneous documentation fixes

coremltools-0.7.0

05 Dec 00:14
c0fe24f

Choose a tag to compare

Neural Networks

  • Half precision weights
    • New to .mlmodel specification version 2
    • Supported by macOS 10.13.2, iOS 11.2, watchOS 4.2, tvOS 11.2
    • WeightParams can now be specified in half precision (float16)
    • New float16 conversion utility function can convert existing models with neural networks to half precision by calling coremltools.utils.convert_neural_network_spec_weights_to_fp16
    • Can also pass in a flag in keras or caffe converter functions during model conversion time to convert models to half precision
    • See: https://developer.apple.com/documentation/coreml/reducing_the_size_of_your_core_ml_app
  • Custom Layers

Visualization

  • Visualize model specification with: coremltools.utils.visualize_spec

Python 3

  • Conversion for most model types work in Python 3.
  • No predictions: #37
  • Converting Caffe models does not work: #79
  • To use in Python 3, you must build from source.

Misc

  • Support grayscale image outputs in python predictions
  • Bug fixes

coremltools-0.6.3

01 Sep 04:17

Choose a tag to compare

Features

  • Linux support
  • Added a “useCPUOnly” flag that lets you run predictions using CoreML through Python bindings using only the CPU

Note: coremltools-0.6.2 has a known issue with the useCPUOnly flag that failed on certain neural network models. This has been fixed with 0.6.3

Neural Network Builder

Added support for layers in the NeuralNetworkBuilder that were present in the neural network protobuf but missing from the builder:

  • Local response normalization (LRN) layer
  • Split layer
  • Unary function layer
  • Bias, scale layers
  • Load constant layer
  • L2 normalization layer
  • Mean variance normalization (MVN) layer
  • Elementwise min layer
  • Depthwise and separable convolutions

Added support for some of the missing parameters in NeuralNetworkBuilder:

  • Padding options in convolution, pooling and padding layers
  • Scale and shift options for linear activation

Other bug fixes & enhancements

  • Bug-fix in the caffe converter that was preventing the elementwise max layer from converting.
  • Support for converting DepthwiseConv2D and SeparableConv2D from Keras