刘涛涛 王志辉 张弓 黎晖
摘 要:针灸是中国特有的一种治疗疾病的疗法,但现有针灸训练方法的效率太低。提出了一种新型的针灸训练系统,建立更接近于针灸临床实际场景的针灸手臂硅胶模型,并在模型的相应穴位内置高精度压力传感器。然后以此模型为硬件依托,利用上位机软件来提取针刺力并分析所用的针灸手法。对获得的针刺力数据,应用神经网络来对其进行训练和分析,从而对针灸手法进行判别,以此来规范针灸学员的施针手法,实验结果表明神经网络算法判别准确率在93%-98%之间,可广泛应用于针灸训练系统。
关键词:针灸;训练系统;手法判别;硅胶模型;神经网络
中图分类号:TP399 文件标识码:A
Application Research of Neural Network In Acupuncture Training System
LIU Tao-tao1,2?,WANG Zhi-hui1,ZHANG Gong2,LI Hui3
(1. School of Mechanical and Electronic Engineering,Wuhan University of Technology,Wuhan,Hubei 430070,China;
2. Guangzhou Institute of Advanced Technology,Chinese Academy of Sciences,Guangzhou,Guangdong 511458,China;
3. School of Basic Medicine,Guangzhou University of Chinese Medicine,Guangzhou,Guangdong 510000,China)
Abstract:Acupuncture is a unique treatment for diseases in China. However,the training efficiency of the existing acupuncture training method is too low. A new acupuncture training system is proposed to make a silicone model of acupuncture arm which is closer to the actual clinical scenes of acupuncture,and the high precision pressure sensors are built into the corresponding acupoints of the model. Based on this model,the PC software is used to extract the acupuncture force and to judge the acupuncture manipulation. The neural network algorithm is used to train and analyze the acupuncture force data,so as to judge the acupuncture manipulation,and to standardize the acupuncture manipulation of acupuncture trainees. The experimental results show that the accuracy of the neural network algorithm is 93%-98%,which can be widely used in the acupuncture training system.
Key words:acupuncture;training system;manipulation judgement;silicone mode;neural network
針灸是中国特有的一种治疗疾病的疗法,指在中医理论的指导下把针具按照一定的角度刺入患者体内,运用捻转与提插等针刺手法对人体特定部位进行刺激从而治疗疾病,刺入点称为人体腧穴,简称穴位[1-2]。针灸在中国传承已有千年,但作为一门注重实践的学科,一直缺少合理有效的实验训练方法,理论与实践严重脱离[3]。目前针灸教学多是以书本、穴位模型、老师课堂讲解的方式来进行,且针灸训练所用的针灸模型多为动物皮脂、棉花团或其他生硬的模型,这样所导致的教学效果是学生只能照葫芦画瓢,按照课堂所教的方法来进行针灸,至于自己所用的针灸手法、力道是对是错却不清楚。由此可见,搭建更有效的针灸训练系统势在必行。
当前,虚拟现实技术和传感针技术已广泛应用于针灸训练中。文献[4-5]描述的是虚拟现实技术在针灸上的应用,通过虚拟视觉的教学方式可以使学员对针灸更有感性的认识。文献描述的是传感针技术在针灸上的应用[6-8],传感针是传感器与执行器的融合,通过传感针的使用,可以将施针时的针刺力提取出来,从而对针刺力进行定量[9]。在针灸训练中,通过传感针测得的实际数值有助于学生把握针灸时的施针力道,对针灸教学也颇有裨益。
虚拟现实技术和传感针技术的应用提高了针灸训练的效果,但虚拟现实技术无法模拟出针灸临床时的实际施针手感,而特制的传感针与实际临床应用的毫针严重不符,二者都严重脱离了针灸临床的实际场景。可以看出:一个合理的针灸训练模型应该是在量化针刺物理参数的同时尽可能还原针灸临床的实际场景。
为此,设计了一种新的针灸训练系统,该系统所用的针灸模型是以模拟针灸临床的实际场景为前提,制作针灸手臂硅胶模型,并在模型的相应穴位处内置高精度压力传感器,再结合计算机技术和传感器技术;并且系统在量化针刺力的同时并应用BP神经网络算法来判别所用的施针手法。如此,便可以借助系统来判断出施针时施加的力的大小是否适当,施针的手法是否规范,以此来帮助学生进行针灸训练。
1 针灸手臂模型
所设计的针灸训练模型以尽可能还原针灸临床的实际场景为前提。模型的具体方案是:硅胶仿制手臂模型,根据穴位的实际位置和深度在模型的相应位置处内置高精度压力传感器。取手臂上五个主要穴位作为本次研究对象,穴位分别是内关穴、大凌穴、孔最穴、尺泽穴、少海穴。下图1表示硅胶手臂模型的内部结构;图2则为成品的硅胶手臂模型。
可以看出硅胶手臂模型很大程度上还原了针灸实际的临床场景,以及内置的高精度压力传感器可以有助于学生进行穴位位置记忆;同时,内置的高精度压力传感器可提取出针灸时针刺力的大小,从而可将针刺力数据传给计算机进行分析,对针灸手法进行判别。
由上面描述的硅胶手臂模型,再结合软件系统,便构成了针灸训练系统,在这套针灸训练系统中,最核心的部分是针刺力数据分析,即判别针灸手法。
2 针刺力数据分析
针刺力数据分析,即针灸手法判别问题。针灸手法判别即是通过对提取到的针刺力进行分析,从而判断出施针者所用的施针手法,采用的判别方法是神经网络算法。
文献[10-12]阐述了神经网络的原理和一些基本应用,了解了神经网络的特征,以及经典的BP神经网络在模式识别、数据分类等方面表现良好。在针灸中,不同的针灸手法对应不同的针刺力输出,反过来,只要能掌握针刺力的变化特征就能反推出针灸手法,所以针灸手法判别问题即可归结为数据分类问题。
设计的BP神经网络是三层神经网络模型,网络的结构设计在下面内容阐述,运用神经网络算法时有几个关键设计点,下面来分别讲述。
2.1 优化BP神经网络算法
针对BP神经网络算法存在的一些缺陷,例如收敛速度慢、过拟合、易陷入局部最小值等,在这里为加快网络收敛速度和跳出局部最小值我们采用附加动量项的方式对神经网络稍作改进[13]。
附加动量项的方法只是将权值的迭代公式(1)稍作改变,在其后面添加动量项,变为公式(2)。
式中α为动量系数,α的一般取值为0.5、0.9、0.99。动量项α(wt - wt-1)的作用在于記住上一时刻梯度的变化方向,其作用就是如若当前梯度方向与前一步的梯度方向一样,那么就增加这一步的权值更新。附加动量项利用其惯性效应可以抑制网络训练过程中可能出现的振荡现象,此外,附加动量项还有助于网络脱离平坦区。
2.2 数据特征选取
当应用BP神经网络算法构建数据分类器时,事先选取合适的数据特征往往事半功倍。要想选取合适的针刺力数据特征,需先了解提插手法和捻转手法分别对应什么样的针刺力数据。下图3、图4分别是提插手法和捻转手法对应的针刺力波形图。
如图3所示,图中所绘制的波形图是提插手法对应的针刺力波形图,一个波形代表的是一个提插过程。上升阶段是插针过程,下降阶段对应的是提针过程。
如图4所示,图中所绘制的波形图是捻转手法对应的针刺力波形图,因为捻转手法是刺中穴位后进行转动,此时并不需要向下施加力,所以捻转的针刺力较小,并且是间歇性刺激压力传感器,所绘制的针刺力波形图是由很多小脉冲信号组成。
从提插和捻转针刺力波形图及上述分析可以看出,可取相邻时刻针刺力的差值(即后一时刻值减去前一时刻值)作为神经网络的输入数据。如此,则插针手法对应的针刺力差值数据全为正数值,提针手法对应的针刺力差值数据全为负数值,捻转手法对应的针刺力差值数据为正负相间值。如此,针刺力数据特征更明显,运用BP神经网络算法则更易进行特征提取。
2.3 神经元个数选定
对于神经网络而言,其各层神经元个数选择合理与否直接关系到该神经网络的实际应用效果。在本文设计的针灸训练系统中,在针灸手法判别上,只定了插针、捻转、提针这三种针灸手法,所以输出层选3个神经元。
关键是输入层神经元个数的选定。输入层的输入数据反应的是数据间的特征,是数与数之间的相互关系,一般而言,单个数据无法反应数据间的特征;较少的数据也可能无法完全体现数据间的特征;而较多数据又容易造成数据浪费和内存浪费。在本文设计中,欲选择合适的输入层神经元的个数,首先需要了解一个完整的提插手法过程的数据特征。
如下表1所示,表中的数据是提插手法对应的针刺力差值数据(已经过做差处理),每一行数代表的是一个完整的提插过程对应的针刺力差值数据,表中共11组数据。
可以看出,每一组数据分为两个部分,前一部分基本为正数值,代表的是插针对应的差值数据,后一部分是负数值,代表的是提针对应的差值数据,且每一部分数据个数均不少于6个。又由于捻转手法对应的的针刺力差值数据是正负相间的一串数,所以其数据个数越多,就越能反应捻转针刺力差值数据之间的特证
综上所述,设计的神经网络输入层的神经元个数选定为6个。即输入的数据为6维数据,每维数据代表某一时刻的针刺力数据,6维数据即表示6个连续时刻提取的针刺力数据。
隐藏层神经元的个数一般都由经验而定,或由经验公式(3)选取:
其中i为输入个数,o为输出个数,a为0-10的整数。在本设计中,隐藏层神经元个数选定为8。
至此,神经网络结构已定,是一个三层神经网络,输入层有6个神经元,隐藏层有8个神经元,输出层有3个神经元。
3 结 论
3.1 针灸手法判别的正确性分析
为保证训练结果的可靠性,需先确保训练数据的可靠性。为此,特邀请广州中医药大学的针灸老师来进行针灸演练,获取他的施针数据。获得的训练数据有3112组,其中插针数据、捻转数据、提针数据各约占三分之一,另有350组数据作为测试数据,其中插针数据110组,提针数據110组,捻转数据130组。
训练神经网络,网络收敛示意图如图5所示。
训练神经网络,待网络收敛后,测试所获得的连接权值和阈值的可靠性。测试结果如表2所示。
由表2中的数据可知,神经网络算法对针灸手法判别的正确率在93%-98%之间,基本满足针灸训练需求。
3.2 针灸手法判别效果展示
对于神经网络的实际应用效果,下面将用一些图片展示。说明:下面所展示的判定效果图,其波形图的右侧是数据的更新侧,判定是对数据更新侧的某一连续时间内的数据(6个)进行判定。
图6两张图展示了插针手法的判定效果图。
插针手法对应的波形图是波峰的上升阶段,实时的插针手法判定效果如图6所示。这二张图也展示了当针刺力大小不一样,但针刺力数据间的特征表现为插针时,也会有同样的插针手法判定。
图7两张图展示了捻转手法的判定效果图。
捻转手法对应的波形图是间断的脉冲波形,且针刺力较小,实时的捻转手法判定效果如图7所示。这二张图也展示了当针刺力大小不一样,但针刺力数据间的特征表现为捻转时,也会有同样的捻转手法判定。
图8两张图展示了提针手法的判定效果图。
提针手法对应的波形图是波峰的下降阶段,实时的提针手法判定效果如图8所示。这二张图也展示了当针刺力大小不一样,但针刺力数据间的特征表现为提针时,也会有同样的提针手法判定。
4 结 论
通过模拟针灸临床的实际场景,在量化针刺力的同时运用神经网络算法对针灸手法进行判别,可提高针灸训练效率。
(1) 采用内置高精度压力传感器的手臂硅胶模型作为针灸训练模型(后期可制作全身模型)。实验结果表明,以人体穴位的实际位置来作为压力传感器的埋入点可以帮助针灸学习者记住穴位位置,同时硅胶手臂模型更能带来针灸临床的施针手感。
(2)运用神经网络算法对针灸手法进行判别的准确率在93%-98%之间。在针灸训练中以进行针灸手法判别的方式来检验施针者的施针手法是否规范,能使学生在训练过程中不断地对针灸手法进行自我矫正,从而掌握规范的施针方法。
在以后的应用中需不断的收集针灸施针数据,以保证系统的泛化性。为进一步保证系统的合理性,可邀请针灸界权威针灸大师们来进行针灸示范,从而获得他们的数据,以针灸大师们的施针数据为参照,可不断规范针灸学员的施针手法。
参考文献
[1] 刘建华,马文涛.针灸作用机理和经络研究的现状及其展望[J]. 中国基础科学,2004,(4):29-35.
[2] ZHAO Jing-sheng. Interpretation of acupuncture theory from acupuncture application[J].Chinese Acupuncture & Moxibustion,2017,37(10):1115.
[3] 张丽.针灸教学的革新方式及现实意义分析[J].智慧健康,2017,(12):112-114.
[4] 姜雨晨,姜俊,王福波,等. 数字虚拟人体上针刺手法学的VR再现[J].中国组织工程研究,2016,20(44):6643-6648.
[5] 孟向文,刘建卫. 数字人体穴位系统在腧穴学教学中的应用研究[J]. 江苏中医药,2008,40(12):72-73.
[6] 任恕,李统平,喻凤兰,等. 中医传感针的研制[J]. 传感技术学报,1992,5(3):49-53.
[7] 任恕,周宜开,沈杰. 传感针我们始创的传感器[J]. 传感器世界,2004,5:6-9.
[8] 赵文勇. 人体穴位模拟针灸检测系统[D]. 天津大学,2007.
[9] 王雪争,王康. 针型传感器的研究进展及在中医研究中的应用[J]. 针灸临床杂志,2010(12):68-71.
[10] DING Shi-fei,YANG Chun .An optimizing BP neural network algorithm based on genetic algorithm[J]. Artificial Intelligence Review,2011,32(02):153-162.
[11] 刘岩.基于改进BP神经网络算法的唇读算法的研究与实现 [D]. 吉林大学,2014.
[12] ZHAO Xue-feng,QIN B. BP neural network recognition algorithm for scour monitoring of subsea pipelines based on active thermometry[J].Optik - International Journal for Light and Electron Optics,2014,125(18):5426-5431.
[13] 刘莉,刘强. 引入动量项的变步长 BP 网络预测算法[J]. 探测与控制学报,2015.37(05):102-105.