專利名稱:中醫(yī)脈象特征函數(shù)自動(dòng)提取方法
技術(shù)領(lǐng)域:
本發(fā)明與處理外部技術(shù)數(shù)據(jù)的計(jì)算機(jī)程序相關(guān),涉及中醫(yī)客觀化量化 診斷領(lǐng)域,是一種利用計(jì)算機(jī)技術(shù)實(shí)現(xiàn)自動(dòng)提取、并量化中醫(yī)脈象特征的 方法。
背景技術(shù):
脈診是最具中醫(yī)特色的診法之一,是辨別證候,評(píng)定病情,預(yù)測(cè)疾病 發(fā)展趨勢(shì),判斷治療效果的重要依據(jù)。醫(yī)生在臨床診脈時(shí),對(duì)某一脈象的 判斷取決于指下的主觀感覺。由于每個(gè)人的生理體質(zhì)的不同,導(dǎo)致其基礎(chǔ) 脈象的生物學(xué)特征和病理情況下表現(xiàn)的脈象也有所不同,研究其基于個(gè)性 化特質(zhì)的脈象變化規(guī)律,找出可作為臨床辨證依據(jù)的特異性量化指標(biāo)具有 重要意義。
脈圖是指切脈所得的脈象經(jīng)脈圖儀描記出來的一組波形圖,在一定程 度上能反映出脈象的某些特征。得到的脈圖有脈波圖、微分圖等多種,而 以脈波圖應(yīng)用最為廣泛。脈圖的出現(xiàn)使中醫(yī)脈象研究中引入了客觀因素, 有利于脈象與證候的分析。脈圖中脈象特征的表示和提取問題是中醫(yī)客觀 化量化診斷的基本問題。本文主要關(guān)注從脈圖儀或脈象儀這類設(shè)備獲取的 表征脈象信息的數(shù)據(jù),因此在本文中主要關(guān)注相關(guān)的數(shù)據(jù),而并不嚴(yán)格區(qū) 分脈圖儀或脈象儀是否有何差異,特此說明。
目前與脈圖儀或脈象儀裝置相關(guān)的專利和成果已經(jīng)較多,但是脈象或
脈圖特征自動(dòng)提取并量化評(píng)估的成果較少,其中于2006年6月28日公開 的,中國公開號(hào)CN 1792319A,申請(qǐng)?zhí)?00510061394. 2,中醫(yī)脈象特征參 數(shù)自動(dòng)檢測(cè)方法,"基于貝葉斯網(wǎng)絡(luò)的概率推理模型為基礎(chǔ),運(yùn)用現(xiàn)代信 號(hào)處理技術(shù)、圖像識(shí)別技術(shù)提取舌象和脈象特征","其特征是由脈診 傳感器和脈象采集電路組成的脈象采集裝置獲得脈象信號(hào),并傳輸至計(jì)算 機(jī),在計(jì)算機(jī)中完成對(duì)輸入脈象信號(hào)進(jìn)行除噪、拐點(diǎn)檢測(cè)以及脈圖參數(shù)檢 測(cè)。"。其中利用了復(fù)小波等技術(shù)對(duì)脈圖進(jìn)行分析。
文獻(xiàn)"鐘琦,肖隨貴.基于進(jìn)化計(jì)算的中醫(yī)脈象分類識(shí)別研究[J].計(jì)
算機(jī)應(yīng)用與軟件,2007, 24(5) :158-159, 174"中從脈象信號(hào)的三種譜圖(功 率譜、倒譜和傳遞函數(shù))分析所獲得的15個(gè)特征參數(shù)中,選取7個(gè)特征參 ^作為模式分類的特征分量,分別對(duì)6種脈象(平脈、弦脈、滑脈、細(xì)脈、 緩脈、數(shù)脈)的數(shù)據(jù)應(yīng)用文獻(xiàn)"Ferreira, C, . Gene Expression Programming: A New Adaptive Algorithm for Solving Problems [J]. Complex Systems, 2001, 13(2): 87-129"中公開的GEP基本方法挖掘各種脈象的分類用函數(shù) 式,挖掘函數(shù)式的目的集中在對(duì)六種脈象進(jìn)行分類。有多少種不同類型的 脈象,其方法就挖掘多少種函數(shù),6種脈象需要挖掘出6個(gè)函數(shù)式,對(duì)于某1待測(cè)脈圖,其中每1個(gè)函數(shù)式可對(duì)應(yīng)于某1種脈象做是非判定。該文獻(xiàn)中 挖掘出的函數(shù)僅用于限定了數(shù)量的分類工作,它限定了類別數(shù),而且只用 于預(yù)測(cè)新的數(shù)據(jù)所屬的大類別,但并不一定能很好地表示某個(gè)人、某時(shí)的、 某類脈象的特征或某個(gè)具體脈圖的特征。事實(shí)上由于每個(gè)人都存在各種各 樣的個(gè)體差異,對(duì)于同一類脈象,不同人脈象特征的細(xì)節(jié)也必然會(huì)有差異, 該文獻(xiàn)并未提及如何用函數(shù)式表征脈象細(xì)節(jié)特征的處理方法。另外,該文 獻(xiàn)中方法未提及如何能夠根據(jù)具體需求限定函數(shù)式的形式。
其它當(dāng)前研究多為使用神經(jīng)網(wǎng)絡(luò)、小波分析等函數(shù)分析或函數(shù)逼近的 方法來量化脈象特征,而這些方法一般都限定了脈象特征表示的具體形式。
發(fā)明內(nèi)容
本發(fā)明的目的是針對(duì)脈象特征的表示和提取問題,克服上述現(xiàn)有技術(shù) 存在的不足,提出一種自動(dòng)提取、并量化某個(gè)中醫(yī)脈圖特征的方法,以輔 助有效實(shí)現(xiàn)中醫(yī)客觀化量化診斷。
為了達(dá)到本發(fā)明的目的提供一種中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,包 括獲取脈象數(shù)據(jù)的方法是由脈診傳感器和脈象采集電路組成的脈象采集裝 置獲得脈象信號(hào),傳輸至計(jì)算機(jī),或者采用本身己經(jīng)可以將脈象數(shù)據(jù)直接
存儲(chǔ)為計(jì)算機(jī)可識(shí)別的數(shù)據(jù)的脈象儀,可直接通過USB接口, C0M接口,或
網(wǎng)絡(luò)接口將脈象數(shù)據(jù)讀入脈象數(shù)據(jù)庫,本發(fā)明的本質(zhì)是,從計(jì)算機(jī)系統(tǒng)外 部獲取與時(shí)間序列有關(guān)的周期性的脈象數(shù)據(jù)后,利用計(jì)算機(jī)程序處理這些 數(shù)據(jù),并得到獲得符合自然規(guī)律的技術(shù)數(shù)據(jù)處理效果。主要步驟包括,從 外部獲取的脈象數(shù)據(jù)中,選取數(shù)據(jù),規(guī)范化,并對(duì)其自動(dòng)建立數(shù)學(xué)模型, 提取出符合要求的表征該數(shù)據(jù)特征的不限定具體表達(dá)式形式的特征函數(shù), 輸出并輔助中醫(yī)客觀化量化診斷工作。
中醫(yī)脈象特征函數(shù)自動(dòng)提取方法是通過以下步驟實(shí)現(xiàn) 1、從脈象儀獲取脈象數(shù)據(jù)
由脈象儀獲取的脈象信號(hào)可以是數(shù)字信號(hào)也可是模擬信號(hào)。不論何種 脈象儀裝置,其采集的脈象信號(hào)可分為數(shù)字信號(hào)和模擬信號(hào)2種。對(duì)于數(shù)字 信號(hào)可直接根據(jù)信號(hào)的強(qiáng)度值對(duì)其量化,從而采集到計(jì)算機(jī)可以處理的脈 象數(shù)據(jù);與音頻或視頻數(shù)字化的原理類似,對(duì)于模擬信號(hào)總可以采用脈沖
編碼調(diào)制或其它方式將其數(shù)字化轉(zhuǎn)換為計(jì)算機(jī)可以處理的脈象數(shù)據(jù)。這些 從脈象儀上采集的脈象數(shù)據(jù)正是后序工作處理的對(duì)象。 脈象信號(hào)可以是脈象儀裝置實(shí)時(shí)的脈象信號(hào),也可以是事先采集好并存放 在計(jì)算機(jī)中的己經(jīng)轉(zhuǎn)換過的數(shù)字信號(hào)。
需要說明的是,不失一般性,我們要求獲取脈象數(shù)據(jù)的脈象儀已經(jīng)經(jīng) 過嚴(yán)格調(diào)校,獲取的脈象數(shù)據(jù)要么幾乎沒有噪聲,要么噪聲在每次測(cè)量時(shí) 均按固有規(guī)律產(chǎn)生,即背景噪聲是穩(wěn)定的,鑒于特征比對(duì)時(shí)關(guān)注的是特征 的差異,穩(wěn)定的噪聲不會(huì)影響特征函數(shù)的表示能力,因此本發(fā)明有依據(jù)將關(guān)注點(diǎn)集中在如何從脈象數(shù)據(jù)中提取特征,而不必考慮噪聲處理問題。
2、 確定脈象數(shù)據(jù)起始點(diǎn)
盡管每一個(gè)跳動(dòng)周期上波形細(xì)節(jié)各有不同,但是活人或活體動(dòng)物的心 跳或脈動(dòng)在總體上是周期性的,因而對(duì)應(yīng)于脈象形成的波形函數(shù)也必是有 一定周期特征的。
對(duì)于具有周期性特點(diǎn)的脈象特征函數(shù)而言,不同的脈象數(shù)據(jù)起始點(diǎn)對(duì) 應(yīng)的脈象特征的波形的函數(shù)的相位將有所不同,其具體函數(shù)式也會(huì)不同。 為了最終提取的脈象特征函數(shù)更簡(jiǎn)明更一致,便于特征比對(duì)和實(shí)際應(yīng)用, 本發(fā)明技術(shù)方案在處理脈象數(shù)據(jù)時(shí)要確定數(shù)據(jù)起始點(diǎn)。此步驟在計(jì)算機(jī)中 完成,采用計(jì)算機(jī)程序處理從外部獲取的脈象數(shù)據(jù)。
3、 確定脈象數(shù)據(jù)終點(diǎn)
根據(jù)數(shù)學(xué)知識(shí),數(shù)據(jù)終點(diǎn)和周期函數(shù)的相位無關(guān),但如果從起始點(diǎn)到 終點(diǎn)不足一個(gè)函數(shù)周期,則該周期函數(shù)的基本特性在數(shù)據(jù)中是不完全的, 另一方面,過多的數(shù)據(jù)會(huì)影響提取脈象特征函數(shù)的效率,因此為能快速準(zhǔn) 確提取脈象特征函數(shù),本發(fā)明技術(shù)方案在處理脈象數(shù)據(jù)時(shí)提出還要確定數(shù) 據(jù)終點(diǎn)。此步驟在計(jì)算機(jī)中完成,采用計(jì)算機(jī)程序處理從外部獲取的脈象 數(shù)據(jù)。
4、 規(guī)范化脈象數(shù)據(jù)
根據(jù)數(shù)學(xué)知識(shí),波形圖的振幅不同,波形函數(shù)的數(shù)學(xué)表達(dá)式也會(huì)不同, 脈象特征函數(shù)的數(shù)學(xué)表達(dá)式與之類似,為了減少不同脈象儀和數(shù)字化時(shí)可 能造成的數(shù)據(jù)不一致,規(guī)范最終脈象特征函數(shù)的一致性,提高特征函數(shù)的 廣泛使用性能,本發(fā)明技術(shù)方案提出要規(guī)范化數(shù)據(jù),將所有脈象數(shù)據(jù)的量
化的數(shù)值規(guī)范到[-i, l]或[O, l]之間再做下一步處理。規(guī)范化的方法可以是
按比例縮放等。此步驟在計(jì)算機(jī)中完成,采用計(jì)算機(jī)程序處理從外部獲取 的脈象數(shù)據(jù)。
5、 基于生物免疫遺傳啟發(fā)進(jìn)化算法從脈象數(shù)據(jù)中提取脈象特征函數(shù)
本發(fā)明使用計(jì)算機(jī)軟件技術(shù)處理經(jīng)過前面步驟處理的脈象數(shù)據(jù),從中 提取脈象特征函數(shù)。本發(fā)明實(shí)施例的特征函數(shù)提取程序基于一種進(jìn)化計(jì)算 方法。進(jìn)化計(jì)算是一類模擬生物進(jìn)化過程與機(jī)制求解問題的自組織、自適 應(yīng)人工智能技術(shù),是一種具有"生成一檢測(cè)"的迭代過程的搜索算法。
本發(fā)明的特征函數(shù)提取程序受生物免疫遺傳機(jī)制啟發(fā)提出。生物免疫 系統(tǒng)能過通過免疫細(xì)胞在免疫遺傳進(jìn)化過程中不斷克隆變異,免疫細(xì)胞能 發(fā)現(xiàn)外來異物、細(xì)菌或病毒等對(duì)機(jī)體可能有害的物質(zhì),以確保機(jī)體健康。 生物免疫系統(tǒng)具有多樣性、耐受性、免疫記憶、分布式并行處理、自組織、 自學(xué)習(xí)、自適應(yīng)和魯棒性等諸多方面的優(yōu)點(diǎn)。目前模擬生物免疫原理的求 解計(jì)算機(jī)領(lǐng)域中問題的人工免疫算法比較多,由于各自基于不同的免疫原 理,各種具體實(shí)施方法差異較大,同時(shí),為解決不同的具體問題,算法中個(gè)體的結(jié)構(gòu)也有較大差異。
本發(fā)明的特征函數(shù)提取程序基于生物免疫遺傳學(xué)原理專為提取脈象特 征函數(shù)設(shè)計(jì),更適宜于提取具有周期特征,要求輸出的函數(shù)式盡可能靈活 多樣,同時(shí)能夠較精確地量化描述各類波形數(shù)據(jù)的細(xì)節(jié)特征。在本發(fā)明中, 參與進(jìn)化的個(gè)體是由函數(shù)符、運(yùn)算符、變量符、常數(shù)符按一定規(guī)則組成的 字符串向量的向量,每個(gè)個(gè)體通過解碼的方式可以轉(zhuǎn)換并表示一個(gè)或多個(gè) 數(shù)學(xué)函數(shù)式;個(gè)體與所求的最好的目標(biāo)特征函數(shù)的接近程度用適應(yīng)度數(shù)值 表示,通過適應(yīng)度函數(shù)計(jì)算而得;通過初始化一定數(shù)量的個(gè)體構(gòu)成群體,
不斷地以基于模擬生物免疫進(jìn)化策略的方式運(yùn)用進(jìn)化算子使得群體不斷進(jìn) 化,直到群體中出現(xiàn)符合表征脈象特征要求的個(gè)體,將該個(gè)體解碼后便可 提取出表征脈象特征的脈象特征函數(shù)。為不引起誤解,這里說明,本文所 稱函數(shù)式或數(shù)學(xué)函數(shù)式是指可以描述多個(gè)變量之間函數(shù)關(guān)系的數(shù)學(xué)表達(dá) 式。此歩驟在計(jì)算機(jī)中完成,采用計(jì)算機(jī)程序處理從外部獲取的脈象數(shù)據(jù), 得到表征脈象特征的特征函數(shù)輔助中醫(yī)客觀化量化診斷工作。
本發(fā)明方法可以自動(dòng)提取脈圖中的脈象特征,脈象特征以特征函數(shù)方 式表示,不同于多元回歸、小波分析或神經(jīng)網(wǎng)絡(luò)方法等常見方法預(yù)先限定 函數(shù)數(shù)學(xué)表達(dá)式的形式,本方法能夠自動(dòng)提取并以簡(jiǎn)明不限具體形式的數(shù) 學(xué)函數(shù)式表示不同類型的脈象特征,實(shí)現(xiàn)中醫(yī)脈象特征的精確、客觀、量 化表示和自動(dòng)提取,提取脈象特征函數(shù)部分程序基于生物免疫遺傳啟發(fā)的 進(jìn)化算法。本方法專為提取脈象特征函數(shù)提出,適宜于提取周期函數(shù),函 數(shù)形式靈活,能夠靈活精確地量化描述各類波形數(shù)據(jù)的細(xì)節(jié)特征,也可用 于提取其它周期性的時(shí)序數(shù)據(jù)的特征函數(shù)。
圖1是本發(fā)明實(shí)施例的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法的流程圖。
圖2是中醫(yī)脈象數(shù)據(jù)獲取示意圖。 圖3是脈象波形圖示意。
圖4是本發(fā)明實(shí)施例的確定脈象數(shù)據(jù)起始點(diǎn)的流程圖。 圖5是本發(fā)明實(shí)施例的確定脈象數(shù)據(jù)終點(diǎn)的流程圖。
圖6是本發(fā)明實(shí)施例的規(guī)范化脈象數(shù)據(jù)的流程圖。 圖7是特征函數(shù)提取程序中個(gè)體結(jié)構(gòu)的示意圖。 圖8是個(gè)體結(jié)構(gòu)中字串向量解碼為數(shù)學(xué)表達(dá)式的示意圖。 圖9是個(gè)體單點(diǎn)變異時(shí)其中字串向量變化的示意圖。
圖io是個(gè)體交叉變異時(shí)其中字串向量變化的示意圖。
具體實(shí)施例方式
主要涉及對(duì)計(jì)算機(jī)外部對(duì)象進(jìn)行控制或處理的解決方案,以下結(jié)合附 圖詳細(xì)說明本發(fā)明的思想。圖1是本發(fā)明實(shí)施例的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法的流程圖。 圖1程序100給出了自動(dòng)提取中醫(yī)脈象特征函數(shù)的基本步驟
其中102為從脈象儀獲取脈象數(shù)據(jù),此步驟涉及從計(jì)算機(jī)系統(tǒng)外部獲 取數(shù)據(jù),具體實(shí)施例中處理方法見圖3中對(duì)步驟300的示意圖及說明;
104為確定脈象數(shù)據(jù)起始點(diǎn),具體處理方法見圖4中程序400的流程圖; 106為確定脈象數(shù)據(jù)終點(diǎn),具體處理方法見圖5中程序500的流程圖; 108為規(guī)范化脈象數(shù)據(jù),具體處理方法見圖6中程序600的流程圖; 110為調(diào)用脈象特征函數(shù)提取程序步驟,調(diào)用的具體程序見圖2中程序 100的剩余部分。
步驟112-130是本發(fā)明實(shí)施例的特征函數(shù)提取程序部分的流程圖,它 模擬生物免疫遺傳進(jìn)化的過程。
112步驟為隨機(jī)地生成群體,群體f是x個(gè)體(個(gè)體詳細(xì)說明請(qǐng)參見圖 7說明)的集合,個(gè)體由"=2個(gè)(其它實(shí)施例中數(shù)量可根據(jù)實(shí)際應(yīng)用需求設(shè) 定)字串向量構(gòu)成,連接符為"+",字串向量維度為/ZF20;
生成字串向量的規(guī)則與文獻(xiàn)"Ferreira, C. . Gene Expression Programming: A New Adaptive Algorithm for Solving Problems [J]. Complex Systems, 2001, 13(2): 87-129"中生成K表達(dá)式的方法本質(zhì)相 同;
設(shè)字符集/M 'sin, ,'tan, ,, sinh, ,'tanh, , 'arcsin,, 'ln, }, 6M ' + , ,', '*, , 7, , '" }, 7M V }, C={ T , '3' ,'9' ,'27' ,'81' ,'243, },請(qǐng)注意在其它實(shí)施例中可 根據(jù)系統(tǒng)需求調(diào)整字符集A ft C的具體內(nèi)容,與GEP算法中的要求相 同,只要F中的字串是系統(tǒng)可識(shí)別的函數(shù)串,0中的為操作符串,T中的為 終結(jié)符串,C中的為常數(shù)串即可;112步驟實(shí)施方式為從F, ft 7, C中隨 機(jī)地選取字符,填入字串向量前的l-9維位置處,從r, C中隨機(jī)地選取字 符,填入字串向量10-20維位置處,生成/ 個(gè)字串向量,構(gòu)成1個(gè)個(gè)體, 如此操作生成^個(gè)個(gè)體,構(gòu)成1個(gè)群體。
生物免疫系統(tǒng)中如果免疫細(xì)胞對(duì)生物機(jī)體中自體具有較高親合力,則 該細(xì)胞可能"誤殺"自體細(xì)胞,而產(chǎn)生一系列危害自身的免疫反應(yīng),正常 的免疫系統(tǒng)在克隆變異出新的免疫細(xì)胞后都需要經(jīng)過自體耐受過程,只有 對(duì)自體細(xì)胞有耐受的免疫細(xì)胞才能夠成熟并參與后續(xù)的免疫循環(huán)。114步驟 模擬生物免疫系統(tǒng)中免疫細(xì)胞自體耐受過程,通過耐受步驟控制群體中個(gè) 體的類型。對(duì)于上一步驟112或130生成的新個(gè)體,免疫細(xì)胞對(duì)應(yīng)于本程 序中的個(gè)體,如果該個(gè)體解碼后的函數(shù)式和116自體庫中某個(gè)個(gè)體解碼(解 碼請(qǐng)參見圖8說明)后的函數(shù)式相同,則執(zhí)行118步驟,消亡即刪除該個(gè) 體,否則轉(zhuǎn)入120步驟。
116是自體庫,是一種數(shù)據(jù)存儲(chǔ),其中存放的是不應(yīng)當(dāng)出現(xiàn)在最終結(jié)果中的個(gè)體的集合;當(dāng)然,既然最終輸出的是解碼后的函數(shù)式,自體庫中可 直接存放函數(shù)式;這些函數(shù)式是不符合系統(tǒng)需要的函數(shù)式;本發(fā)明的程序 能夠控制凡是解碼為自體庫中的函數(shù)式的個(gè)體都不需要在循環(huán)的后續(xù)部分 再中出現(xiàn)了,這樣可以使得程序能控制脈象特征函數(shù)最終輸出的具體內(nèi)容 和格式,也可以減少不必要的適應(yīng)度計(jì)算工作,提高程序的執(zhí)行效率;需 要指明,自體庫還可以根據(jù)程序的執(zhí)行狀況在124步驟時(shí)被動(dòng)態(tài)調(diào)控;這
里與傳統(tǒng)GEP方法有明顯區(qū)別。
120是成熟的群體步驟,即把經(jīng)過114步驟后個(gè)體耐受成功的個(gè)體加入
到的成熟個(gè)體的集合f'。
122是檢査群體規(guī)模是否符合系統(tǒng)要求的判斷操作,A是一個(gè)大于零的 整數(shù),這里不妨令^20,如果廣中個(gè)體的數(shù)目(即群體規(guī)模)達(dá)到要求, C .size()S A則跳向124,否則跳向130。其它實(shí)施例中可以根據(jù)系統(tǒng)要 求動(dòng)態(tài)調(diào)整成熟群體^的規(guī)模閾值A(chǔ),控制每一階段需要測(cè)試的個(gè)體數(shù)目, 和調(diào)控進(jìn)化的規(guī)模。
124步驟將成熟的群體中的每個(gè)個(gè)體分別解碼(解碼請(qǐng)參見圖8說明) 為函數(shù)式,不妨設(shè)某一個(gè)體解碼后的函數(shù)式為對(duì)每個(gè)函數(shù)式在126 脈象數(shù)據(jù)庫上計(jì)算出相應(yīng)適應(yīng)度;適應(yīng)度是某個(gè)個(gè)體接近于目標(biāo)特征函數(shù) 的一種測(cè)度,令7是脈象數(shù)據(jù)集合,包含歷個(gè)時(shí)刻的脈象數(shù)據(jù),力表示第J' 時(shí)刻一項(xiàng)脈象測(cè)量指標(biāo)的實(shí)際測(cè)量數(shù)值,^二/0)是計(jì)算所得的值,令
,100,則適應(yīng)度/7toas^^Mx丄x;f](1-^二力
w .h 力
例中當(dāng)然也可以為脈象特征函數(shù)自動(dòng)提取任務(wù)專門定制設(shè)計(jì)適應(yīng)度計(jì)算方 法,只要能夠度量該函數(shù)式與脈象數(shù)據(jù)的靠近程度即可;
同時(shí),在124步驟中將本輪循環(huán)中適應(yīng)度最小的個(gè)體解碼后的函數(shù)式
將被放入自體庫之中,這樣,待下一輪進(jìn)化循環(huán)時(shí),解碼為該函數(shù)式的個(gè) 體將在114步驟自體耐受步驟中耐受失敗,并在118步驟個(gè)體消亡步驟中 被消亡不再參與后續(xù)的操作;由于此前己經(jīng)知道該個(gè)體解碼所得函數(shù)式與 脈象數(shù)據(jù)的靠近程度不高,該個(gè)體肯定不會(huì)是最終的特征函數(shù),所以早期 時(shí)就消亡掉它,可以減少后續(xù)操作的浪費(fèi),提高系統(tǒng)性能,從這一點(diǎn)看, 本發(fā)明中的自體庫有記憶歷史信息的特點(diǎn)。
126是脈象數(shù)據(jù)庫,是一種數(shù)據(jù)存儲(chǔ),其中存放的是經(jīng)過102, 104, 105, 106步驟處理過的脈象數(shù)據(jù)。
128是程序是否終止的判斷條件,如果成熟群體中的最佳個(gè)體(即最能 精確表示脈象特征的個(gè)體)的適應(yīng)度達(dá)到程序設(shè)定的要求,令se
, 如果/ito"s 2 s則執(zhí)行132步驟輸出該個(gè)體解碼后所得的函數(shù)作為表征 脈象特征的脈象特征函數(shù)到計(jì)算機(jī)屏幕和終端設(shè)備,并終止程序,否則執(zhí)
)S100;注意,在其它實(shí)施行130步驟;注意,因?yàn)?Ytoe^S100,所以總能找一個(gè)se
滿足 /Y^e^s 2s使得程序自動(dòng)終止,而不是無限循環(huán)下去。
130是克隆變異步驟(變異請(qǐng)參見圖9、圖10說明),名稱借鑒了生 物免疫遺傳學(xué)中的術(shù)語,克隆是一種復(fù)制操作可以擴(kuò)大群體規(guī)模,變異可 使得原有群體中的個(gè)體得到更新,以搜索新的函數(shù)式。當(dāng)群體規(guī)模無法滿 足系統(tǒng)要求,如果差額為k,隨機(jī)選取個(gè)體克隆r個(gè)副本加入群體之中。設(shè) 變異概率為pE[O, l],調(diào)用系統(tǒng)隨機(jī)函數(shù)得一隨機(jī)值p',如果p' ^o則, 執(zhí)行單點(diǎn)變異,并以同樣方式隨機(jī)執(zhí)行交叉變異操作,注意,這2種變異 操作不會(huì)擴(kuò)大或縮小群體規(guī)模;在其它實(shí)施中還可以應(yīng)用文獻(xiàn)"Ferreira, C. . Gene Expression Programming: A New Adaptive Algorithm for Solving Problems [J]. Complex Systems, 2001, 13(2): 87-129"等中的變異算 子,當(dāng)然也可以為脈象特征函數(shù)自動(dòng)提取任務(wù)專門定制設(shè)計(jì)相應(yīng)算子。
圖2是中醫(yī)脈象數(shù)據(jù)獲取示意圖。本發(fā)明由脈診傳感器和脈象采集電 路進(jìn)行脈象采集,通過USB接口將脈象輸入到計(jì)算機(jī)處理器中,由程序控 制采集不同壓力下的脈象信號(hào),將表征脈象的脈圖數(shù)據(jù)存入計(jì)算機(jī)系統(tǒng)中 的脈象數(shù)據(jù)庫之中。
圖3是脈象波形圖示意。如圖3所示,切脈所得的脈象信息經(jīng)脈象儀 設(shè)備處理,可以把測(cè)量的指標(biāo)值和時(shí)刻記錄下來,并描記出來的一組表征 脈象的波形圖,即脈圖,它在一定程度上能反映出脈象的某些特征,通過 分析不同的波形可以客觀量化地分析不同的脈象特征。本發(fā)明實(shí)施例可以 從此類波形信息中自動(dòng)提取提取出表征脈象特征的特征函數(shù),量化中醫(yī)脈 圖特征,以輔助有效實(shí)現(xiàn)中醫(yī)客觀化量化診斷。
圖4是本發(fā)明實(shí)施例的確定脈象數(shù)據(jù)起始點(diǎn)的流程圖。圖中程序400 是確定待處理脈象數(shù)據(jù)起始點(diǎn)的流程圖。402從脈象數(shù)據(jù)庫中讀取待處理的 脈象數(shù)據(jù)至計(jì)算機(jī)內(nèi)存之中;404對(duì)讀出的數(shù)據(jù)從原來的起始點(diǎn)開始在一個(gè) 脈博跳動(dòng)的周期(心跳周期)內(nèi)找到脈象信息數(shù)值最大(或最小)那個(gè)時(shí) 刻點(diǎn)記為"406步驟把從原來起始點(diǎn)到t時(shí)刻點(diǎn)這段數(shù)據(jù)刪除,得到標(biāo)定 了新起點(diǎn)的脈象數(shù)據(jù),這樣脈象數(shù)據(jù)的起始點(diǎn)將變?yōu)閠時(shí)刻。
圖5是本發(fā)明實(shí)施例的確定脈象數(shù)據(jù)終點(diǎn)的流程圖。圖中程序500是 確定待處理脈象數(shù)據(jù)終點(diǎn)的流程圖。502步驟從脈象數(shù)據(jù)庫中讀取待處理的 脈象數(shù)據(jù)至計(jì)算機(jī)內(nèi)存之中;504從起始點(diǎn)開始,跳過系統(tǒng)指定的/7個(gè)脈動(dòng) 周期(心跳周期)后,將最后一個(gè)時(shí)刻記為〃 ;506步驟提取起始點(diǎn)至〃 時(shí)刻點(diǎn)這段數(shù)據(jù)作為新的脈象數(shù)據(jù),供下一步驟處理。
圖6是本發(fā)明實(shí)施例的規(guī)范化脈象數(shù)據(jù)的流程圖。圖6中程序600是 規(guī)范化脈象數(shù)據(jù)的流程圖。602步驟從脈象數(shù)據(jù)庫中讀取待處理的脈象數(shù)據(jù)至計(jì)算機(jī)內(nèi)存之中。
604在脈象數(shù)據(jù)中找到脈象數(shù)據(jù)中的最大值記為s (在其它實(shí)施例中根
據(jù)后續(xù)步驟要求此步驟為可選操作)。
606在脈象數(shù)據(jù)中找到脈象數(shù)據(jù)中的最小值記為力(在其它實(shí)施例中根 據(jù)后續(xù)步驟要求此步驟為可選操作);
608步驟開始循環(huán),對(duì)每一個(gè)脈象數(shù)據(jù)的值記為7。
610步驟將z規(guī)范為[-l, l]之間的值(根據(jù)具體情況并不僅限于將脈象 數(shù)據(jù)的值規(guī)范化為[-1, l]之間的值,還可以是其它區(qū)間內(nèi)的值),并更新
數(shù)據(jù)集,規(guī)范化方法可以是線性比例縮放法用公式^ = 2><^-1進(jìn)行規(guī)范
O— ft
化;在其它實(shí)施中,當(dāng)然也可以是非線性空間變換方法如(1)令^arcsin(》 規(guī)范化后的數(shù)值區(qū)間為[一 兀/2, n/2], (2)令;^aixsin(x)/U/2)規(guī)范化 后的數(shù)值區(qū)間為[-l,l], (3)令Fsin0r)規(guī)范化后的數(shù)值區(qū)間為[-l,l],在 其它實(shí)施中當(dāng)然也可以將義規(guī)范到其它數(shù)值區(qū)間。
612步驟為終止判斷操作,如果數(shù)據(jù)尚未處理完,跳轉(zhuǎn)到608繼續(xù)循環(huán), 否則該段程序結(jié)束。
圖7是特征函數(shù)提取程序中個(gè)體結(jié)構(gòu)的示意圖。圖7中結(jié)構(gòu)700是本 發(fā)明實(shí)例中個(gè)體的結(jié)構(gòu)示意圖,該示意圖中個(gè)體由/ 個(gè)字串向量構(gòu)成。/2個(gè) 字串向量可解碼為/7個(gè)函數(shù)式,這/7個(gè)函數(shù)式可以按照運(yùn)算符"+"連接起 來構(gòu)一個(gè)大的函數(shù)式;當(dāng)然在其它實(shí)施例中也可以使用其它函數(shù)符或運(yùn)算 操作符(如P0W、 +、 一、 X、 /等)連接起來,構(gòu)一個(gè)大的函數(shù)式,甚至
于按規(guī)則解碼為多個(gè)函數(shù)式。
在其它實(shí)施例中具體的"的取值,個(gè)體中字串向量的長(zhǎng)度,函數(shù)符(如 sin、 cos、 ln、 exp、 sqrt等)、運(yùn)算操作符(如+、 一、 X、 /等)、
常數(shù)、變量終結(jié)符(即變量名,簡(jiǎn)稱為終結(jié)符)、連接符等的選取與確定 可以根據(jù)程序具體需要靈活設(shè)定。
圖8是個(gè)體結(jié)構(gòu)中字串向量解碼為數(shù)學(xué)表達(dá)式的示意圖。圖中示例800 是本發(fā)明實(shí)例中個(gè)體中字串向量解碼為數(shù)學(xué)表達(dá)式樹,數(shù)學(xué)表達(dá)式樹編碼 為字串向量的示例。
以"?"為數(shù)字占位符,則其中"F "代表函數(shù)符或運(yùn)算操作符(簡(jiǎn)稱 操作符),"C "代表常數(shù)符,"T "代表終結(jié)符。示例中函數(shù)符或操作 符有"F1" 、 "F2" 、 "F3",其中"F1"運(yùn)算時(shí)需要2個(gè)參數(shù)變?cè)?F2" 運(yùn)算時(shí)需要1個(gè)參數(shù)變?cè)?F3"運(yùn)算時(shí)需要3個(gè)參數(shù)變?cè)?。常?shù)符有"C1", 終結(jié)符有"T1"。
本實(shí)施例應(yīng)用文獻(xiàn)"Ferreira, C. . Gene Expression Programming: A New Adaptive Algorithm for Solving Problems [J]. Complex Systems,2001, 13(2) : 87-129"中K表達(dá)式解碼的程序,以示例800的方式將左邊 的字串向量解碼為右邊的數(shù)學(xué)表達(dá)式樹,將右邊的數(shù)學(xué)表達(dá)式樹編碼為左 邊的字串向量。
個(gè)體中的每個(gè)字串向量都可以解碼為l個(gè)數(shù)學(xué)表達(dá)式,多個(gè)數(shù)學(xué)表達(dá) 式用連接符"+"連接后可以構(gòu)成1個(gè)數(shù)學(xué)表達(dá)式。
圖9是個(gè)體單點(diǎn)變異時(shí)其中字串向量變化的示意圖。圖中示例900演 示了個(gè)體字串向量單點(diǎn)變異的效果,l個(gè)個(gè)體字串向量變異為l個(gè)新
的個(gè)體字串向量,它與傳統(tǒng)遺傳算法中的單點(diǎn)變異算子類似。
圖IO是個(gè)體交叉變異時(shí)其中字串向量變化的示意圖。圖中示例1000 演示了 2個(gè)個(gè)體字串向量交叉變異的效果,2個(gè)個(gè)體字串向量變異為2個(gè)新 的個(gè)體字串向量,它與傳統(tǒng)遺傳算法中的交叉變異算子類似。
需要指出,變異的算子不限于圖9、圖10所示例的情況,實(shí)現(xiàn)時(shí)可以 根據(jù)程序的具體要求靈活設(shè)定,相應(yīng)算子的操作方法可以應(yīng)用或改進(jìn)其它 遺傳算法或免疫算法中的方法,當(dāng)然也可以設(shè)計(jì)新的算子改善程序效果, 只要能按照系統(tǒng)要求使原來群體以一定方式轉(zhuǎn)變?yōu)樾碌娜后w即可。
權(quán)利要求
1、一種中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,包括獲取脈象數(shù)據(jù)的方法是由脈診傳感器和脈象采集電路組成的脈象采集裝置獲得脈象信號(hào),傳輸至計(jì)算機(jī),或者采用本身已經(jīng)可以將脈象數(shù)據(jù)直接存儲(chǔ)為計(jì)算機(jī)可識(shí)別的數(shù)據(jù)的脈象儀,可直接通過USB接口,COM接口,或網(wǎng)絡(luò)接口將脈象數(shù)據(jù)讀入脈象數(shù)據(jù)庫,其特征是通過以下步驟實(shí)現(xiàn)獲取脈象數(shù)據(jù)步驟包括從脈象儀采集脈象數(shù)據(jù);存入計(jì)算機(jī)系統(tǒng)脈象數(shù)據(jù)庫中;確定脈象數(shù)據(jù)起始點(diǎn)步驟包括從脈象數(shù)據(jù)庫中讀取待處理的脈象數(shù)據(jù);對(duì)讀出的數(shù)據(jù)從原來的起始點(diǎn)開始在一個(gè)脈博跳動(dòng)的周期內(nèi)找到脈象信息數(shù)值最大或最小那個(gè)時(shí)刻點(diǎn);把從原來起始點(diǎn)到該時(shí)刻點(diǎn)這段數(shù)據(jù)刪除,得到標(biāo)定了新起點(diǎn)的脈象數(shù)據(jù);確定脈象數(shù)據(jù)終點(diǎn)步驟包括;從脈象數(shù)據(jù)庫中讀取待處理的脈象數(shù)據(jù);從起始點(diǎn)開始,跳過系統(tǒng)指定的一個(gè)或多個(gè)脈動(dòng)周期后,記下該時(shí)刻點(diǎn);提取起始點(diǎn)至該時(shí)刻點(diǎn)這段數(shù)據(jù)作為新的脈象數(shù)據(jù),供下一步驟處理;規(guī)范化脈象數(shù)據(jù)步驟包括;從脈象數(shù)據(jù)庫中讀取待處理的脈象數(shù)據(jù);對(duì)于每一個(gè)脈象數(shù)據(jù)的值將其規(guī)范為一[-1,1]之間的值,并更新數(shù)據(jù)集;基于生物免疫遺傳啟發(fā)進(jìn)化算法的脈象特征函數(shù)提取步驟。
2、 根據(jù)權(quán)利要求l所述的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其特征是 所述的基于生物免疫遺傳啟發(fā)進(jìn)化算法的脈象特征函數(shù)提取步驟包括以下 步驟隨機(jī)地生成群體;執(zhí)行個(gè)體自體耐受過程,基于自體庫如果個(gè)體耐受 不成功則消亡即刪除該個(gè)體,否則轉(zhuǎn)入下一步驟;將自體耐受成功的個(gè)體 加入到成熟的群體;檢查群體規(guī)模,如果符合要求則轉(zhuǎn)向下一步,否則跳 向克隆變異步驟;將成熟的群體中的每個(gè)個(gè)體解碼為函數(shù)式,對(duì)每個(gè)函數(shù)式在脈象數(shù)據(jù) 庫上計(jì)算出相應(yīng)適應(yīng)度;如果成熟群體中的最佳個(gè)體(即最能精確表示脈 象特征的個(gè)體)的適應(yīng)度達(dá)到設(shè)定的要求,則輸出該個(gè)體解碼后所得的函 數(shù)作為表征脈象特征的脈象特征函數(shù),并終止程序,否則執(zhí)行克隆變異步 驟;克隆變異步驟,對(duì)上一步驟中的成熟群體使用免疫/遺傳算子執(zhí)行克隆 變異操作產(chǎn)生新的群體;轉(zhuǎn)至個(gè)體自體耐受步驟循環(huán)執(zhí)行。
3、 根據(jù)權(quán)利要求2所述的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其特征是所述的群體是個(gè)體的集合,個(gè)體基本結(jié)構(gòu)由字串向量的向量構(gòu)成,字串向 量由指定字符集按規(guī)則構(gòu)成。
4、 根據(jù)權(quán)利要求2所述的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其特征是所述的自體庫是一種數(shù)據(jù)存儲(chǔ),根據(jù)需要可以存放個(gè)體的集合或函數(shù)式。
5、 根據(jù)權(quán)利要求2所述的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其特征是所述的個(gè)體自體耐受操作方式是對(duì)于上一步驟包括隨機(jī)生成群體和克隆變異步驟所生成的新個(gè)體,如果該個(gè)體解碼后的函數(shù)式和自體庫中某個(gè)個(gè)體解碼后的函數(shù)式相同則耐受不成功,否則耐受成功。
6、根據(jù)權(quán)利要求l所述的中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其特征 是所述的自體庫在算法循環(huán)執(zhí)行的過程中,是動(dòng)態(tài)調(diào)整和變化著的。
全文摘要
本發(fā)明公開一種中醫(yī)脈象特征函數(shù)自動(dòng)提取方法,其是從計(jì)算機(jī)外部獲取與時(shí)間序列有關(guān)的周期性數(shù)據(jù),從中選取數(shù)據(jù),規(guī)范化,并對(duì)其自動(dòng)建立數(shù)學(xué)模型,提取出符合要求的表征該數(shù)據(jù)特征的特征函數(shù),不同于多元回歸、小波分析或神經(jīng)網(wǎng)絡(luò)方法等常見方法,本發(fā)明提取的特征函數(shù)具體形式可不被限定,特征函數(shù)提取程序基于一種進(jìn)化計(jì)算方法,進(jìn)化計(jì)算是一類模擬生物進(jìn)化過程與機(jī)制求解問題的自組織、自適應(yīng)人工智能技術(shù),是一種具有“生成—檢測(cè)”的迭代過程的搜索算法,提取的特征函數(shù)可輔助中醫(yī)客觀化量化診斷工作。
文檔編號(hào)A61B5/00GK101408912SQ20081015317
公開日2009年4月15日 申請(qǐng)日期2008年11月21日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者包小源, 濤 曾, 馬希榮 申請(qǐng)人:天津師范大學(xué)