Skip to content

XinRong1999/MatOpt-Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

MatOpt Lab

A browser-based materials data analysis and machine-learning recommendation tool.

Overview

MatOpt Lab is a lightweight static browser application for experimental materials data analysis. It allows users to create projects, define custom columns, input data, train regression models, and generate candidate recommendations based on trained machine-learning models.

The software is designed for small scientific datasets, especially materials science datasets such as composition-property relationships, conductivity prediction, hardness prediction, sintering-condition optimization, and other experimental optimization tasks.

Key Features

  • Project-based workflow
  • Local browser storage
  • Project import/export
  • Custom columns and units
  • Editable data table
  • Basic plotting
  • Machine-learning regression
  • Gaussian Process Regression (GPR)
  • Prediction with uncertainty
  • Candidate recommendation
  • Composition sum constraint
  • Exhaustive grid search
  • Random sampling option
  • Top-N candidate ranking
  • CSV export
  • Multilingual interface: English, Chinese, Japanese

No Installation Required

MatOpt Lab runs directly in a browser.

No Python installation. No server. No database. No login. No cloud upload.

How to Start

Local Use

Open one of the following files in a modern browser:

  • 软件启动.html
  • index.html

Recommended browsers:

  • Google Chrome
  • Microsoft Edge
  • Safari

GitHub Pages

When deployed to GitHub Pages, the app starts automatically from:

index.html

Basic Workflow

  1. Open MatOpt Lab.
  2. Create a new project.
  3. Define data columns and units.
  4. Enter or import experimental data.
  5. Train a regression model.
  6. Use the Prediction page for single-condition prediction.
  7. Use the Recommendation page to generate candidate conditions.
  8. Export project files or recommended candidates.

Projects

MatOpt Lab uses a project-based workflow. A project stores the column definitions, units, table rows, plot settings, model settings, prediction settings, and recommendation settings needed for one dataset or experiment series.

Create a project from the Dashboard, choose a template, and then open the project workspace to define columns and enter data.

Input Data

Use the Columns page to define each variable, including name, data type, unit, role, and optional notes.

Use the Data page to add rows manually or import a CSV file. CSV headers can create new columns when needed.

Machine Learning

MatOpt Lab supports regression-based prediction for tabular scientific data.

Available models may include:

  • Linear Regression
  • Ridge Regression
  • Random Forest Regression
  • Gaussian Process Regression

Model availability depends on the current build.

Gaussian Process Regression

Gaussian Process Regression is useful for small materials datasets because it can provide both predicted values and uncertainty estimates.

GPR does not use neural-network-style epochs. If optimization is enabled, the displayed iterations are used to optimize kernel hyperparameters such as:

  • length scale
  • signal variance
  • noise variance

GPR results should be interpreted carefully, especially when the dataset is small.

Prediction

The Prediction page uses a trained model to estimate the target value for a single new condition. When the selected model supports uncertainty, the prediction output may include an uncertainty estimate.

Recommendation

The Recommendation page uses a trained model to generate and rank new candidate conditions.

It does not simply select rows from the original data.

Users can:

  • select a target property
  • choose high-to-low or low-to-high ranking
  • define feature ranges
  • use exhaustive grid search
  • use random sampling
  • apply composition constraints
  • export Top-N recommendations as CSV

Composition Constraint

For materials composition data, users can require selected composition columns to sum to a target value, usually 100 wt%.

Example:

Composition_A_wt + Composition_B_wt + Additive_wt = 100

Auto-complete mode is recommended because it calculates one composition column from the others and avoids unrealistic composition totals.

Project Backup

Users can export a project file and import it later.

Project files contain:

  • project name
  • columns
  • units
  • data rows
  • model settings
  • recommendation settings

MatOpt Lab can also export an all-project backup file.

Data Privacy

All data are stored locally in the browser.

MatOpt Lab does not upload user data to any server.

Important: Browser storage can be cleared by browser settings or manual cleanup. Export important projects regularly as backup files.

Limitations

MatOpt Lab is a data analysis and preliminary machine-learning support tool.

Predictions depend on:

  • dataset size
  • data quality
  • feature selection
  • model choice
  • validation method
  • experimental noise

Recommended candidates are model-predicted candidates within the user-defined search space. They are not guaranteed to be true experimental optima.

Always validate important recommendations experimentally.

Suggested Citation / Acknowledgement

If this software is used in academic work, please cite or acknowledge the GitHub repository when available.

中文快速开始

MatOpt Lab 是一个浏览器版材料数据分析与机器学习推荐工具。

基本流程:

  1. 打开 软件启动.htmlindex.html
  2. 创建项目。
  3. 自定义列名和单位。
  4. 输入实验数据。
  5. 训练机器学习模型。
  6. 使用预测页面进行单点预测。
  7. 使用推荐页面生成候选实验条件。
  8. 导出项目或推荐结果。

注意:软件数据默认保存在浏览器本地。重要项目请定期导出备份文件。

日本語クイックスタート

MatOpt Lab は、ブラウザ上で動作する材料データ解析・機械学習推薦ツールです。

基本手順:

  1. ソフト起動.html または index.html を開く。
  2. プロジェクトを作成する。
  3. 列名と単位を定義する。
  4. 実験データを入力する。
  5. 機械学習モデルを学習する。
  6. 予測ページで単一条件の予測を行う。
  7. 推薦ページで候補条件を生成する。
  8. プロジェクトまたは推薦結果をエクスポートする。

注意:データはブラウザ内に保存されます。重要なプロジェクトは定期的にバックアップしてください。

About

A browser-based materials data analysis and machine-learning recommendation tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors