Skip to content

Simplifying the discovery and usage of machine-learning ready datasets in materials science and chemistry

License

Notifications You must be signed in to change notification settings

rjacobs914/foundry

This branch is 866 commits behind MLMI2-CSSI/foundry:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d97507b · Mar 1, 2023
Mar 1, 2023
Feb 15, 2023
Aug 19, 2021
Feb 15, 2023
Feb 16, 2023
Oct 21, 2022
Mar 25, 2021
Aug 16, 2022
Jun 24, 2020
Feb 16, 2023
Aug 26, 2022
Oct 24, 2022
Sep 2, 2022
Feb 16, 2023
Oct 24, 2022
May 4, 2022

Repository files navigation

PyPI Tests Tests NSF-1931306

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=True)

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

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

About

Simplifying the discovery and usage of machine-learning ready datasets in materials science and chemistry

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%