Package smearn
smearn is a small deep learning library I made to learn the fundamentals of deep learning.
At the moment it can only be used to create feedforward neural networks for supervised learning, and I have no intention of expanding its functionality to handle recurrent neural networks or unsupervised learning. However, with how the library has been set up, expanding it to handle these extra functionalities would be straightforward. Moreover, needless to say, there are many better alternatives.
The module is based on a symbolic treatment of the computations that a neural network performs that allows for learning using gradient methods and backpropagation. This basis is included in the smearn.symbolic submodule, which along with smearn.models is imported into the main smearn module.
All the computations are done using numpy.
Expand source code
'''
`smearn` is a small deep learning library I made to learn the fundamentals of deep learning.
At the moment it can only be used to create feedforward neural networks for supervised learning, and I have no intention of expanding its functionality to handle recurrent neural networks or unsupervised learning. However, with how the library has been set up, expanding it to handle these extra functionalities would be straightforward.
Moreover, needless to say, there are many better alternatives.
The module is based on a symbolic treatment of the computations that a neural network performs that allows for learning using gradient methods and backpropagation. This basis is included in the `smearn.symbolic` submodule, which along with `smearn.models` is imported into the `main` smearn module.
All the computations are done using `numpy`.
'''
from .symbolic import *
from .models import *
from . import layers
from . import optimization
from . import regularization
Sub-modules
smearn.layers-
The module
smearn.layerscontains many of the most common operations used in computation graphs for neural networks. smearn.models-
The
smearn.modelsmodule contains theModelclass, which provides a wrapper to optimize feedforward neural networks using supervised … smearn.optimization-
The
smearn.optimizationmodule includes some gradient-based optimization techniques for neural networks (namely, stochastic gradient descent, … smearn.regularization-
The
smearn.regularizationmodule includes a few regularization techniques, such as L1 and L2 regularization and bagging ensembles. The … smearn.symbolic-
The module
smearn.symboliccontains the basics of symbolic manipulation on whichsmearnare based. It contains the basics of computation graphs …