一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于医院部分药品销售数据的整体销售额预测方法与流程

2021-11-15 19:00:00 来源:中国专利 TAG:


1.本发明涉及基于医院部分药品销售数据的整体销售额预测方法,属于大数据挖掘、智能推荐系统领域,尤其适用于医院和药品销售额的预测。


背景技术:

2.在当前现代经济快速蓬勃发展的社会背景下,以及现在我国居民对生活质量要求的不断提升情况下,我国的医药行业得到了快递蓬勃的发展,并且进入了快速增长的一个新的时期。在这样的一个良好的市场中,我国的各个制药厂家、医药企业积极去了解各个医院对于各个药品的需求,从而希望能够在这样的一个激烈的市场中获得更高的经济利益利润,因此构建药品的销售额预测,并且将其放大到全国医院,从而预测出各个医院中各个药品的销售额,能够帮助制药厂家、医药企业了解到各个医院中各个药品的销售额。制药厂家、医药企业能够以此作为一定的参考,能够有利于制药厂家企业防范风险,减少药品积压,并且能够较快的为医院提供所需药品,因此对药品销售额的预测具有一定重要的作用以及意义。在医院药品的销售过程中,有许多的因素影响着医院药品的销售,这些因素对医院药品销售额影响是复杂的、多变的,很难利用线性或者是非线性函数来进行准确的描述以及进行预测。
3.从国内外相关销售预测文献中可以得到,在销售预测方面较多是利用统计学方法以及机器学习。在统计学中,较典型为灰色预测模型、时间序列分析等;在机器学习中,较典型为bp网络、支持向量机(svm)、xgboost等。国内外学者对医药销售预测方面的研究并不是很多,但几乎都是运用或者改进各类的统计学中的方法或者市机器学习当中的方法,结合药品行业市场或者药品本身的等相关因素进行销量的预测,而这样的预测更多的针对某一种药品、某一类药品、更或者是对于某一个制药厂家或者医药企业,不能够对于医院中所有的药品进行销售预测,从而对于医药企业、制药厂家的管理者而言,如何能够依据药品的销售一系列规律或者某些特定来进行有针对的销售预测,截至目前为止还没有一种较好的完整的解决方案;另外由于药品行业中自身的销售特性以及医院的相关特殊情况导致存在非线性关系,这样的复杂关系令医药销售方面的预测方法更难以有效的把控。


技术实现要素:

4.有鉴于此,本发明提供基于医院部分药品销售数据的整体销售额预测方法,基于医院的历史药品销售数据作为参照标准的推荐系统预测医院整体的药品销售额,并进行药品供应推荐,其本质就是通过一定的方式将医院与药品销售额相互进行联系,其中lfm(latent factor model)隐语义模型则是将使用隐含的特征将医院以及药品销售额搭建起联系;考虑在实际情况中存在于与药品销售额与医院属性无关的情况,在原有的lfm公式中加入了偏置项,即为bias svd模型,能够更好的去考虑其他因素对销售额的影响;加之,再应用k

