chore(README): simple initial README
This commit is contained in:
parent
26eb4531fa
commit
eeabe4696c
39
README.md
Normal file
39
README.md
Normal file
@ -0,0 +1,39 @@
|
||||
sibe
|
||||
====
|
||||
|
||||
A simple Machine Learning library.
|
||||
|
||||
A simple neural network:
|
||||
```haskell
|
||||
module Main where
|
||||
import Sibe
|
||||
import Numeric.LinearAlgebra
|
||||
import Data.List
|
||||
|
||||
main = do
|
||||
let learning_rate = 0.5
|
||||
(iterations, epochs) = (2, 1000)
|
||||
a = (logistic, logistic') -- activation function and the derivative
|
||||
rnetwork = randomNetwork 0 2 [(8, a)] (1, a) -- two inputs, 8 nodes in a single hidden layer, 1 output
|
||||
|
||||
inputs = [vector [0, 1], vector [1, 0], vector [1, 1], vector [0, 0]] -- training dataset
|
||||
labels = [vector [1], vector [1], vector [0], vector [0]] -- training labels
|
||||
|
||||
-- initial cost using crossEntropy method
|
||||
initial_cost = zipWith crossEntropy (map (`forward` rnetwork) inputs) labels
|
||||
|
||||
-- train the network
|
||||
network = session inputs rnetwork labels learning_rate (iterations, epochs)
|
||||
|
||||
-- run inputs through the trained network
|
||||
results = map (`forward` network) inputs
|
||||
|
||||
-- compute the new cost
|
||||
cost = zipWith crossEntropy (map (`forward` network) inputs) labels
|
||||
```
|
||||
|
||||
See other examples:
|
||||
```
|
||||
stack exec example-xor
|
||||
stack exec example-naivebayes-doc-classifier
|
||||
```
|
Loading…
Reference in New Issue
Block a user