掌桥专利:专业的专利平台
掌桥专利
首页

用电用户的分类方法、装置和计算机设备

文献发布时间:2023-06-19 18:37:28


用电用户的分类方法、装置和计算机设备

技术领域

本申请涉及用电行为检测技术领域,特别是涉及一种用电用户的分类方法、装置、计算机设备、存储介质和计算机程序产品。

背景技术

为了加强电网电力营销的精准投送,需要对客户的用电行为进行分析。其中可以通过对客户的缴费行为的分析,来研究客户的用电行为。

当前,电力系统内部的部分用电企业的对单个用户的缴费行为的分析,已经具备很多研究成果,但是因为各个用电企业的数据存在保密情况,属于一个个单独的数据孤岛,分别进行分析,有数据量少,各个企业是数据未被充分利用等缺点,理想情况为将各个企业的数据集中起来进行分析,将数据最大化的利用,但存在数据泄露的风险。

发明内容

基于此,有必要针对上述技术问题,提供一种能够保护用户隐私的用电用户的分类方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种用电用户的分类方法,所述方法包括:

获取客户端记录的用电用户的第一交互行为数据,以及与服务端交互获取第一电力消费数据;

对所述第一交互行为数据和第一电力消费数据进行预处理;

将预处理后的所述第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,所述分类模型根据所述第一交互行为数据提取所述用电用户的第一交互特征,根据所述第一电力消费数据提取所述用电用户的第一消费特征,根据所述第一交互特征和所述第一消费特征预测所述用电用户的分类,所述分类模型通过服务端和多个客户端进行横向联邦学习训练得到;

将所述用电用户的分类反馈至服务端,由所述服务端根据所述用电用户的分类对应的推荐策略,对所述用电用户进行内容推荐。

在其中一个实施例中,所述服务端和多个客户端进行横向联邦学习的方式,包括:

多个客户端获取用电用户的本地的第二交互行为数据,以及与服务端交互获取第二电力消费数据;

各客户端对所述第二交互行为数据和所述第二电力消费数据进行预处理;

各客户端基于预处理后的所述第二交互行为数据和所述第二电力消费数据在本地对待训练的分类模型进行训练,得到所述分类模型的第一参数;

各客户端对所述分类模型的第一参数进行加密,将所述加密的分类模型的第一参数发送至服务端,服务端基于各客户端的加密的分类模型的第一参数进行聚合,得到加密的所述分类模型的第二参数,并分发至各客户端;

各客户端对所述加密的分类模型的第二参数进行解密,并根据所述解密的分类模型的第二参数更新本地的所述分类模型的参数;

迭代返回各客户端基于预处理后的所述第二交互行为数据和所述第二电力消费数据在本地对待训练的分类模型进行训练,得到所述分类模型的第一参数的步骤,直到满足训练迭代结束条件,得到训练好的分类模型。

在其中一个实施例中,所述分类模型为K-means模型;

各客户端基于预处理后的所述第二交互行为数据和所述第二电力消费数据在本地对待训练的分类模型进行训练,得到所述分类模型的第一参数,包括:

各客户端基于预处理后的所述第二交互行为数据和所述第二电力消费数据采用K-means模型进行聚类,获取K-means模型的第一参数,所述第一参数包括聚类中心位置信息。

在其中一个实施例中,所述各客户端对所述分类模型的第一参数进行加密,将所述加密的分类模型的第一参数发送至服务端,包括:

各客户端读取所述分类模型的第一参数,得到所述第一参数的数据文件大小;

根据所述数据文件大小对所述第一参数分组,得到分组个数;

将各分组和种子密钥作为AES加密算法的输入,利用128位Rijndae算法对所述分组和种子密钥进行加密,循环进行n次加密,得到n组密文;

将n组密文先后连接起来,并在最后拼接种子密钥,根据拼接后的结果得到加密的分类模型的第一参数,并发送至服务端。

在其中一个实施例中,所述各客户端对所述第二交互行为数据和所述第二电力消费数据进行预处理,包括:

各客户端对所述第二交互行为数据和所述第二电力消费数据中的缺失值采用随机森林回归算法填充,并采用XGBoost算法进行异常检测,删除异常数据。

在其中一个实施例中,所述第一交互行为数据包括:缴费数据、欠费数据、应缴电费数据和用户类型;所述第一电力消费行为数据包括:工单数据、收费记录数据和投诉行为数据,所述欠费数据、所述收费记录数据和所述投诉行为数据为第一权重数据,所述根据所述第一交互特征和所述第一消费特征预测所述用电用户的分类,包括:

根据所述第一权重数据、所述第一交互特征和所述第一消费特征预测所述用电用户的分类。

第二方面,本申请提供了一种用电用户的分类装置,所述装置包括:

获取模块,用于获取客户端记录的用电用户的第一交互行为数据,以及与服务端交互获取第一电力消费数据;

预处理模块,用于对所述第一交互行为数据和第一电力消费数据进行预处理;

处理模块,用于将预处理后的所述第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,所述分类模型根据所述第一交互行为数据提取所述用电用户的第一交互特征,根据所述第一电力消费数据提取所述用电用户的第一消费特征,根据所述第一交互特征和所述第一消费特征预测所述用电用户的分类,所述分类模型通过服务端和多个客户端进行横向联邦学习训练得到;

推荐模块,用于将所述用电用户的分类反馈至服务端,由所述服务端根据所述用电用户的分类对应的推荐策略,对所述用电用户进行内容推荐。

第三方面,本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。

第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。

第五方面,本申请提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。

上述用电用户的分类方法、装置、计算机设备、存储介质和计算机程序产品,通过客户端将用电用户的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,通过分类模型预测用电用户的分类,由于分类模型是通过服务端和多个客户端进行横向联邦学习训练得到的,因此分类模型在训练过程中不需要将用电用户的数据集中起来分析,而避免了数据泄漏风险。客户端根据分类模型得到用电用户分类后反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐,以实现电网公司的营销内容的准确投送。

附图说明

图1为一个实施例中用电用户的分类方法的应用环境图;

图2为一个实施例中用电用户的分类方法的流程示意图;

图3为一个实施例中一种分类模型的训练方法的流程示意图;

图4为一个实施例中基于横向联邦学习的K-means模型用电用户分类方法的流程示意图;

图5为一个实施例中用电用户的分类装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的用电用户的分类方法,可以应用于如图1所示的应用环境中。其中,多个客户端102与服务端104进行通信。各客户端102获取记录的用电用户的第一交互行为数据,以及从服务端104获取第一电力消费数据,对第一交互行为数据和第一电力消费数据检进行预处理,将预处理后的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,分类模型根据第一交互行为数据提取用电用户的第一交互特征,根据第一电力消费数据提取用电用户的第一消费特征,根据第一交互特征和第一消费特征预测用电用户的分类,分类模型通过服务端104和多个客户端102进行横向联邦学习训练得到,将用电用户的分类反馈至服务端104,由服务端104根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐,在客户端102进行展示。

其中,客户端102可以是带显示屏的电表、智能电表或企业服务器,服务端104可以是电力系统内部的服务器,该服务器用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供了一种用电用户的分类方法,以该方法应用于图1中的客户端为例进行说明,包括以下步骤:

S202,获取客户端记录的用电用户的第一交互行为数据,以及与服务端交互获取第一电力消费数据。

其中,用电用户的第一交互行为数据指可以从客户端单独获取的数据类型,包括缴费数据、欠费数据、应缴电费数据和用户类型等。

例如,对于某用户,缴费数据指某月份该用户的所产生的电费,欠费数据指某月份该用户累计所欠电费,应缴纳电费数据指该用户当月需缴纳的电费,用户类型指该用户的是否属于费控用户,也即需要先存电费,后用电的用户。

具体地,电费数据的计算需根据当地的电费单价与用户产生的实际电费确定。

其中,服务端交互的第一电力消费数据指需从电力公司才能得到的数据,包括工单数据、收费记录数据和投诉行为数据等。

例如,电力公司与某用户交互过程中产生的工单数据指,用户用电行为的单据,包括用户营业信息、停电时段等,收费记录数据指电力公司对某用户某月份所缴纳电费所做的记录,投诉行为指,用户关于电力质量、供电时间等向电力公司进行的电话或网络投诉,电力公司保存投诉内容并形成投诉行为数据。

需说明的是,客户端与服务端交互所产生的数据还包括:催办督办数据、客户通话数据等。

其中,催办督办数据为客户端发起的电网供电请求、电力维修请求等,或服务端发起的电费缴纳通知、停电提醒等。

客户通话数据包括客户端与服务端通话次数、通话内容,其中,采用语言识别功能提取通话内容的关键字,若关键字涉及电费、供电等电力行业关键字,该通话内容被标记被一次有效通话次数,同理,客户通话数据可以通过客户端或服务端发起并保存。

S204,对第一交互行为数据和第一电力消费数据进行预处理。

其中,对第一交互行为数据和第一电力消费数据的数据缺失值进行随机森林回归算法进行填充,将填充后的数据使用XGBoost算法进行异常检测,删除异常数据,并根据数据的优先级次序,筛选出预处理后的第一交互行为数据和第一电力消费数据。

具体地,数据的优先级次序的确定过程包括:将第一交互行为数据和第一消费数据进行归一化操作,将归一化后的数据输入k-means模型,通过计算影响因子大小,判断第一交互行为数据和第一电力消费数据的优先级。

需说明的是,优先级次序靠前的数据包括欠费数据、收费记录数据和投诉行为数据。

S206,将预处理后的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,分类模型根据第一交互行为数据提取用电用户的第一交互特征,根据第一电力消费数据提取用电用户的第一消费特征,根据第一交互特征和第一消费特征预测用电用户的分类,分类模型通过服务端和多个客户端进行横向联邦学习训练得到。

其中,预先训练好的分类模型可以是k-means模型,k-means聚类分析的输入为k的取值、初始值,k的取值一般为5,也即将第一交互行为数据和第一电力消费数据将用户分为5类用户,初始值为第一交互行为数据和第一电力消费数据,进行k-means聚类分析后将根据第一交互行为数据提取用电用户的第一交互特征,根据第一电力消费数据提取用电用户的第一消费特征,以及根据第一交互特征和第一消费特征预测用电用户的分类。

具体地,用电用户的分类分别为重点保持用户、重点发展用户、重点挽留用户、普通用户和一般用户。

其中,联邦学习(Federated Learning)是一种分布式机器学习技术,在多个客户端和服务端之间进行分布式训练,在不需要客户端之间数据交换的前提下,仅通过交换模型参数或中间结果,完成模型训练。

联邦学习还包括横向联邦学习和纵向联邦学习,其中,横向联邦学习侧重于多个客户端之间的特征相似,纵向联邦学习侧重于多个客户端之间的特征不相似。

具体地,采用横向联邦学习训练得到的分类模型对多个客户端的第一交互特征和第一消费特征进行分析,得到用电用户的分类。

S208,将用电用户的分类反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐。

其中,用电用户的分类类型按照重要程度依次为重点保持用户、重点发展用户、重点挽留用户、普通用户和一般用户。

具体地,对于重点保持用户、重点发展用户和重点挽留用户,投放与分类类型相适应的电网电力营销内容,对于普通用户和一般用户,投放电费预警信息和基础电网电力营销内容。

可理解地,还可以按照客户端的用户行为进行分类,例如,某用户欠费数据较多,对该用电用户进行费用预警内容推荐。

上述用电用户的分类方法中,通过客户端将用电用户的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,通过分类模型预测用电用户的分类,由于分类模型是通过服务端和多个客户端进行横向联邦学习训练得到的,因此分类模型在训练过程中不需要将用电用户的数据集中起来分析,而避免了数据泄漏风险。客户端根据分类模型得到用电用户分类后反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐,以实现电网公司的营销内容的准确投送。

在一个实施例中,为了使用分类模型,如图3所示,提供了一种分类模型的训练方法,具体地,服务端和多个客户端进行横向联邦学习的方式,包括:

S302,多个客户端获取用电用户的本地的第二交互行为数据,以及与服务端交互获取第二电力消费数据。

其中,第二交互行为数据可以是客户端单独获取的数据类型,包括缴费数据、欠费数据、应缴电费数据和用户类型等。

第二电力消费数据可以是从电力公司得到的数据,包括工单数据、收费记录数据和投诉行为数据等。

S304,各客户端对第二交互行为数据和第二电力消费数据进行预处理。

其中,预处理的方式可以是,对第二交互行为数据和第二电力消费数据进行数据清洗。

具体地,数据清洗的方式可以是对第二交互行为数据和第二电力消费数据中的数据缺失值进行填充,再将填充后的数据进行异常检测,删除异常数据,以完成数据清洗。

S306,各客户端基于预处理后的第二交互行为数据和第二电力消费数据在本地对待训练的分类模型进行训练,得到分类模型的第一参数。

其中,待训练的分类模型可以是K-means聚类分析模型,分类模型的第一参数包括K-means聚类分析模型中的聚类数、模型最大迭代次数、聚类中心初始值等。

S308,各客户端对分类模型的第一参数进行加密,将加密的分类模型的第一参数发送至服务端,服务端基于各客户端的加密的分类模型的第一参数进行聚合,得到加密的分类模型的第二参数,并分发至各客户端。

其中,对第一参数进行加密的方式可以是同态加密的方式,同态加密包括半同态加密、加法同态、Paillier算法等具备满足隐私计算需求的算法。

具体地,各客户端对分类模型的第一参数进行半同态加密,将半同态加密的分类模型的第一参数发送至服务端,服务端基于各客户端的半同态加密的分类模型的第一参数进行聚合,得到加密的分类模型的第二参数,并分发至各客户端。需说明的,各个客户端的第一参数数值不一定相同。

其中,聚合的方式可以是加权平均,如,将各客户端的半同态加密后的分类模型的第一参数,进行加权平均,得到加密后的分类模型的第二参数。

S310,各客户端对加密的分类模型的第二参数进行解密,并根据解密的分类模型的第二参数更新本地的分类模型的参数。

以此,加密和解密均在客户端进行,保证了各个客户端分类模型参数的私密性,解决了数据泄漏的风险。

S312,判断分类模型是否达到迭代结束条件,若是,则结束,若否,则返回S306。

其中,迭代返回各客户端基于预处理后的第二交互行为数据和第二电力消费数据在本地对待训练的分类模型进行训练,得到分类模型的第一参数的步骤,直到满足训练迭代结束条件,得到训练好的分类模型。

其中,在各客户端得到第二参数后更新分类训练模型,将第二交互行为数据和第二电力消费数据重新输入至更新后的分类训练模型,直至满足训练迭代结束条件,得到训练好的分类模型。

本实施例中,通过对各个客户端获取第二交互行为数据和第二电力消费数据,并在客户端对分类模型进行训练,避免了数据泄漏的风险,综合多个客户端的分类模型的第一参数,得到第二参数后更新各个客户端的分类模型参数,以完成模型迭代过程,进一步地,在参数传输过程均加密,保证了各个客户端分类模型参数的私密性,解决了数据泄漏的风险。

在一个实施例中,分类模型为K-means模型;各客户端基于预处理后的第二交互行为数据和第二电力消费数据在本地对待训练的分类模型进行训练,得到分类模型的第一参数,包括:各客户端基于预处理后的第二交互行为数据和第二电力消费数据采用K-means模型进行聚类,获取K-means模型的第一参数,第一参数包括聚类中心位置信息。

其中,K-means模型的第一参数,包括聚类数、模型最大迭代次数、聚类中心初始值、收敛条件、是否预计算初始值距离等。

聚类中心位置信息包括聚类中心初始值和聚类数。

具体地,采用K-means模型,对预处理后的第二交互行为数据和第二电力消费数据进行聚类,得到5类聚类结果和K-means模型的第一参数。

本实施例中,在得到初步的5类聚类结果的同时,生成K-means模型的第一参数,以便后续完成模型训练得到更准确的聚类结果。

为了保证客户端数据的私密性,需要对数据进行加密,因此,在一个实施例中,各客户端对分类模型的第一参数进行加密,将加密的分类模型的第一参数发送至服务端,包括:各客户端读取分类模型的第一参数,得到第一参数的数据文件大小;根据数据文件大小对第一参数分组,得到分组个数;将各分组和种子密钥作为AES加密算法的输入,利用128位Rijndae算法对分组和种子密钥进行加密,循环进行n次加密,得到n组密文;将n组密文先后连接起来,并在最后拼接种子密钥,根据拼接后的结果得到加密的分类模型的第一参数,并发送至服务端。

其中,采用Logistic混沌映射序列改进AES加密算法对分类模型的第一参数进行加密。

具体地,在某一客户端中,对于分类模型的第一参数的分组个数一般为至少两个。

其中,Rijndae算法是分组密码算法,于2000年被选为新一代的标准密码算法AES,Rijndae算法的分组长度和密钥长度可以在32位、128位和256位中进行选择。

具体地,将各分组和种子密钥作为AES加密算法的输入,利用128位Rijndae算法对分组和种子密钥进行加密,循环进行n次加密,得到n组密文,将n组密文先后连接起来,并在最后拼接种子密钥,根据拼接后的结果得到加密的分类模型的第一参数,并发送至服务端。

需说明的是,在其中一个实施例中,各个客户端对收到的第二参数进行解密,预读密文数据并计算其大小,选取文件流的后128位作为解密种子密钥,根据密文大小和分组长度128位,计算密文块,即解密次数n;密文分组与种子密钥作为AES解密算法的输入,利用128位Rijndae算法对其解密,循环进行n次解密,得到n组明文,将n组明文先后连接起来,并使用解密后的参数结果更新各自的分类模型的参数。

本实施例中,通过采用128位Rijndae算法对分组和种子密钥进行加密,保证了客户端数据的私密性。

在一个实施例中,各客户端对第二交互行为数据和第二电力消费数据进行预处理,包括:各客户端对第二交互行为数据和第二电力消费数据中的缺失值采用随机森林回归算法填充,并采用XGBoost算法进行异常检测,删除异常数据。

其中,随机森林回归算法为数据清洗的一种方式。面对缺失值时,有三种方式,第一种方式,直接将少量具有缺失值的数据删除;第二种方式,将大量缺失值的数据所在的客户端不纳入考虑;第三种方式,中等含有缺失值的客户端的数据进行填补。

随机森林回归算法属于第三种方式。对于中等含有缺失值的客户端的数据采用随机森林回归算法进行填补。

具体地,在算法中有一个专门填充的类,专门将均值,中值或其他数值进行填充,如,0值填充,填充完成后,分别验证数据填充后的拟合情况,以此,找到数据最佳的缺失值填充方式。

其中,在采用随机森林回归算法完成填充后,采用XGBoost算法进行异常检测,删除异常数据。

XGBoost算法作用为降低偏差,也就是降低分类模型的误差,其中,XGBoost算法包含对异常值的检查,使用XGBoost算法对客户端填补后的数据进行异常值检查,删除异常数据。

本实施例中,通过随机森林回归算法对数据进行填充,并通过XGBoost算法进行异常检测,删除异常数据,能够完成对数据的预处理,为模型训练提供前提条件,减少缺失数据和离散态数据对模型训练的影响。

在一个实施例中,第一交互行为数据包括:缴费数据、欠费数据、应缴电费数据和用户类型;第一电力消费行为数据包括:工单数据、收费记录数据和投诉行为数据,欠费数据、收费记录数据和投诉行为数据为第一权重数据,根据第一交互特征和第一消费特征预测用电用户的分类,包括:根据第一权重数据、第一交互特征和第一消费特征预测用电用户的分类。

其中,第一权重数据为欠费数据、收费记录数据和投诉行为数据,除此之外的第一交互行为数据、第一电力消费行为数据和其他客户端与服务端的数据均属于第二权重数据。第一权重数据在聚合时加权平均的权重大于第二权重数据。

其他客户端与服务端的数据指催办督办数据、客户通话数据等。

具体地,可以根据第一权重数据和第二权重数据在预测用电用户分类结果时的权重的差值,以凸显第一权重数据的重要程度。

本实施中,通过调整第一权重数据的权重大小以调整第一权重数据在预测用电用户分类结果重要程度,保证了预测用电用户分类结果的准确性。

在一个实施例中,如图4所示,提供了基于横向联邦学习的K-means模型用电用户分类方法,包括:

第一部分模型的训练过程,包括:

S402,多个客户端获取用电用户的本地的第二交互行为数据,以及与服务端交互获取第二电力消费数据。

S404,各客户端对第二交互行为数据和第二电力消费数据中的缺失值采用随机森林回归算法填充,并采用XGBoost算法进行异常检测,删除异常数据。

S406,各客户端基于预处理后的第二交互行为数据和第二电力消费数据采用K-means模型进行聚类,获取K-means模型的第一参数,第一参数包括聚类中心位置信息。

S408,各客户端读取分类模型的第一参数,得到第一参数的数据文件大小。

S410,根据数据文件大小对第一参数分组,得到分组个数。

S412,将各分组和种子密钥作为AES加密算法的输入,利用128位Rijndae算法对分组和种子密钥进行加密,循环进行n次加密,得到n组密文。

S414,将n组密文先后连接起来,并在最后拼接种子密钥,根据拼接后的结果得到加密的分类模型的第一参数,并发送至服务端。

S416,服务端基于各客户端的加密的分类模型的第一参数进行聚合,得到加密的分类模型的第二参数,并分发至各客户端。

S418,各客户端对加密的分类模型的第二参数进行解密,并根据解密的分类模型的第二参数更新本地的分类模型的参数。