means聚类算法模型对推荐系统中冷启动医院进行聚类,预测出对应医院的各种药品的销售额,从而能够更加完整的对所有医院的所有药品进行相应的预测。
5.为达到上述目的,本发明提供如下技术方案:
6.基于医院部分药品销售数据的整体销售额预测方法,结合图1,包括如下步骤:
7.s1:对原始的医院和药品销售数据进行预处理;
8.s2:遍历所有医院和药品销售数据,建立药品索引表、医院索引表;
9.s3:构建医院与药品矩阵r,采用已知数据进行填充,并提取医院与药品矩阵中的横向矩阵;其中,元素r
i,j
是医院i中药品j所产生的销售额;
10.s4:建立横向模型,对横向矩阵的医院药品销售额的进行预测,得到预测值,并更新医院与药品矩阵;
11.s5:分析医院的属性与销售额之间的相关性,选取相关性高的属性构建纵向矩阵;
12.s6:建立纵向模型,利用纵向矩阵对医院进行聚类,再利用更新后医院与药品矩阵对同类医院的药品销售额的进行填充,得到完整的医院和药品销售额预测数据。
13.进一步,步骤s1所述的预处理具体为:(1)对原始的医院和药品销售数据对数据进行检查,删除错误数据;其中,错误数据包含数据格式错误以及缺失医院属性的数据;(2)将数据中的医院属性进行相应的特征化代码表示;(3)将数据按同一医院同一药品的销售额进行求和处理,并归并为新的医院和药品销售数据。
14.特别地,数据包含固有属性、医院属性、药品属性,所述的固有属性可以为:国家使用的是国际区号编码、省份使用的是相应地区划分编码、城市使用的是区号编码、区县代码使用的是行政划分;所述的药品属性可以为:药品种类、剂型代码、otc类型、医保药分类、基药分类、是否集采;所述的医院属性可以为:医院区域位置、企业类型、是否上市企业、医院等级、医院类型、医院经营方式、基层等级医院标识等。
15.更进一步,所述的步骤(3)可先将数据按销售区域和销售时间区间进行分组,再分别对各个分组中同一医院同一药品的销售额进行求和处理,并将原始分组医院和药品销售数据分别归并新的分组医院和药品销售数据。
16.可优选的,由于气候、温度对疾病的影响,销售时间区间同通常考虑一个季度为一个区间。
17.再进一步,步骤s3至步骤s6所使用的数据都是各个分组医院和药品销售数据。
18.进一步,步骤s3所述的横向矩阵为:医院与药品矩阵中所有填充数据所在行构成的子矩阵,即含有任一种药品的历史销售额记录的所有医院。
19.进一步,步骤s4所述的横向模型由全局模型和分层模型构成,单独的全局模型和分层模型分别为利用的是矩阵分解下的隐语义模型(lfm)的bias svd模型。
20.进一步,结合图2,步骤s4所述的对横向矩阵的医院药品销售额的进行预测具体为:
21.s401:将横向矩阵按照医院销售总额进行分层,将横向矩阵分为若干个子矩阵,且保证各层的原始医院和药品销售数据条数大致相同;
22.s402:分别利用分层模型对各个分层的子矩阵进行预测,得出每一层的分层参数;
23.s403:利用全局模型对横向矩阵的销售额进行预测,采用预测值对横向矩阵进行填充得到全局分层矩阵,并且得到基于整个横向矩阵的全局参数;
24.s404:将全局分层矩阵按照医院的销售总额归属到步骤s401对应的分层中,再利用对应分层已经训练好的分层模型对该医院的销售额重新进行预测,得到预测值,并更新
医院与药品矩阵中的横向矩阵部分。
25.进一步,步骤s5所述的分析医院的属性与销售额之间的相关性分析为计算医院的各个属性对应的代码x
i
与该医院药品销售总额y
i
之间pearson相关系数r。公式如(1)所示,其中,为均值,n为医院总数。
[0026][0027]
进一步,步骤s6所述的纵向模型为聚类模型;所述的对医院进行聚类具体为将步骤s4更新的医院与药品矩阵的行向量按照步骤s5所选出的医院属性将医院进行聚类;所述的填充为利用相同聚类的销售额平均值对该类医院所对应的药品的销售额进行填充。
[0028]
可优选的,聚类模型可采用k

means模型。
[0029]
本发明的有益效果在于:本发明提供了基于医院部分药品销售数据的整体销售额预测方法,通过将医院和药品销售拆分为横向矩阵和纵向矩阵,在网格上采用bias svd和聚类两个不同的预测模型进行求解;采用全局和分层结构的横向模型使得参数更加优化,提升销售额的预测准确度,聚类模型避免了推荐系统的冷启动问题;本发明能够较好的预测出各个医院中各个药品的销售额,为医药企业提供一定参考价值。
附图说明
[0030]
为了使本发明的目的、技术方案,本发明提供如下附图进行说明:
[0031]
图1为基于医院部分药品销售数据的整体销售额预测方法流程图;
[0032]
图2为本发明横向矩阵预测流程图;
[0033]
图3为本发明实施例1的医院索引表;
[0034]
图4为本发明实施例1的药品索引表;
[0035]
图5为本发明实施例2的医院药品销售额数据预测具体流程。
具体实施方式
[0036]
为使本发明的目的和技术方案更加清晰明白,下面结合附图及实施例对本发明进行详细的描述。
[0037]
实施例1:某大数据网站从各个医院以及医药企业、制药公司等地方获取到了一共有1054家医院、6880种药品的历史销售数据,为了能够帮助制药厂家、医药企业了解到各个医院中各个药品的销售额,本实施例提供“基于医院部分药品销售数据的整体销售额预测方法”,结合图1,该方法包含以下步骤:
[0038]
步骤一:对原始的医院和药品销售数据进行预处理。
[0039]
所述的预处理具体为:(1)对原始的医院和药品销售数据对数据进行检查,删除错误数据;其中,错误数据包含数据格式错误以及缺失医院属性的数据;(2)将数据中的医院属性进行相应的特征化代码表示;(3)先将数据按销售区域和季度进行分组,再分别对各个分组中同一医院同一药品的销售额进行求和处理,并将原始分组医院和药品销售数据分别归并新的分组医院和药品销售数据。
[0040]
数据包含固有属性、医院属性、药品属性,所述的固有属性可以为:国家使用的是
国际区号编码、省份使用的是相应地区划分编码、城市使用的是区号编码、区县代码使用的是行政划分;所述的药品属性可以为:药品种类、剂型代码、otc类型、医保药分类、基药分类、是否集采;所述的医院属性可以为:医院区域位置、企业类型、是否上市企业、医院等级、医院类型、医院经营方式、基层等级医院标识等。
[0041]
其中,药品是规格和厂家不一样视为不同种药品。
[0042]
步骤二:结合图3和图4,遍历所有医院和药品销售数据,建立药品索引表、医院索引表。
[0043]
步骤三:构建医院与药品矩阵r,采用已知数据进行填充,并提取医院与药品矩阵中的横向矩阵;其中,元素r
i,j
是医院i中药品j所产生的销售额,1≤i≤1054,1≤j≤6880。
[0044]
步骤四:建立横向模型,对横向矩阵的医院药品销售额的进行预测,得到预测值,并更新医院与药品矩阵。
[0045]
进一步,所述的横向矩阵为:医院与药品矩阵中所有填充数据所在行构成的子矩阵,即含有任一种药品的历史销售额记录的所有医院。
[0046]
进一步,所述的横向模型由全局模型和分层模型构成,单独的全局模型和分层模型分别为利用的是矩阵分解下的隐语义模型的bias svd模型,将横向矩阵或分层横向矩阵分别按照5∶1划分为训练集和测试集,对模型完成训练和测试。
[0047]
其中,隐语义模型(lfm)的核心为:给定医院集合i和药品集合j,给定正整数f<<1054,给定一个1054
×
f隐特征矩阵p,给定一个f
×
6880隐特征矩阵q,是r的估计矩阵,其中的每个元素是r
i,j
的一个估计。通过最小化和r在已知元素集合r上的估计误差来训练得到两个隐特征矩阵p和q,其中可通过p和q的点乘得到,即
[0048]
bias svd模型的核心为:在基于lfm中的预测评分公式基础上添加了关于基准预测的评分,具体为:其中,b
i
为医院的偏置向量参数,b
j
为药品的偏置向量参数,μ为全局的评分平均值参数。
[0049]
进一步,结合图2,步骤s4所述的对横向矩阵的医院药品销售额的进行预测具体为:
[0050]
s401:将横向矩阵按照医院销售总额进行分层,将横向矩阵分为若干个子矩阵,且保证各层的原始医院和药品销售数据条数大致相同;
[0051]
s402:分别利用分层模型对各个分层的子矩阵进行预测,得出每一层的分层参数;
[0052]
s403:利用全局模型对横向矩阵的销售额进行预测,采用预测值对横向矩阵进行填充得到全局分层矩阵,并且得到基于整个横向矩阵的全局参数;
[0053]
s404:将全局分层矩阵按照医院的销售总额归属到步骤s401对应的分层中,再利用对应分层已经训练好的分层模型对该医院的销售额重新进行预测,得到预测值,并更新医院与药品矩阵中的横向矩阵部分。
[0054]
特别地,并非分层越多或者所有分层都建立分层模型效果越好,分层的层数和选择对预测结果有影响,具体的可以根据实验对比来选取合适的层数,但是考虑到计算的复杂度,本实施例选择将横向矩阵分为5层,并对其中2层的数据进行修正。
[0055]
步骤五:步骤s5所述的分析医院的属性与销售额之间的相关性分析为计算医院的各个属性对应的代码x
i
与该医院药品销售总额y
i
之间pearson相关系数r。最终选取了医院
等级、医院类型、医药经营方式、基层等级医院标识这个四个属性作为纵向模型的输入。
[0056]
步骤六:建立k

