基于概率主题模型和中药基本属性的方剂功能预测方法与流程

文档序号:12551084阅读:185来源:国知局

本发明涉及文本挖掘和中医药信息处理领域。尤其是涉及一种基于概率主题模型和中药基本属性的方剂功能预测方法。



背景技术:

中医是中国创造的以传统医学为主的医学。上千年的积累使得中医积累了内容丰富的医学典籍与记录,这些资源蕴含了大量未知的知识。随着数字化技术的发展,中医药数字化资源越来越庞大,越来越多的学者也将数据挖掘技术应用于中医药以实现特定目的的分析与规律发现。方剂学作为中医药学的一个研究分支,需要按照组方原则,选择恰当的药物合理配伍,酌定合适的剂量、剂型和用法。其中,一个方剂的功效往往需要通过过漫长复杂的动物或临床实验,但临床或动物实验耗费大量的人力、物力及时间。如果通过计算机信息挖掘技术对新形成的方剂进行预测,获得该方剂的部分功效信息,就可以为开展大规模临床或动物实验提供极其有价值的参考,大大提升临床的实验效率。鉴于此,本案发明人的关注点在于如何通过计算机信息挖掘技术,利用现有的中医药数字资源实现方剂的功效预测,从而为方剂研究提供有价值的临床证据。



技术实现要素:

本发明的目的是克服现有技术的不足,提供一种基于概率主题模型和中药基本属性的方剂功能预测方法。

本发明解决其技术问题所采用的技术方案包括以下步骤:

步骤1、数据预处理

针对方剂大辞典数据库,应用中医药学语分词系统对方剂信息进行分词处理,提取出方剂名、方剂功效、方剂对应的中药、中药剂量和剂量单位,对剂量单位进行统一化,对方剂中的中药剂量进行标准化;针对中药数据库,应用中医药学分词系统对中药的功效、性味和归经三大属性进行分词,去停用词,对提取出来的结构化属性数据进行0-1量化处理,得到每味中药的属性向量,存入数据库,所述的方剂大辞典数据库和中药数据库均为半结构化数据。

步骤2、根据方剂名和方剂对应的中药,得到“方剂-中药”矩阵,将方剂功效作为隐含主题,应用LDA概率主题模型对“方剂-中药”矩阵进行主题建模,在模型中结合配伍数据库得到方剂功效和中药之间治疗关系的概率属性向量,存入数据库。

步骤3、根据每幅方剂的中药列表和统一化后的中药剂量,计算中药在方剂中的频次,取频次最高的两味中药作为君药和臣药,并根据中药的频次利用TFIDF模型提取中药在方剂中的权重系数,构造方剂的权重向量,存入数据库。

步骤4、按照中医传统理论中的组方原则,方剂中的中药有君臣佐使之分,而方剂的功效主要由君药和臣药决定。针对方剂大辞典数据库中的每副方剂,合并君药的属性向量、臣药的属性向量以及方剂的权重向量,构成方剂的特征向量,输入SVM分类器对模型进行训练,通过one-versus-rest方法构造多类别分类器。

步骤5、输入需要预测的新方剂信息,新方剂信息包括中药名和相应的剂量;根据方剂功效和中药之间关系的概率属性向量,应用贝叶斯公式计算该方剂隶属于某个功效的概率值,根据概率值从大到小排序,选取在特定阈值范围内的功效,得到功效集合一U1(U1有可能为空集)。

步骤6、根据步骤4得到待预测方剂的特征向量,输入SVM多分类器进行方剂功效预测,得到功效集合二U2

步骤7、将功效集合一和功效集合二作并集操作,得到最终的方剂功效集合U=U1∪U2

所述步骤1的具体实现内容包括:

①将中药的不同剂量单位按照下列规则统一换算成克:

一两=31.25克

一钱=3.125克

一分=0.3125克

②按照下列公式对方剂中不同中药的剂量继续标准化:

其中:di表示方剂中某中药的剂量,代表标准化后的中药剂量,dmax表示某中药常用剂量中的最大值;dmin表示某中药常用剂量中的最小值;

③所述的方剂功效包括和解剂、固涩剂、安神剂、开窍剂、治燥剂、治风剂、泻下剂、消导化积剂、表里双解剂、清热剂、温里剂、理气剂、理血剂、痈疡剂、祛暑剂、祛湿剂、祛痰剂、补益剂、解表剂、驱虫剂。

④所述的中草药性味指药物的性质和气味,即四气五味,包括寒、热、温、凉、辛、甘、酸、苦、咸。归经采用十二脏腑经络法表述,归心、肝、脾、肺、肾、胃、大肠、小肠、膀胱、胆、心包、三焦经。功效以双字词为单位描述,如“清热”、“解毒”、“凉血”等。其中,性味中出现“微寒”,“微热”等表述,用0.5量化,其余采用0-1量化构造向量空间。

所述步骤2的具体实现过程如下:

2-1.设定超参数α=2.5,β=0.1;

2-2.利用Gibbs采样方法对LDA概率主题模型进行参数估计,迭代次数为100;

2-3.完成采样后,查询中药配伍数据库:

若中药hi不具备相关的配伍药,按照下式计算“中药-功效”的概率矩阵ψ:

若中药hi和hj为配伍药对,计算“药对-功效”的概率矩阵θ:

其中,W代表中药的总数,表示中药hi分配给功效k的次数,不包括当前分配;代表分配给功效k的中药总次数,不包括中药hi分配给功效k的次数;代表分配给功效k的中药总次数,不包括中药hi、hj分配给功效k的次数。

所述步骤3的具体实现过程如下:

3-1.针对每幅方剂p,假定中药味数为Np,计算中药hi在方剂中的频次F(hi),取频次最高的两味中药作为君药和臣药。

3-2.利用TFIDF模型计算中药hi对方剂的重要程度,根据每味中药在方剂中的TFIDF值构造方剂p的权重向量m代表来自方剂数据库中的唯一中药总数。

其中,若方剂p包含中药hi,则ti=TFIDF(hi),否则ti=0。

所述步骤5的具体实现过程如下:

5-1.用户输入待预测方剂H(p)={h1,h2,...hNp},hi代表中药,应用贝叶斯公式计算该方剂隶属于功效k的概率:

其中,xi=1表示中药hi存在配伍药对,否则xi=0。

5-2.针对方剂H(p),返回满足下式的功效k,取阈值T=1e-8,得到功效集合一:

p(k|H(p))>T。

本发明有益效果如下:

本发明在现有的中医药数字资源的基础上,通过概率主题模型挖掘出方剂功效和中药之间的治疗关系,通过贝叶斯公式有效地计算出方剂的功能。此外,结合君药和臣药在方剂功效中发挥的主要作用,通过中药在方剂中的频次计算自动得到方剂中的君、臣药,并利用TFIDF模型提取方剂的权重向量,合并君药的属性向量、臣药的属性向量以及方剂的权重向量作为方剂的特征向量,利用SVM多分类器进一步提升了方剂功效预测的准确度,从而为方剂研究提供有价值的临床证据。

附图说明

图1是本发明的流程图。

具体实施方式

下面结合附图对本发明作进一步说明。

如图1所示,基于概率主题模型和中药基本属性的方剂功能预测方法包括以下步骤:

步骤1、数据预处理

针对方剂大辞典数据库,应用中医药学语分词系统对方剂信息进行分词处理,提取出方剂名、方剂功效、方剂对应的中药、中药剂量和剂量单位,对剂量单位进行统一化,对方剂中的中药剂量进行标准化;针对中药数据库,应用中医药学分词系统对中药的功效、性味和归经三大属性进行分词,去停用词,对提取出来的结构化属性数据进行0-1量化处理,得到每味中药的属性向量,存入数据库,所述的方剂大辞典数据库和中药数据库均为半结构化数据。

步骤2、根据方剂名和方剂对应的中药,得到“方剂-中药”矩阵,将方剂功效作为隐含主题,应用LDA概率主题模型对“方剂-中药”矩阵进行主题建模,在模型中结合配伍数据库得到方剂功效和中药之间治疗关系的概率属性向量,存入数据库。

步骤3、根据每幅方剂的中药列表和统一化后的中药剂量,计算中药在方剂中的频次,取频次最高的两味中药作为君药和臣药,并根据中药的频次利用TFIDF模型提取中药在方剂中的权重系数,构造方剂的权重向量,存入数据库。

步骤4、按照中医传统理论中的组方原则,方剂中的中药有君臣佐使之分,而方剂的功效主要由君药和臣药决定。针对方剂大辞典数据库中的每副方剂,合并君药的属性向量、臣药的属性向量以及方剂的权重向量,构成方剂的特征向量,输入SVM分类器对模型进行训练,通过one-versus-rest方法构造多类别分类器。

步骤5、输入需要预测的新方剂信息,新方剂信息包括中药名和相应的剂量;根据方剂功效和中药之间关系的概率属性向量,应用贝叶斯公式计算该方剂隶属于某个功效的概率值,根据概率值从大到小排序,选取在特定阈值范围内的功效,得到功效集合一U1(U1有可能为空集)。

步骤6、根据步骤4得到待预测方剂的特征向量,输入SVM多分类器进行方剂功效预测,得到功效集合二U2

步骤7、将功效集合一和功效集合二作并集操作,得到最终的方剂功效集合U=U1∪U2

所述步骤1的具体实现内容包括:

①将中药的不同剂量单位按照下列规则统一换算成克:

一两=31.25克

一钱=3.125克

一分=0.3125克

②按照下列公式对方剂中不同中药的剂量继续标准化:

其中:di表示方剂中某中药的剂量,代表标准化后的中药剂量,dmax表示某中药常用剂量中的最大值;dmin表示某中药常用剂量中的最小值。

③所述的方剂功效包括和解剂、固涩剂、安神剂、开窍剂、治燥剂、治风剂、泻下剂、消导化积剂、表里双解剂、清热剂、温里剂、理气剂、理血剂、痈疡剂、祛暑剂、祛湿剂、祛痰剂、补益剂、解表剂、驱虫剂。

④所述的中草药性味指药物的性质和气味,即四气五味,包括寒、热、温、凉、辛、甘、酸、苦、咸。归经采用十二脏腑经络法表述,归心、肝、脾、肺、肾、胃、大肠、小肠、膀胱、胆、心包、三焦经。功效以双字词为单位描述,如“清热”、“解毒”、“凉血”等。其中,性味中出现“微寒”,“微热”等表述,用0.5量化,其余采用0-1量化构造向量空间。

所述步骤2的具体实现过程如下:

2-1.设定超参数α=2.5,β=0.1;

2-2.利用Gibbs采样方法对LDA概率主题模型进行参数估计,迭代次数为100;

2-3.完成采样后,查询中药配伍数据库:

若中药hi不具备相关的配伍药,按照下式计算“中药-功效”的概率矩阵ψ:

若中药hi和hj为配伍药对,计算“药对-功效”的概率矩阵θ:

其中,W代表中药的总数,表示中药hi分配给功效k的次数,不包括当前分配;代表分配给功效k的中药总次数,不包括中药hi分配给功效k的次数。代表分配给功效k的中药总次数,不包括中药hi、hj分配给功效k的次数。

所述步骤3的具体实现过程如下:

3-1.针对每幅方剂p,假定中药味数为Np,计算中药hi在方剂中的频次F(hi),取频次最高的两味中药作为君药和臣药。

3-2.利用TFIDF模型计算中药hi对方剂的重要程度,根据每味中药在方剂中的TFIDF值构造方剂p的权重向量m代表来自方剂数据库中的唯一中药总数。

其中,若方剂p包含中药hi,则ti=TFIDF(hi),否则ti=0。

所述步骤5的具体实现过程如下:

5-1.用户输入待预测方剂H(p)={h1,h2,...hNp},hi代表中药,应用贝叶斯公式计算该方剂隶属于功效k的概率:

其中,xi=1表示中药hi存在配伍药对,否则xi=0。

5-2.针对方剂H(p),返回满足下式的功效k,取阈值T=1e-8,得到功效集合一:

p(k|H(p))>T。

实施例

1、输入一个新方剂,包含各中药和相应的剂量。

2、根据方剂功效和中药之间关系的概率属性向量数据库,应用贝叶斯公式计算新方剂隶属于某个功效的概率值,根据概率值从大到小排序,选取在特定阈值范围内的功效,得到功效集合一U1

3、针对新方剂中的中药列表和统一化后的中药剂量,计算中药在方剂中的频次,取频次最高的两味中药作为君药和臣药,并根据中药的频次利用TFIDF模型提取中药在方剂中的权重系数,构造方剂的权重向量。

4、查找中药属性数据库,得到君药和臣药的属性向量,合并君药的属性向量、臣药的属性向量以及方剂的权重向量,构成新方剂的特征向量,输入SVM多分类器进行方剂功效预测,得到功效集合二U2

5、合并功效集合一和功效集合二,得到新方剂的预测功效。

所述的步骤2通过以下子步骤实现:

2.1)假定输入的新方剂为H(p)={h1,h2,...hNp},hi代表中药,应用贝叶斯公式计算该方剂隶属于功效k的概率:

其中,xi=1表示中药hi存在配伍药对,否则xi=0。

2.2)针对新方剂H(p),返回满足下式的功效k,取阈值T=1e-8,得到功效集合一:

p(k|H(p))>T

所述的步骤3通过以下子步骤实现:

3.1)针对新方剂,假定中药味数为Np,计算中药hi在方剂中的频次F(hi),取频次最高的两味中药作为君药和臣药。

3.2)利用TFIDF模型计算中药hi对新方剂的重要程度,根据每味中药在新方剂中的TFIDF值构造新方剂的权重向量m代表来自方剂数据库中的唯一中药总数。

其中,若新方剂包含中药hi,则ti=TFIDF(hi),否则ti=0。

本实例的输入新方剂信息为石膏(50g),知母(18g),甘草(6g),粳米(9g),计算得到的君药和臣药分别为石膏和知母,功效集合一U1={清热剂},功效集合二U2={开窍剂,清热剂},最终得到的预测功效为开窍剂和清热剂。

需要说明的是,本实施例假定SVM多分类器已经训练完毕。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1