https://github.com/buaadreamer/nnplayer
A Toy Nerual Network Framework 自制神经网络框架
https://github.com/buaadreamer/nnplayer
deeplearning deeplearning-framework machine-learning nerual-network nn
Last synced: 9 months ago
JSON representation
A Toy Nerual Network Framework 自制神经网络框架
- Host: GitHub
- URL: https://github.com/buaadreamer/nnplayer
- Owner: BUAADreamer
- Created: 2022-04-16T05:17:19.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-04-24T04:18:50.000Z (about 4 years ago)
- Last Synced: 2024-12-21T21:21:57.374Z (over 1 year ago)
- Topics: deeplearning, deeplearning-framework, machine-learning, nerual-network, nn
- Language: Python
- Homepage:
- Size: 23.4 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Introduction
This repo is a Nerual Network Framework for learning Deep-Learning and Machine-Learning.
This framework refers to PyTorch's Design and Usage.
## Usage
```python
import nnplayer as npl
import numpy as np
# build net
net = npl.Sequence(npl.Linear(10, 6), npl.Sigmoid(), npl.Linear(6, 4), npl.Sigmoid())
# calculate loss
loss = npl.MSELoss(net)
# optimizer
optimizer = npl.SGD(net.getParamsList())
# build the dataset
X = np.arange(40).reshape(4, 10)
Y = np.arange(16).reshape(4, 4)
# train
epoch = 100
for i in range(epoch):
Y_predict = net.forward(X)
l = loss.loss(Y_predict, Y)
print(f'epoch{i + 1} loss:{l.mean()}')
loss.backward()
optimizer.step()
l = loss.loss(net.forward(X), Y)
print(l.mean())
```