123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package neuralnetwork
- import (
- "math"
- rand "math/rand"
- "time"
- mat "gonum.org/v1/gonum/mat"
- )
- func generateRandomDense(rows, columns int) *mat.Dense {
- rand.Seed(time.Now().UnixNano())
- data := make([]float64, rows*columns)
-
-
- for i := range data {
- data[i] = rand.NormFloat64()
-
- }
- return mat.NewDense(rows, columns, data)
- }
- func applySigmoid(_, _ int, x float64) float64 {
- return sigmoid(x)
- }
- func applySigmoidPrime(_, _ int, x float64) float64 {
- return sigmoidPrime(x)
- }
- func sigmoid(x float64) float64 {
- return 1.0 / (1.0 + math.Exp(-x))
- }
- func sigmoidPrime(x float64) float64 {
- sig := sigmoid(x)
- return sig * (1 - sig)
- }
|