tinybig


Nametinybig JSON
Version 0.2.0 PyPI version JSON
download
home_pagehttps://www.tinybig.org
Summarytinybig library for deep function learning
upload_time2024-11-18 21:17:31
maintainerNone
docs_urlNone
authorJiawei Zhang
requires_python>=3.10
licenseMIT License
keywords tinybig rpn deep function learning data transformation function data interdependence function parameter reconciliation function remainder function reconciled polynomial network
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <a href="https://www.tinybig.org">
    <img src="https://raw.githubusercontent.com/jwzhanggy/tinyBIG/main/docs/assets/img/tinybig.png" alt="function_data" style="max-width: 100%; height: auto;">
  </a>
</p>

--------------------------------------------------------------------------------

### Introduction

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

* List of RPN Papers: 
    * RPN 1 (July 2024): https://arxiv.org/abs/2407.04819
    * RPN 2 (November 2024): 
    * RPN 3 (In Development...)
* Official Website: https://www.tinybig.org/
* PyPI: https://pypi.org/project/tinybig/
* IFM Lab: https://www.ifmlab.org/index.html
* Project Description in Chinese: 
    * [RPN 1 项目中文介绍](docs/中文简介/RPN_1)

### 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

```shell
pip install tinybig
```

#### Install from Source

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

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

```shell
python setup.py install
```

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

### Install Dependency