S420,判断分类模型是否达到迭代结束条件。

第二部分模型的应用过程,包括:

S422,获取客户端记录的用电用户的第一交互行为数据,以及与服务端交互获取第一电力消费数据。

S424,对第一交互行为数据和第一电力消费数据进行预处理。

S426,将预处理后的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,分类模型根据第一交互行为数据提取用电用户的第一交互特征,根据第一电力消费数据提取用电用户的第一消费特征,根据第一交互特征、第一消费特征和第一权重数据预测用电用户的分类,分类模型通过服务端和多个客户端进行横向联邦学习训练得到。

S428,将用电用户的分类反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐。

本实施中,通过客户端将用电用户的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,通过分类模型预测用电用户的分类,由于分类模型是通过服务端和多个客户端进行横向联邦学习训练得到的,因此分类模型在训练过程中不需要将用电用户的数据集中起来分析,而避免了数据泄漏风险。客户端根据分类模型得到用电用户分类后反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐,以实现电网公司的营销内容的准确投送。进一步地,采用横向联邦学习的方式,对数据的利用以及模型的准确性都有了极大提升。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的用电用户的分类方法的用电用户的分类装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个用电用户的分类装置实施例中的具体限定可以参见上文中对于用电用户的分类方法的限定,在此不再赘述。

在一个实施例中,如图5所示,提供了一种用电用户的分类装置,包括:第一获取模块502、第一预处理模块504、处理模块506和推荐模块508,其中:

第一获取模块502,用于获取客户端记录的用电用户的第一交互行为数据,以及与服务端交互获取第一电力消费数据。

第一预处理模块504,用于对第一交互行为数据和第一电力消费数据进行预处理。

处理模块506,用于将预处理后的第一交互行为数据和第一电力消费数据输入预先训练好的分类模型,分类模型根据第一交互行为数据提取用电用户的第一交互特征,根据第一电力消费数据提取用电用户的第一消费特征,根据第一交互特征和第一消费特征预测用电用户的分类,分类模型通过服务端和多个客户端进行横向联邦学习训练得到。

推荐模块508,用于将用电用户的分类反馈至服务端,由服务端根据用电用户的分类对应的推荐策略,对用电用户进行内容推荐。

在一个实施例中,第二获取模块,用于多个客户端获取用电用户的本地的第二交互行为数据,以及与服务端交互获取第二电力消费数据。

第二预处理模块,用于各客户端对第二交互行为数据和第二电力消费数据进行预处理。

第一参数生成模块,用于各客户端基于预处理后的第二交互行为数据和第二电力消费数据在本地对待训练的分类模型进行训练,得到分类模型的第一参数。

第二参数生成模块,用于各客户端对分类模型的第一参数进行加密,将加密的分类模型的第一参数发送至服务端,服务端基于各客户端的加密的分类模型的第一参数进行聚合,得到加密的分类模型的第二参数,并分发至各客户端。

解密模块,用于各客户端对加密的分类模型的第二参数进行解密,并根据解密的分类模型的第二参数更新本地的分类模型的参数。

输出模块,用于迭代返回各客户端基于预处理后的第二交互行为数据和第二电力消费数据在本地对待训练的分类模型进行训练,得到分类模型的第一参数的步骤,直到满足训练迭代结束条件,得到训练好的分类模型。

在一个实施例中,第一参数生成模块,还用于各客户端基于预处理后的第二交互行为数据和第二电力消费数据采用K-means模型进行聚类,获取K-means模型的第一参数,第一参数包括聚类中心位置信息。

在一个实施例中,第二参数生成模块,还用于各客户端读取分类模型的第一参数,得到第一参数的数据文件大小,根据数据文件大小对第一参数分组,得到分组个数,将各分组和种子密钥作为AES加密算法的输入,利用128位Rijndae算法对分组和种子密钥进行加密,循环进行n次加密,得到n组密文,将n组密文先后连接起来,并在最后拼接种子密钥,根据拼接后的结果得到加密的分类模型的第一参数,并发送至服务端。

在一个实施例中,第二预处理模块,还用于各客户端对第二交互行为数据和第二电力消费数据中的缺失值采用随机森林回归算法填充,并采用XGBoost算法进行异常检测,删除异常数据。

在一个实施例中,处理模块506,还用于根据第一权重数据、第一交互特征和第一消费特征预测用电用户的分类。

上述用电用户的分类装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储内容推荐数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用电用户的分类方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

技术分类

06120115629038