“ 近年来,神经网络研究方法迅速发展,该研究方法广泛应用于医疗数据的预测、临床诊断和疾病分类,是综合神经科学、信息科学、计算机科学于一体的交叉性科学研究方法。除了可以在专业统计分析软件中进行神经网络分析,你知道吗,在 Excel 也可以进行神经网络分析,简单易用 ”
袁筱祺,陈祎炜,张颜菲,孔雯,赵英英,上海市第一人民医院,上海市嘉定区疾病预防控制中心,公立医院床位利用效率及配置合理性评估研究,健康发展与政策研究 2024 年 04 月 第 27 卷 第 1 期
上海市第一人民医院基于多层感知器的神经网络模型评估床位效能评价及配置数字化模型
01
—
NeuralTools
NeuralTools 是 Palisade 公司开发的一个专门用于在 Excel 中构建和训练神经网络模型的插件。它集成在 Excel 中,使用户能够直接在熟悉的环境中进行神经网络的建模、训练、预测和评估。
风险最小化,潜力最大化
功能概览:
数据建模:使用神经网络对数据进行预测建模。
自动化训练:提供直观的界面,方便地设置和训练神经网络。
预测和分类:支持连续型预测和分类问题。
可视化:提供模型性能的可视化,包括预测结果、误差分析等。
优势
集成在 Excel 中:无需离开 Excel 环境,方便地使用已有的数据和表格功能。
易于使用:友好的用户界面,适合非编程人员。
灵活性:支持模型参数的调整,包括隐藏层数量、神经元数量、激活函数等。
02
—
实现步骤
步骤2,启动 NeuralTools 并配置设置加载插件:确保已安装并在 Excel 中启用了 NeuralTools 插件。在 Excel 菜单栏中,应看到 NeuralTools 选项卡。
指定变量:在 NeuralTools 选项卡中,点击 Define Neural Net。Define Neural Net 窗口设置:
Data Specifications(数据规范):Input Data(输入数据):选择14个输入变量的单元格区域。
Output Data(输出数据):选择输出变量(床位调整方案)的单元格区域。
Variable Types(变量类型):确保输入变量被识别为连续型变量。输出变量设置为分类变量(Category Type)。
Training and Testing Data(训练和测试数据):设置数据分割方式。可以选择:Specify data in worksheet:如果您在工作表中标记了训练和测试样本。Percentage of Data for Testing:指定用于测试的比例(如30%)。
步骤3,配置神经网络模型Network Architecture(网络架构):
Network Type(网络类型):选择 Multilayer Perceptron(MLP)。
Hidden Layers(隐藏层):设置为1个隐藏层。
Number of Neurons(神经元数量):手动输入神经元数量(例如,根据论文,设置为2)。
Activation Functions(激活函数)
Hidden Layer Activation Function(隐藏层激活函数):选择 Tanh(双曲正切函数)。
Output Layer Activation Function(输出层激活函数):选择 Softmax。
Training Options(训练选项)
Algorithm(算法):NeuralTools 默认使用的优化算法是反向传播算法。然而,NeuralTools 不支持直接选择调整的共轭梯度算法。但其内部的训练算法已经优化,适用于大多数应用。
Stopping Conditions(停止条件):设置最大训练次数(Epochs)。可以根据需要调整,以防止过拟合或欠拟合。
Advanced Options(高级选项):如果您需要更精细地调整模型参数,可以点击 Advanced...。在高级设置中,可以调整学习率、动量等参数。
步骤4,训练模型开始训练:配置完成后,点击 Start Training 或 OK。NeuralTools 将开始训练模型。在训练过程中,您可以查看实时的误差曲线和进度。
查看结果:训练完成后,NeuralTools 会在工作表中生成模型的摘要信息。包括模型的准确率、错误率等指标。
步骤5,评估模型性能预测输出:使用训练好的模型,对测试集进行预测。在 NeuralTools 选项卡中,使用 Predict 功能。选择测试数据,生成预测结果。
查看错误分析:NeuralTools 会生成一个错误分析报告,包括混淆矩阵等。
导出预测概率:为了绘制 ROC 曲线,需要获得模型对每个类别的预测概率。NeuralTools 可以将预测的概率输出到工作表中。
绘制 ROC 曲线:NeuralTools 自身对 ROC 曲线的支持有限。您可以将预测概率和实际类别导出,使用其他软件(如 MedCalc、SPSS 或 R)绘制 ROC 曲线。
步骤6,调整模型参数循环调试:为了找到模型的最优参数,您可以调整:隐藏层神经元数量。学习率和其他训练参数。每次调整后,重新训练模型,比较模型性能。
交叉验证:使用交叉验证的方法,更可靠地评估模型的泛化能力。
步骤7,使用外部工具绘制 ROC 曲线导出数据:将包含实际类别和模型预测概率的数据导出为 CSV 文件。
在 MedCalc 中绘制 ROC 曲线:打开 MedCalc,导入数据。使用 ROC 曲线分析 功能,评估模型的性能。评估模型:查看 AUC 值(曲线下面积)、敏感性、特异性等指标。比较不同参数下模型的性能,选择最优模型。
03
—
注意事项
NeuralTools 的优势和注意事项优势
优势
易于使用:集成在 Excel 中,界面友好,无需编程。
快速上手:适合对编程不熟悉的用户,快速建立神经网络模型。
与 Excel 集成良好:可以直接使用 Excel 的数据和功能。
注意事项
算法限制:NeuralTools 内置的训练算法有限,无法指定使用调整的共轭梯度算法。
参数调整有限:高级参数的调整可能不如专业的机器学习框架灵活。
模型复杂性:适合中小型数据集和模型,处理超大型数据集可能有性能限制。
如果算法类型是关键要求
由于 NeuralTools 不支持直接选择调整的共轭梯度算法,如果算法类型对您的研究非常重要,您可能需要考虑其他软件,如 SPSS、Python 的深度学习框架(TensorFlow、Keras)等。
如果主要目的是建立一个性能良好的模型:NeuralTools 足以满足需求,可以帮助您快速建立模型,并进行模型评估。
结合使用:可以在 NeuralTools 中完成模型的构建和初步评估,再将结果导入到其他软件中,完成更深入的分析,如绘制 ROC 曲线。
总结
NeuralTools 可以帮助您在 Excel 中实现多层感知器神经网络模型的构建和训练。您可以设置模型的架构,调整隐藏层、神经元数量和激活函数等参数。虽然无法指定使用调整的共轭梯度算法,但其内置的训练算法已经优化,通常可以得到良好的模型性能。对于模型性能的评估和可视化,特别是绘制 ROC 曲线,建议使用专门的统计软件,如 MedCalc、SPSS 或使用 Python/R 等编程语言的库。
欢迎大家加入 DataMap 知识星球,一起聊一聊您医院执行DRG、DIP改革之后的床位运营体系与问题。
欢迎大家持续关注我们,感谢您的一路相伴!