Skip to main content

This is the small library for deep learning.

Project description

This is Grand Lantern neural network library рџЏ®

The main purpose of this library is to understand - what is happening under the hood of popular deep learning frameworks. Also, it can be used to build your own ideas - no special knowledge for thst you need!

This library is written only using numpy (maybe cupy in future), you can see every calculation in neural network!

How to install в›ЏпёЏ

Put just this command to terminal

pip install grandlantern

Get started рџљЂ

1. Import library

import grand_lantern as gl

2. Define Data Iterator

from grand_lantern.dataiterators import DatasetIterator

batch_size = 100
my_dataset_iterator = DatasetIterator(dataset = gl.TableDataset(), batch_size = batch_size)

3. Choose optimizer

from grand_lantern.optimizers import SGD

my_optimizer = SGD(learning_rate = 0.01)

4. Build model

from grand_lantern import model
from grand_lantern.metrics import CrossEntropy, Accuracy

NN = model(n_epochs=100,
           dataset_iterator = my_dataset_iterator,
           loss_function = CrossEntropy(),
           metric_function = Accuracy(),
           optimizer = my_optimizer)

5. Add layers

from grand_lantern.layers import LinearLayer
from grand_lantern.layers.Activation import Sigmoid, ReLU, SoftMax

NN.add_layer(LinearLayer(n_neurons=100, activation=Sigmoid(), biased=True))
NN.add_layer(LinearLayer(n_neurons=50, activation=ReLU(), biased=True))
NN.add_layer(LinearLayer(n_neurons=10, activation=SoftMax(), biased=True))

6. Train model

NN.fit(X_train, y_train.reshape(-1, 1), X_test, y_test.reshape(-1, 1))

7. Use model

y_pred = NN.predict(X_test)

What is supported now вњ…

Layers

  • Linear Layer
  • Image Convolutional Layer (Conv2DLayer)
  • Batch Normalization Layer (BatchNormLayer)
  • RNN Layer (RNNLayer)

Optimizers

  • SGD
  • NAG
  • Adagrad
  • Adam

What will be done рџ“ќ

New Layers

  • LSTM, GRU layers
  • Transformers

GPU Accelaration using cupy

Some more optimizers

Regularization

  • L1, L2 regularization
  • Dropout
  • Pooling

Preprocessing modules

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

grandlantern-0.0.5-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file grandlantern-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: grandlantern-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.13

File hashes

Hashes for grandlantern-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ea423126b674bbd7ae473c35f7a744035ab31fe3c2f51b4f0a558b9a6cd656cf
MD5 32a499d8ee4ad9675fd6f77707a965a6
BLAKE2b-256 b6ebedc57596964b3355308ee9c487d419855509c1cb633443d69a27bc6d369f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page