help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Octave Machine Learning & Deep Learning - what is available


From: vrozos
Subject: Re: Octave Machine Learning & Deep Learning - what is available
Date: Sun, 5 Apr 2020 06:23:37 -0500 (CDT)

Benson Muite wrote
> On Sun, Apr 5, 2020, at 11:14 AM, Evangelos Rozos wrote:
>> While the discussion keeps going regarding the path Octave development 
>> should follow, it would be worth summarizing what are the available 
>> options for Machine Learning & Deep Learning.
>> 
>> 
>> NNET
>> The best option for feedforward networks is the unmaintained package 
>> nnet. Use ‘pkg install -forge nnet’ to install it. Some modifications 
>> are required to be compatible with the latest Octave versions, see 
>> https://github.com/rozos/octave-nnet.
> 
> This looks nice, though speed may be slow since native Octave code rather
> than calling a compiled library. It is  better for full understanding
> though. Maybe worth updating to become compatible. Maybe there are tips
> that could improve performance, or does are integrations with Vendor
> libraries worth trying?

I have tried the FFN of DeppLearnToolbox
(https://github.com/rasmusbergpalm/DeepLearnToolbox) and of Cortexsys. The
package nnet gave the best fit without any significant additional
computational time.



Benson Muite wrote
>> 
>> Cortexsys
>> Cortexsys is a nice and simple framework (development not active since 
>> 2016) that supports FFN, CNN, RNN, LSTM. Get Cortexsys from 
>> https://github.com/joncox123/Cortexsys. It will require compiling some 
>> mex files. The easiest way to do it is start Octave go inside 
>> nn_core/mmx directory, then
>> for Linux:
>>       mex -lpthread -DUNIX_SYSTEM mmx.cpp
>> for Windows:
>>       mex -lpthread -DWIN_SYSTEM mmx.cpp
> 
> It seems to rely a lot on CUDA. Maybe SyclDNN
> (https://github.com/CodeplaySoftware/SYCL-DNN) is better? Performance on
> wide range of hardware will be of some consideration.

I have tested it only with CPU (the use of CPU or GPU is selected when
defining the structure with Cortexsys basic setup parameters ).


Benson Muite wrote
>> 
>> 
>> Caffe
>> The most sophisticated deep learning framework you can get in Octave. 
>> Unfortunately development stopped in 2018. The project was merged with 
>> PyTorch. I managed to make it run with Octave in Ubuntu 18.04, see 
>> https://drive.google.com/open?id=1S-hQOQeiSDgwBAjy_6BTr8WqiP4SccFG.
> 
> Probably most people using Octave will trade ease of setup and
> reproducibility over performance. Also for some of these fast moving
> projects, much development time might be spent fixing things.

None of the above can be considered a long-term solution. Neither something
worth to invest resources. It is for those seeking for a solution right here
right now.

ER




--
Sent from: https://octave.1599824.n4.nabble.com/Octave-General-f1599825.html



reply via email to

[Prev in Thread] Current Thread [Next in Thread]