means模型,利用纵向矩阵对医院进行聚类,再利用更新后医院与药品矩阵对同类医院的药品销售额的进行填充,得到完整的医院和药品销售额预测数据。
[0057]
(1)将纵向矩阵中的已知数据按照5∶1划分为训练集和测试集;
[0058]
(2)把训练集随机进行划分成k=15类,随机初始化每一类的原型中心,将每个聚类对象的均值作为中心对象,计算每个对象与这些中心对象的距离;然后,纵向矩阵的训练集按照向量作为输入,通过欧氏距离不断迭代更新每一类的原型聚类中心位置,并用验证集对模型进行评估。
[0059]
优化目标为:
[0060][0061]
其中,c
i
为第i个分类的中心,为聚类模型计算出的对应于第i个分类的欧氏距离;f(i)为第i个分类中的纵向矩阵的向量。
[0062]
为了更进一步的展示本实施例的有益效果,本实施例对在2019年第四季度原始记录销售数据——当中一共有1054家医院、6880种药品,横向模型当中一共有285554条数据,包括了880家医院、6880种药品,采用横向模型预测出来了6025846条药品销售额预测数据,采用纵向模型预测出174家医院的6880种药品的销售额,共1197120条销售额数据,横向模型的平均绝对百分比误差(mean absolute percentage error)mape=1.0119,纵向模型mape=0.97,平均mape=0.99095,具有一定的现实参考价值。
[0063]
实施例2:为了更直观的展示本发明方法,假设客户端已经获取了5个医院(a、b、c、d、e)5种药品(甲、乙、丙、丁、戊)的在2021年1季度中部分药品销售总额(单位:万元)。其中,a、c、e是三甲综合公立医院,按照相关性分析可视为同一类医院;b和d为私立医院,按照相关性分析可视为同一类医院。为了能够帮助这几家医院中各个药品的销售额,本实施例提供“基于医院部分药品销售数据的整体销售额预测方法”,结合图5,该方法包含以下步骤:
[0064]
步骤一:遍历所有医院和药品销售数据,建立药品索引表、医院索引表。
[0065]
步骤二:构建医院与药品矩阵r,采用已知数据进行填充,并提取医院与药品矩阵中的横向矩阵;其中,元素r
i,j
是医院i中药品j所产生的销售额,1≤i≤5,1≤j≤5。
[0066]
步骤三:建立矩阵分解下的隐语义模型的bias svd横向模型,对横向矩阵的医院药品销售额的进行预测,得到预测值,并更新医院与药品矩阵。具体地:
[0067]
(1):将医院销售总额看作一个分层;
[0068]
(2):利用全局模型对横向矩阵的销售额进行预测,采用预测值对横向矩阵进行填充得到全局分层矩阵,并且得到基于整个横向矩阵的全局参数;得到预测值,并更新医院与药品矩阵中的横向矩阵部分。
[0069]
特别说明地,本实施例由于数据量小,所以取消了分层措施修正参数,牺牲了部分的预测精度。
[0070]
步骤四:建立k

means模型,利用纵向矩阵对医院进行聚类,再利用更新后医院与药品矩阵对e医院的药品销售额的进行填充,得到完整的医院和药品销售额预测数据。
[0071]
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在
形式上和细节上对其做出各种各样的改变,而不偏离本发明权利要求书所限定的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献