High-level Deep Learning Framework written in Kotlin and inspired by Keras
APACHE-2.0 License
Bot releases are visible (Hide)
Published by zaleslaw over 1 year ago
Upgrading the ONNX version allows us to run ONNX models on the M1/M2 Mac machines.
Full Changelog: https://github.com/Kotlin/kotlindl/compare/v0.5.1...v0.5.2
Published by juliabeliaeva almost 2 years ago
API changes:
InferenceModel
interface:
org.jetbrains.kotlinx.dl.impl.inference.imagerecognition.PredictionKt.predictLabel
andorg.jetbrains.kotlinx.dl.impl.inference.imagerecognition.PredictionKt.predictProbabilities
were added for classification. #515
InferenceModel#resultConverter
to process inference results. #515
reshape
was removed, in favor of prediction methods receiving input as FloatData
containing input shape information. #513
copy
function. #503
SavedModel#predict
with org.jetbrains.kotlinx.dl.dataset.InferenceModelExtensionsKt.predict
extension. #515
predictionFunction
parameter to the org.jetbrains.kotlinx.dl.dataset.InferenceModelExtensionsKt.predict
andorg.jetbrains.kotlinx.dl.dataset.InferenceModelExtensionsKt.evaluate
extension functions. #515
Dataset.getX
function to FloatData
.TensorShape
parameter to DataBatch
and OnHeapDataset
constructors.OnHeapDataset.Companion#createTrainAndTestDatasets
,OnHeapDataset.Companion#create(String, String, int, Function1<String,float[][]>, Function2<String,Integer,float[]>)
,OnHeapDataset.Companion#create(Function0<float[][]>, Function0<float[]>)
functions.TFModels.CVnoTop
and ONNXModels.CVnoTop
. #511
InferenceModel
. #509
SavingFormat
to a class and added isKerasFullyCompatible
parameter to SavingFormat.JsonConfigCustomVariables
. #501
OnnxInferenceModel
. #417
Thanks to our contributors:
Published by juliabeliaeva almost 2 years ago
Bugfixes:
Thanks to our contributors:
Published by juliabeliaeva almost 2 years ago
Features:
Bitmap
#416Resize
Rotate
Crop
ConvertToFloatArray
ImageProxy
to Bitmap
#458
NNAPI
execution provider #420
OnnxInferenceModel
from the ByteArray
representation #415
Canvas
#450
Operation
interface to represent a preprocessing operation for any input and outputPreprocessingPipeline
class to combine operations together in a type-safe mannerpipeline
to start a new preprocessing pipeline,call
to invoke operations defined elsewhere, onResult
to access intermediate preprocessing resultsModelType#preprocessInput
function to Operation
#429
Operation
#429
CPU
, CUDA
, NNAPI
) and convenient extensions for inference with themOnnxInferenceModel#predictRaw
function which allows custom OrtSession.Result
processing and extension functionsImagenet
enum to represent different Imagenet dataset labels and added support for zero indexed COCO labelsFlatShape
interface to allow manipulating the detected shapes in a unified way #480
DataLoader
interface for loading and preprocessing data for dataset implementations #424
Layer
interface to leave only build
function to be implemented and remove explicit output shape computationBreaking changes:
Preprocessing
, ImagePreprocessing
, ImagePreprocessor
,ImageSaver
, ImageShape
, TensorPreprocessing
, Preprocessor
got removed in favor of the new preprocessing API #425
Sharpen
preprocessor since the ModelType#preprocessor
field was introduced, which can be used in the preprocessingcall
function #429
Bugfixes:
loadWeightsForFrozenLayers
function for layers without parameters #382
New documentation and examples:
Thanks to our contributors:
Published by zaleslaw over 2 years ago
Features:
Dot
layer and Conv1DTranspose
, Conv2DTranspose
, Conv3DTranspose
layers.SparsemaxActivation
and SoftShrinkActivation
.Padding
, CenterCrop
, Convert
, Grayscale
image preprocessors and Normalizing
tensor preprocessor.Examples and tutorials:
API changes:
Sequential
and Functional
models. #133
Callbacks
in fit()
, evaluate()
, predict()
instead of compile()
.Long
parameters with Integer
ones in convolutional, average pool and max pool layers.CustomPreprocessor
interface. #257
BufferedImage
#293
Internal API changes:
KVariable
. #324
Layer
functionality to the new interfaces ParametrizedLayer
and TrainableLayer
.Bug fixes:
isTrainable
status from Keras. #153
Reshape
layer to higher dimensions. #249
toString
methods for layer classes. #301
useLocking = True
#305
loadModelLayersFromConfiguration
recursively calling itself. #319
GraphTrainableModel#internalPredict
for multi-dimensional predictions. #327
Orthogonal
initializer. #348
GraphTrainableModel
. #355
OnnxInferenceModel
. #356
IndexOutOfBoundsException
in the Dot
layer. #357
Thanks to our contributors:
Published by zaleslaw about 3 years ago
Features:
Bugs:
API breaking changes:
Infrastructure:
Docs:
Examples:
Tests:
Thanks to our contributors:
Published by zaleslaw over 3 years ago
Features:
sharpen
stage in the image preprocessing DSLshuffle
function support for both Dataset implementationssummary
method for the Functional APIBugs:
useBias
field in convolutional layersInternals improvements:
Tensor.create(...)
Infrastructure:
jcenter
api
artifact from 65 MB to 650 KB by cleaning up resources and migrating the model and datasets to the S3 storageDocs:
Examples:
Tests:
main
functionsThanks to our contributors:
Published by zaleslaw over 3 years ago
Features:
verbose
from public API
Bugs:
Sequential.predictSoftly
Internals improvements:
internalPredict
methodDocs:
Thanks to our contributors:
Published by zaleslaw almost 4 years ago
Features:
Examples:
Docs:
Published by zaleslaw almost 4 years ago
Features:
Tests:
Docs: