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

一种基于并行随机梯度下降的老年活动智能预测装置和方法

文献发布时间:2023-06-19 11:22:42


一种基于并行随机梯度下降的老年活动智能预测装置和方法

技术领域

本发明涉及计算机数据处理技术领域,特别地涉及一种基于并行随机梯度下降的老年活动智能预测装置和方法。

背景技术

当今社会的发展和进步,人口老龄化现象加剧,独居老人增多。很多家庭是独身子女,因为工作压力、生活节奏等原因很难陪伴在老人身边,老人的精神生活需求难以满足。在保证老人身体健康的同时,老人的精神生活引起了社会和家庭的关注,让老人参加自己喜爱的业余活动打发时间,既可以丰富自己的精神生活,也可以让子女放心。随着计算机网络的普及与发展,老人通过网络获取各种休闲娱乐活动的消息,但是在众多的消息中老人难以选择和判断,如何给老人推送更加准确、合适的休闲娱乐活动信息引起了人们的关注。

发明内容

本发明针对现有技术中存在的上述问题,提供一种并行随机梯度下降的老年活动智能预测装置和方法,能够根据老人-活动的评分矩阵实现:(1)通过并行设计消除了数据之间的相关性,避免了数据重写的问题;(2)通过并行随机梯度下降算法,提高了模型的计算效率。

为了解决上述的技术问题,根据本发明的第一方面,提供一种基于并行随机梯度下降的老年活动智能预测装置,该装置包括:

数据预处理模块,用于从服务器接收老人-休闲娱乐活动评分数据,将接收的数据处理成可直接使用的数据并存入数据存储模块,初始化并行随机梯度下降的老年活动预测过程中的相关参数;

数据存储模块,用于存储老人-休闲娱乐活动的评分矩阵、老人和休闲娱乐活动的隐特征矩阵、模型训练过程中的相关参数等;

数据分配模块,用于划分数据和分配数据;

并行计算模块,根据老人-活动评分数据和相关参数构造基于并行随机梯度下降的老人预测模型并告知特征训练单元进行数据训练;

老年活动预测数据生成模块,预测老人-休闲娱乐活动的未知评分,将生成的评分数据和特征数据存入数据存储模块;

进一步,所述数据处理模块包括数据接收单元、数据预处理单元和数据初始化单元,所述数据接收单元用于接收老人-娱乐休闲活动的相关数据;所述数据预处理单元用于将接收的数据处理成可以直接使用的数据并存入数据存储模块中;所述初始化单元用于初始化基于并行随机梯度下降的老年活动智能预测过程中涉及的相关参数;

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据处理模块包括数据接收单元、数据预处理单元和数据初始化单元,具体为:

从服务器接收数据,在接收到的数据中,用I表示老人集合,用V表示休闲娱乐活动集合,建立一个|I|行、|V|列的矩阵作为老人-活动评分矩阵R,将评分矩阵R存入数据存储模块,评分矩阵R中的数据以三元组的形式存储,表示为Q=(u,i,e),其中u表示第u老人即矩阵R中的第u行,表示i第i种休闲娱乐活动即矩阵R中的第i列,e为实数,表示老人u对休闲娱乐活动i的评分即矩阵R中第u行,第i列对应的值。对矩阵R使用规约矩阵因式分解,分别得到老人隐特征矩阵T,和休闲娱乐活动隐特征矩阵J。T是一个|I|行,k列的矩阵,每一个老人对应T中的一个行向量,这个行向量是该老人的隐特征向量;J是一个|V|行,k列的矩阵,每一种休闲娱乐活动对应于J中的每一个行向量,该行向量是该活动的隐特征向量;k为隐特征空间的维度,老人隐特征维度和活动隐特征维度都为k。同时将老人和休闲娱乐活动的隐特征矩阵T和J存入数据存储模块。

初始化隐特征k;特征维度初始化隐特征矩阵T和J;初始化收敛终止阈值τ;初始化最大训练迭代轮数M;初始化训练过程中迭代轮数控制变量m;初始化正则化因子λ

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据存储模块具体包括:

用于存储老人-活动的隐特征数据,即存储矩阵T和J;存储预处理之后的数据,即评分矩阵R;存储在基于并行随机梯度下降的老年活动预测过程中涉及的相关模型控制参数。

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据分配模块包括数据划分单元和数据分配单元,具体为:

数据划分单元配置为划分评分矩阵R,即我们有n个计算节点,就将数据中R划分成n×n的块,每一块即为一个小矩阵,矩阵行的大小为|I|/n,矩阵列的大小为|V|/n。

数据分配单元将n个不相关的小矩阵分配到n个不同的计算节点,不相关的小矩阵表示既不共享行也不共享列。n个计算节点全部计算完成之后,数据分配单元继续分配n个不相关的小矩阵到n个不同的计算节点,重复上述步骤,知道所有小矩阵被训练完成。

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述并行计算模块包括模型构建单元和特征训练单元,具体为:

模型构建单元配置为根据老人-活动评分矩阵R中的已知数据集合N,构造目标函数RSE,公式如下:

其中以欧式距离作为优化目标;为了防止过拟合的问题,在目标函数中使用L2正则化,对优化过程进行约束。其中T和J是隐特征矩阵,分别表示老人的特征数据和休闲娱乐活动的特征数据;λ

特征训练单元配置为使用随机梯度下降算法对矩阵T和J进行训练,即对每一个已知的老人-活动评分数据r

其中的h表示学习速率;

多个计算节点在N上重复上述训练过程,直至RSE在N上收敛,收敛判定条件为训练迭代轮数控制变量m达到最大训练迭代轮数M,或者本轮迭代结束后计算得到的RSE值与上一轮RSE值的差的绝对值已经小于收敛终止阈值τ。

根据本发明所述的一种基于并行随机梯度下降的老年活动预测装置的优选方案,所述老年活动预测模块包括特征输出单元和未知活动预测单元。

具体可包括:特征输出单元将训练结束后,最终得到的隐特征值输出,并存人数据存储模块;未知活动预测单元根据评分矩阵获得老人对应的隐含特征矩阵T和休闲娱乐活动隐特征矩阵J,调用老人隐特征矩阵T和休闲娱乐活动隐特征矩阵J,分别计算这两组向量的内积获得评分的预测数据。

根据本发明的第二方面,提供一种基于并行随机梯度下降的老年活动预测方法,包括如下步骤:

S1:服务器采集老人-活动评分数据,发送给基于并行随机梯度下降的老年活动预测装置。老人在活动消息推送平台获得活动相关信息,也会对自己参加或者感兴趣的活动评分,即获得老人对休闲娱乐活动的真实评分数据。根据服务器采集数据,建立老人-活动评分矩阵,对矩阵中每一个评分值所在行代表一个老人的编号,所在列代表一种娱乐休闲活动的编号。

S2:用于初始化基于并行随机梯度下降的老年活动预测模型训练过程中的相关参数。

S3:构建基于并行随机梯度下降的老年活动预测模型。

S4:用于数据划分并将数据分配到不同计算节点训练特征生成。

S5:输出两个特征矩阵并预测未知的评分。

根据本发明所述的一种基于并行随机梯度下降的老年活动预测方法的优选方案,步骤S2初始化并行随机梯度下降的老年活动预测模型中的相关参数。包括:

a.隐特征矩阵T和J的特征维度k,初始化为正整数;

b.隐特征矩阵T为|I|行k列的矩阵,隐特征矩阵J为|V|行k列的矩阵,分别用随机较小的正数进行初始化;

c.参数λ

d.最大训练迭代轮数M,用于控制迭代过程上限的变量,初始化为较大的正整数;

e.训练过程中迭代轮数控制变量m,初始化为0;

f.收敛终止阈值τ是判断迭代过程是否已收敛的参数,用极小的正数初始化;

g.模型训练过程学习步长h,用于控制学习过程的快慢,初始化为较小的正数。

根据本发明所述的一种基于并行随机梯度下降的老年活动预测方法的优选方案,步骤S3根据采集的评分数据构建目标函数。包括:

模型构建单元配置为根据老人-活动评分矩阵R中的已知数据集合N,构造目标函数RSE,公式如下:

