Skip to content

A tiny artificial neural network rust library.

Notifications You must be signed in to change notification settings

Lyn-liyuan/hetu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hetu

HETU

The Hetu is a mysterious pattern in the ancient Chinese mythology, and the gossip evolved from it can be used for divination and prediction. Its black dots and white dots resemble neurons.So we use the Hetu to name our neural network library.

The Hetu is a tiny artificial neural network rust library. The project is a simple artificial neural network library and it supports Connected Layer, Convolution Layer, max pooling layer, ReLu, Sigmoid, Softmax activation functions. This project uses the RUST language to implement.

Directory structure

  • exmaple : some examples
  • hetulib: the source code of library
  • vulkan: the compute operators is base on GPU. It is just an experiment now.

Example

    let mut model = Model![
        Dense!(8,4),
        ReLu!(),
        Dense!(3,8),
        Softmax!()
    ];
    let (data, labels) = load_data(args.path.as_path());
    for p in 0..6000 {
        println!("epoch {} loss = {}", p, 1f32 - model.fit(&data, &labels, 0.01f32));
    }

The example of convolution network for MNIST recognition is coming soon.

About

A tiny artificial neural network rust library.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages