现在中老年人中有糖尿病的朋友越来越多了,大家都觉得我很有知识的样子,总是要俺帮着查查和咨询俺关于糖尿病的相关知识和问题。其实吧,我并不知道,但是为了回答有时会看一些这方面的论文,然后加上“扯商”还有一点,总能把周围的中老年人忽悠得七荤八素。
今天俺就用知识图谱去试着看看糖尿病的相关注意事项,这样以后再扯的时候就有根有据一点
数据源:天池。
一、把天池上提供的原始数据,基于自然语言处理和机器学习进行了分词以及抽取关系,这一块,以后有时间在聊。今天主要关心的是糖尿病的注意事项。
这是处理完了后的结果:
node:
edge:
二、创建有向图
结果就是这样的,一大坨,因为节点太多。那张图忘记截图了,就把给大家讲课的时候讲的这张NBA的知识图谱在这里充个数,不想在运行一次,老师的电脑设备太差了,运行一次时间太长了
然后在neo4j中创建了图谱,这样看着舒服多了。另外neo4j用的是CQL。
CQL代表Cypher查询语言。像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询语言。和SQL一样好用,咱们有SQL的基础,学这个CQL二天可以搞定。
用
MATCH (n:Node) WHERE n.name ="格列齐特缓释片" RETURN n
然后点击节点展开。
大家看看这个常用药“格列齐特缓释片”的知识图谱,使我们充分了解了是药三分毒的道理:肾脏事件风险、心血管风险、严重低血糖、微血管事件。当然,吃药的时候还是要考虑到底是利大于弊还是弊大于利。
用
MATCH (n:Node) WHERE n.name ="二甲双胍" RETURN n
然后点击节点展开。
在看看神药“二甲双胍”,毕竟是神药,各种剂量种类真是多,常用于儿童和青少年糖尿病,可以防止动脉粥样硬化、抑制代谢综合征,但是会造成(?)卵巢过度刺激综合征、ED?难道它的药物机制和药物动力学会抑制性激素的分泌或者产生啥的?这个我需要进一步查下相关论文。
三、对创建的网络信息进行分析
有向网络平均最短距离、无向网络平均最短距离、所有节点的度分布序列、计算每个点的度中心性、计算每个点的入(出)度中心性、紧密中心度、介数中心度、特征向量中心度、网络密度、网络传递性、无向网络群聚系数、无向节点度的匹配性等进行分析,结果如下:
四、用PageRank分析这些节点的重要性
我们取了排序前十的节点。从结果简单的知道,糖尿病多二型(二型糖尿病、T2DM);它的并发症较多是个可怕的东西;然后和肥胖大大的相关;会造成慢性肾脏病(ckd);和多囊卵巢综合症(PCOS)也是大大相关的;和抗磷脂抗体综合征(ASP-2)也是相关很大;出现胰岛素抵抗等。
五、用HITS分析这些节点的重要性
(1)指向权威节点的链接集合节点如下:
血糖 0.001770860437495387
胰岛素 0.0015051819744990884
体重 0.0013762591471278701
HBA1C 0.0013757884405743424
LDL-C 0.0012768823661345248
体重指数 0.001242657762818237
血脂 0.0012361685905070833
二甲双胍 0.0012307726244180878
空腹血糖 0.0012239952026656374
血压 0.0012122107728914588
这些都是我们平时应该注意的生理指标,不要超标!还有神药二甲双胍。
(2)权威节点如下:
糖尿病 0.056831631480538686
2型糖尿病 0.04754696513663912
肥胖 0.020149646432667725
胰岛素抵抗 0.015311262284329665
T2DM 0.01329652985096264
1型糖尿病 0.011878102226490056
动脉粥样硬化 0.010733389280076716
心血管疾病 0.009715542052562968
NAFLD 0.009606968498475947
糖尿病肾病 0.008809030222871828
都是些相关的疾病和并发症!
这是用知识图谱做的一个最最简单的分析。
写在后面:写这篇推文,还有个原因是俺为了防止糖尿病特意去买了个控糖的电饭煲,想着多吃点也能保持身体健康和减肥,但是用了几天,感觉是交了“智商税”。所以,要想减肥控糖,方法唯有“管住嘴迈开腿”,没有之一。多运动少吃,糖尿病是个需要克制力的疾病。
关于PageRank和HITS大家可以参考下面这篇文章:
跟谁约会呢(PageRank)