Skip to main content

IBLM:Inductive-bias Learning Models

What is IBL?

IBL (Inductive-bias Learning) is a new machine learning modeling method that uses LLM to infer the structure of the model itself from the data set and outputs it as Python code. The learned model (code model) can be used as a machine learning model to predict a new dataset.In this repository, you can try different learning methods with IBL.(Currently only binary classification with simple methods is available.)

ibl

  • Currently, only binary classification is supported.

Examples

Use the link below to try it out immediately on Google colab.

  • Binary classification
    • IBL

      • OpenAI:Open In Colab
      • Claude:Open In Colab
    • IBLbagging

      • OpenAI:Open In Colab
      • Claude:Open In Colab

How to Use

  • Installation and Import
pip install iblm

import iblm
  • Setting

    • OpenAI

      os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY"
      
      ibl = iblm.IBLModel(api_type="openai", model_name="gpt-4-0125-preview", objective="binary")
      
    • Azure OpenAI

      os.environ["AZURE_OPENAI_KEY"] = "YOUR_API_KEY"
      os.environ["AZURE_OPENAI_ENDPOINT"] = "xxx"
      os.environ["OPENAI_API_VERSION"] = "xxx"
      
      ibl = iblm.IBLModel(api_type="azure", model_name="gpt-4-0125-preview", objective="binary")
      
    • Google API

      os.environ["GOOGLE_API_KEY"] = "YOUR_API_KEY"
      ibl = iblm.IBLModel(api_type="gemini", model_name="gemini-pro", objective="binary")
      
    • Anthropic API

      os.environ["ANTHROPIC_API_KEY"] = "YOUR_API_KEY"
      ibl = iblm.IBLModel(api_type="", model_name="", objective="binary")
      
  • Model Learning
    Currently, only small amounts of data can be executed.

    code_model = ibl.fit(x_train, y_train)
    
    print(code_model)
    
  • Model Predictions

    y_proba = ibl.predict(x_test)
    

Inductive-bias Learning Models

  • Inductive-bias Learning
    Normal Inductive-bias Learning

    from iblm import IBLBaggingModel
    
    iblm = IBLModel(
        api_type="openai",
        model_name="gpt-4-0125-preview",
        objective="binary"
        )
    
  • Inductive-bias Learning bagging
    Sampling data from a given dataset, we create multiple models, and the average of these models is used as the predicted value.

    from iblm import IBLBaggingModel
    
    iblbagging = IBLBaggingModel(
        api_type="openai",
        model_name="gpt-4-0125-preview",
        objective="binary",
        num_model=20,  # Number of models to create
        max_sample = 2000,  # Maximum number of samples from the data set
        min_sample = 300,  # Minimum number of samples from the data set
        )
    

Supported LLMs

  • OpenAI
    • gpt-4-0125-preview
    • gpt-3.5-turbo-0125
  • Azure OpenAI
    • gpt-4-0125-preview
    • gpt-3.5-turbo-0125
  • Google
    • gemini-pro
  • Anthropic
    • claude-3-opus-20240229
    • claude-3-sonnet-20240229

Contributor

Cite

If you find this repo helpful, please cite the following papers:

@article{tanaka2023inductive,
  title={Inductive-bias Learning: Generating Code Models with Large Language Model},
  author={Tanaka, Toma and Emoto, Naofumi and Yumibayashi, Tsukasa},
  journal={arXiv preprint arXiv:2308.09890},
  year={2023}
}

Metadata

Release files for iblm 1.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iblm 1.0.6
File Size Uploaded
iblm-1.0.6.tar.gz 11.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iblm 1.0.6
File Interpreter ABI Platform
iblm-1.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 31.6 kB

Release files / iblm-1.0.6.tar.gz

Download URL iblm-1.0.6.tar.gz
Size 11.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ad4eb7c5e384a91b6dfe8a736e91614b5b207d280b4b5953d19cb171bb163e21
BLAKE2b-256 checksum
How to use checksums
10423b65f8ba80e07716337d943680c1a85433d89057f15736fd53d134ed256e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.9.18 Darwin/23.3.0

Release files / iblm-1.0.6-py3-none-any.whl

Download URL iblm-1.0.6-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe8661dfba6794518a8e91cdc0503bc1c3e77977530d2e5a1acc9ad7ff70fd23
BLAKE2b-256 checksum
How to use checksums
4588b818304763ac83fc25f99278f163f2b4433f9dc02af3c1ba8b7f4970f384
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.9.18 Darwin/23.3.0

Release history Release notifications | RSS feed

This release

1.0.6 This release

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.3.67

2 release files

0.3.66

2 release files

0.3.65

2 release files

0.3.64

2 release files

0.3.63

2 release files

0.3.62

2 release files

0.3.61

2 release files

0.3.60

2 release files

0.3.59

2 release files

0.3.58

2 release files

0.3.57

2 release files

0.3.56

2 release files

0.3.55

2 release files

0.3.54

2 release files

0.3.53

2 release files

0.3.52

2 release files

0.3.51

2 release files

0.3.50

2 release files

0.3.49

2 release files

0.3.48

2 release files

0.3.47

2 release files

0.3.46

2 release files

0.3.45

2 release files

0.3.44

2 release files

0.3.43

2 release files

0.3.42

2 release files

0.3.41

2 release files

0.3.40

2 release files

0.3.39

2 release files

0.3.38

2 release files

0.3.37

2 release files

0.3.36

2 release files

0.3.35

2 release files

0.3.34

2 release files

0.3.33

2 release files

0.3.32

2 release files

0.3.31

2 release files

0.3.30

2 release files

0.3.29

2 release files

0.3.28

2 release files

0.3.27

2 release files

0.3.26

2 release files

0.3.25

2 release files

0.3.24

2 release files

0.3.23

2 release files

0.3.22

2 release files

0.3.21

2 release files

0.3.20

2 release files

0.3.19

2 release files

0.3.18

2 release files

0.3.17

2 release files

0.3.16

2 release files

0.3.15

2 release files

0.3.14

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.19

2 release files

0.2.18

2 release files

0.2.17

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.1.45

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page