近红外光谱模型构建流程与评估

您所在的位置:网站首页 r语言PLSR模型预测效果评价 近红外光谱模型构建流程与评估

近红外光谱模型构建流程与评估

2023-12-25 16:36| 来源: 网络整理| 查看: 265

模型构建流程

    在样本的光谱数据和样本目标值数据之间建立预测模型,通过获取未知样本的光谱数据,根据建立的预测模型,可以准确预测出物质含量。优秀的预测模型不仅依赖于严格的数据处理和表达能力强的模型算法,还依赖于获取的样本本身的特性,比如样本数据的精准性、数据特征能否反映样本本身的属性等。通常,开发稳健和高精度的物质含量预测模型主要包括:1.实验数据获取;2.异常样本识别和剔除;3.样本集划分为训练集和测试集;4.光谱数据预处理;5.特征波长提取;6.借助于机器学习算法建立物质目标含量的预测模型。预测模型的构建及评估流程图如下图所示。 在这里插入图片描述

模型评估指标

    对预测模型性能和稳定性的评价指标主要有以下四个:决定系数(R2)、交叉验证均方根误差(RMSECV)、预测均方根误差(RMSEP)和相对分析误差(RPD)。R2用于评估样本预测值与真实值之间的相关程度,R2越接近于1,则预测值与真实值之间的相关程度越好;RMSECV用于测试模型对训练集样本的预测能力,RMSECV值越小,表明模型的预测能力越强;RMSEP用于评价模型对测试集的预测能力,RMSEP越小,表明模型的泛化能力越高;RPD用于评价所建模型的稳定性能,RPD越大,模型稳定性能越好,通常RPD>3时,可用于实际运用。具体计算分别由以下公式给出。 在这里插入图片描述 式中,c_i和(c_i ) ̂分别表示第i个样本目标的真实值和预测值,(c_i ) ̅表示样本集中所有样本目标真值的平均值,n表示样本数量,SD表示预测集样本含量值标准差。

代码如下 import numpy as np from sklearn.metrics import * def evaluating(y_true, y_pre, samplesets="验证集"): """ :param y_true: (n_samples, ) :param y_pre: (n_samples, ) :samplesets: string :return: None """ evs_ = explained_variance_score(y_true, y_pre) mae_ = mean_absolute_error(y_true, y_pre) mse_ = mean_squared_error(y_true, y_pre) r2_ = r2_score(y_true, y_pre) rmse_ = np.sqrt(mse_) rpd_ = np.std(y_true)/rmse_ print("*"*100) print(samplesets + ' 解释方差得分 平均绝对误差 决定系数 均方误差 均方根误差 相对分析误差') print('结果 %6.4f %6.4f %6.4f %6.4f %6.4f %6.4f' % (evs_, mae_, r2_, mse_, rmse_, rpd_)) print("*"*100) np.random.seed(666) y_true = np.random.randint(10, 100, 50) noise = np.random.normal(size=(50,)) y_pre = [elem+n for elem, n in zip(list(y_true), list(noise))] evaluating(y_true, y_pre) 结果展示

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3