药品推荐方法、装置及计算机可读存储介质与流程

文档序号:18325677发布日期:2019-08-03 11:00阅读:153来源:国知局
药品推荐方法、装置及计算机可读存储介质与流程
本发明涉及计算机
技术领域
,尤其涉及一种药品推荐方法、药品推荐装置及计算机可读存储介质。
背景技术
:随着物联网、大数据、云计算等技术快速发展,在线信息成爆炸式地增长。用户在面对海量信息时,如何快速有效寻找感兴趣信息,这个问题使用户感到困扰。推荐系统是一种有效缓解信息过载的工具,它能够进行信息过滤,用个性化的方式引导用户从大量可能的选项中发现他们可能感兴趣的产品或者服务,例如,在netflix上观看的电影中有80%来自推荐,60%的视频点击来自youtube的主页推荐。在推荐系统的技术发展中,基于内容、协同过滤推荐和混合推荐等算法应用在推荐系统都比较成熟,但是稀疏性跟冷启动问题限制了这些算法的表现,很难再进一步提高推荐结果的质量。随着深度学习在图像分析、语音处理跟自然语言处理方面都有了巨大的成功,深度学习被应用于推荐系统。基于深度学习的推荐系统通过改变传统推荐模型架构获得了关注,但一般的特征提取方法无法获得准确的特征,从而影响推荐系统结果的准确性。上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。技术实现要素:本发明的主要目的在于提供一种药品推荐的方法、药品推荐的装置和计算机可读存储介质,旨在解决现有技术中一般的特征提取方法无法获得准确的特征,从而影响推荐系统结果的准确性的技术问题。为实现上述目的,本发明提供一种药品推荐的方法,所述药品推荐的方法包括如下步骤:获取隐式特征信息和用户对药品的操作行为信息,所述隐式特征信息包括用户隐式特征和药品隐式特征;根据所述隐式特征信息和所述操作行为信息获取目标函数,并利用所述目标函数处理所述隐式特征信息;根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品;输出所述待推荐药品的推荐信息。可选地,所述隐式特征信息和所述操作行为信息获取目标函数的步骤包括:根据所述隐式特征信息和所述操作行为信息得到概率函数,其中,所述概率函数表征用户对药品的操作行为发生的概率;根据所述概率函数获得目标函数。可选地,所述根据所述隐式特征信息和所述操作行为信息得到概率函数的步骤包括:根据所述隐式特征信息和所述操作行为信息以及预设的激活函数,得到所述用户对所述药品的操作行为发生的概率;根据多个所述用户对所述药品的操作行为发生的概率得到概率函数。可选地,所述根据所述概率函数获得目标函数的步骤包括:获取所述概率函数的对数似然函数,将所述对数似然函数作为目标函数。可选地,所述利用所述目标函数处理所述隐式特征信息的步骤包括:对所述目标函数进行迭代处理,其中,在每次迭代处理中对所述目标函数进行求导以得到求导值,利用所述求导值对所述隐式特征信息进行处理。可选地,所述操作行为信息包括浏览行为信息、收藏行为信息和购买行为信息,根据所述隐式特征信息和所述操作行为信息获取目标函数,并利用所述目标函数处理所述隐式特征信息的步骤包括:根据所述浏览行为信息获取第一隐式特征信息,并根据所述第一隐式特征信息和所述浏览行为信息获取第一目标函数,以及利用所述第一目标函数处理所述第一隐式特征信息;根据所述收藏行为信息获取第二隐式特征信息,并根据所述第二隐式特征信息和所述浏览行为信息获取第二目标函数,以及利用所述第二目标函数处理所述第二隐式特征信息;根据所述购买行为信息获取第三隐式特征信息,并根据所述第三隐式特征信息和所述浏览行为信息获取第三目标函数,以及利用所述第三目标函数处理所述第三隐式特征信息。可选地,所述根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品的步骤包括:获取属性特征信息,所述属性特征信息包括所述用户的属性特征和所述药品的属性特征;根据所述属性特征信息和所述处理后的隐式特征信息以及所述预设的神经网络,得到待推荐药品。可选地,所述根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品的步骤包括:根据所述处理后的隐式特征信息和预设的神经网络,得到所述药品的评分;获取评分超过预设阈值的药品,将所述评分超过预设阈值的药品作为所述待推荐药品。此外,为实现上述目的,本发明还提供一种药品推荐的装置,该装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的药品推荐处理程序,所述药品推荐处理程序被所述处理器执行时实现如上所述的药品推荐的方法的步骤。此外,为实现上述目的,本发明还提出一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有药品推荐处理程序,所述药品推荐处理程序被处理器执行时实现如上所述的药品推荐的方法的步骤。本发明实施例提出的一种药品推荐的方法、装置和可读计算机存储介质,获取隐式特征信息和用户对药品的操作行为信息,隐式特征信息包括用户隐式特征和药品隐式特征;根据隐式特征信息和操作行为信息获取目标函数,并利用目标函数处理隐式特征信息;根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品;输出待推荐药品的推荐信息。本发明通过根据隐式特征信息和操作行为信息获取目标函数,并利用目标函数处理隐式特征信息,根据处理后的隐式特征信息和预设的神经网络得到待推荐药品,由于利用目标函数获得的隐式特征信息更准确地反映了用户对药品的操作行为特征,得到的对应的待推荐药品的结果准确性更高。附图说明图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;图2为本发明药品推荐的方法第一实施例的流程示意图;图3为本发明药品推荐的方法第二实施例的流程示意图;图4为本发明药品推荐的方法第三实施例的流程示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例的主要解决方案是:获取隐式特征信息和用户对药品的操作行为信息,隐式特征信息包括用户隐式特征和药品隐式特征;根据隐式特征信息和操作行为信息获取目标函数,并利用目标函数处理隐式特征信息;根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品;输出待推荐药品的推荐信息。本发明通过根据隐式特征信息和操作行为信息获取目标函数,并利用目标函数处理隐式特征信息,根据处理后的隐式特征信息和预设的神经网络得到待推荐药品,由于利用目标函数获得的隐式特征信息更准确地反映了用户对药品的操作行为特征,得到的对应的待推荐药品的结果准确性更高。如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。本发明实施例终端为药品推荐装置。如图1所示,该药品推荐装置可以包括:处理器1001,例如cpu,通信总线1002,存储器1003。其中,通信总线1002用于实现这些组件之间的连接通信。存储器1003可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1003可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图1所示,作为一种计算机存储介质的存储器1003中可以包括操作系统和药品推荐的处理程序。在图1所示的装置中,处理器1001可以用于调用存储器1003中存储的药品推荐的处理程序,并执行以下操作:获取隐式特征信息和用户对药品的操作行为信息,所述隐式特征信息包括用户隐式特征和药品隐式特征;根据所述隐式特征信息和所述操作行为信息获取目标函数,并利用所述目标函数处理所述隐式特征信息;根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品;输出所述待推荐药品的推荐信息。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:根据所述隐式特征信息和所述操作行为信息得到概率函数,其中,所述概率函数表征用户对药品的操作行为发生的概率;根据所述概率函数获得目标函数。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:根据所述隐式特征信息和所述操作行为信息以及预设的激活函数,得到所述用户对所述药品的操作行为发生的概率;根据多个所述用户对所述药品的操作行为发生的概率得到概率函数。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:获取所述概率函数的对数似然函数,将所述对数似然函数作为目标函数。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:对所述目标函数进行迭代处理,其中,在每次迭代处理中对所述目标函数进行求导以得到求导值,利用所述求导值对所述隐式特征信息进行处理。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:根据所述浏览行为信息获取第一隐式特征信息,并根据所述第一隐式特征信息和所述浏览行为信息获取第一目标函数,以及利用所述第一目标函数处理所述第一隐式特征信息;根据所述收藏行为信息获取第二隐式特征信息,并根据所述第二隐式特征信息和所述浏览行为信息获取第二目标函数,以及利用所述第二目标函数处理所述第二隐式特征信息;根据所述购买行为信息获取第三隐式特征信息,并根据所述第三隐式特征信息和所述浏览行为信息获取第三目标函数,以及利用所述第三目标函数处理所述第三隐式特征信息。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:获取属性特征信息,所述属性特征信息包括所述用户的属性特征和所述药品的属性特征;根据所述属性特征信息和所述处理后的隐式特征信息以及所述预设的神经网络,得到待推荐药品。进一步地,处理器1001可以调用存储器1003中存储的药品推荐的处理程序,还执行以下操作:根据所述处理后的隐式特征信息和预设的神经网络,得到所述药品的评分;获取评分超过预设阈值的药品,将所述评分超过预设阈值的药品作为所述待推荐药品。参照图2,本发明第一实施例提供一种药品推荐的方法,所述方法包括:步骤s10,获取隐式特征信息和用户对药品的操作行为信息,所述隐式特征信息包括用户隐式特征和药品隐式特征;本发明应用于医药电子系统,包括医药网页和医院软件程序,用户在医药电子系统上可以对药品进行的操作行为包括浏览、购买、收藏、评论或分享等,医药电子系统记录并存储用户对药品的操作行为信息。用户对药品的操作行为信息为一个二维数值矩阵,以用户对药品的浏览行为信息为例,如下表所示,用户对药品有浏览行为时数值置1,用户对药品无浏览行为时数值为空(null值)或0。表1:药品1药品2药品3药品4用户111用户211用户31用户411获取隐式特征信息,隐式特征信息是指经函数转换处理后的特征信息。在本实施例中,隐式特征信息包括用户隐式特征信息和药品隐式特征信息,并且在本步骤中根据预设维度进行随机初始化得到隐式特征信息。步骤s20,根据所述隐式特征信息和所述操作行为信息获取目标函数,并利用所述目标函数处理所述隐式特征信息;为了得到最优的隐式特征信息,根据隐式特征信息和操作行为信息设计一个目标函数,通过优化该目标函数得到最优的隐式特征信息。在设计目标函数时,需要确定需优化的目标,根据需优化的目标来设计目标函数,其中,优化的目标可以为使隐式特征信息与操作行为信息之间的关联度最大,隐式特征信息与操作行为信息在向量空间中的距离最小,或者与特征信息和操作行为关联的条件概率最大。具体地,在确定优化的目标为与特征信息和操作行为关联的条件概率概率最大时,先根据隐式特征信息和操作行为信息得到概率函数,再根据该概率函数获得目标函数,其中,概率函数表征用户对药品的操作行为发生的概率。在本实施例中,可以根据隐式特征信息和操作行为信息以及预设的激活函数,得到用户对药品的操作行为发生的概率,并根据多个用户对药品的操作行为发生的概率得到概率函数。例如,可以根据下述公式(1)获取用户i对药品j的操作行为发生的概率:p(γij∈o)=f(puk*qki)=sigmoid(pki*qkj)(1)其中,k是用户i的隐式特征向量pki和药品j隐式特征向量qkj的维度,o是所有用户对药品的操作行为的事件集合,γij为用户i对药品j的操作行为事件。由公式(1)可以进一步得到所有用户跟药品的似然估计函数,即根据多个用户对药品的操作行为发生的概率得到概率函数,如下公式(2)所示:其中,pu为所有用户的隐式特征矩阵,qc为所有药品的隐式特征矩阵。公式(2)的所求解的是在确定了所有用户的隐式特征矩阵pu和所有药品的特征矩阵qc时,所有用户对药品的操作行为发生的条件概率。在根据概率函数获取目标函数时,可以获取概率函数的对数似然函数,将对数似然函数作为目标函数,如下述公式(3)所示:为了获得目标函数的最大值,可以使用梯度上升方法、牛顿法、拟牛顿法、共轭梯度法或拉格朗日乘数法。在本实施例中,使用梯度上升法对目标函数进行迭代处理,其中,在每次迭代处理中对目标函数进行求导以得到求导值,并利用所述求导值对所述隐式特征信息进行处理。具体的,可以按照下述公式(4)对目标函数e进行迭代处理。在每次迭代处理中,分别用pu和qc对目标函数e进行求导,用得到的求导值和分别对应更新pu和qc,其中α为学习速率。需要说明的是,在每次迭代过程中,获得求导值和时,需要分别判断这两个求导值是否大于预设阈值,当两个求导值均大于预设阈值时,结束迭代。其中,预设阈值要小于学习速率α的百分之一。步骤s30,根据处理后的隐式特征信息和预设的神经网络,得到待推荐药品;在获得了用户隐式特征和药品隐式特征后,将用户隐式特征和药品隐式特征输入预设的神经网络进行处理。具体地,如下述公式(5)所示:x0=combine(pki,qkj)(5)其中,x0为预设神经网络的输入数据,combine是合并各个特征。在本实施例中,预设神经网络包含四层隐藏网络层,每一层由x0里面的特征个数决定神经元数目,可以使用激活函数有sigmoid,tanh或和relu。优选relu为激活函数,如下述公式(6)所示:xl=relu(wl*xl-1+bl)(6)其中,l是指第l层,wl是第l-1层神经元输出到l层的权重值,xl-1是第l-1层神经元的输出值,bl是第l层神经元的偏置值。预设神经网络是经由训练数据通过训练而得,预设神经网络的训练目标和预测目标是相同的,对于本发明要实现的推荐药品的目的而言,训练目标和预测目标可以设置为药品的评分、药品的等级或者药品的关键词。在本实施例中,将预设神经网络的训练目标和预测目标设置为药品的评分,即根据处理后的隐式特征信息和预设的神经网络,得到药品的评分,获取评分超过预设阈值的药品,将评分超过预设阈值的药品作为所述待推荐药品。进一步地,预设神经网络可以根据下述公式(7)和公式(8)训练得到。具体地,当预设神经网络的输出层输出用户i对药品j的预测分数为时,使用one-hot编码方法对该评分值进行处理得到y,其中,同时在输出层采用softmax方法,得到可以将预测值对应相应的如公式9。其中,wout为输出层的权值,bout为输出层的偏移值。预设神经网络用使用交叉熵代价函数来衡量预测值与实际值的误差,在训练预设神经网络时,如果预测值跟实际值误差越大,那么在反向传播训练的过程中,各种参数调整的幅度就要更大,从而使训练更快收敛。交叉熵代价函数如下公式(8)所示:其中,d是代表yi的维度,也就是药品评分的个数,进一步得到用户i对物品j的预测分数如公式9。步骤s40,输出所述待推荐药品的推荐信息。在医药电子系统中,通过网页列表或者应用程序界面展示待推荐药品的推荐信息,或者通过消息推送待推荐药品的推荐信息。在本实施例中,通过根据隐式特征信息和操作行为信息获取目标函数,并利用目标函数处理隐式特征信息,根据处理后的隐式特征信息和预设的神经网络得到待推荐药品,由于利用目标函数获得的隐式特征信息更准确地反映了用户对药品的操作行为特征,得到的对应的待推荐药品的结果准确性更高。进一步的,参照图3,本发明基于第一实施例提出第二实施例,操作行为信息包括浏览行为信息、收藏行为信息和购买行为信息,提供一种推荐药品的方法,本实施例在步骤s20包括:步骤s210,根据所述浏览行为信息获取第一隐式特征信息,并根据所述第一隐式特征信息和所述浏览行为信息获取第一目标函数,以及利用所述第一目标函数处理所述第一隐式特征信息;在操作行为信息包含多种类型的行为信息时,需要对该操作行为信息进行分类,针对每一类操作行为信息,分别获取对应的隐式特征信息,进而分别获取对应的目标函数。步骤s220,根据所述收藏行为信息获取第二隐式特征信息,并根据所述第二隐式特征信息和所述浏览行为信息获取第二目标函数,以及利用所述第二目标函数处理所述第二隐式特征信息;步骤s230,根据所述购买行为信息获取第三隐式特征信息,并根据所述第三隐式特征信息和所述浏览行为信息获取第三目标函数,以及利用所述第三目标函数处理所述第三隐式特征信息。在获得了第一隐式特征信息、第二隐式特征信息以及第三隐式特征信息后,可以将这三种隐式特征信息合并成一个总体的隐式特征信息,将总体的隐式特征信息输入到预设的神经网络进行处理,得到待推荐药品;也可以分别将这三种输入到预设的神经网络进行处理,分别得到待推荐药品,即得到第一隐式特征信息对应的第一推荐药品、第二隐式特征信息对应的第二推荐药品以及第三隐式特征信息对应的第三推荐药品,可以取第一推荐药品、第二推荐药品以及第三推荐药品的合集作为最终的推荐药品,也可以去第一推荐药品、第二推荐药品以及第三推荐药品的交集作为最终的推荐药品。在本实施例中,通过在操作行为信息包含多种类型的行为信息时,对该操作行为信息进行分类,针对每一类操作行为信息,分别获取对应的隐式特征信息,进而分别获取对应的目标函数,从而得到更准确地反映了用户对药品的操作行为特征,进一步提高系统推荐药品的准确性。进一步的,参照图4,本发明基于第一实施例或第二实施例提出第三实施例,提供一种推荐药品的方法,本实施例在步骤s30包括:步骤s310,获取属性特征信息,所述属性特征信息包括所述用户的属性特征和所述药品的属性特征;用户的属性特征为可用于标识用户的信息,例如用户的编号、用户的年龄、用户的位置、用户的性别等,同样地,药品的属性特征为可用于标识药品的信息,例如药品的编号、药品的价格、药品的疗效、药品的分类等。需要说明的是,可分别对用户的属性特征和药品的属性特征进行one-hot编码,得到编码后的用户的属性特征和药品的属性特征。步骤s320,根据所述属性特征信息和所述处理后的隐式特征信息以及所述预设的神经网络,得到待推荐药品。在获得了属性特征信息和处理后的隐式特征信息后,可以将属性特征信息和处理后的隐式特征信息合并成一个总体的特征信息,将总体的特征信息输入到预设的神经网络进行处理,得到待推荐药品。在本实施例中,通过将属性特征信息和处理后的隐式特征信息输入到预设的神经网络进行处理,增加输入预设的神经网络的特征的维度和数量,相当于扩充了输入的特征信息,可以进一步地提高对待推荐药品预测的准确性。本发明还提供一种药品推荐装置,该药品推荐装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的药品推荐的处理程序,所述药品推荐的处理程序被所述处理器执行时实现所述的药品推荐的方法的步骤。此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有药品推荐的处理程序,所述药品推荐的处理程序被处理器执行时实现所述的药品推荐的方法的步骤。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
,均同理包括在本发明的专利保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1