Clear Filters
Clear Filters

Exporting machine learning model to .NET Assembly

4 views (last 30 days)
I have created a .NET assembly using the Matlab Library Compiler and included it in a Visual Studio 2015 C# project. Everything works fine except for when I attempt to make a prediction using the model. The Matlab code looks like this:
load('C:\...\dispositionModel.mat', 'trainedModel1');
result = trainedModel1.predictFcn(data);
I get the following error:
Warning: Could not find appropriate function on path loading function handle C:\Program Files\MATLAB\R2018b\toolbox\stats\mlearnapp\+mlearnapp\+internal\+model\DatasetSpecification.m>@(x)exportableModel.predictFcn(predictorExtractionFcn(x))
I'm not sure why it's calling functions on the R2018b path, instead of the MATLAB Runtime path. I have included a pragma in my function
%#function fitctree
Looking through other help documentation, I'm only seeing references to C/C++ for using machine learning models with generated code. Is it even possible with C#?

Accepted Answer

Steven Feingold
Steven Feingold on 2 Jul 2019
The answer was to call the prediction function differently.
ModelClassificationEnsemble = trainedModel1.ClassificationEnsemble;
result = predict(ModelClassificationEnsemble, data);

More Answers (1)

undefined undefined
undefined undefined on 7 Mar 2024
Hi
I have trained a neural network in Matlab, and now would like to predict using this trained network from C# code.
How do I save the network in a format readable by C# ?
How do I then call the predict function form C#?
What needs to installed on my C# machine? (currently it doesn not have Matlab runtime, sice I developed the net on another computer)
Thanks in advance,
Gal

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!