自動化φ從醫療數據和自然語言處理
最低必要的標準和φ在醫療研究
下健康保險流通與責任法案(HIPAA)最低必要標準,HIPAA-covered實體(如衛生係統和保險公司)被要求做出合理的努力以確保訪問受保護的健康信息(φ)是有限的最低必要的信息來達到特定的目的使用、披露、或請求。
在歐洲,GDPR列出了要求匿名化和pseudo-anonymization公司必須滿足才能分析或分享醫療數據。在某些情況下,這些要求超出我們規定還要求公司編輯性別身份、種族、宗教、和聯盟關係。幾乎每個國家都有類似的法律保護敏感的個人和醫療信息。
使用個人身份健康數據的挑戰
這樣的最低必要的標準可以創建障礙推進全民醫療研究。這是因為大部分的醫療數據的價值是半結構化和非結構化圖像敘事文本,通常包含個人身份健康挑戰的信息刪除。這樣φ很難使臨床醫生、研究人員、科學家和數據在一個組織中注釋,火車,和開發模型,有能力預測疾病進展,作為一個例子。
合規之外,另一個關鍵原因de-identificationφ和醫療數據分析——特別是對於數據科學項目——是防止偏見和學習的相關性。刪除數據字段,如病人的地址、姓名、民族、職業、醫院名稱,和醫生的名字可以防止機器學習算法依賴於這些領域進行預測或建議。
自動化φ清除磚和約翰·斯諾實驗室
領袖約翰·斯諾實驗室,在醫療領域自然語言處理(NLP)和磚正在共同努力,幫助組織的過程並分析其大規模文本數據的一係列解決方案加速器為常見的NLP筆記本模板用例。你可以了解更多關於我們的合作在我們之前的博客,應用自然語言處理健康大規模文本。
幫助組織自動刪除敏感的患者信息,我們構建了一個聯合解決方案加速器φ移除建立在磚Lakehouse衛生保健和生命科學。約翰·斯諾實驗室提供了兩個商業擴展的開源火花NLP圖書館——兩者都是用於de-identification和匿名化任務——在這個加速器使用:
- 火花NLP衛生保健是世界上最廣泛使用的NLP圖書館的衛生保健和生命科學行業。優化運行在磚,火花NLP醫療無縫地提取,分類,結構與最先進的臨床和生物醫學文本數據精度範圍。
- 火花OCR提供了產品級、可訓練的和可擴展的算法和模型各種視覺形象的任務,包括文檔的理解,形成理解和信息提取。它擴展了核心庫的分析能力多克斯數碼文本也讀取和寫入PDF和文件以及從圖像中提取文本——在這些文件或從JPG, TIFF,日本,和類似的格式。
的高層介紹我們的解決方案包括加速器。
φ移除在行動
在這種解決方案加速器,我們向您展示如何將φ從醫療文件,這樣他們可以共享或分析在不影響病人的身份。這是一個高度概括的工作流程:
- 建立一個OCR管道處理PDF文檔
- 檢測並與NLP模型從非結構化文本中提取φ實體
- 使用模糊de-identify數據,比如φ文本
- 使用修訂de-identifyφ在視覺文檔視圖中
你可以訪問筆記本為一個完整的解決方案的介紹。
通過OCR解析文件
作為第一步,我們從雲存儲加載所有PDF文件,為每個人分配一個惟一的ID,並存儲結果DataFrames Lakehouse到銅層。注意,原始的PDF內容都存儲在一個二進製列和下遊步驟可以訪問。
在下一步中,我們從每個文件中提取原始文本。因為PDF文件可以有多個頁麵,更有效率,它首先將每個頁麵轉換成一個圖像(使用PdfToImage()),然後從圖像中提取文本通過ImageToText()為每個圖像。
#轉換PDF文檔每頁圖像pdf_to_image = PdfToImage () \.setInputCol (“內容”)\.setOutputCol (“圖像”)#運行OCRocr = ImageToText () \.setInputCol (“圖像”)\.setOutputCol (“文本”)\.setConfidenceThreshold (65年)\.setIgnoreResolution (假)
ocr_pipeline = PipelineModel(階段= (pdf_to_image,光學字符識別])
類似於SparkNLP,火花OCR的變換是一個標準化的一步調整與任何Spark-related變壓器,可以在一行代碼執行。
ocr_result_df = ocr_pipeline.transform (pdfs_df)
請注意,您可以查看每一個圖像直接在筆記本內,如下所示:
應用這種管道後,然後我們商店DataFrame提取的文本和原始圖像。注意形象之間的聯係,提取文本和原PDF通過PDF文件的路徑保存(和獨特的ID)在我們的雲存儲。
通常,掃描文檔是低質量(由於傾斜的圖像,分辨率差,等等)導致不準確的文本和數據質量不佳。為了解決這個問題,我們可以使用內置的圖像預處理方法在sparkOCR提高提取文本的質量。
傾斜校正和圖像處理
在下一步中,我們處理圖像增加信心。火花OCR已經ImageSkewCorrector檢測圖像的傾斜和旋轉它。OCR管道中的應用這個工具有助於調整相應的圖像。然後,通過應用ImageAdaptiveThresholding工具,我們可以計算一個閾值掩碼圖像基於當地像素鄰域和應用到圖像。另一個圖像處理的方法,我們可以添加管道使用形態學操作。我們可以使用ImageMorphologyOperation支持侵蝕(刪除對象邊界像素),擴張(添加像素在圖像物體的邊界),開(把小對象和細線從一個圖像,同時保留更大的物體的形狀和大小的圖像)和關閉(相反的開放和用於填充小洞在一個圖像)。
刪除背景對象ImageRemoveObjects可以使用以及添加ImageLayoutAnalyzer管道,圖像進行分析,確定文本的區域。我們完全開發的代碼OCR加速器內的管道可以找到筆記本。
讓我們看看原始圖像和校正圖像。
圖像處理之後,我們有一個更清潔的形象增加97%的信心。
現在我們已經糾正圖像偏態和背景噪音,我們修正後的文本從圖像中提取結果DataFrame寫入銀層在三角洲。
提取和模糊φ實體
一旦我們完成了使用火花OCR處理我們的文件,我們可以使用一個臨床命名實體識別(尼珥)管道檢測和提取感興趣的實體(如姓名、出生地等)在我們的文檔。我們這一過程中更詳細地覆蓋以前的博文從實驗報告中提取腫瘤的見解。
然而,經常有φ在臨床實體指出,可以用來識別和鏈接的個人鑒定臨床實體(例如疾病狀態)。因此,它是至關重要的標識這些實體φ在文本和混淆。
在這個過程中有兩個步驟:提取φ實體,然後把他們藏;同時確保下遊分析產生的數據集包含有價值的信息。
類似於臨床尼珥,我們使用一個醫療尼珥模型(ner_deid_generic_augmented
)檢測φ然後我們使用混淆這些實體“偽裝者法”。我們全部φ提取管道也可以在加速器中找到筆記本。
管道檢測φ實體,我們可以想象與NerVisualizer如下所示。
現在來構造一個端到端的deidentification管道,我們隻是模糊的步驟添加到φ提取管道替換φ假數據。
模糊= DeIdentification () \.setInputCols ([“句子”,“令牌”,“ner_chunk”])\.setOutputCol (“鑒定”)\.setMode (“混淆”)\.setObfuscateRefSource (“騙子”)\.setObfuscateDate (真正的)
obfuscation_pipeline管道(階段= = (deid_pipeline,困惑])
在下麵的例子中,我們修訂的誕生地病人,取而代之的是虛假的位置:
除了困惑,SparkNLP衛生保健提供pre-trained模型修訂。這是一個截圖顯示修訂的輸出管道。
de-identification SparkNLP和火花OCR很好地協同工作的大規模φ。在很多情況下,聯邦政府和行業法規禁止銷售或共享的原始文本文件。作為演示,我們可以創建一個可伸縮的和自動化生產管道在pdf文本分類,混淆或修訂φ實體,結果數據回Lakehouse寫。數據團隊可以輕鬆分享這個“潔淨”數據和消除識別信息信息與下遊分析師、數據科學家,或業務用戶在不影響病人的隱私。下麵是一個總結表的數據流數據磚。
開始構建φ去除管道了
這個解決方案加速器,磚和約翰·斯諾實驗室很容易自動化de-identification和困惑中包含敏感數據的PDF醫療文件。
加速器使用這個解決方案,您可以預覽筆記本電腦在線並將直接導入你的磚賬戶。筆記本電腦包括指導安裝相關的約翰·斯諾實驗室NLP圖書館和許可證密鑰。
你也可以訪問我們Lakehouse衛生保健和生命科學頁麵來了解我們所有的解決方案。