其中以欧式距离作为优化目标;为了防止过拟合的问题,在目标函数中使用L2正则化,对优化过程进行约束。其中T和J是隐特征矩阵,分别表示老人的特征数据和休闲娱乐活动的特征数据;λ

根据本发明所述的一种基于并行随机梯度下降的老年活动预测方法的优选方案,步骤S4通过数据划分并行计算训练特征数据生成。步骤S4包括:

S41,划分评分矩阵R,即我们有n个计算节点,就将数据中R划分成n×n的块,每一块即为一个小矩阵,矩阵行的大小为|I|/n,矩阵列的大小为|V|/n。将划分得到的n个不相关的小矩阵分配到n个不同的计算节点,不相关的小矩阵表示既不共享行也不共享列。n个计算节点全部计算完成之后,数据分配单元继续分配n个不相关的小矩阵到n个不同的计算节点,重复上述步骤,知道所有小矩阵被训练完成。

S42,使用随机梯度下降算法对矩阵T和J进行训练,即对每一个已知的老人-活动评分数据r

其中的h表示学习速率;

S43,用于判断数据是否分配完成。即:判断本轮选代过程中数据是否被全部分配训练,如果全部分配完成,则进入步骤S44;如果未全部分配完成,则进入返回步骤步骤S41获取未被分配训练的数据。

S44,用于判断是否满足迭代结束条件。具体为:

a.判断当前参数更新是否满足更新条件,即:判断本次的预测精度和上一次的预测精度相差是否已经小于阈值τ,如果大于阈值τ,则满足更新条件;如果小于阈值τ,则不满足更新条件,训练结束。

b.判断训练过程中迭代轮数控制变量m是否大于训练迭代轮数上限M:若小于训练迭代轮数上限M,则满足更新条件;若超过训练迭代轮数上限M,则不满足更新条件,训练结束。

上述步骤S44中a和b在执行时无先后顺序。例如,首先执行a,如果在执行步骤a后满足结束训练的条件,那么模型训练结束,步骤b无需再执行;如果在执行步骤a后不满足结束训练的条件,则执行步骤b。

根据本发明所述的一种自适应弹性网络的用户-家庭金融产品偏好预测方法的优选方案,步骤S5输出两个隐特征矩阵并通过矩阵分解方法对得到的隐特征矩阵用于对老人-活动评分矩阵中的未知评分预测。具体包括:

S5,老人i对应隐特征矩阵T中的向量和休闲娱乐活动v对应隐特征矩阵J中的向量内积作为老人i对休闲娱乐活动v的评分预测值

本发明所述的一种基于并行随机梯度下降的老年活动的预测装置和方法,旨在利用数据划分进行并行计算,减少每轮迭代的时间,提高计算效率,为老人提供高效,准确的休闲娱乐活动推荐。可广泛用于个性化服务行业。

附图说明

图1为本发明基于并行随机梯度下降的老年活动的预测装置。

图2为本发明基于并行随机梯度下降的老年活动的预测更新过程流程示意图。

图3为本发明通过数据划分的方法示意图。

具体实施方式

下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。

实施例1:

参见图1,示出了本发明的基于并行随机梯度下降的老年活动的预测装置,该装置包括:

数据处理模块110,用于从服务器接收老人-休闲娱乐活动评分数据,将接收的数据处理成可直接使用的数据并存入数据存储模块120,初始化并行随机梯度下降的老年活动预测过程中的相关参数;

数据存储模块120,用于存储老人-休闲娱乐活动的评分矩阵、老人和休闲娱乐活动的隐特征矩阵、模型训练过程中的相关参数等;

数据分配模块130,用于划分数据和分配数据;

并行计算模块140,根据老人-活动评分数据和相关参数构造基于并行随机梯度下降的老人预测模型并告知特征训练单元进行数据训练;

老年活动预测数据生成模块150,预测老人-休闲娱乐活动的未知评分,将生成的评分数据和特征数据存入数据存储模块120;

