神经网络等机器学习模型的看法

这段时间在电池研究上用了神经网络进行SOC、SOH估算,同时也见到周围人用神经网络解决了微电网控制等问题,对于神经网络有了一些理解。

神经网络的定位

神经网络本身就是属于一个机器学习的模型,无论你是BP、CNN、LSTM,还是更先进的模型,本质上其实都是属于一个数学模型。这个模型可以理解为一堆数学公式加上一堆可调参数(权重参数)和不可调参数(超参数)。

引入神经网络后,研究方法通常都属于无模型方法(model-free),这里神经网络的使用,取代了控制对象的机理建模,这样无论是参数辨识,还是控制,都可以减少对原有对象的研究。下面以电池的参数辨识为例。

电池的SOC参数辨识,本来需要先用电化学 / 电路原理搭电池对象模型,然后利用RLS等算法将测试数据对电池模型下拟合,得到参数后,再根据模型参数和SOC、SOH的拟合关系,得到这些状态。这个过程中,电池模型、参数拟合关系都是需要对电池进行机理研究获得的。

而利用神经网络进行状态估算时,直接把测试数据和要辨识的状态作为训练数据,训练好的模型在输入测试数据后,就得到估算的状态。这个过程无需对电池本身了解。

神经网络研究什么

神经网络结构的改进自然是重要的研究,但是很多时候其实都是把不同神经网络模型结合起来,这样确实能够改进预测效果,但是这也会让模型复杂,并且预测过程的黑盒化更加严重。

神经网络的训练过程也是很有意义,无论是权重参数的调节、超参数的选择,都有大量的算法研究。比如遗传算法、粒子群算法等。

此外,很多时候,我们属于使用神经网络的人,对自己的研究领域是有一定了解的,此时,可以结合自己的专业知识,对整体使用流程进行部分改善。例如,电池研究时,可以根据机理分析,建立一个模型,提取得到合适的参数,利用这些参数结合神经网络,这样无需知道参数和SOC、SOH的拟合关系,也能实现预测。这种改进是在数据预处理上进行了改进,它可以减少输入数据的数量,对于减少计算量和训练难度很有帮助。

相关推荐
kisshyshy21 小时前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范
To_OC1 天前
LC 49 字母异位词分组:想到哈希表很简单,选对 key 才是精髓
javascript·算法·leetcode
用户938515635072 天前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法
To_OC2 天前
手写快排次次翻车?别死背快排模板了,这才是面试官想听的底层逻辑
javascript·算法·排序算法
饼干哥哥2 天前
Reddit VOC调研太慢?搭一个AI专家团队半小时洞察任何品类|以猫用饮水机为例
人工智能·算法·ai编程
地平线开发者2 天前
Transformer模型部署之性能优化指南
算法
地平线开发者2 天前
人在途中:从“编译失败”到“模型可落地”——CUDA 自定义算子
算法·自动驾驶
半个落月2 天前
从递归到快速排序:用 JavaScript 把分治思想讲明白
javascript·算法·面试
小月土星2 天前
JavaScript 快速排序:从 pivot、双指针到分治思想
javascript·算法·面试
小月土星2 天前
JavaScript 递归入门:从 1 到 n 求和,再到数组扁平化
javascript·算法·面试