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:
- Define the models to compute the training and target quantities
- Define the candidate configurations or data
- Compute the FIM for each candidate configuration and the FI of the target quantities
- Solve a convex optimization problem to match the FIMs
- 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
Metadata
Release files for information-matching 1.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| information_matching-1.3.0.tar.gz | 2.3 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| information_matching-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.4 MB
Release files / information_matching-1.3.0.tar.gz
| Download URL | information_matching-1.3.0.tar.gz |
|---|---|
| Size | 2.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
645a305b7fdf388abad99b58694bb932a3de03a5bd10e2ad9736e86bef01ca3a
|
|
BLAKE2b-256 checksum How to use checksums |
4ca7ea045ce2d74eae7a22f2ba5e9e75d5d849e5fd4048abf943808264c1c2a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Release files / information_matching-1.3.0-py3-none-any.whl
| Download URL | information_matching-1.3.0-py3-none-any.whl |
|---|---|
| Size | 38.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9de80cc1f654c22cc67cf3444658803ae439c00d5bac68339a55a83abe7114dd
|
|
BLAKE2b-256 checksum How to use checksums |
8033054f6422751596b6d452e0d7d07bc5169baf5c2196d322abfac6fe776c11
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Security for information-matching 1.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.