pytorch的活動時間預測

入門•方法•評估標準•數據集•安裝•參考
Pycox是一種用於生存分析的Python軟件包,並與Pytorch進行了時間的預測,該預測是在用於培訓Pytorch模型的Torchtuples軟件包上。此軟件包的R版本可在survivalModels上找到。
該軟件包包含各種生存模型的實現,一些有用的評估指標以及事件時間數據集的集合。此外, pycox.preprocessing模塊中提供了一些有用的預處理工具。
首先,您首先需要安裝Pytorch。然後,您可以通過PIP安裝Pycox :
pip install pycox或者,通過conda:
conda install -c conda-forge pycox我們建議從01_Introduction.ipynb開始,該詞在預處理,創建神經網絡,模型培訓和評估程序方面解釋了包裝的一般用法。該筆記本使用LogisticHazard方法進行說明,但大多數原理都將其推廣到其他方法。
另外,示例文件夾中列出了許多示例,或者您可以根據LogisticHazard遵循教程:
01_introduction.ipynb:在預處理,創建神經網絡,模型培訓和評估程序方麵包裝的一般用法。
02_introduction.ipynb:基於分位數的離散方案,具有tt.tuplefy的嵌套元組,分類變量的實體嵌入和周期性學習率。
03_NETWORK_ARCHITECTURES.IPYNB:使用自定義網絡和自定義損失功能擴展框架。該示例將自動編碼器與生存網絡相結合,並認為將自動編碼器損失與LogisticHazard丟失相結合的損失。
04_MNIST_DATALOADERS_CNN.IPYNB:使用數據編載機和卷積網絡用於MNIST數據集。我們重複[8]的模擬,其中每個數字定義了指數分佈的比例參數。
以下方法可在pycox.methods模塊中使用。
| 方法 | 描述 | 例子 |
|---|---|---|
| 焦慮 | Cox時間是一個相對風險模型,可擴展Cox回歸超出比例危害[1]。 | 筆記本 |
| coxcc | COX-CC是Cox時間模型的比例版本[1]。 | 筆記本 |
| coxph(深surv) | Coxph是Cox比例危害模型,也稱為DeepSurv [2]。 | 筆記本 |
| PCHAZARD | 分段恆定危險(PC-HAZARD)模型[12]假設連續時危險函數在預定義的間隔內是恆定的。它類似於分段指數模型[11]和Peann [14],但具有軟倍數激活而不是指數函數。 | 筆記本 |
| 方法 | 描述 | 例子 |
|---|---|---|
| logistichazard(nnet-survival) | Logistic-Hazard方法參數分散危害並優化生存可能性[12] [7]。它也稱為部分邏輯回歸[13]和NNET-Survival [8]。 | 筆記本 |
| PMF | PMF方法參數化概率質量函數(PMF)並優化生存可能性[12]。它是DeepHit和MTLR等方法的基礎。 | 筆記本 |
| 深處,深刻 | DeepHit是一種PMF方法,具有改善排名的損失,可以處理競爭風險[3]。 | 單場比賽 |
| MTLR(N-MTLR) | (神經)多任務邏輯回歸是[9]和[10]提出的PMF方法。 | 筆記本 |
| BCESURV | 一種代表一組二進制分類器的方法,該分類器在審查時刪除了個人[15]。損失是一組離散時間的生存估計值的二進制橫向熵,目標是每次生存的指標。 | bs_example |
pycox.evalutation.EvalSurv可以使用以下評估指標。
| 公制 | 描述 |
|---|---|
| concordance_td | 在事件時間評估的時間依賴性的一致性指數[4]。 |
| brier_score | IPCW Brier得分(審查加權brier得分的反可能性)[5] [6] [15]。有關詳細信息,請參見[15]的3.1.2節。 |
| nbll | IPCW(負)二項式對數可能[5] [1]。即,這是減去二項式模擬樣本,不應與負二項式分佈相混淆。加權如[15]的第3.1.2節一樣進行,以獲取詳細信息。 |
| Integrated_Brier_Score | 集成的IPCW Brier分數。 `brier_score' [5] [6]的數值集成。 |
| Integrated_nbll | 綜合IPCW(負)二項式對數可能性。 nbll` [5] [1]的數值集成。 |
| brier_score_admin Integrated_brier_score_admin | 行政布里爾評分[15]。對於具有管理性審查的數據,效果很好,這意味著觀察到所有審查時間。請參閱此示例筆記本。 |
| NBLL_ADMIN INTEMENT_NBLL_ADMIN | 行政(負)二項現像樣式[15]。對於具有管理性審查的數據,效果很好,這意味著觀察到所有審查時間。請參閱此示例筆記本。 |
可以通過pycox.datasets模塊獲得數據集的集合。例如,以下代碼將下載metabric數據集並以熊貓數據框架的形式加載它
from pycox import datasets
df = datasets . metabric . read_df ()默認情況下, datasets集模塊將在安裝目錄下存儲數據集。您可以通過設置PYCOX_DATA_DIR環境變量來指定其他目錄。
| 數據集 | 尺寸 | 數據集 | 數據源 |
|---|---|---|---|
| 弗洛克 | 6,524 | 血清免費輕鏈(Flchain)數據集的測定。有關預處理,請參見[1]。 | 來源 |
| GBSG | 2,232 | 鹿特丹和德國乳腺癌研究小組。有關詳細信息,請參見[2]。 | 來源 |
| kkbox | 2,814,735 | 由WSDM -KKBOX的2017年Churn Prediction挑戰創建的生存數據集,並通過行政審查。有關詳細信息,請參見[1]和[15]。與KKBox_V1相比,此數據集具有更多的協變量和審查時間。注意:您需要Kaggle憑據才能訪問數據集。 | 來源 |
| kkbox_v1 | 2,646,746 | 由WSDM -KKBox的2017年Churn Prediction挑戰創建的生存數據集。有關詳細信息,請參見[1]。這不是此數據集的首選版本。改用KKBox。注意:您需要Kaggle憑據才能訪問數據集。 | 來源 |
| 代理 | 1,904 | 乳腺癌國際財團(Apric)的分子分類學。有關詳細信息,請參見[2]。 | 來源 |
| NWTCO | 4,028 | 來自國家威爾姆腫瘤(NWTCO)的數據。 | 來源 |
| 支持 | 8,873 | 了解預後偏好結果和治療風險(支持)的研究。有關詳細信息,請參見[2]。 | 來源 |
| 數據集 | 尺寸 | 數據集 | 數據源 |
|---|---|---|---|
| rr_nl_nph | 25,000 | [1]中的模擬研究數據集。這是一項連續的時間仿真研究,其事件時間是從相對風險的非線性非線性危害模型(RRNLNPH)中得出的。 | simstudynonlinearnonph |
| SAC3 | 100,000 | [12]中的仿真研究數據集。這是一個離散的時間數據集,具有1000個可能的事件時間。 | simstudysaccensorconst |
| sac_admin5 | 50,000 | [15]中的模擬研究數據集。這是一個離散的時間數據集,具有1000個可能的事件時間。與`sac3'非常相似,但生存協變量和行政審查較少,由5個協變量確定。 | simstudysacadmin |
注意:此軟件包仍處於開發的早期階段,因此請隨時報告您可能遇到的任何問題。
該軟件包僅適用於Python 3.6+。
在安裝Pycox之前,請安裝Pytorch(版本> = 1.1)。然後,您可以安裝包裹
pip install pycox對於Bleeding Edge版本,您可以直接從GitHub安裝(考慮添加--force-reinstall ):
pip install git+git://github.com/havakv/pycox.git來自源的安裝取決於pytorch,因此請確保安裝它。接下來,克隆並安裝
git clone https://github.com/havakv/pycox.git
cd pycox
pip install .[1]HåvardKvamme,ØrnulfBorgan和Ida Scheel。通過神經網絡和COX回歸進行的活動時間預測。機器學習研究雜誌,20(129):1-30,2019年。 [紙]
[2] Jared L. Katzman,Uri Shaham,Alexander Cloninger,Jonathan Bates,Tingting Jiang和Yuval Kluger。 DeepSurv:使用COX比例危害深神經網絡的個性化治療建議系統。 BMC醫學研究方法論,18(1),2018年。 [論文]
[3] Changhee Lee,William R Zame,Jinsung Yoon和Mihaela van der Schaar。 DeepHit:一種具有競爭風險的生存分析的深度學習方法。在2018年的三十秒AAAI人工智能會議上。 [紙]
[4] Laura Antolini,Patrizia Boracchi和Elia Biganzoli。時間依賴性歧視指數用於生存數據。醫學統計數據,24(24):3927–3944,2005。 [紙]
[5] Erika Graf,Claudia Schmoor,Willi Sauerbrei和Martin Schumacher。評估和比較生存數據的預後分類方案。醫學統計學,18(17-18):2529–2545,1999。
[6] Thomas A. Gerds和Martin Schumacher。在右審核事件時間的一般生存模型中對預期的勃貴得分的一致估計。生物識別雜誌,48(6):1029–1040,2006。 [紙]
[7]查爾斯·布朗。關於使用指標變量來研究響應時間模型中參數的時間依賴性。生物識別技術,31(4):863–872,1975。 [紙]
[8] Michael F. Gensheimer和Balasubramanian Narasimhan。神經網絡的可擴展離散時間生存模型。 Peerj ,7:E6257,2019。 [紙]
[9] Chun-Nam Yu,Russell Greiner,Hsiu-Chin Lin和Vickie Baracos。學習患者特定的癌症存活分佈是一系列依賴回歸器。在神經信息處理系統的進步中,第24頁,第1845– 1853年。 Curran Associates,Inc.,2011年。 [紙]
[10] Stephane Fotso。基於多任務框架的深層神經網絡用於生存分析。 Arxiv預印型ARXIV:1801.05512,2018 。 [紙]
[11]邁克爾·弗里德曼。帶有協變量生存數據的分段指數模型。 《統計年鑑》 ,10(1):101–113,1982。 [紙]
[12]HåvardKvamme和ØrnulfBorgan。通過神經網絡進行連續和離散的時間生存預測。 Arxiv預印Arxiv:1910.06724,2019 。 [紙]
[13] Elia Biganzoli,Patrizia Boracchi,Luigi Mariani和Ettore Marubini。餵養前向神經網絡以分析審查的生存數據:部分邏輯回歸方法。醫學統計學,17(10):1169–1186,1998。 [紙]
[14] Marco Fornili,Federico Ambrogi,Patrizia Boracchi和Elia Biganzoli。分段指數的人工神經網絡(PEANN),用於使用正確的審查數據對危險功能進行建模。生物信息學和生物統計學的計算智能方法,第125-136頁,2014年。 [紙]
[15]HåvardKvamme和ØrnulfBorgan。行政審查的Brier分數:問題和解決方案。 Arxiv預印Arxiv:1912.08581,2019 。 [紙]