进一步,所述数据处理模块包括数据接收单元111、数据预处理单元112和数据初始化单元113,所述数据接收单元111用于接收老人-娱乐休闲活动的相关数据;所述数据预处理单元112用于将接收的数据处理成可以直接使用的数据并存入数据存储模块120中;所述初始化单元113用于初始化基于并行随机梯度下降的老年活动智能预测过程中涉及的相关参数;

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据处理模块110包括数据接收单元111、数据预处理单元112和数据初始化单元113,具体为:

从服务器接收数据,在接收到的数据中,用I表示老人集合,用V表示休闲娱乐活动集合,建立一个|I|行、|V|列的矩阵作为老人-活动评分矩阵R,将评分矩阵R存入数据存储模块,评分矩阵R中的数据以三元组的形式存储,表示为Q=(u,i,e),其中u表示第u老人即矩阵R中的第u行,表示i第i种休闲娱乐活动即矩阵R中的第i列,e为实数,表示老人u对休闲娱乐活动i的评分即矩阵R中第u行,第i列对应的值。对矩阵R使用规约矩阵因式分解,分别得到老人隐特征矩阵T,和休闲娱乐活动隐特征矩阵J。T是一个|I|行,k列的矩阵,每一个老人对应T中的一个行向量,这个行向量是该老人的隐特征向量;J是一个|V|行,k列的矩阵,每一种休闲娱乐活动对应于J中的每一个行向量,该行向量是该活动的隐特征向量;k为隐特征空间的维度,老人隐特征维度和活动隐特征维度都为k。同时将老人和休闲娱乐活动的隐特征矩阵T和J存入数据存储模块。

数据初始化单元113,初始化隐特征k;特征维度初始化隐特征矩阵T和J;初始化收敛终止阈值τ;初始化最大训练迭代轮数M;初始化训练过程中迭代轮数控制变量m;初始化正则化因子λ

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据存储模块120具体包括:

用于存储老人-活动的隐特征数据,即存储矩阵T和J;存储预处理之后的数据,即评分矩阵R;存储在基于并行随机梯度下降的老年活动预测过程中涉及的相关模型控制参数。

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述数据分配模块130包括数据划分单元131和数据分配单元132,具体为:

数据划分单元131配置为划分评分矩阵R,即我们有n个计算节点,就将数据中R划分成n×n的块,每一块即为一个小矩阵,矩阵行的大小为|I|/n,矩阵列的大小为|V|/n。

数据分配单元132将n个不相关的小矩阵分配到n个不同的计算节点,不相关的小矩阵表示既不共享行也不共享列。n个计算节点全部计算完成之后,数据分配单元继续分配n个不相关的小矩阵到n个不同的计算节点,重复上述步骤,知道所有小矩阵被训练完成。

根据本发明所述的一种基于并行随机梯度下降的老年活动智能预测装置的优选方案,所述并行计算模块140包括模型构建单元和特征训练单元,具体为:

模型构建单元141配置为根据老人-活动评分矩阵R中的已知数据集合N,构造目标函数RSE,公式如下:

其中以欧式距离作为优化目标;为了防止过拟合的问题,在目标函数中使用L2正则化,对优化过程进行约束。其中T和J是隐特征矩阵,分别表示老人的特征数据和休闲娱乐活动的特征数据;λ

特征训练单元142配置为使用随机梯度下降算法对矩阵T和J进行训练,即对每一个已知的老人-活动评分数据r

其中的h表示学习速率;

多个计算节点在N上重复上述训练过程,直至RSE在N上收敛,收敛判定条件为训练迭代轮数控制变量m达到最大训练迭代轮数M,或者本轮迭代结束后计算得到的RSE值与上一轮RSE值的差的绝对值已经小于收敛终止阈值τ。

根据本发明所述的一种基于并行随机梯度下降的老年活动预测装置的优选方案,所述老年活动预测模块150包括特征输出单元151和未知活动预测单元152。

具体可包括:特征输出单元151将训练结束后,最终得到的隐特征值输出,并存人数据存储模块120;未知活动预测单元152根据评分矩阵获得老人对应的隐含特征矩阵I和休闲娱乐活动隐特征矩阵J,调用老人隐特征矩阵I和休闲娱乐活动隐特征矩阵J,分别计算这两组向量的内积获得评分的预测数据。

实施例2:

