A machine learning (ML) model used to look at photoluminescence (PL) data from our InGaAs quantum wells. This model will provide insight on future quantum wells grown by using a supervised learning agent.
This is a small project that extracts the peak photoluminescense (PL) and intensity out of a previously measured Quantum Well sample. Then, using a machine learning model, you can analyze this with other relevant input parameters to predict peak PL measurements for future Quantum Wells grown.
This project uses three main libraries: RandomForestRegressor, GradientBoostingRegressor, and MultiOutputRegressor.
For more information, please visit their respective repositories and documentation.
- Install necessary packages:
pip install pandas pip install numpy pip install scikit-learn pip install matplotlib pip install openpyxl
-
Create the Raw PL Spectra Folder
- Inside your desired directory (e.g.
PL_ML_Project), create a new folder namedPL_Spectra_Raw - Place all your individual raw PL spectrum files (e.g.,
G25-017-center.csv, etc.) into thisPL_Spectra_Rawfolder. - The filename should exactly match the
QW_SampleID you'll use in yourquantum_well_data.xlsxfile. - Internal Format: Each file should have comment lines starting with #, followed by a header line (e.g.,
lambda [nm] intensity [a.u.]), and then tab-separated numerical data.
- Inside your desired directory (e.g.
-
Create your
quantum_well_data.xlsxfile- Populate this file with your actual data inputs. For example:
QW_SampleIn_FractionWellWidth_nm- etc.
- Populate this file with your actual data inputs. For example:
-
Configure and Run the Peak Extraction Code
python pl_peak_extractor.py
- Verify a file named
extracted_pl_peaks.csv(or.xlsx) appears in yourPL_ML_Projectdirectory.
- Verify a file named
-
Configure and Run the Machine Learning Code
- Ensure
FEATURE_COLUMNS = ['GrowthTemp_Pyro', 'PL_Correction_Factor', etc.]match your exact varying column names. - Adjust
IDEAL_PL_WAVELENGTHandIDEAL_PL_INTENSITYto your specific targets. - Adjust example prediciton values in the
--- Example Recipes ---section. - Save the file and run:
python main_ml_script.py
- Ensure
Plot of Predicted vs Actual Peak Wavelength & Peak Intensity
Example of Photoluminsence Plot for Training

