Skip to content

Latest commit

 

History

History
135 lines (86 loc) · 2.51 KB

CppShark.md

File metadata and controls

135 lines (86 loc) · 2.51 KB

 

 

 

 

 

 

Shark is a C++ library for machine learning.

 

 

 

 

 

Shark examples

 

 

 

 

 

 

Qt Creator Note for Qt Creator users

 

Add the following line to your project file (to prevent link errors):

 


LIBS += -lshark

 

 

 

 

 

Shark suggestions

 

  • Shark does not save its neural networks in the PMML language
  • The method 'FFNet::outputValue(i)', where 'i' is the (integer) index of an output neuron, does not check if this index exists. I would suggest to add an assert to prevent this during debugging
  • FFNet does not have any public method to check the number of neurons. Such a getter would not hurt...
  • The method 'FFNet::activate(inputs)', where 'inputs' is an Array<double> is protected. Personally, I do not understand this design choice: the purpose of a neural network is to process input, so I would make this method public
  • The method 'FFNet::activate(inputs)', where 'inputs' is a non-const method. I do understand that giving input to a neural network, that it will have new output. Still, I believe that this does not change the network itself: the structure and weights are unchanged. Personally, I would make the stored outputs mutable and the FFNet::activate method a const method.
  • The Shark data type 'Array<double>' should be replaced by the std::vector, Boost::Array or Boost::Multi_array data type: the data types mentioned are better known and less (!) complex

 

 

 

 

 

External links