Skip to main content

Package to support simplified application of machine learning models to datasets in materials science

Project description

All Contributors

PyPI Tests Tests NSF-1931306 DOI

Foundry-ML simplifies the discovery and usage of ML-ready datasets in materials science and chemistry providing a simple API to access even complex datasets.

  • Load ML-ready data with just a few lines of code
  • Work with datasets in local or cloud environments.
  • Publish your own datasets with Foundry to promote community usage
  • (in progress) Run published ML models without hassle

Learn more and see our available datasets on Foundry-ML.org

Documentation

Information on how to install and use Foundry is available in our documentation here.

DLHub documentation for model publication and running information can be found here.

Quick Start

Install Foundry-ML via command line with: pip install foundry_ml

You can use the following code to import and instantiate Foundry-ML, then load a dataset.

from foundry import Foundry
f = Foundry(index="mdf")


f = f.load("10.18126/e73h-3w6n", globus=False)

NOTE: This will download the dataset using HTTPS; if you want to download a very large dataset, set globus=True and be sure to install the Globus Connect Personal endpoint.

If running this code in a notebook, a table of metadata for the dataset will appear:

metadata

We can use the data with f.load_data() and specifying splits such as train for different segments of the dataset, then use matplotlib to visualize it.

res = f.load_data()

imgs = res['train']['input']['imgs']
desc = res['train']['input']['metadata']
coords = res['train']['target']['coords']

n_images = 3
offset = 150
key_list = list(res['train']['input']['imgs'].keys())[0+offset:n_images+offset]

fig, axs = plt.subplots(1, n_images, figsize=(20,20))
for i in range(n_images):
    axs[i].imshow(imgs[key_list[i]])
    axs[i].scatter(coords[key_list[i]][:,0], coords[key_list[i]][:,1], s = 20, c = 'r', alpha=0.5)
Screen Shot 2022-10-20 at 2 22 43 PM

See full examples

Contributing

Foundry is an Open Source project and we encourage contributions from the community. To contribute, please fork from the main branch and open a Pull Request on the main branch. A member of our team will review your PR shortly.

Primary Support

This work was supported by the National Science Foundation under NSF Award Number: 1931306 "Collaborative Research: Framework: Machine Learning Materials Innovation Infrastructure".

Other Support

Foundry-ML brings together many components in the materials data ecosystem. Including MAST-ML, the Data and Learning Hub for Science (DLHub), and the Materials Data Facility (MDF).

MAST-ML

This work was supported by the National Science Foundation (NSF) SI2 award No. 1148011 and DMREF award number DMR-1332851

The Data and Learning Hub for Science (DLHub)

This material is based upon work supported by Laboratory Directed Research and Development (LDRD) funding from Argonne National Laboratory, provided by the Director, Office of Science, of the U.S. Department of Energy under Contract No. DE-AC02-06CH11357. https://www.dlhub.org

The Materials Data Facility

This work was performed under financial assistance award 70NANB14H012 from U.S. Department of Commerce, National Institute of Standards and Technology as part of the Center for Hierarchical Material Design (CHiMaD). This work was performed under the following financial assistance award 70NANB19H005 from U.S. Department of Commerce, National Institute of Standards and Technology as part of the Center for Hierarchical Materials Design (CHiMaD). This work was also supported by the National Science Foundation as part of the Midwest Big Data Hub under NSF Award Number: 1636950 "BD Spokes: SPOKE: MIDWEST: Collaborative: Integrative Materials Design (IMaD): Leverage, Innovate, and Disseminate". https://www.materialsdatafacility.org

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Ben Blaiszik
Ben Blaiszik

🚇 ⚠️ 💻 🔣
KJ Schmidt
KJ Schmidt

🚇 ⚠️ 💻 🔣
ascourtas
ascourtas

🚇 ⚠️ 💻 🔣
Steve Wangen
Steve Wangen

🚇 ⚠️ 💻
ribhavb
ribhavb

💻
Logan Ward
Logan Ward

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

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

foundry_ml-0.7.7.tar.gz (28.4 kB view details)

Uploaded Source

Built Distribution

foundry_ml-0.7.7-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file foundry_ml-0.7.7.tar.gz.

File metadata

  • Download URL: foundry_ml-0.7.7.tar.gz
  • Upload date:
  • Size: 28.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for foundry_ml-0.7.7.tar.gz
Algorithm Hash digest
SHA256 e54056b445c0dde8bdb9563abd838e9984dd2fc95d37460fe815b5cc69eb1d48
MD5 391d49a98d6247585ba8baca059e9223
BLAKE2b-256 9051bf1204e2ef954a72950f83ae86734e57fdd49da08ff3ee4341aa680bbff3

See more details on using hashes here.

File details

Details for the file foundry_ml-0.7.7-py3-none-any.whl.

File metadata

  • Download URL: foundry_ml-0.7.7-py3-none-any.whl
  • Upload date:
  • Size: 27.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for foundry_ml-0.7.7-py3-none-any.whl
Algorithm Hash digest
SHA256 74978d06bf6df99d5b3b442277a956793bdce9fedae881c93c96d33acc81f5ca
MD5 7451876734f4c0d52af2921a8523ba1b
BLAKE2b-256 c1c41ecfe7cff94d01b39e0c720197bade80ef53e7f0206e33787c54671e6640

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