电池论文记录


实现过程

**1.**电池采集原始数据(充放电电压,容量,IC曲线等)做特征工程,提取30个特征点

**2.**根据特征工程数据集通过同质或异质划分数据集,先对数据集添加噪声,随后将数据分发到各个客户端,客户端对数据进行重采样后进行本地训练。

  • 为了解决数据稀缺性问题,研究采用了数据增强技术。具体方法是对每个电池类别的数据进行重采样(Bootstrap),通过有放回采样的方式,增加每个类别的数据量,最终将每个类别的数据扩展到200条记录。

  • 高斯噪声添加:为了进一步保护隐私,并验证模型对噪声的鲁棒性,在增强后的数据上添加了随机高斯噪声,噪声强度由噪声-信号比(NSR)控制,范围从1%到10%。这种噪声的加入是为了评估模型在不同隐私预算下的表现。

  • 数据集被分为训练集和测试集,分别按照80%和20%的比例进行划分。此外,在训练集中再进行40%的二次划分,用于交叉验证。

  • 数据的划分采用分层抽样的方式,确保在每个客户端的数据样本分布中,各个电池类别都有足够的代表性。

同质 (Homogeneous)

  • 定义:同质集成指的是集成模型中的所有基学习器都是同一种类型的模型。在随机森林中,所有基学习器通常都是决策树,因此随机森林本身是一个同质集成模型
  • 特点:虽然所有基学习器都是决策树,但通过对数据集进行不同的采样(即通过引入随机性,如数据采样和特征选择),每棵决策树的结构和预测结果可能会有所不同。这种通过随机性引入的差异使得同质集成的模型在一定程度上具有多样性。

例子

  • 随机森林的每个基学习器都是决策树,虽然它们的模型形式相同,但由于每棵树基于不同的数据子集和特征子集构建,因此形成了同质集成。
异质 (Heterogeneous)
  • 定义:异质集成是指集成模型中的基学习器由不同类型的模型组成。在这种情况下,集成模型会结合多种不同类型的算法来构建。例如,你可以结合决策树、支持向量机(SVM)、神经网络、k近邻算法等模型。
  • 特点:由于不同类型的模型通常具有不同的假设和表现,异质集成模型能够通过结合不同的模型优势,提高整体的预测性能和稳健性。这种方法通常被称为“堆叠(stacking)”或“集成学习”的一种复杂形式。

例子

  • 使用决策树、逻辑回归和支持向量机来创建一个集成模型。不同模型的预测结果可以通过投票、平均或堆叠来聚合。

区别总结:

  • 同质集成:所有基学习器都是相同类型的模型(如随机森林中的所有树都是决策树)。
  • 异质集成:基学习器由不同类型的模型组成(如组合决策树、SVM、神经网络等)。

随机森林是一种典型的同质集成模型,通过引入随机性(如随机选择特征和样本)来增加模型的多样性,从而提升整体表现。

3.使用WDV投票机制,将每个客户端中的结果进行聚合,参与者上传给中心服务器的并不是随机森林模型的原始参数或训练数据,而是每个参与者在本地随机森林模型上预测的结果。随机森林的聚合通常是通过投票,平均法或bagging等方法对每个随机森林的最后预测结果进行聚合,以投票法为例,可以理解为取随机森林结果中概率最大的那个预测结果。

本地模型训练与预测结果生成

每个参与者使用本地数据集训练一个随机森林模型。这些随机森林模型基于本地数据进行训练,而不与其他参与者的数据共享。

  • 随机森林模型由多个决策树组成,参与者使用本地的电池数据进行训练,生成模型。
  • 训练完毕后,参与者会根据本地模型对测试数据或实时数据做出预测,生成预测结果。

上传的内容:预测结果

在联邦学习框架中,参与者并不上传原始数据或者完整的模型参数,而是上传经过模型计算的预测结果。这些预测结果可以是对给定输入数据的分类或回归输出。上传的预测结果通过加密保护,保证在传输过程中不会泄露原始数据。

服务器聚合过程

服务器接收到各个参与者的预测结果后,通过Wasserstein距离投票(WDV)或其他加权投票策略来对这些结果进行聚合。具体步骤如下:

  • 每个参与者上传的预测结果(如对电池类型的分类)被聚合时,服务器会根据每个参与者与全局模型之间的Wasserstein距离,计算该参与者的权重。
  • 这些预测结果会通过加权投票的方式整合为最终的全局预测结果。服务器根据各个参与者的预测分布进行加权,得到最符合全局目标的分类结果。

聚合的目标

这种聚合方式的目标是通过每个参与者的本地模型提供的预测结果,来生成一个全局模型或决策结果。与传统的模型参数聚合不同,论文采用的是基于各地预测结果的聚合,这样不仅保护了参与者的数据隐私,还能有效处理不同参与者之间的数据异构性问题。

差分隐私保护

为了进一步保障隐私,上传的预测结果会在发送之前经过差分隐私处理。例如,参与者会在预测结果上加入高斯噪声,确保即使服务器接收到这些预测结果,也无法还原回原始数据。这样可以有效防止数据泄露,同时保持较高的模型准确性。

**4.**加入隐私保护机制,通过高斯噪声实现,噪声主要是在模型上传阶段和数据增强阶段引入的。在本地训练完模型之后就会加入噪声,在上传到服务器前就会执行的步骤

手工实现adam,在adam中添加噪声实现隐私,可以在每个节点上添加噪声


文章作者: FeiZao
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 FeiZao !
  目录