Please download the [requirements.txt](https://github.com/jwzhanggy/tinyBIG/blob/main/requirements.txt) file, and install all the dependency packages:
```shell
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:

```python
>>> import torch
>>> import tinybig as tb
>>> expansion_func = tb.expansion.taylor_expansion()
>>> expansion_func(torch.Tensor([[1, 2]]))
```
The output should be something like:
```python
tensor([[1., 2., 1., 2., 2., 4.]])
```

### Tutorials

|                                      Tutorial ID                                      |           Tutorial Title           |      Last Update      |
|:-------------------------------------------------------------------------------------:|:----------------------------------:|:---------------------:|
|               [Tutorial 0](https://www.tinybig.org/guides/quick_start/)               |        Quickstart Tutorial         |     July 6, 2024      |
| [Tutorial 1](https://www.tinybig.org/tutorials/beginner/module/expansion_function/)  |      Data Expansion Functions      |     July 7, 2024      |
|                                      Tutorial 2                                       | Extended and Nested Data Expansion |          TBD          |

### Examples

|                              Example ID                               |                   Example Title                    | Released Date  |
|:---------------------------------------------------------------------:|:--------------------------------------------------:|:--------------:|
|        [Example 0](https://www.tinybig.org/examples/text/kan/)        |           Failure of KAN on Sparse Data            |  July 9, 2024  |
|  [Example 1](https://www.tinybig.org/examples/function/elementary/)   |         Elementary Function Approximation          |  July 7, 2024  |
|   [Example 2](https://www.tinybig.org/examples/function/composite/)   |          Composite Function Approximation          |  July 8, 2024  |
|    [Example 3](https://www.tinybig.org/examples/function/feynman/)    |           Feynman Function Approximation           |  July 8, 2024  |
|      [Example 4](https://www.tinybig.org/examples/image/mnist/)       | MNIST Classification with Identity Reconciliation  |  July 8, 2024  |
| [Example 5](https://www.tinybig.org/examples/image/mnist_dual_lphm/)  | MNIST Classification with Dual LPHM Reconciliation |  July 8, 2024  |
|     [Example 6](https://www.tinybig.org/examples/image/cifar10/)      |          CIFAR10 Image Object Recognition          |  July 8, 2024  |
|       [Example 7](https://www.tinybig.org/examples/text/imdb/)        |             IMDB Review Classification             |  July 9, 2024  |
|      [Example 8](https://www.tinybig.org/examples/text/agnews/)       |            AGNews Topic Classification             |  July 9, 2024  |
|       [Example 9](https://www.tinybig.org/examples/text/sst2/)        |           SST-2 Sentiment Classification           |  July 9, 2024  |
|     [Example 10](https://www.tinybig.org/examples/tabular/iris/)      |    Iris Species Inference (Naive Probabilistic)    |  July 9, 2024  |
|   [Example 11](https://www.tinybig.org/examples/tabular/diabetes/)    |      Diabetes Diagnosis (Comb. Probabilistic)      |  July 9, 2024  |
|   [Example 12](https://www.tinybig.org/examples/tabular/banknote/)    |   Banknote Authentication (Comb. Probabilistic)	   |  July 9, 2024  |

### Library Organizations

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


### License & Copyright

Copyright © 2024 [IFM Lab](https://www.ifmlab.org/). 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](https://creativecommons.org/licenses/by-sa/4.0/)). 


            

Raw data

            {
    "_id": null,
    "home_page": "https://www.tinybig.org",
    "name": "tinybig",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "tinybig, rpn, deep function learning, data transformation function, data interdependence function, parameter reconciliation function, remainder function, reconciled polynomial network",
    "author": "Jiawei Zhang",
    "author_email": "jiawei@ifmlab.org",
    "download_url": "https://files.pythonhosted.org/packages/74/26/92d9fba54859bb2373bd8a67d274701043dff3ea167cc562b80b71d8ec60/tinybig-0.2.0.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n  <a href=\"https://www.tinybig.org\">\n    <img src=\"https://raw.githubusercontent.com/jwzhanggy/tinyBIG/main/docs/assets/img/tinybig.png\" alt=\"function_data\" style=\"max-width: 100%; height: auto;\">\n  </a>\n</p>\n\n--------------------------------------------------------------------------------\n\n### Introduction\n\n`tinybig` is a Python library developed by the IFM Lab for deep function learning model designing and building.\n\n* List of RPN Papers: \n    * RPN 1 (July 2024): https://arxiv.org/abs/2407.04819\n    * RPN 2 (November 2024): \n    * RPN 3 (In Development...)\n* Official Website: https://www.tinybig.org/\n* PyPI: https://pypi.org/project/tinybig/\n* IFM Lab: https://www.ifmlab.org/index.html\n* Project Description in Chinese: \n    * [RPN 1 \u9879\u76ee\u4e2d\u6587\u4ecb\u7ecd](docs/\u4e2d\u6587\u7b80\u4ecb/RPN_1)\n\n### Citation\n\nIf you find `tinybig` and RPN useful in your work, please cite the RPN paper as follows:\n```\n@article{Zhang2024RPN,\n    title={RPN: Reconciled Polynomial Network Towards Unifying PGMs, Kernel SVMs, MLP and KAN},\n    author={Jiawei Zhang},\n    year={2024},\n    eprint={2407.04819},\n    archivePrefix={arXiv},\n    primaryClass={cs.LG}\n}\n```\n\n### Installation\n\nYou can install `tinybig` either via `pip` or directly from the github source code.\n\n#### Install via Pip\n\n```shell\npip install tinybig\n```\n\n#### Install from Source\n\n```shell\ngit clone https://github.com/jwzhanggy/tinyBIG.git\n```\n\nAfter entering the downloaded source code directory, tinybig can be installed with the following command:\n\n```shell\npython setup.py install\n```\n\nIf you don't have `setuptools` installed locally, please consider to first install `setuptools`:\n```shell\npip install setuptools \n```\n\n### Install Dependency\n\nPlease download the [requirements.txt](https://github.com/jwzhanggy/tinyBIG/blob/main/requirements.txt) file, and install all the dependency packages:\n```shell\npip install -r requirements.txt\n```\n\n### Verification\n\nIf you have successfully installed both `tinybig` and the dependency packages, now you can use `tinybig` in your projects.\n\nTo ensure that `tinybig` was installed correctly, we can verify the installation by running the sample python code as follows:\n\n```python\n>>> import torch\n>>> import tinybig as tb\n>>> expansion_func = tb.expansion.taylor_expansion()\n>>> expansion_func(torch.Tensor([[1, 2]]))\n```\nThe output should be something like:\n```python\ntensor([[1., 2., 1., 2., 2., 4.]])\n```\n\n### Tutorials\n\n|                                      Tutorial ID                                      |           Tutorial Title           |      Last Update      |\n|:-------------------------------------------------------------------------------------:|:----------------------------------:|:---------------------:|\n|               [Tutorial 0](https://www.tinybig.org/guides/quick_start/)               |        Quickstart Tutorial         |     July 6, 2024      |\n| [Tutorial 1](https://www.tinybig.org/tutorials/beginner/module/expansion_function/)  |      Data Expansion Functions      |     July 7, 2024      |\n|                                      Tutorial 2                                       | Extended and Nested Data Expansion |          TBD          |\n\n### Examples\n\n|                              Example ID                               |                   Example Title                    | Released Date  |\n|:---------------------------------------------------------------------:|:--------------------------------------------------:|:--------------:|\n|        [Example 0](https://www.tinybig.org/examples/text/kan/)        |           Failure of KAN on Sparse Data            |  July 9, 2024  |\n|  [Example 1](https://www.tinybig.org/examples/function/elementary/)   |         Elementary Function Approximation          |  July 7, 2024  |\n|   [Example 2](https://www.tinybig.org/examples/function/composite/)   |          Composite Function Approximation          |  July 8, 2024  |\n|    [Example 3](https://www.tinybig.org/examples/function/feynman/)    |           Feynman Function Approximation           |  July 8, 2024  |\n|      [Example 4](https://www.tinybig.org/examples/image/mnist/)       | MNIST Classification with Identity Reconciliation  |  July 8, 2024  |\n| [Example 5](https://www.tinybig.org/examples/image/mnist_dual_lphm/)  | MNIST Classification with Dual LPHM Reconciliation |  July 8, 2024  |\n|     [Example 6](https://www.tinybig.org/examples/image/cifar10/)      |          CIFAR10 Image Object Recognition          |  July 8, 2024  |\n|       [Example 7](https://www.tinybig.org/examples/text/imdb/)        |             IMDB Review Classification             |  July 9, 2024  |\n|      [Example 8](https://www.tinybig.org/examples/text/agnews/)       |            AGNews Topic Classification             |  July 9, 2024  |\n|       [Example 9](https://www.tinybig.org/examples/text/sst2/)        |           SST-2 Sentiment Classification           |  July 9, 2024  |\n|     [Example 10](https://www.tinybig.org/examples/tabular/iris/)      |    Iris Species Inference (Naive Probabilistic)    |  July 9, 2024  |\n|   [Example 11](https://www.tinybig.org/examples/tabular/diabetes/)    |      Diabetes Diagnosis (Comb. Probabilistic)      |  July 9, 2024  |\n|   [Example 12](https://www.tinybig.org/examples/tabular/banknote/)    |   Banknote Authentication (Comb. Probabilistic)\t   |  July 9, 2024  |\n\n### Library Organizations\n\n| Components                                                                              | Descriptions                                                                                   |\n|:----------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------|\n| [`tinybig`](https://www.tinybig.org/documentations/tinybig/)                            | a deep function learning library like torch.nn, deeply integrated with autograd                |\n| [`tinybig.expansion`](https://www.tinybig.org/documentations/expansion/)                | a library providing the \"data expansion functions\" for multi-modal data effective expansions   |\n| [`tinybig.reconciliation`](https://www.tinybig.org/documentations/reconciliation/)      | a library providing the \"parameter reconciliation functions\" for parameter efficient learning  |\n| [`tinybig.remainder`](https://www.tinybig.org/documentations/remainder/)                | a library providing the \"remainder functions\" for complementary information addition           |\n| [`tinybig.module`](https://www.tinybig.org/documentations/module/)                      | a library providing the basic building blocks for RPN model designing and implementation       |\n| [`tinybig.model`](https://www.tinybig.org/documentations/model/)                        | a library providing the RPN models for addressing various deep function learning tasks         |\n| [`tinybig.config`](https://www.tinybig.org/documentations/config/)                      | a library providing model component instantiation from textual configuration descriptions      |\n| [`tinybig.learner`](https://www.tinybig.org/documentations/learner/)                    | a library providing the learners that can be used for RPN model training and testing           |\n| [`tinybig.data`](https://www.tinybig.org/documentations/data/)                          | a library providing multi-modal datasets for solving various deep function learning tasks      |\n| [`tinybig.output`](https://www.tinybig.org/documentations/output/)                      | a library providing the processing method interfaces for output processing, saving and loading |\n| [`tinybig.metric`](https://www.tinybig.org/documentations/metric/)                      | a library providing the  metrics that can be used for RPN model performance evaluation         |\n| [`tinybig.util`](https://www.tinybig.org/documentations/util/)                          | a library of utility functions for RPN model design, implementation and learning               | \n\n\n### License & Copyright\n\nCopyright \u00a9 2024 [IFM Lab](https://www.ifmlab.org/). All rights reserved.\n\n* `tinybig` source code is published under the terms of the MIT License. \n* `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](https://creativecommons.org/licenses/by-sa/4.0/)). \n\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "tinybig library for deep function learning",
    "version": "0.2.0",
    "project_urls": {
        "Download": "https://github.com/jwzhanggy/tinyBIG",
        "Homepage": "https://www.tinybig.org"
    },
    "split_keywords": [
        "tinybig",
        " rpn",
        " deep function learning",
        " data transformation function",
        " data interdependence function",
        " parameter reconciliation function",
        " remainder function",
        " reconciled polynomial network"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f1241787ae5280b1e4242558405a99dfba858fd17c355ffcc8d001cecd89773",
                "md5": "fc4a796b3741055613aa267f16664d1e",
                "sha256": "e490145fc629af08e8c9820c527f533f0915f19aea46a461366e9f3e2d18411c"
            },
            "downloads": -1,
            "filename": "tinybig-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fc4a796b3741055613aa267f16664d1e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 326204,
            "upload_time": "2024-11-18T21:17:28",
            "upload_time_iso_8601": "2024-11-18T21:17:28.758033Z",
            "url": "https://files.pythonhosted.org/packages/4f/12/41787ae5280b1e4242558405a99dfba858fd17c355ffcc8d001cecd89773/tinybig-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "742692d9fba54859bb2373bd8a67d274701043dff3ea167cc562b80b71d8ec60",
                "md5": "b8e00604c4e1ef17638898da9bb5f881",
                "sha256": "d23e5ae4b737e847b946d98839a52227319dba280c2ee83028978fed132311bb"
            },
            "downloads": -1,
            "filename": "tinybig-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b8e00604c4e1ef17638898da9bb5f881",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 32359615,
            "upload_time": "2024-11-18T21:17:31",
            "upload_time_iso_8601": "2024-11-18T21:17:31.157149Z",
            "url": "https://files.pythonhosted.org/packages/74/26/92d9fba54859bb2373bd8a67d274701043dff3ea167cc562b80b71d8ec60/tinybig-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-18 21:17:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jwzhanggy",
    "github_project": "tinyBIG",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "tinybig"
}
        
Elapsed time: 0.43908s