参见图2,图2示出本发明的基于并行随机梯度下降的老年活动预测的方法,该预测方法包括以下步骤:

S1:服务器采集老人-活动评分数据,发送给基于并行随机梯度下降的老年活动预测装置。老人在活动消息推送平台获得活动相关信息,也会对自己参加或者感兴趣的活动评分,即获得老人对休闲娱乐活动的真实评分数据。根据服务器采集数据,建立老人-活动评分矩阵,对矩阵中每一个评分值所在行代表一个老人的编号,所在列代表一种娱乐休闲活动的编号。

S2:用于初始化基于并行随机梯度下降的老年活动预测模型训练过程中的相关参数。

S3:构建基于并行随机梯度下降的老年活动预测模型。

S4:用于数据划分并将数据分配到不同计算节点训练特征生成。

S5:输出两个特征矩阵并预测未知的评分。

在具体实施例中,步骤S2初始化并行随机梯度下降的老年活动预测模型中的相关参数。包括:

a.隐特征矩阵T和J的特征维度k,初始化为正整数;

b.隐特征矩阵T和J行k列的矩阵,隐特征矩阵J为|V|行k列的矩阵,分别用随机较小的正数进行初始化;

c.参数λ

d.最大训练迭代轮数M,用于控制迭代过程上限的变量,初始化为较大的正整数;

e.训练过程中迭代轮数控制变量m,初始化为0;

f.收敛终止阈值τ是判断迭代过程是否已收敛的参数,用极小的正数初始化;

g.模型训练过程学习步长h,用于控制学习过程的快慢,初始化为较小的正数。

在具体实施例中,步骤S3根据采集的评分数据构建目标函数。包括:

模型构建单元配置为根据老人-活动评分矩阵R中的已知数据集合N,构造目标函数RSE,公式如下:

其中以欧式距离作为优化目标;为了防止过拟合的问题,在目标函数中使用L

在具体实施例中,步骤S4通过数据划分并行计算训练特征数据生成。步骤S4包括:

S41,划分评分矩阵R,即我们有n个计算节点,就将数据中R划分成n×n的块,每一块即为一个小矩阵,矩阵行的大小为|I|/n,矩阵列的大小为|V|/n,小矩阵被记为N

S42,使用随机梯度下降算法对矩阵T和J进行训练,即对每一个已知的老人-活动评分数据r

其中的h表示学习速率;

S44,用于判断数据是否分配完成。即:判断本轮迭代过程中数据是否被全部分配训练,如果全部分配完成,则进入步骤S44;如果未全部分配完成,则进入返回步骤步骤S41获取未被分配训练的数据。

S44,用于判断是否满足迭代结束条件。具体为:

a.判断当前参数更新是否满足更新条件,即:判断本次的预测精度和上一次的预测精度相差是否已经小于阈值τ,如果大于阈值τ,则满足更新条件;如果小于阈值τ,则不满足更新条件,训练结束。

b.判断训练过程中迭代轮数控制变量m是否大于训练迭代轮数上限M:若小于训练迭代轮数上限M,则满足更新条件;若超过训练迭代轮数上限M,则不满足更新条件,训练结束。

上述步骤S44中a和b在执行时无先后顺序。例如,首先执行a,如果在执行步骤a后满足结束训练的条件,那么模型训练结束,步骤b无需再执行;如果在执行步骤a后不满足结束训练的条件,则执行步骤b。

在具体实施例中,步骤S5输出两个隐特征矩阵并通过矩阵分解方法对得到的隐特征矩阵用于对老人-活动评分矩阵中的未知评分预测。具体包括:

S5,老人i对应隐特征矩阵T中的向量和休闲娱乐活动v对应隐特征矩阵J中的向量内积作为老人i对休闲娱乐活动v的评分预测值

其中,图3为数据划分方法举例示意图。

通过以上预测方法与过程,可以提高实体间关系的预测效率,对大数据时代的用户的体验具有重要意义。

尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

相关技术
  • 一种基于并行随机梯度下降的老年活动智能预测装置和方法
  • 一种通信并行的分布式随机梯度下降的方法、系统及装置
技术分类

06120112900934