--- tags: BIR title: 生醫資訊擷取技術 期末專題 --- #### 生醫資訊擷取技術 期末專題 ##### 組員:N16091671 劉宇舜、 Q56091053 柯玠甫 ## 網址: - 140.116.155.190:65534 ## 目的: 在研究人員的努力下,有很多的研究成果被發表出來,可是如果沒有一個好的方法可以讓研究人員可以站在前人的肩膀上的話,只會徒勞的損耗研究能量。 好的知識庫需要被直覺的方法使用,這就是我們做這個project的中心思想。 ## 素材: :::info - 文章數: 32591 篇,使用爬文關鍵字「miRNA、Human、Cancer、Tumor」 - 句子數: 279749 句 ::: ## 方法: - App Demo: ![](https://i.imgur.com/IRTz3ri.png) 左半:圖形化GUI,點擊欲查詢之癌症時,會跳出相關的 mi-RNA。 右半:查詢結果,包含「關鍵句子、關聯 mi-RNA、PubMed ID、致癌或抑制的特徵」 - Score 公式: $$ \frac{((1 + 文章中該 miRNA 的字頻) * 10^{(單句中關鍵字出現的次數)} * (單句字數)}{文章總字數} * 100\% $$ 關鍵字:包含 oncogene、over expression、overexpress、up regulation、suppressor、down regulation、regulation - Score 設計理念: - 分數的核心是: "miRNA 的字頻 / 文章總字數",希望能強調文章對特定 miRNA 的關鍵度,文章中出現的 miRNA 種類越少關鍵度越高 - 將出現誘制關鍵字句子分數調高 - 希望將長句分數拉高,因為長句的描述普遍較完整 - 特色: - 圖形化:我們研究了10種癌症與600種 mi-RNA,為了避免輸入錯誤,我們選擇了圖形化的查詢設計,以及「展開與收起」的概念盡量精簡頁面。 - 直觀化:我們使用了邊的粗細來代表相關連的文件數量多寡。 - 精簡化:上面使用黃字總結這個miRNA與癌症之間的誘致(誘發或抑制)。 - 運作流程 ![](https://i.imgur.com/Nis3wdp.png) ## 遇到的問題: - 做 ranking 時遇到單句不包含 keywords 的案例的分數特別高: ![](https://i.imgur.com/0om4hvB.png) 因為我們是顯示單句而 ranking 的分母是總文長,所以以單句的角度來思考的話,應該要想辦法讓單句字數的權重能與全文字數匹敵,改進方法可以考慮單句字數乘上全文句數。 - 最後用 10 種 cancer 過濾後的文章數為 609 篇,我們認為這沒辦法做 W2V,那最後文章數不到數千篇我們歸因於 10 種 cancer 的選擇,像 Melanoma 僅僅只有 8 篇,第二個原因是關鍵字的選擇,比如我們是篩選同時出現 miRNA 或 microRNA 以及該 cancer 的名字,但其實很多 cancer 都有別名,如果有醫學相關背景就能透過俗名等相關字詞抓出更多能應用的文章。 - 由於在查詢區的網路圖,在查找的時候如果有比較大的空間就可以比較省力的找到,可是一旦查找完畢之後就可以使用比較少的頁面空間,目前還沒掌握動態調整寬度的前端技巧。 ## 結論: - 宇舜 在這學期中,我從上台demo的時候手會發抖到現在用和好朋友分享作品的心態上台,我覺得有很大的成長,在另一方面,使用網頁打造互動式的呈現結果,尤其是在做 word2vector的時候,最後使用3維圖來呈現結果的那次連我自己都陶醉不已,這次使用網路圖來圖形化搜尋結果也是一個挑戰,尤其是當每個 node 與 edge 都需要自己維護出現與否,這就讓我覺得在演算法學到的東西並不是空談,而是在現實應用中真正需要的知識。 - 玠甫 第一堂課要做 UI 介面時,對 django 還是完全陌生,然而慢慢地學到爬文、開始熟悉 python 的 directory, list 在 json 格式上的應用、用文章做 nltk 的力量以及設計一個 文章的 rank 的想法,這些技能都扎扎實實地應用在了這次的專題上,難能可貴的是我們寫出來的程式能提供使用者人性化的操作並輕鬆找到重要程度較高的 evidence 句子,雖然 ranking 的方式仍有不完善的地方,但至少在我自己的可接受範圍內能快速查看包含誘發與抑制字眼的 evidence 句子,然後可以點擊超連結快速地瀏覽 Pudmed 上完整的文章。