grad

package
v0.0.0-...-94b6d7e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2023 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DrawDot

func DrawDot(n *Scalar) string

Types

type Layer

type Layer struct {
	// contains filtered or unexported fields
}

func NewLayer

func NewLayer(numIn int, numOut int) *Layer

func (*Layer) Act

func (l *Layer) Act(x []*Scalar) []*Scalar

func (*Layer) Parameters

func (l *Layer) Parameters() Parameters

type MLP

type MLP struct {
	// contains filtered or unexported fields
}

MLP is a multilayer perceptron

func NewMLP

func NewMLP(numIn int, numOuts []int) *MLP

func (*MLP) Act

func (p *MLP) Act(x []*Scalar) []*Scalar

func (*MLP) Parameters

func (p *MLP) Parameters() Parameters

type Neuron

type Neuron struct {
	// contains filtered or unexported fields
}

func NewNeuron

func NewNeuron(numIn int) *Neuron

func (*Neuron) Act

func (n *Neuron) Act(x []*Scalar) *Scalar

func (*Neuron) Parameters

func (n *Neuron) Parameters() Parameters

type Parameters

type Parameters []*Scalar

func (Parameters) ZeroGrad

func (p Parameters) ZeroGrad()

type Scalar

type Scalar struct {
	Label string
	// contains filtered or unexported fields
}

Scalar is a node like Tensor except for scalar values only It implements simple backpropagation and gradient computation

func MeanSquaredError

func MeanSquaredError(ygts []*Scalar, ypreds []*Scalar) *Scalar

func Scalars

func Scalars(vals ...float64) []*Scalar

func Val

func Val(data float64) *Scalar

func Var

func Var(data float64, label string) *Scalar

func (*Scalar) Add

func (v *Scalar) Add(other *Scalar) *Scalar

func (*Scalar) Backward

func (v *Scalar) Backward()

Backward calls the backward function for each method in a breadth-first way starting with the given root scalar. This iteratively builds the gradient at each depth because of the chain rule

func (*Scalar) Data

func (v *Scalar) Data() float64

func (*Scalar) Descend

func (v *Scalar) Descend(delta float64)

func (*Scalar) Grad

func (v *Scalar) Grad() float64

func (*Scalar) Mul

func (v *Scalar) Mul(other *Scalar) *Scalar

func (*Scalar) Neg

func (v *Scalar) Neg() *Scalar

func (*Scalar) Pow

func (v *Scalar) Pow(exp float64) *Scalar

func (*Scalar) ReLU

func (v *Scalar) ReLU() *Scalar

func (*Scalar) String

func (v *Scalar) String() string

func (*Scalar) Sub

func (v *Scalar) Sub(other *Scalar) *Scalar

func (*Scalar) Tanh

func (v *Scalar) Tanh() *Scalar

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL