筆記目錄
千禧年前的《駭客任務》(The Matrix) 是我對 Artificial intelligence 最初的認識 (或幻想),當時我是名國中生。直到最近幾年,我待過的兩家新創醫材公司都想要發展人工智慧醫療軟體,但已成為大叔的我對於 AI 的了解還是停留在粗淺的「駭客任務等級」。
前幾個禮拜,研發主管寄了一個關於 FDA「如何管理持續學習的 AI 的 SaMD」的初步構想文章給我,希望我可以整理重點向他們報告,讓公司提早準備。以下,就是我對〈Proposed Regulatory Framework for Modifications to Artificial Intelligence/Machine Learning (AI/ML)-Based Software as a Medical Device (SaMD)〉的粗淺了解。
前情提要
FDA 在這篇文章的最初就先說明了 AI 最大的好處是:
One of the greatest benefits of AI/ML in software resides in its ability to learn from real-world use and experience, and its capability to improve its performance. The ability for AI/ML software to learn from real-world feedback (training) and improve its performance (adaptation) makes these technologies uniquely situated among software as a medical device (SaMD) and a rapidly expanding area of research and development.
Proposed Regulatory Framework for Modifications to Artificial Intelligence/Machine Learning (AI/ML)-Based Software as a Medical Device (SaMD)
SaMD 的全名是「Software as a Medical Device」,IMDRF 有一篇文章來定義 SaMD –〈Software as a Medical Device (SaMD): Key Definitions〉。簡單來說,過去的軟體大多需搭配硬體來展現其功能,才可以成為一個醫療器材。但近年許多新科技快速發展,例如,GPUs、智慧型手機、人工智慧、雲端相關技術……,有許多軟體「自己」(Standalone)就可以執行某些符合醫療器材定義的功能,這類軟體就是 SaMD。
在 SaMD 出現後,如果 FDA 仍然使用早年「軟體 + 硬體 = 醫療器材」概念所發展出來的品質管理系統與上市前審核機制 (Premarket submission),像是 510(k) notification、De Novo 或 Premarket approval application (PMA) pathway,一定會事倍功半,煩死自己又累死醫療器材廠商,還使得病人無法及時獲得更好的醫療資源。因此,FDA 提出了「Software Precertification (Pre-Cert) Program」,希望廠商可以在設計開發 SaMD 階段就有 CQOE (Robust culture of Quality and Organizational Excellence) 精神,並持續監控 SaMD 在進入市場應用後的臨床表現 (Real-world performance),Pre-Cert Program 就像是 SaMD 的 GMP,FDA 稱為「Good Machine Learning Practices」(GMLP)。為了搭配 Pre-Cert Program,FDA 也在構想如何精簡上市前審核 (510(k) / De Novo / PMA)。
Pre-Cert Program 主要涵蓋範圍是「優良設計開發標準」、「上市前審核」與「上市後監督」。
如果要修改已經 510(k) notification 核准上市的 SaMD 要遵循哪些路徑呢?FDA 為此也發行一份指引 -〈Deciding When to Submit a 510(k) for a Software Change to an Existing Device〉,不過此指引並不是專屬 SaMD,而是以下三種軟體在合法上市後修改時都需遵循:
- Embedded within or a component of a medical device,
- Software that is an accessory to another medical device, or
- Software that is intended to be used for one or more medical purposes that performs these purposes without being part of a hardware medical device.
Software modifications guidance 依據軟體的修改對使用者/病患造成多大的風險來決定是否需要再次申請上市前審核 (Premarket submission),以下三項修改可能需要執行上市前審核:
- A change that introduces a new risk or modifies an existing risk that could result in significant harm;
- A change to risk controls to prevent significant harm; and
- A change that significantly affects clinical functionality or performance specifications of the device.
所以,當擁有持續學習能力 (Continuously learning) 的 AI/ML-based SaMD 的演算法改變而顯著影響表現、安全、功效,或修改了預期用途 (Intended use)、適應症 (Indications for use) 等等……,就可能需要再次執行上市前審核。
其實,FDA 目前已核准了一些 AI/ML-based SaMD,但它們的演算法基本上是上市前就已經固定 (Locked),只要給予一樣的 Input,這類產品都會輸出相同的 Output,並不會「從真實世界的回饋中學習 (Training)、改善自己的表現 (Adaptation)」。但人工智慧/機器學習 (AI/ML) 最大威力就在於「持續學習」(Continuously learning),可以從實際的臨床應用中學習而改善演算法,進而提升安全與功效。
FDA 依據上述這些原因,認為過去的醫材管理方式可能無法讓 AI/ML-based SaMD 發揮其強大的特色。因此,FDA 參考了 IMDRF 的 SaMD risk categorization framework、利弊考量 (Benefit-risk framework)、Software modifications guidance 中的風險概念,以及 Pre-Cert Program 的 Organization-based TPLC approach 提出了這份文件,希望業界給予建議,建立出一個可以讓 AI/ML-based SaMD 發揮其持續學習的強大威力,但又可確保產品安全與功效的方法。
背景介紹
Artificial intelligence (AI) 可以用不同技術來實現 ,例如,Machine learning (ML),在 FDA 這篇文章中主要討論以 ML 為架構去執行「treat, diagnose, cure, mitigate, or prevent disease or other conditions」的 SaMD,稱為 AI/ML-based SaMD。AI/ML-based SaMD 和一般的 SaMD 一樣可以根據 IMDRF SaMD risk categorization framework 依預期用途 (Intended use) 判斷「對病人產生的風險」來區分產品的風險等級,以下是用來判斷產品風險等級的兩大項因子:
- Significance of information provided by SaMD to healthcare decision
- To treat or to diagnose
- To drive clinical management
- To Inform clinical management
- Healthcare Situation or Condition
- Critical
- Serious
- Non-Serious
綜合考量上述兩大項 (六小項) 因子後可將 (AI/ML-based) SaMD 依風險低 (I) 到高 (IV) 分成四等級:
AI/ML-based SaMD 的風險等級分類除了和 SaMD 一樣要考量「預期用途對病人產生的風險」外,還需額外考量演算法是「Locked」或「Continuously learning」。
相較於 Locked algorithm,Adaptive algorithm (例如,Continuous learning algorithm) 可以透由事先明確定義的 Adaptation process 去執行上市後的變更與確效,這變更過程可能是全自動執行的。此過程可大致分為兩階段:Learning 和 Updating,前者是演算法學習改變自己的行為;後者就是軟體佈署 (Software deployment)。所以,可能輸入同一套資訊,AI/ML-based SaMD 在 Updating 前/後會給出不同的結果。
另外,此篇文章只適用於需要上市前審查 (Premarket submission) 的 AI/ML-based SaMD。例如,Class I exempt 或 Class II exempt 的產品就不包含在此文章的討論範圍內。
AI/ML-based SaMD 的更新
這篇文章說 AI/ML-based SaMD 的更新 (Modification) 影響主要分成 Performance、Inputs 和 Intended use 三個方面,一次更新可能只影響到其中一個,也可能三方面都被影響,例如:
- 影響了 Performance,但沒影響 Intended use 和資料輸入型態 (Inputs):像是「增加偵測數位乳房攝影中疑似癌症病灶的敏感度」就屬於此類。
- 影響了 Inputs,但沒影響 Intended use:文中舉例,原本 AI/ML-based SaMD 只支援某廠牌 CT scanners 的資料,經由更新而可以支援其他廠牌 CT scanners 的資料;或是,原本只能獲取某些資訊來診斷心房纖維顫動,更新後可以分析更多類型的資訊來診斷血氧含量與心率。
- 影響了 Intended Use:這方面的更新將會影響上面【背景介紹】中提到的那兩大判斷 SaMD 風險等級的因子,像是從「協助診斷」改成「診斷」,這就是從「Drive clinical management」變成「Diagnose」;或是原本只適用於大於等於 18 歲的成年人,修改成適用於兒童;或是原本只能偵測某種類型的癌症,修改成可以偵測更多類型的癌症。
前情提要結束,終於要進入 (我自認的) 重頭戲啦!
– 2017/07/20 @ Louisa Coffee 路易.莎咖啡 (林口仁愛門市)
– 2017/07/21 @ 星巴克文化門市 STARBUCKS
– 2019/07/26 @ Libo Cafe