Skip to main content

tinybig library for deep function learning

Project description

function_data


Introduction

tinybig is a Python library developed by the IFM Lab for deep function learning model designing and building.

Citation

If you find tinybig and RPN useful in your work, please cite the RPN paper as follows:

@article{Zhang2024RPN,
    title={RPN: Reconciled Polynomial Network Towards Unifying PGMs, Kernel SVMs, MLP and KAN},
    author={Jiawei Zhang},
    year={2024},
    eprint={2407.04819},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}

Installation

You can install tinybig either via pip or directly from the github source code.

Install via Pip

pip install tinybig

Install from Source

git clone https://github.com/jwzhanggy/tinyBIG.git

After entering the downloaded source code directory, tinybig can be installed with the following command:

python setup.py install

If you don't have setuptools installed locally, please consider to first install setuptools:

pip install setuptools 

Install Dependency

Please download the requirements.txt file, and install all the dependency packages:

pip install -r requirements.txt

Verification

If you have successfully installed both tinybig and the dependency packages, now you can use tinybig in your projects.

To ensure that tinybig was installed correctly, we can verify the installation by running the sample python code as follows:

>>> import torch
>>> import tinybig as tb
>>> expansion_func = tb.expansion.taylor_expansion()
>>> expansion_func(torch.Tensor([[1, 2]]))

The output should be something like:

tensor([[1., 2., 1., 2., 2., 4.]])

Tutorials

Tutorial ID Tutorial Title Last Update
Tutorial 0 Quickstart Tutorial July 6, 2024
Tutorial 1 Data Expansion Functions July 7, 2024
Tutorial 2 Extended and Nested Data Expansion TBD

Examples

Example ID Example Title Released Date
Example 0 Failure of KAN on Sparse Data July 9, 2024
Example 1 Elementary Function Approximation July 7, 2024
Example 2 Composite Function Approximation July 8, 2024
Example 3 Feynman Function Approximation July 8, 2024
Example 4 MNIST Classification with Identity Reconciliation July 8, 2024
Example 5 MNIST Classification with Dual LPHM Reconciliation July 8, 2024
Example 6 CIFAR10 Image Object Recognition July 8, 2024
Example 7 IMDB Review Classification July 9, 2024
Example 8 AGNews Topic Classification July 9, 2024
Example 9 SST-2 Sentiment Classification July 9, 2024
Example 10 Iris Species Inference (Naive Probabilistic) July 9, 2024
Example 11 Diabetes Diagnosis (Comb. Probabilistic) July 9, 2024
Example 12 Banknote Authentication (Comb. Probabilistic) July 9, 2024

Library Organizations

Components Descriptions
tinybig a deep function learning library like torch.nn, deeply integrated with autograd
tinybig.expansion a library providing the "data expansion functions" for multi-modal data effective expansions
tinybig.reconciliation a library providing the "parameter reconciliation functions" for parameter efficient learning
tinybig.remainder a library providing the "remainder functions" for complementary information addition
tinybig.module a library providing the basic building blocks for RPN model designing and implementation
tinybig.model a library providing the RPN models for addressing various deep function learning tasks
tinybig.config a library providing model component instantiation from textual configuration descriptions
tinybig.learner a library providing the learners that can be used for RPN model training and testing
tinybig.data a library providing multi-modal datasets for solving various deep function learning tasks
tinybig.output a library providing the processing method interfaces for output processing, saving and loading
tinybig.metric a library providing the metrics that can be used for RPN model performance evaluation
tinybig.util a library of utility functions for RPN model design, implementation and learning

License & Copyright

Copyright © 2024 IFM Lab. All rights reserved.

  • tinybig source code is published under the terms of the MIT License.
  • tinybig's documentation and the RPN papers are licensed under a Creative Commons Attribution-Share Alike 4.0 Unported License (CC BY-SA 4.0).

Project details


Download files

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

Source Distribution

tinybig-0.2.0.tar.gz (32.4 MB view details)

Uploaded Source

Built Distribution

tinybig-0.2.0-py3-none-any.whl (326.2 kB view details)

Uploaded Python 3

File details

Details for the file tinybig-0.2.0.tar.gz.

File metadata

  • Download URL: tinybig-0.2.0.tar.gz
  • Upload date:
  • Size: 32.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tinybig-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d23e5ae4b737e847b946d98839a52227319dba280c2ee83028978fed132311bb
MD5 b8e00604c4e1ef17638898da9bb5f881
BLAKE2b-256 742692d9fba54859bb2373bd8a67d274701043dff3ea167cc562b80b71d8ec60

See more details on using hashes here.

File details

Details for the file tinybig-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tinybig-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 326.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for tinybig-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e490145fc629af08e8c9820c527f533f0915f19aea46a461366e9f3e2d18411c
MD5 fc4a796b3741055613aa267f16664d1e
BLAKE2b-256 4f1241787ae5280b1e4242558405a99dfba858fd17c355ffcc8d001cecd89773

See more details on using hashes here.

Supported by

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