Skip to content

Latest commit

 

History

History

_obsolete

Cat's Eye

Neural network library written in C and Javascript

Features

  • Lightweight and minimalistic:
    • Header only
    • Just include catseye.h and write your model in c. There is nothing to install.
    • Small dependency & simple implementation
  • Fast: [under construction]
    • OpenCL support (GPGPU)
    • SSE, AVX support (But gcc and clang support SIMD...)
    • OpenMP support
    • Support half precision floats (16bit)
  • Support Deep Learning:
    • Multilayer perceptron (MLP)
    • Deep Neural Networks (DNN)
    • Convolutional Neural Networks (CNN)
    • Generative Adversarial Network (GAN)
    • Network in Network (NIN)
  • Supported networks:
    • Activation functions
      • sigmoid
      • softmax
      • tanh, scaled tanh (1.7519 * tanh(2/3x))
      • ReLU, Leaky ReLU, ELU, RReLU
      • abs
      • identity
    • Loss functions
      • cross-entropy, mean-squared-error
    • Optimization algorithms
      • stochastic gradient descent (with/without L2 normalization and momentum)
      • Momentum SGD
      • AdaGrad
      • RMSProp
    • Layer types
      • convolution
      • max pooling
      • average pooling
      • batch normalization
      • Sub-Pixel Convolution (Pixel Shuffler) [Upscaling or Deconvolution]
      • linear
      • CCCP, Cascaded Cross Channel Parametric Pooling
  • Loader formats:

Usage

Just include header files in your project.

for more information, see example/

$ dnf install ghostscript ocl-icd-devel
$ cd example
$ make
$ ./sin

Demo

Open In Colab

Question

  • Neural Network Always Produces Same/Similar Outputs for Any Input
    • Scale down the problem to manageable size.
    • Make sure you have enough hidden units.
    • Change the activation function and its parameters.
    • Change learning algorithm parameters.

Refrences