Skip to main content

Information-matching method of optimal experimental design and active learning

Project description

Information-matching

Information-matching is a Python package that provides modules and functions for performing information-matching calculations. These calculations are designed to identify informative training data, making the package particularly useful for Optimal Experimental Design (OED) and Active Learning (AL) tasks.

Installation

Using pip

pip install information-matching

From source

git clone https://github.com/yonatank93/information-matching.git
cd information-matching
python -m pip install .              # For a minimal installation
python -m pip install -e ".[dev]"    # For development and testing

Usage

A typical workflow to use information-matching method to find the indicator configurations and the corresponding weights is as follows:

  1. Define the models to compute the training and target quantities
  2. Define the candidate configurations or data
  3. Compute the FIM for each candidate configuration and the FI of the target quantities
  4. Solve a convex optimization problem to match the FIMs
  5. Propagate the uncertainties to the target quantities

We provide toy examples that illustrate the common workflow to use information-matching method in OED and AL.

Examples

We provide several examples of the application of information-matching in OED and AL problems in several different scientific fields. Use these examples to reproduce the results in the corresponding paper. Note: These examples have additional dependencies. Please read the README file for those examples.

  • Toy_example - This folder contains notebooks that show general workflows for using information-matching in OED and AL problems. Use these examples as a tutorial on how to use this package.
  • PWS - This folder contains application of the information-matching method to solve the optimal sensor placement problem in power systems.
  • ORCA - This folder contains applications of the information-matching method in underwater acoustic problem, where the model used is a normal-mode model called ORCA. The applications include source localization and ocean environment inference.
  • SW_Si - This folder contains the test cases that use Stillinger-Weber potential for silicon. The candidate configurations consist of diamond silicon configurations with various lattice parameter. There are various cases with different target QoI and different choice of target error barrs used in these applications.
  • SW_MoS2 - This folder contains the calculation to find the indicator configurations via information-matching method to train a SW potential for molybdenum disulfide.

How to cite

If you use this package, please cite our accompanying paper:

@article{information_matching,
  title		= {An information-matching approach to optimal experimental design and active learning}, 
  volume	= {128},
  rights	= {All rights reserved},
  ISSN		= {0003-6951},
  DOI		= {10.1063/5.0296026},
  number	= {6},
  journal	= {Applied Physics Letters},
  author	= {Kurniawan, Yonatan and Neilsen, Tracianne B. and Francis, Benjamin L. and Stankovic, Alex M. and Wen, Mingjian and Nikiforov, Ilia and Tadmor, Ellad B. and Bulatov, Vasily V. and Lordi, Vincenzo and Transtrum, Mark K.},
  year		= {2026},
  month		= feb,
  pages		= {064104}
}

Contact

Yonatan Kurniawan
email: kurniawanyo@outlook.com

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

information_matching-1.3.0.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

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

information_matching-1.3.0-py3-none-any.whl (38.1 kB view details)

Uploaded Python 3

File details

Details for the file information_matching-1.3.0.tar.gz.

File metadata

  • Download URL: information_matching-1.3.0.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for information_matching-1.3.0.tar.gz
Algorithm Hash digest
SHA256 645a305b7fdf388abad99b58694bb932a3de03a5bd10e2ad9736e86bef01ca3a
MD5 afcf97ae8d7ea60edeb8cbd9f0220de8
BLAKE2b-256 4ca7ea045ce2d74eae7a22f2ba5e9e75d5d849e5fd4048abf943808264c1c2a6

See more details on using hashes here.

File details

Details for the file information_matching-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for information_matching-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9de80cc1f654c22cc67cf3444658803ae439c00d5bac68339a55a83abe7114dd
MD5 00d3d83b8531913d9a6d66b950b16697
BLAKE2b-256 8033054f6422751596b6d452e0d7d07bc5169baf5c2196d322abfac6fe776c11

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