Predict#
To obtain the output of a model on a dataset, one can utilize the predict function, which conveniently saves the result in CSV format at the location of the current model.
1. Using predict
function#
You can train the model using the function predict
in moftransformer
python library.
moftransformer.predict (root_dataset, load_path, downstream=None, split=’all’, save_dir=’None, **kwargs)
root_dataset : A folder containing graph data, grid data, and json of MOFs that you want to train or test. (see generate custom dataset)
load_path: Path for model you want to load and predict (*.ckpt).
downstream: Name of user-specific task (e.g. bandgap, gasuptake, etc).
split: The split you want to predict on your dataset (‘all’, ‘train’, ‘test’, or ‘val’)
save_dir: Path for directory you want to save *.csv file. (default : None -> path for loaded model)
kwargs : configuration for MOFTransformer
Example for predict using python#
from pathlib import Path
import moftransformer
from moftransformer.examples import example_path
root_dataset = example_path['root_dataset']
downstream = example_path['downstream']
# Get ckpt file
seed = 0 # default seeds
version = 0 # version for model. It increases with the number of trains
checkpoint = 'best' # Epochs where the model is stored.
mean = 0
std = 1
load_path = Path(log_dir) / f'pretrained_mof_seed{seed}_from_pmtransformer/version_{version}/checkpoints/{checkpoint}.ckpt'
if not load_path.exists():
raise ValueError(f'load_path does not exists. check path for .ckpt file : {load_path}')
moftransformer.predict(
root_dataset, load_path=load_path, downstream=downstream, split='all', mean=mean, std=std
)
2. Using command-line#
You can proceed with prediction in the command-line
using parameters the same as Python’s predict.
$ moftransformer predict --root_dataset [root_dataset] --load_path [load_path]--downstream [downstream] --split [split] --save_dir [save_dir] ...
For example:
$ moftransformer predict --root_dataset './data' --load_path 'path/of/model' --downstream 'exmaple' --mean 0. --std 1.
For more information, see the help, command by “moftransformer predict -h”.