




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、摘要基于隨機(jī)森林算法的癌癥數(shù)據(jù)預(yù)測摘 要近年來,機(jī)器學(xué)習(xí)、深度學(xué)習(xí)技術(shù)在各行各業(yè)的應(yīng)用推動(dòng)了這些領(lǐng)域的智能化發(fā)展。而且,疾病預(yù)測技術(shù)還給人們帶來了深度影響,改變著人們的日常工作、學(xué)習(xí)和生活,在醫(yī)學(xué)方面,應(yīng)用計(jì)算機(jī)相關(guān)技術(shù)進(jìn)行疾病的預(yù)測已經(jīng)成為當(dāng)下研究的熱點(diǎn),醫(yī)療數(shù)據(jù)爆炸增長,已經(jīng)建立起來了龐大的醫(yī)療數(shù)據(jù)庫,有潛在的實(shí)用價(jià)值。隨著以深度學(xué)習(xí)為代表的計(jì)算機(jī)相關(guān)技術(shù)的不斷發(fā)展與成熟,出現(xiàn)了大數(shù)據(jù)分析技術(shù)與醫(yī)學(xué)健康領(lǐng)域開始緊密結(jié)合。本課題主要任務(wù)是通過Python開發(fā)環(huán)境設(shè)計(jì)基于隨機(jī)森林算法的癌癥數(shù)據(jù)預(yù)測系統(tǒng),收集病人腫瘤的周長、半徑、面積等參數(shù)信息,通過構(gòu)建隨機(jī)森林模型,對模型進(jìn)行訓(xùn)練,從而實(shí)時(shí)預(yù)測
2、患者病情。系統(tǒng)實(shí)現(xiàn)可以預(yù)測患者死亡風(fēng)險(xiǎn),全面地分析信息之間隱含的內(nèi)在聯(lián)系,為癌癥患者的病情預(yù)防起到關(guān)鍵作用。關(guān)鍵詞:隨機(jī)森林;數(shù)據(jù)挖掘;癌癥預(yù)測;機(jī)器學(xué)習(xí) 38ABSTRACTABSTRACTIn recent years, The use of machine learning and in-depth learning technologies in all life environments has promoted the intelligent development of these areas. Furthermore, disease prognosis has a signi
3、ficant impact on peoples daily life, work and research. The application of computer technology in medical disease prediction has become a hot spot of current research. The explosive growth of medical data has established a huge medical database, which has potential practical value. With the continuo
4、us development and maturity of big data analysis technology represented by deep learning, big data analysis technology has been deeply combined with medical and health field. The main task of this project is to design a cancer data prediction system based on random forest algorithm through Python de
5、velopment environment, collect the parameter information of patients tumor perimeter, radius, area and so on, and build a random forest model to train the model, so as to predict patients condition in real time. The system can predict the death risk of patients, comprehensively analyze the internal
6、relationship between information, and play a key role in the prevention of cancer patients.Keywords: Random forest; Data mining; Cancer prediction; machine learning 目錄目 錄摘 要IABSTRACTII前言11 緒論21.1研究背景及意義21.2研究現(xiàn)狀31.2.1 大數(shù)據(jù)挖掘31.3 本課題主要工作42 相關(guān)技術(shù)簡介52.1 Python語言52.2 數(shù)據(jù)挖掘62.2.1 數(shù)據(jù)挖掘方法62.2.2 數(shù)據(jù)挖掘流程72.3 機(jī)器學(xué)習(xí)
7、82.3.1 支持向量機(jī)92.3.2 隨機(jī)森林算法93 系統(tǒng)分析113.1 可行性分析113.1.1 技術(shù)可行性113.1.2 經(jīng)濟(jì)可行性113.1.3 操作可行性123.2 功能需求分析123.3 系統(tǒng)性能分析124 系統(tǒng)設(shè)計(jì)144.1 設(shè)計(jì)目標(biāo)及原則144.2論文研究內(nèi)容145系統(tǒng)實(shí)現(xiàn)165.1數(shù)據(jù)獲取165.2 屬性解析175.3 數(shù)據(jù)預(yù)處理185.4基于隨機(jī)森林的的乳腺癌預(yù)測模型205.5 基于 SVM 的乳腺癌預(yù)測235.6界面實(shí)現(xiàn)266 系統(tǒng)測試與分析286.1 測試環(huán)境與測試條件286.2 功能測試286.3 性能測試317總結(jié)與展望357.1總結(jié)357.2 展望35參考文獻(xiàn)37
8、致 謝39前言近些年來,數(shù)據(jù)分析技術(shù)大行其道,如深入學(xué)習(xí)等分析技術(shù)正在獲得不斷的開發(fā)和萬嬋,并且已經(jīng)相對成熟。與此同時(shí),大數(shù)據(jù)時(shí)代的到來也使得大數(shù)據(jù)分析技術(shù)和醫(yī)療領(lǐng)域正在產(chǎn)生深度的融合,兩者相契合,形成了較好的成果,很多資本巨頭和技術(shù)巨頭開始搶占市場,甚至于癌癥的研究也成為了時(shí)代熱點(diǎn)。很多基于大數(shù)據(jù)智能健康項(xiàng)目開始發(fā)展起來,比如IBM 公司旗下通過人工智能來進(jìn)行護(hù)理的手段1 、谷歌旗下給醫(yī)療生命健康領(lǐng)域做了許多的投資2 、微軟也是開展了諸多的醫(yī)療項(xiàng)目,其中最新的Hanover項(xiàng)目也引起了海內(nèi)外人員的共同關(guān)注3 等。目前,大數(shù)據(jù)分析技術(shù)正在逐漸成熟,其應(yīng)用也在不斷廣泛起來,作為一種基于互聯(lián)網(wǎng)支撐
9、平臺(tái)才能進(jìn)行算法運(yùn)行和分析從而探究數(shù)據(jù)價(jià)值的新方法4 。大數(shù)據(jù)分析需要基于異構(gòu)數(shù)據(jù)源來摘錄數(shù)據(jù)從而形成原始數(shù)據(jù)并對其進(jìn)行針對性表達(dá)從而探討核心問題,解釋問題并進(jìn)行深度的學(xué)習(xí)5 。大數(shù)據(jù)分析目前的關(guān)聯(lián)內(nèi)容很多,包括但不限于數(shù)據(jù)挖掘、語義分析、數(shù)據(jù)質(zhì)量管理和可視化分析等等,與本文關(guān)聯(lián)較大的是預(yù)測分析技術(shù)。當(dāng)前最常見的預(yù)測分析技術(shù)是分析預(yù)測法6 和技術(shù)預(yù)測法7 兩種。我國通過分析預(yù)測所得的研究業(yè)已取得較好效果。如徐兵河等8 便基于該方法基于石蠟包埋組織基因譜定量分析了晚期乳腺癌在局部可能出現(xiàn)的化療反應(yīng),并對其相關(guān)細(xì)胞增殖、免疫基因等進(jìn)行了分析可定量預(yù)測,從而提高了女性乳腺癌患者獲得pC來輔助自身治療
10、并且獲得良好治療效果的可能。李秀央等9 基于該方法對于乙型腦炎和預(yù)測因子之間的關(guān)系進(jìn)行了探討和描述,發(fā)現(xiàn)預(yù)測與實(shí)際相符,準(zhǔn)確率高達(dá)97.94%。張愛霞等10 這通過回歸分析預(yù)測預(yù)測了傷亡事故,并得出回歸分析乃是一種很有效的趨勢預(yù)測方法的結(jié)論。林毅超11 用技術(shù)預(yù)測法預(yù)測了股價(jià)的變化,并選取了實(shí)時(shí)的股價(jià)指標(biāo)對人工神經(jīng)網(wǎng)絡(luò)的變量進(jìn)行了分析,基于網(wǎng)絡(luò)循環(huán)訓(xùn)練,從而得出了96組數(shù)據(jù),平均預(yù)測之后發(fā)現(xiàn)誤差很低,僅為3.4%,且絕對偏差的數(shù)據(jù)范圍也涵蓋在0.27-1.94區(qū)間之內(nèi)。王興旺等12 則利用設(shè)定權(quán)值的方式基于多種信息做出了一種前沿預(yù)測計(jì)量法,獲得的預(yù)測結(jié)果比較精準(zhǔn),并通過車聯(lián)網(wǎng)技術(shù)進(jìn)行了印證。1
11、 緒論1.1 研究背景及意義癌癥是當(dāng)今社會(huì)最嚴(yán)重威脅人類生命和健康疾病的疾病之一。癌癥不僅給患者帶來死亡威脅和沉重的心理負(fù)擔(dān),而且由于治療費(fèi)高,給家庭和社會(huì)帶來了沉重的經(jīng)濟(jì)負(fù)擔(dān)。American Cancer Society ACS在2018年的統(tǒng)計(jì)數(shù)據(jù)中,發(fā)現(xiàn)全球癌癥病例在該年度共新增1810萬,并且死亡病例也超過了960萬,其中亞洲均占據(jù)半數(shù)13 。我國國內(nèi)關(guān)于癌癥的數(shù)據(jù)報(bào)告也彰顯著,在2014年的時(shí)候,我國癌癥病例數(shù)目超過340.8萬,在該年度的死亡人數(shù)則占到了229.6 萬例,這說明我國癌癥病患占據(jù)世界很大比例,且死亡率也高于世界平均14 。以美國為例,2018年的美國癌癥患者新增和死
12、亡病例數(shù)目分別是173.5 萬和60.9 萬例。過往十年以內(nèi),美國癌癥發(fā)病及死亡率都在不斷地下降,取得了向好發(fā)展的趨勢15 。這主要是因?yàn)槊绹缙趯τ诎┌Y進(jìn)行了宣傳和檢查的推廣,并且美國境內(nèi)醫(yī)療水平也一直在不斷提升16 。對于癌癥來說,癌癥之所以是一種重復(fù)率很低的疾病,主要是因?yàn)槠涑霈F(xiàn)癥狀然后治療的時(shí)候已經(jīng)處于中晚期,因此癌癥的早期診斷和預(yù)測相當(dāng)重要。目前,全世界很多診斷病例知道自己患癌的時(shí)候已經(jīng)缺乏治愈希望,不得不承受病痛折磨。而早期篩查卻能更快的發(fā)現(xiàn)病癥,并且進(jìn)行及時(shí)的、有效的治療,甚至還有很高的治愈可能,給患者帶來高質(zhì)量的幫助,還能顯著的減少治療成本17 。由上可知,對癌癥進(jìn)行早期預(yù)
13、測和診斷對于防治癌癥相當(dāng)重要。大數(shù)據(jù)分析過程18 是依靠高性能的開發(fā)平臺(tái),運(yùn)行相關(guān)的機(jī)器學(xué)習(xí)或深度學(xué)習(xí)算法,從而深度探究其數(shù)據(jù)價(jià)值,分析如何對這些數(shù)據(jù)做出歸納、表達(dá)和總結(jié),從而學(xué)習(xí)其中蘊(yùn)含的意味19 。因此本論文將相關(guān)預(yù)測算法的預(yù)測概率和實(shí)際使用性能進(jìn)行對比,得出預(yù)測的相對最優(yōu)算法。本文預(yù)測癌癥技術(shù)主要運(yùn)用的算法是SVM 算法、隨機(jī)森林算法兩種,并通過對同一個(gè)模型分別使用兩種算法,比較兩種算法準(zhǔn)確度和性能優(yōu)劣以及實(shí)際使用意義。最終的實(shí)驗(yàn)結(jié)果證明了在實(shí)際使用中隨機(jī)森林算法更具價(jià)值,穩(wěn)定的隨機(jī)森林預(yù)測模型為醫(yī)生在乳腺癌的確診上提供極具有意義的參考支撐,同時(shí)提高醫(yī)生的工作效率,也將為病人降低看病成本
14、。1.2 研究現(xiàn)狀1.2.1 大數(shù)據(jù)挖掘大數(shù)據(jù)挖掘采用的是數(shù)據(jù)挖掘技術(shù),但在傳統(tǒng)數(shù)據(jù)挖掘當(dāng)中存在大量的短期行為,技術(shù)的研究是針對特定的問題,缺乏統(tǒng)計(jì)的知識(shí)原理。傳統(tǒng)數(shù)據(jù)挖掘隨著數(shù)據(jù)量的增加,消耗的資源急劇上升,對于這種情況有賴于大數(shù)據(jù)挖掘技術(shù)解決。大數(shù)據(jù)挖掘過程是從龐大復(fù)雜的數(shù)據(jù)集中探尋存在深層次價(jià)值,。如今,大數(shù)據(jù)挖掘在各個(gè)領(lǐng)域都有其身影,并為各個(gè)行業(yè)的發(fā)展提供了重要的意見,產(chǎn)生了很大的社會(huì)作用。(1)臨床醫(yī)藥:現(xiàn)在的醫(yī)院都使用信息化管理平臺(tái)實(shí)施醫(yī)院的各個(gè)進(jìn)程,基于這些平臺(tái)會(huì)產(chǎn)生大量的患者相關(guān)數(shù)據(jù),有電子體檢報(bào)告單、電子病歷、住院時(shí)間電子記錄、藥品使用電子清單、電子賬單等等。大數(shù)據(jù)挖掘在醫(yī)學(xué)
15、領(lǐng)域有著極大的應(yīng)用前景,如根據(jù)個(gè)人情況推薦相關(guān)藥品,可以對人的身體狀況進(jìn)行預(yù)測,從而進(jìn)行治療。車晉強(qiáng)20 通過大數(shù)據(jù)技術(shù)對于高血壓推薦和預(yù)測工作做了利用,最終取得了較好的效果。陳秀芳21 通過數(shù)據(jù)挖掘發(fā)現(xiàn)了抑制糖尿病并發(fā)的藥物,最終得到了一些能夠?qū)嶋H改善糖尿病情的中醫(yī)藥物。(2)公共交流:人類頻繁的公共交流活動(dòng)衍生了眾多的社交媒體,伴隨現(xiàn)代科技的蓬勃發(fā)展,社交應(yīng)用工具 PC 端和移動(dòng)端都種類繁多,人們有多樣性的選擇方式。人們每天的交際會(huì)產(chǎn)生海量的聊天數(shù)據(jù),在這些數(shù)據(jù)當(dāng)中包含了具有價(jià)值的社會(huì)和個(gè)人信息,合理的挖掘這些價(jià)值信息變成了主營社交媒體公司的側(cè)重點(diǎn)。盧明泰22 基于網(wǎng)頁平臺(tái)的數(shù)據(jù)挖掘技術(shù)為
16、每個(gè)單獨(dú)網(wǎng)絡(luò)用戶建立了自己的云標(biāo)簽。張宇航23 基于大數(shù)據(jù)挖掘網(wǎng)絡(luò)中影響微博消息傳播的實(shí)際因素,并進(jìn)行了分析比較,如何使得微博朝著趨好方向發(fā)展。1.3 本課題主要工作本文最先對于本文的研究背景和研究意義進(jìn)行簡要的描述,其后對國內(nèi)外相關(guān)研究現(xiàn)狀進(jìn)行了歸納和統(tǒng)計(jì),其后介紹了目前國內(nèi)外的研究前沿動(dòng)態(tài),其后根據(jù)本文所涉及到的相關(guān)技術(shù)進(jìn)行了闡述,描述了具體的開發(fā)工具并對系統(tǒng)功能、需求、環(huán)境和操作進(jìn)行了全面分析。根據(jù)分析從而設(shè)計(jì)相關(guān)系統(tǒng)。一般來說,系統(tǒng)設(shè)計(jì)涉及到功能、框架、結(jié)構(gòu)等多個(gè)方面,這些設(shè)計(jì)都是基于編程編碼實(shí)現(xiàn)的,收集病人腫瘤的周長、半徑、面積等參數(shù)信息,通過構(gòu)建隨機(jī)森林模型,對模型進(jìn)行訓(xùn)練,并對比
17、SVM算法從而實(shí)時(shí)預(yù)測患者病情。最后對系統(tǒng)各功能進(jìn)行整合與測試。2 相關(guān)技術(shù)簡介2.1 Python語言Python是一種計(jì)算機(jī)開發(fā)編程語言,其是在19世紀(jì)八十年代開始被提出并研發(fā)出來的,并在1991年正式公開發(fā)行并被使用,其一直以可面向?qū)ο蟆⒑喴椎雀黜?xiàng)優(yōu)勢而被人們看重。Python的主要特點(diǎn)包括簡單、清晰、內(nèi)容豐富,因此該語言與其他語言能迅速的進(jìn)行結(jié)合從而達(dá)到各種需求功能。因此,Python語言也被戲稱為“黏黏膠”語言。對于很多程序的生成,程序員都會(huì)利用Python語言來進(jìn)行處理,保證快速生成,若是其中有些特殊要求,也可及時(shí)準(zhǔn)確的進(jìn)行完善和修改。Python語言的開發(fā)者名為Guido van
18、 Rossum,是荷蘭著名的數(shù)學(xué)和計(jì)算機(jī)雙料學(xué)者,該語言的開發(fā)和設(shè)計(jì)也在上世紀(jì)八十年代開始,該語言的基礎(chǔ)包括C語言、C+和其他語言,經(jīng)過精巧的設(shè)計(jì)和變化而演變而來,伴隨這版本的更新Python逐漸應(yīng)用于大型程序的研究和開發(fā)。使用Python之前,要進(jìn)行安裝,用戶根據(jù)所用的開發(fā)平臺(tái)不同需要下載不同版本的Python。最后通過配置環(huán)境變量即可運(yùn)行。Python語言的學(xué)習(xí)對于初學(xué)者來說較好,因?yàn)橄鄬τ谄渌恼Z言來說,該語言的框架更簡單,語法也相對更容易學(xué)習(xí)。該語言代碼的結(jié)構(gòu)也偏向簡單化,后期維護(hù)工作并不復(fù)雜。而且,Python語言的兼容性很好,不止內(nèi)部包含各式各樣的數(shù)據(jù)庫,更能兼容多種系統(tǒng),甚至可以
19、實(shí)現(xiàn)跨平臺(tái)使用,這種擴(kuò)展性也讓Python語言深受程序員的喜愛,Python語言的可移植性使得系統(tǒng)可以較為簡單的接受其調(diào)試運(yùn)行較為。Python語言也有著其他語言沒有的缺點(diǎn),如速度要求,隨著時(shí)間的推移,國內(nèi)外的程序軟件企業(yè)都開始集中使用Python語言,但目前,關(guān)于Python語言的中文翻譯版相對較少,大部分的入門級(jí)書籍和高級(jí)書籍只有英文版本,只有少部分的世界著名書籍才有中文版。但是Python語言自身的優(yōu)點(diǎn)大于缺點(diǎn),因此吸引了許多的相關(guān)人才和項(xiàng)目。中文數(shù)據(jù)是稀缺的(好的Python中文數(shù)據(jù)是稀缺的,所以現(xiàn)在應(yīng)該有更多)。多虧了社區(qū),一些著名的書籍已經(jīng)被翻譯,但有很多入門級(jí)的書記和高級(jí)的內(nèi)容仍
20、然只有英語。2.2 數(shù)據(jù)挖掘數(shù)據(jù)挖掘是計(jì)算機(jī)相關(guān)領(lǐng)域研究的熱點(diǎn)話題,主要指的是從海量數(shù)據(jù)中進(jìn)行提取,從而獲得未知且有價(jià)值信息。信息挖掘一般都需要依賴機(jī)器學(xué)習(xí)、統(tǒng)計(jì)專業(yè)、模式識(shí)別等學(xué)科,作為近些年來迅速發(fā)展起來的學(xué)科,并且在于許多領(lǐng)域都得到了認(rèn)可與應(yīng)用。2.2.1 數(shù)據(jù)挖掘方法1分類分析不同的數(shù)據(jù)有不同的特征,但是這些特征可以被抽象、概括和分類。對于收集的數(shù)據(jù),使用分類算法將屬性映射到相應(yīng)的類別。2回歸分析回歸分析主要是基于時(shí)間序列分析法進(jìn)行預(yù)測的一種分析法,可預(yù)測數(shù)據(jù)關(guān)系。3.聚類分析方法我們將所研究的數(shù)據(jù)樣本之間存在一定的相似度和差異,通過一些數(shù)據(jù)樣品的多個(gè)屬性找到能夠衡量這類數(shù)據(jù)樣本的多個(gè)
21、屬性,以這些屬性作為劃分類型的依據(jù),以確保分類的準(zhǔn)確性。4. 關(guān)聯(lián)規(guī)則分析法相關(guān)性是基于行為相互之間的關(guān)系而言的。一般來說,受到利益恒常性和意識(shí)傾向的影響,一旦進(jìn)行某種行為時(shí),另一種行為極有可能是相關(guān)的。5. 異常值檢測在行為數(shù)據(jù)中,異常值一般小于或大于一組數(shù)據(jù)的觀測值,不容易發(fā)現(xiàn)或刪除,所以需要通過異常值檢驗(yàn)來去除異常值。2.2.2 數(shù)據(jù)挖掘流程1. 數(shù)據(jù)挖掘需求分析在數(shù)據(jù)分析之前,必須要先明確數(shù)據(jù)目標(biāo),明確的歸納其具體需求,才對其具體的數(shù)據(jù)和業(yè)務(wù)進(jìn)行了解和采集,做到描述評估等相關(guān)工作。并對初步模型進(jìn)行提出。2. 數(shù)據(jù)采集通過所確定的數(shù)據(jù)對象,提取出所需要的信息并進(jìn)行分析,了解相關(guān)數(shù)據(jù)的內(nèi)容
22、、關(guān)系以及分布,對相關(guān)數(shù)據(jù)進(jìn)行提取并整理數(shù)據(jù)后將收集的信息放入數(shù)據(jù)庫并添加到數(shù)據(jù)挖掘市場。3.模型建立基于對不同的數(shù)據(jù)挖掘和分析方法的對比分析,可以更好的了解各種方法的效果如何,分析其算法效率的高低和具體性能水平,從而便于在下一次選擇更恰當(dāng)?shù)膶W(xué)習(xí)方法,并且建立基礎(chǔ)模型。對相關(guān)技術(shù)的調(diào)試和模型的優(yōu)化,也能通過挖掘模型達(dá)到更好的預(yù)測目標(biāo)。4. 模型部署是對挖掘數(shù)據(jù)市場進(jìn)行合理的資源配置,獲取全面生產(chǎn)數(shù)據(jù)并將模型配置于環(huán)境內(nèi)部。5. 模型評價(jià)指的是評價(jià)挖掘模型效果的過程,模型評價(jià)的主要指標(biāo)有具體的效率目標(biāo)、模型的穩(wěn)定性、精度等因素,根據(jù)現(xiàn)實(shí)能改善挖掘模型的效果。6. 知識(shí)同化根據(jù)分析,所得知識(shí)體系通
23、過圖形表示分析或以特定的方式整合到核心業(yè)務(wù)或管理信息系統(tǒng),支持不同的過程或?qū)哟蔚墓ぷ鲌?zhí)行。2.3 機(jī)器學(xué)習(xí)機(jī)器學(xué)習(xí)是涉及統(tǒng)計(jì)學(xué)、數(shù)學(xué)、概率學(xué)等知識(shí)的多學(xué)科交叉,相關(guān)人員為了賦予機(jī)器智慧從20世紀(jì)50年代就開始賦予機(jī)器簡單的邏輯推理能力。讓機(jī)器擁有智慧。在當(dāng)時(shí)計(jì)算機(jī)程序就能證明一些簡單的公式定理。但是由于技術(shù)的不足,無法實(shí)現(xiàn)真正的智能。人類不滿足于現(xiàn)狀,開始基于探索新技術(shù),讓機(jī)器更加的智能化。隨著時(shí)間的流逝,很多相關(guān)系統(tǒng)相繼問世。給很多領(lǐng)域提供了幫助,也取得了前所未有的成果。但是由于學(xué)習(xí)是永無止境的,在這個(gè)時(shí)期產(chǎn)生了瓶頸。機(jī)器學(xué)習(xí)是一類算法的統(tǒng)稱。它主要研究的是通過學(xué)習(xí)來改善算法的性能。它融合了
24、各式各樣的學(xué)習(xí)算法,并且通過各種學(xué)習(xí)算法的運(yùn)用使用領(lǐng)域開始不斷擴(kuò)大,通過這些算法從龐大的數(shù)據(jù)中挖掘出值得學(xué)習(xí)的、有價(jià)值的內(nèi)容。大數(shù)據(jù)時(shí)代的到來,使得社會(huì)各界都開始利用大數(shù)據(jù)進(jìn)行各種需求的分析,各種需求的增加也提升了人們對于機(jī)器學(xué)習(xí)的重視,因?yàn)闄C(jī)器學(xué)習(xí)能更好的獲取知識(shí),相關(guān)技術(shù)也正在迅速的完善和提高,從而便于高效利用消息。當(dāng)前,機(jī)器學(xué)習(xí)也在逐漸智能化、現(xiàn)代化發(fā)展,并成為了分析技術(shù)的重要方法之一。機(jī)器學(xué)習(xí)的步驟學(xué)習(xí)一個(gè)好的函數(shù)一般分為以下三個(gè)步驟:1. 選合適模型,選擇好更合適的模型,有助于更好的處理實(shí)際問題,所選模型是一組函數(shù),也可針對其他問題來進(jìn)行處理。2. 判斷函數(shù)優(yōu)劣需要測量標(biāo)準(zhǔn)指標(biāo)的確立
25、。必須要根據(jù)具體問題指定損失函數(shù)。3.要選找到最優(yōu)化函數(shù),確保在不同函數(shù)內(nèi)部選擇最優(yōu)、最快的函數(shù),保證效果最優(yōu)化,一般梯度下降法、最小二乘法等方法可以實(shí)現(xiàn)。當(dāng)找到了最佳方法達(dá)到了最佳效果后,還需要測量該方法時(shí)候在其他樣品上的優(yōu)劣,只有仍舊表現(xiàn)良好才是“好”函數(shù)。2.3.1 支持向量機(jī)1995年 SVM 由 Vapnik 提出,之后有關(guān) SVM 的工程研究和理論研究不斷的展開。SVM成為了基于統(tǒng)計(jì)學(xué)知識(shí),借助最優(yōu)化方法解決問題的新一種機(jī)器學(xué)習(xí)算法,在實(shí)際的使用當(dāng)中,獲得了優(yōu)異的表現(xiàn)。SVM 是一個(gè)火熱的研究方向,國內(nèi)外有很多研究學(xué)者展開了對它的理論知識(shí)研究。Suykens24 等人對標(biāo)準(zhǔn) SVM
26、算法進(jìn)行了修正,將其線性不等式約束轉(zhuǎn)變成了等式,因此使得其訓(xùn)練的求解變成了線性方程組求解,更加簡單化。Scholkopf25 等則分析了v-SVM算法的上下約束和規(guī)劃問題,并希望基于現(xiàn)有的算法來解決其相關(guān)問題。安金龍26 等主要基于二叉樹方式對其分類方法進(jìn)行了深入的探討,所提出的分類方法具有速度快和向量少兩個(gè)優(yōu)點(diǎn)。SVM因?yàn)橛兄鴥?yōu)異的使用性能,得到了海內(nèi)外學(xué)者的探討與關(guān)注。同時(shí)面臨的問題也很明顯,經(jīng)歷時(shí)間不長,理論問題的研究欠缺,應(yīng)用方向狹窄急需拓展。2.3.2 隨機(jī)森林算法隨機(jī)森林是由 Breiman27 提出的一種新的學(xué)習(xí)技術(shù)。所謂隨機(jī)森林,顧名思義就是多個(gè)決策樹進(jìn)行實(shí)現(xiàn)的,該過程中分類器
27、的輸出類別都是個(gè)別樹的眾數(shù)。對于一個(gè)輸出樣本,N棵樹就有N個(gè)分類效果。其中的不同的決策樹之間的關(guān)聯(lián)性并不強(qiáng),而且當(dāng)輸入樣本之后,很快得到整個(gè)森林,而且每個(gè)決策樹都會(huì)進(jìn)行判別和預(yù)測,從而得到不同的決策樹最終選擇的類別并進(jìn)行歸納,找到被選擇最多的類別。隨機(jī)森林模型的預(yù)測精度值較高。鑒于隨機(jī)森林算法優(yōu)異性能的體現(xiàn),目前已經(jīng)被多個(gè)領(lǐng)域接受和使用,像醫(yī)學(xué)、教育學(xué)、圖像識(shí)別、金融、軍事、農(nóng)業(yè)等。(1)在經(jīng)濟(jì)管理領(lǐng)域應(yīng)維云28 通過目前出現(xiàn)了很多客戶流失的實(shí)際問題,選擇了該現(xiàn)實(shí)問題進(jìn)行了正負(fù)樣本的研究,并修正和發(fā)展了傳統(tǒng)的隨機(jī)森林算法,提出了代價(jià)敏感法和采樣技術(shù)來平衡其中的不穩(wěn)定性,具有更大潛力。(2)在風(fēng)
28、險(xiǎn)評價(jià)領(lǐng)域方匡南29 29 等改進(jìn)了非參數(shù)的隨機(jī)森林分類算法,并評估了其信用卡的信用風(fēng)險(xiǎn),通過對算法模型的對比,發(fā)現(xiàn)改進(jìn)后的隨機(jī)森林是以SVC 模型和 Logitic 模型為基礎(chǔ)的新方法。隨機(jī)森林算法應(yīng)用廣,尤其在醫(yī)學(xué)領(lǐng)域的運(yùn)用更突出,可以很好的對于乳腺癌風(fēng)險(xiǎn)預(yù)測。為了避免與單一決策樹的吻合現(xiàn)象,提高預(yù)測程度,本文采用了隨機(jī)森林算法。通過機(jī)器學(xué)習(xí)綜合學(xué)習(xí)的思想,構(gòu)成了多個(gè)弱分類器,最終合成的強(qiáng)分類器可以有效地減少和提高預(yù)測程度,隨機(jī)森林可以利用多個(gè)決策樹將樣本訓(xùn)練和預(yù)測的分類器。所有決策樹模型都有一票投票權(quán)選擇最終分類結(jié)果。分類決策公式如下:其中, 表示隨機(jī)森林分類結(jié)果; 表示單個(gè)分類結(jié)果;
29、表示分類目標(biāo);表示性函數(shù)。上述方程便是隨進(jìn)森林分類的重要參考公式,當(dāng)不同決策樹得到結(jié)果之后,歸納并統(tǒng)計(jì)其期望從而當(dāng)成最終的結(jié)果。3 系統(tǒng)分析系統(tǒng)分析的主要目的還是要優(yōu)化系統(tǒng)整體,分析其中的各個(gè)指標(biāo),通過定量和定性分析來探索和分析其目的性和分步性,從而為決策者帶來更多的參考,讓決策者能判斷和決定,因此系統(tǒng)分析對于系統(tǒng)工程來說,是最為重要的核心工程。系統(tǒng)分析的應(yīng)用覆蓋面較廣,一般對于其分析主要針對重大的復(fù)雜問題,比如政策、戰(zhàn)略等,有時(shí)候新技術(shù)開發(fā)、企業(yè)處理的過程中也會(huì)用到系統(tǒng)分析。3.1 可行性分析可行性分析,簡單來講就是要看所設(shè)計(jì)的產(chǎn)品,是否可行。而是否可行就需要開發(fā)者,到市場上去調(diào)研,通過不同
30、層面的調(diào)研,來綜合分析,本系統(tǒng)的開發(fā)是否可行。一般可行性分析包含很多層面,而我們今天就從技術(shù)方面、經(jīng)濟(jì)方面、社會(huì)方面幾個(gè)角度來進(jìn)行描述,評價(jià)系統(tǒng)可能性。以可行性分析為例,可行性分析是項(xiàng)目開展前期必要的程序,能夠避免盲目性,避免勞心勞力開發(fā)出的項(xiàng)目變成雞肋,在市場上無人問津,浪費(fèi)成本且消耗人力資源??尚行苑治鰪谋举|(zhì)上來解釋,就是能不能干的問題。除此之外,系統(tǒng)還有技術(shù)可行性分析、經(jīng)濟(jì)可行性分析和社會(huì)可行性分析。3.1.1 技術(shù)可行性系統(tǒng)通過Python開發(fā)環(huán)境設(shè)計(jì)一款基于隨機(jī)森林算法的癌癥數(shù)據(jù)預(yù)測系統(tǒng),收集病人腫瘤的周長、半徑、面積等參數(shù)信息,通過構(gòu)建隨機(jī)森林模型,對模型進(jìn)行訓(xùn)練,從而實(shí)時(shí)預(yù)測患者
31、病情。綜上所述,系統(tǒng)在技術(shù)上是可行的。3.1.2 經(jīng)濟(jì)可行性項(xiàng)目開發(fā)的最終落腳點(diǎn)還是在于能否為開發(fā)者帶來經(jīng)濟(jì)收益,一般計(jì)算系統(tǒng)的收支的時(shí)候,必須要考慮經(jīng)濟(jì)可行性是否合理。例如,購買原材料的費(fèi)用,相關(guān)技術(shù)人員的費(fèi)用,對應(yīng)技術(shù)培訓(xùn)的費(fèi)用,運(yùn)行維護(hù)費(fèi)用等。對患乳腺癌的患者進(jìn)行分析預(yù)測并建立模型是本系統(tǒng)的主要功能,開發(fā)是基于Python語言實(shí)現(xiàn)的,因此成本很低。而且后期的維護(hù)也相對簡單,而且目前該系統(tǒng)還未到達(dá)后期維護(hù)環(huán)節(jié),人員投入也并不浪費(fèi),目前是筆者本人參與系統(tǒng)的完善和維護(hù)。但是系統(tǒng)目前并未進(jìn)入市場,因此也無需考慮培訓(xùn)等其他投入,一臺(tái)電腦足矣。用戶也是可以基于電腦來使用該系統(tǒng),所以該系統(tǒng)的設(shè)計(jì)具備經(jīng)
32、濟(jì)可行性。3.1.3 操作可行性本系統(tǒng)功能簡單,使用方便,用戶只需一臺(tái)電腦,就可以進(jìn)行操作。由于系統(tǒng)的功能就是分析和預(yù)測,用戶只需看到結(jié)果。所以說在使用上是沒有問題的。綜上所述,系統(tǒng)在操作上是可行的。3.2 功能需求分析本系統(tǒng)目標(biāo)是設(shè)計(jì)一個(gè)基于隨機(jī)森林算法的乳腺癌數(shù)據(jù)預(yù)測系統(tǒng),主要功能需求包括以下方面:1.收集信息:腫瘤的平滑度、半徑、面積等參數(shù)信息。2.疾病預(yù)測:收集病人腫瘤的周長、半徑、面積等參數(shù)信息,通過構(gòu)建隨機(jī)森林模型,對模型進(jìn)行訓(xùn)練,從而實(shí)時(shí)預(yù)測患者病情。3.3 系統(tǒng)性能分析系統(tǒng)性能分析是評價(jià)系統(tǒng)好壞的重要參考,其性能與用戶滿意度是息息相關(guān)的,但系統(tǒng)性能又完全是因?yàn)橄到y(tǒng)架構(gòu)而影響的。
33、優(yōu)秀的系統(tǒng)架構(gòu)必須要包括如下環(huán)節(jié):1明確的模塊。一個(gè)系統(tǒng)會(huì)有很多模塊系統(tǒng),清晰、明確、功能全面、調(diào)用靈活的模塊必然能吸引更多的用戶,且有助于實(shí)現(xiàn)低耦合高內(nèi)聚。2模塊種類的多樣性。模塊調(diào)用靈活必然能保證模塊的豐富度,而且模塊的豐富也能讓人們更靈活的選擇,及時(shí)更改處理相關(guān)功能。3數(shù)據(jù)建模的穩(wěn)定、高效和安全。數(shù)據(jù)作為系統(tǒng)儲(chǔ)蓄倉,只有保證安全性、穩(wěn)定性和高效率才能帶來更好的數(shù)據(jù)處理效果。4整體結(jié)構(gòu)的穩(wěn)定性及靈活性。系統(tǒng)的整體架構(gòu)在初期部署的時(shí)候,一定要有高度 ,不但結(jié)構(gòu)清晰,運(yùn)行穩(wěn)定,當(dāng)運(yùn)行出現(xiàn)問題的時(shí)候,能夠提供快速的解決方案。4 系統(tǒng)設(shè)計(jì)4.1 設(shè)計(jì)目標(biāo)及原則系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)體現(xiàn)了用戶與整個(gè)系統(tǒng)模塊
34、接口之間的有效互動(dòng),要清楚地知道系統(tǒng)未來實(shí)時(shí)數(shù)據(jù)的擴(kuò)展性和安全性,只有設(shè)計(jì)好的系統(tǒng)才能實(shí)現(xiàn)目標(biāo)。這是一個(gè)更好的擴(kuò)展空間,可以適應(yīng)系統(tǒng)的未來發(fā)展。系統(tǒng)設(shè)計(jì)的要求如下所示:(1)數(shù)據(jù)安全必須保證數(shù)據(jù)和系統(tǒng)的安全才能保證隱私。(2)易用性需要保證在使用者權(quán)限的范圍內(nèi),所以相關(guān)操作以及信息的訪問都在一個(gè)接口上完成,進(jìn)一步改善運(yùn)營者的工作的整體效果和便捷。系統(tǒng)應(yīng)用更順暢。(3)柔軟性系統(tǒng)業(yè)務(wù)的廣覆蓋性要求只有具有柔軟性才能更好處理相應(yīng)變化。 (4)可擴(kuò)展性隨著使用者對癌癥預(yù)測的需求不斷增加,系統(tǒng)開發(fā)者需要根據(jù)使用者的需求對所提供的服務(wù)進(jìn)行更新和擴(kuò)展。4.2論文研究內(nèi)容 實(shí)現(xiàn)基于隨機(jī)森林模型和SVM算法對
35、癌癥數(shù)據(jù)的預(yù)測,建立隨機(jī)森林癌癥預(yù)測模型。在整個(gè)體系中主要包括模型的建立,訓(xùn)練和測試。首先選取特征向量在SVM算法和隨機(jī)森林算法的基礎(chǔ)上建立癌癥數(shù)據(jù)預(yù)測模型 然后進(jìn)行SVM和隨機(jī)森林訓(xùn)練。其后將模型進(jìn)行預(yù)測數(shù)據(jù),并計(jì)算其精度,然后對模型的性能進(jìn)行評價(jià)。同時(shí),將兩類的模型性能進(jìn)行對比分析,得出實(shí)際使用中誰更具優(yōu)效。在實(shí)際實(shí)驗(yàn)中選取了不同的特征向量,建立了不同的疾病預(yù)測模型得到了不同的預(yù)測結(jié)果。針對數(shù)據(jù)挖掘研究及隨機(jī)森林算法的探討,本課題設(shè)定為基于機(jī)器學(xué)習(xí)方法的乳腺癌分析與預(yù)測研究,主要技術(shù)如圖4-1所示:Fig.4-1 Main technology圖4-1 主要技術(shù)歷史源數(shù)據(jù)數(shù)據(jù)挖掘數(shù)據(jù)讀取測
36、試數(shù)據(jù)訓(xùn)練數(shù)據(jù)模型訓(xùn)練建立模型測試預(yù)測測試與訓(xùn)練數(shù)據(jù)訓(xùn)練模型測試精度輸出精度調(diào)用預(yù)測函數(shù)數(shù)據(jù)讀取隨機(jī)森林支持向量機(jī)5系統(tǒng)實(shí)現(xiàn)5.1數(shù)據(jù)獲取主要采用的是爬蟲方法,爬蟲的實(shí)現(xiàn)主要基于Beautiful Soup處理。HTML/XML解析器的編寫是Python處理的,該解析器在不規(guī)則的標(biāo)記和解析樹處理上比較簡單,而且還有常用導(dǎo)航和搜索文件樹。一般來說利用該解析器能簡單的提取相關(guān)信息。為用戶提供了多種解析策略或強(qiáng)大的速度。本文用到的數(shù)據(jù)來源于網(wǎng)絡(luò)一個(gè)胸腺癌網(wǎng)站,其中公布了一些胸腺癌癥的相關(guān)指標(biāo)以及評判案例。在這里,我們采用beautiful soup的方式,對其結(jié)構(gòu)化的標(biāo)簽進(jìn)行提取操作,并將其存儲(chǔ)在b
37、reast_cancer.csv中。作為我們的訓(xùn)練數(shù)據(jù)以及測試數(shù)據(jù)。在這里,我們可以看到,這個(gè)數(shù)據(jù)集中,有如下特征參數(shù)如表5-1所示:表5-1 特征參數(shù)Tab.5-1 characteristic parameter序號(hào)診斷平均半徑平均紋理平均周長平均面積半徑最大值紋理最大值周長最大值0017.9910.38122.801001.025.3817.33184.601020.5717.77132.901326.024.9923.41158.802019.6921.25130.001203.023.5725.53152.503011.4220.3877.58386.114.9126.5098.87
38、4020.2914.34135.101297.022.5416.67152.20這些參數(shù)分別有其不同含義,例如類別、平均采樣區(qū)域、平均平滑程度等,本文提到的部分?jǐn)?shù)據(jù)可以展示如表5-2:表5- 2 具體數(shù)據(jù)Tab.5- 2 Specific dataIDdiagnosismean radiusmean texturemean perimetermean areamean smoothnessmean compactness842302017.9910.38122.810010.11840.2776842517020.5717.77132.913260.084740.078648430090301
39、9.6921.2513012030.10960.159984348301011.4220.3877.58386.10.14250.283984358402020.2914.34135.112970.10030.1328843786012.4515.782.57477.10.127802519.98119.610400.094630.10984458202013.7120.8390.2577.90.11890.164584498101321.8287.5519.80.12730.193284501001012.4624.0483.97475.90.11860.23965
40、.2 屬性解析本文選取了乳腺癌的病人臨床數(shù)據(jù)如下表5-3所示,下面就屬性字段做介紹:表5-3 屬性解析Tab.5-3 Attribute parsing序號(hào)屬性示例說明01mean concave points0.1平均凹點(diǎn)02mean symmetry0.2平均對稱性03mean fractal dimension0.05平均分維04radius1.0平均半徑06texture0.7灰度值的標(biāo)準(zhǔn)差07perimeter8.1周長08area73面積09smoothness0.01平滑度10compactness0.04致密性11concavity0.01輪廓凹面部份的嚴(yán)重程度12concav
41、e points0.03輪廓凹面部分的數(shù)目13fractal dimension0.003分形維數(shù)標(biāo)準(zhǔn)差14Worst radius25.64半徑最大值15Worst texture17.33紋理最大值16Worst perimeter184.6周長最大值5.3 數(shù)據(jù)預(yù)處理本實(shí)驗(yàn)初始數(shù)據(jù)總共 600條,從實(shí)驗(yàn)?zāi)康慕嵌瘸霭l(fā),女性乳腺癌的研究更有意義。同時(shí)刪除掉了死亡原因不確定,因?yàn)椴糠只颊咝g(shù)后因交通事故其他等原因死亡,此部分患者不能計(jì)入乳腺癌致死風(fēng)險(xiǎn)的研究。還刪除掉了存活月數(shù)不確定的部分患者,最后獲得到的實(shí)驗(yàn)樣本數(shù)據(jù)為 470 條數(shù)據(jù)。數(shù)據(jù)預(yù)處理角度上,本文采用了python、pandas庫和n
42、umpy庫進(jìn)行協(xié)同的過濾操作。首先是一些空值的過濾操作:1. # import the packets2. import numpy as np3. import pandas as pd4. 5. DATA_PATH = breast-cancer.csv6. 7. # create the column names8. columnNames = 9. Sample code number,10. Clump Thickness,11. Uniformity of Cell Size,12. Uniformity of Cell Shape,13. Marginal Adhesion,14
43、. Single Epithelial Cell Size,15. Bare Nuclei,16. Bland Chromatin,17. Normal Nucleoli,18. Mitoses,19. Class20. 21. 22. data = pd.read_csv(DATA_PATH, names = columnNames)23. # show the shape of data24. print data.shape上述代碼對csv文件中的相關(guān)特征進(jìn)行了逐一過濾,清理掉了大部分的空值。其后基于train_test_split函數(shù)得到訓(xùn)練數(shù)據(jù)集、測試數(shù)據(jù)集兩個(gè)部分,該函數(shù)自動(dòng)完成了
44、隨機(jī)分割的功能。機(jī)器學(xué)習(xí)中,一般都會(huì)從原始數(shù)據(jù)出發(fā),等比例將“測試集”和“訓(xùn)練集”劃分出來,然后從sklearn.model_selection中調(diào)用train_test_split函數(shù)簡單用法如下:X_train,X_test,y_train,y_test=sklearn.model_selection.train_test_split(train_data,train_target,test_size=0.4, random_state=0,stratify=y_train)train_data:所要?jiǎng)澐值臉颖咎卣骷痶rain_target:所要?jiǎng)澐值臉颖窘Y(jié)果test_size:樣本占比,
45、如果是整數(shù)的話就是樣本的數(shù)量random_state:隨機(jī)數(shù)種子,即隨機(jī)數(shù)個(gè)數(shù),當(dāng)重復(fù)實(shí)驗(yàn)過程中能保證某一組隨機(jī)數(shù)生成。舉例來說,每次代入1的時(shí)候,其他數(shù)據(jù)都是相同的,這就是隨機(jī)數(shù),但當(dāng)代入0的時(shí)候,數(shù)據(jù)每次都不同。Stratify的應(yīng)用使得測試機(jī)和結(jié)果在數(shù)據(jù)集內(nèi)部的比率分類具有一致性,舉例來說,若某數(shù)據(jù)及存在1000行,result數(shù)據(jù)也1000個(gè),主要包括0和1兩種類別, 0和1的個(gè)數(shù)分別是300個(gè)和700個(gè),即分類比是3:7。此時(shí)若整個(gè)數(shù)據(jù)都進(jìn)行split處理,而test_size 的數(shù)值大小為0.2,就會(huì)導(dǎo)致訓(xùn)練集和測試集分別有800個(gè)和200個(gè)數(shù)據(jù)。將stratify=y就是按照y中
46、的比例分配然后我們分割數(shù)據(jù)集的具體代碼如下:1. from sklearn.model_selection import train_test_split2. 3. X_train, X_test, y_train, y_test = train_test_split(4. data columnNames1:10 , # features5. data columnNames10 , # labels6. test_size = 0.25,7. random_state = 338. )得到的變量為: X_train : 訓(xùn)練數(shù)據(jù)集的特征 X_test :測試數(shù)據(jù)集的特征 y_train :
47、訓(xùn)練數(shù)據(jù)集的標(biāo)簽 y_test :測試數(shù)據(jù)集的標(biāo)簽因?yàn)楸疚氖潜O(jiān)督學(xué)習(xí)法,所以數(shù)據(jù)存有標(biāo)簽,且本文認(rèn)為標(biāo)簽是精確地。5.4基于隨機(jī)森林的乳腺癌預(yù)測模型隨機(jī)森林,顧名思義便是多種分類樹來訓(xùn)練預(yù)測癌癥數(shù)據(jù)樣本的一種方法,其使用意味著一些樣本可能多次出現(xiàn)在訓(xùn)練集中。每棵樹階段訓(xùn)練的特征也都是按比例隨機(jī)抽取的。隨機(jī)森林通常比決策樹表現(xiàn)得更好,但準(zhǔn)確率低于傾斜強(qiáng)化樹,但數(shù)據(jù)特性會(huì)影響其性能。隨機(jī)森林經(jīng)常被用作企業(yè)中的“黑匣子”模型,因?yàn)樗鼈兛梢栽诤苌倥渲玫那闆r下針對各種數(shù)據(jù)生成合理的預(yù)測。它們的一般預(yù)測步驟如下:a) 初始化數(shù)據(jù)集D,利用Bootstrap方法隨機(jī)提取K個(gè)樣本集,形成h分類樹。b) 從K樣
48、本集中隨機(jī)提取S變量,將其中代表性最強(qiáng)的選擇出來,多個(gè)分類點(diǎn)確定分類閾值。c)不修剪分類樹并讓它無限生長。d) 最后,多棵分類樹必然會(huì)形成隨機(jī)森林,新樣本就會(huì)被新的森林區(qū)分并分類。圖5-1 隨機(jī)森林算法運(yùn)算流程Fig.5-1 Operation flow of random forest algorithm其運(yùn)算流程如圖5-1所示:在sklearn中,其實(shí)現(xiàn)的函數(shù)接口如下:Classsklearn.ensemble.RandomForestClassifier(n_estimators=10,criterion=gini,max_depth=None,min_samples_split=2,m
49、in_samples_leaf=1,min_weight_fraction_leaf=0.0,max_features=auto,max_leaf_nodes=None,min_impurity_decrease=0.0,min_impurity_split=None,bootstrap=True,oob_score=False,n_jobs=1,random_state=None, verbose=0, warm_start=False, class_weight=None)其參數(shù)定義如下:n_estimators:弱學(xué)習(xí)器最大迭代次數(shù), 一般為10。n_estimators不應(yīng)太小或太大,
50、分別會(huì)導(dǎo)致欠擬合和過擬合發(fā)生,選擇合適數(shù)值對隨進(jìn)森林的的方差有所影響,比如“子模型數(shù)”的增加就明顯減小模型方差,但是對總模型方差和偏差都沒有影響。子模型數(shù)量多,模型的精密度也會(huì)提高,因?yàn)闇p少了整個(gè)模型的方差公式第二項(xiàng),所以提高程度是有上限的,在實(shí)際應(yīng)用中,以10為單位,可以研究1201范圍內(nèi)的參數(shù)調(diào)整。相比之下,隨機(jī)森林的子模型偏差較小,模型的整個(gè)訓(xùn)練過程都是為了縮小差距,所以較少的子模型是必要的。Gradient Tree Boosting子模型的方差低,是為了減少整體模型訓(xùn)練過程的偏差。故而選擇更多子模型是更好的。(n_estimators默認(rèn)值為100) 且子模型為弱模型(max_dep
51、th的默認(rèn)值為3)。bootstrap:默認(rèn)True,是否有放回的采樣。oob_score : 一般會(huì)通過是否采用袋外樣本來評估模型的優(yōu)劣,True代表是,默認(rèn)值False,對于袋外樣本來說,其誤差一般是測試數(shù)據(jù)集的無偏估計(jì),因此True設(shè)置更好。袋外樣本代表擬合能力的高低,比如參數(shù)訓(xùn)練某模型,利用交叉驗(yàn)證(CV)雖然時(shí)間長,卻不需要太過依賴隨機(jī)森林。因此,該數(shù)據(jù)驗(yàn)證決策樹模型的性能消耗較少,但效果較好。隨機(jī)森林在實(shí)驗(yàn)中性能較好,有較強(qiáng)的抗噪聲性能,但在處理非平衡的數(shù)據(jù)上,存在缺陷,由于本研究數(shù)據(jù)標(biāo)簽分布均衡,故本數(shù)據(jù)集適用于隨機(jī)森林算法。隨機(jī)森林方法乳腺癌預(yù)測模型構(gòu)建的流程圖如下圖5-2所示
52、。主要分為 4 個(gè)步驟:數(shù)據(jù)預(yù)處理,特征向量的提取,訓(xùn)練模型,模型的預(yù)測。圖5-2 隨機(jī)森林方法預(yù)測模型歷史數(shù)據(jù)集訓(xùn)練數(shù)據(jù)集訓(xùn)練模型/建立測試模型和預(yù)測測試數(shù)據(jù)集特征提取特征和標(biāo)簽無標(biāo)簽特征訓(xùn)練/測試過程:測試預(yù)測匹配的精度測試標(biāo)簽Fig.5-2 Prediction model of random forest method5.5 基于 SVM 的乳腺癌預(yù)測支持向量機(jī)是一種監(jiān)督學(xué)習(xí)模型,一般會(huì)被用作模式識(shí)別、回歸和分類方面。這需要首先基于機(jī)器學(xué)習(xí)算法來對癌癥數(shù)據(jù)進(jìn)行分類和回歸,通過此方法確定訓(xùn)練樣例,所有的訓(xùn)練實(shí)例都表示為這兩種類型其中的一個(gè),SVM訓(xùn)練算法需創(chuàng)建新的癌癥數(shù)據(jù)模型并分配新樣本
53、,確保其變成非概率二值分類器。通過投影樣本于空間中某點(diǎn)來使得差異變大,新案例的映射會(huì)從空間的差距邊來預(yù)測其類別。SVM的一般處理方法如下:a)準(zhǔn)備數(shù)據(jù)集。按標(biāo)簽、特征形式組織。即 l類別標(biāo)號(hào) 特征1:特征值 特征2:特征值 .b)簡單的縮放(scale)數(shù)據(jù),確保樣本間一致。c)核函數(shù)的選擇(一般程序默然取徑函數(shù));d)交叉驗(yàn)證(一般是5折交叉),選擇最佳參數(shù)C與g ;e)用C與g 訓(xùn)練整個(gè)訓(xùn)練集,得到SVM模型;f)從SVM模型開始測試開始元數(shù)據(jù):訓(xùn)練集&測試集SVM模型訓(xùn)練SVM模型驗(yàn)證確定系數(shù)最優(yōu)參數(shù)終止條件Pso算法優(yōu)化否是圖5-3 SVM算法流程Fig.5- 3 SVM algori
54、thm flow其算法在本實(shí)驗(yàn)中的流程圖如圖5-3:SVM的核函數(shù)定義如下:classsklearn.svm.SVC(C=1.0,kernel=rbf,degree=3,gamma=auto,coef0=0.0,shrinking=True,probability=False,tol=0.001,cache_size=200,class_weight=None,verbose=False,max_iter=-1,decision_function_shape=ovr,random_state=None)其中的參數(shù)定義如下:C:懲罰系數(shù),用來控制損失函數(shù)的懲罰系數(shù),當(dāng)C,就很容易出現(xiàn)過度擬合,從
55、而出現(xiàn)有分類誤差的樣本;若是C0,則意味著無需關(guān)注分類的正確性與否,而是只要區(qū)間越大就會(huì)得到越好的 ,因?yàn)榇藭r(shí)即便能得到解,也必然是無意義的,整個(gè)算法也不會(huì)真正收斂。kernel: 利用核函數(shù)將非線性問題轉(zhuǎn)化為線性問題,參數(shù)選擇包括RBF, Linear, Poly, Sigmoid,precomputed或用戶定義的核函數(shù)。默認(rèn)為“RBF”,即高斯核函數(shù),Linear是線性核函數(shù),poly是多項(xiàng)式核,sigmoid是雙曲正切函數(shù)的tanh核。degree:kernel為poly,意味著多項(xiàng)式最高次為三次;kernel不是poly,則參數(shù)無效,僅對poly存有作用。gamma:核函數(shù)系數(shù),該參數(shù)是一種內(nèi)核系數(shù),主要是為rbf,poly和sigmoid存在;是auto時(shí),越小,這便導(dǎo)致高斯分布又高又瘦,模型只能吻合支持向量附近范圍,從而可能出現(xiàn)過擬合現(xiàn)象的發(fā)生;gamma越小,越大,高斯分布就會(huì)平滑,這可能導(dǎo)致分類效果不好,出現(xiàn)欠擬合。coef0:核函數(shù)常數(shù)值,(y=kx+b中的b值),僅僅存
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 義務(wù)植樹苗木采購合同
- 二零二五版企業(yè)間的借款合同書
- 二零二五版人力開發(fā)外包合同范例
- 二零二五版借款保證合同模板
- 2025便利店加盟合同書模板
- 2025蘇州房屋租賃合同范本「版」
- 2025農(nóng)產(chǎn)品購銷合同樣本
- 2025年福建省泉州市泉港區(qū)中考物理一模試卷(含解析)
- 高端醫(yī)藥制劑項(xiàng)目運(yùn)營管理手冊(模板范文)
- 2024年足球比賽規(guī)則及其裁判應(yīng)用試題及答案
- 青馬工程筆試試題及答案
- 豆粕交易合同協(xié)議
- 邊緣計(jì)算與5G融合技術(shù)研究-全面剖析
- 8.1薪火相傳的傳統(tǒng)美德 同步課件 -2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)下冊
- 飛機(jī)的縱向靜穩(wěn)定性飛行原理課件
- 電子化采購招投標(biāo)平臺(tái)系統(tǒng)建設(shè)項(xiàng)目解決方案
- 學(xué)術(shù)交流英語(學(xué)術(shù)寫作)智慧樹知到期末考試答案章節(jié)答案2024年哈爾濱工程大學(xué)
- 面試無機(jī)化學(xué)研究前沿ppt課件
- 金屬礦床地下開采——礦床開拓方法設(shè)計(jì)(完整版)
- 基于PLC的地鐵排水控制系統(tǒng)優(yōu)秀95分畢業(yè)設(shè)計(jì)
- 接空冷冷卻塔設(shè)備及管道安裝施工方案
評論
0/150
提交評論