KR20240017321A - 심전도 판독을 위한 인공지능 모델의 업데이트 방법,프로그램 및 장치 - Google Patents

심전도 판독을 위한 인공지능 모델의 업데이트 방법,프로그램 및 장치 Download PDF

Info

Publication number
KR20240017321A
KR20240017321A KR1020230097255A KR20230097255A KR20240017321A KR 20240017321 A KR20240017321 A KR 20240017321A KR 1020230097255 A KR1020230097255 A KR 1020230097255A KR 20230097255 A KR20230097255 A KR 20230097255A KR 20240017321 A KR20240017321 A KR 20240017321A
Authority
KR
South Korea
Prior art keywords
data
ecg
value
ecg data
machine learning
Prior art date
Application number
KR1020230097255A
Other languages
English (en)
Inventor
권준명
조용연
임선유
Original Assignee
주식회사 메디컬에이아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 메디컬에이아이 filed Critical 주식회사 메디컬에이아이
Priority to PCT/KR2023/010883 priority Critical patent/WO2024025350A1/ko
Publication of KR20240017321A publication Critical patent/KR20240017321A/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/20ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/50ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders

Abstract

본 개시는 심전도 판독을 위한 인공지능 모델의 업데이트 방법, 프로그램 및 장치에 관한 것으로서, 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 심전도 판독을 위한 인공지능 모델의 업데이트 방법으로서, 심전도 데이터를 획득하는 단계; 상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하는 단계: 및 상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 단계를 포함할 수 있는 방법을 제공하고자 한다.

Description

심전도 판독을 위한 인공지능 모델의 업데이트 방법, 프로그램 및 장치{METHOD, PROGRAM AND APPARATUS FOR UPDATING OF NEURAL NETWORK MODEL FOR ELECTROCARDIOGRAM READING}
본 개시의 내용은 심전도 판독을 위한 인공지능 모델의 업데이트 방법에 관한 것으로, 구체적으로 상대적 가치로 분류된 심전도 데이터를 이용하여 심전도 판독을 위한 인공지능 모델을 고도화 시킬 수 있는 방법에 관한 것이다.
심전도(ECG: electrocardiogram)는 심장에서 발생하는 전기적인 신호를 측정하여 심장에서부터 전극까지의 전도계통의 이상 유무를 확인하여 질환유무를 판별할 수 있게 하는 신호이다.
이러한 심전도는 심전도 측정 장비로 측정되어 환자의 건강상태를 측정하기 위한 보조 도구로 사용되며, 일반적으로 심전도 측정 장비는 측정결과만을 표시해주며 진단은 온전히 의사의 몫이었다.
현재, 의사의 의존도를 낮추기 위해 심전도를 기초로 인공지능을 이용하여 신속 정확하게 질환을 진단하는 연구가 계속되고 있다. 또한, 웨어러블, 라이프스타일 심전도 측정 기기의 발달과 함께 심전도를 기초로 심장 질환 뿐만 아닌 다른 여러 질환을 진단 및 모니터링할 수 있는 가능성이 대두되고 있다.
심전도에 대한 전문 지식이 없는 일반 의원이나 심전도 판독이 어려운 의료 기관에서는 심전도 판독센터에 측정 대상의 심전도 데이터에 대한 심전도 판독을 요청하게 된다. 심전도 판독센터에서는 인공지능 모델을 이용한 1차 판독 결과 및 전문 의료진에 의한 2차 판독 결과를 진행한 후에, 1차 판독 결과와 2차 판독 결과를 이용한 측정 대상의 심전도에 대한 판독 결과값을 판독 의뢰한 의료기관에 회신하는 서비스를 제공한다. 이때, 심전도 판독센터에는 심전도 데이터와 판독 결과값을 누적 저장된다.
심전도에 대한 판독 결과값은 높은 수준의 의료 지식을 갖은 전문가에 의한 2차 판도 결과를 포함하고 있기 때문에, 해당 심전도의 판독 결과값은 인공지능 모델의 성능을 높일 수 있는 가치를 갖는다.
한편, 새로운 학습 데이터를 추가하여 개발이 완료된 인공지능 모델은 높은 가치를 갖는 학습 데이터를 이용하여 업데이트 하게 되면 심전도 판독 서비스를 제공하는 운영센터의 시스템 안정성에 큰 영향을 미칠 수 있다. 그러나, 새롭게 획득된 심전도 데이터에 대한 신뢰도가 보장되지 않는 상태에서, 새롭게 획득한 심전도 데이터를 학습데이터로 사용하여 인공지능 모델을 재학습시키면, 인공지능 모델의 성능이 재학습 이전의 인공 지능 모델의 성능보다 우수하다고 보장할 수 없다는 문제점이 있다.
따라서, 심전도 판독 서비스를 제공하는 운영센서테서는 획득한 심전도 데이터를 무작위로 학습 데이터로 사용하여 인공지능 모델을 재학습시키거나, 새로운 인공지능 모델을 학습시킬 경우에, 인공지능 모델의 성능을 보장할 수 없고, 오히려 성능이 낮아진 인공지능 모델을 심전도 판독센터의 시스템에 탑재할 수도 있으며, 누적된 심전도 데이터를 학습 데이터로 활용하여 매번 인공지능 모델의 재학습에 사용할 경우에 인공지능 모델의 과부하를 초래할 수 있는 문제점이 있다.
대한민국 등록특허 제10-0750886호(2007.08.22.)
본 개시는 전술한 배경기술에 대응하여 안출된 것으로, 본 개시의 일 실시예에 따른 심전도 판독을 위한 인공지능 모델의 업데이트 방법은 누적된 대량의 심전도 데이터 중에서 상대적 가치에 따라 분류된 신뢰도가 높은 심전도 데이터를 이용하여 인공지능 모델을 재학습 또는 학습시킬 수 있고, 재학습 또는 학습이 완료된 인공지능 모델 중 가장 높은 출력 정확도를 갖는 모델을 선택할 수 있도록 하는 것을 목적으로 한다.
다만, 본 개시에서 해결하고자 하는 과제는 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재를 근거로 명확하게 이해될 수 있을 것이다.
전술한 바와 같은 과제를 실현하기 위한 본 개시의 일 실시예에 따라 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 심전도 판독을 위한 인공지능 모델의 업데이트 방법을 제공하고자 한다. 상기 방법은, 심전도 데이터를 획득하는 단계; 상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하는 단계: 및 상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 단계를 포함할 수 있다.
대안적으로, 상기 방법은, 상기 재학습이 완료된 제1 머신러닝 모델 또는 상기 학습이 완료된 제2 머신러닝 모델들의 출력 정확도를 비교하여, 가장 높은 출력 정확도를 갖는 머신러닝 모델을 심전도 판독 서비스용 모델로 선택하는 단계를 더 포함할 수 있다.
대안적으로, 상기 방법은, 심전도 판독 서비스의 운영자가 상기 심전도 판독 서비스용 모델을 업데이트 할 수 있도록, 상기 가장 높은 출력 정확도를 갖는 머신러닝 모델에 대한 정보를 포함하는 알람 기능을 제공하는 단계를 더 포함할 수 있다.
대안적으로, 상기 심전도 판독 서비스용 모델의 선택은, 기 설정된 선택 발동 조건을 만족하는 경우 수행되는 것이다.
대안적으로, 상기 선택 발동 조건은, 상기 출력 정확도가 제1 기준을 초과하는 머신러닝 모델들의 수가 제2 기준을 초과하는 경우, 또는 질병이 있는 것으로 판단된 심전도 데이터의 수가 제3 기준을 초과하는 경우 중 어느 하나인 것이다.
대안적으로, 상기 제1 가치 판단은, 상기 심전도 데이터를 전문가 단말에서 판독한 전문가 판독 정보와 상기 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보를 비교하여 상기 심전도 데이터의 가치를 판단하는 제1 가치 분석 과정을 포함할 수 있다.
대안적으로, 상기 제1 가치 분석 과정은, 상기 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보가 오답인지 여부를 판단하는 과정; 및 상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정을 포함할 수 있다.
대안적으로, 상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정은, 상기 심전도 판독 정보가 오답인 경우, 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고, 상기 심전도 판독 정보가 오답이 아닌 경우, 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것이다.
대안적으로, 상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정은, 상기 심전도 판독 정보가 오답이 아니고, 상기 심전도 데이터에 포함된 노이즈 신호 또는 결측치로 인한 오류 신호로 인해 심전도 판독이 불가능한 경우, 상기 심전도 데이터를 재학습 또는 학습을 위한 용도의 데이터로 사용하지 않기 위해 폐기하는 것이다.
대안적으로, 상기 제2 가치 판단은, 상기 심전도 데이터를 측정한 대상의 질병 유무를 분석하여, 상기 심전도 데이터의 가치를 판단하는 제2 가치 분석 과정을 포함할 수 있다.
대안적으로, 상기 제2 가치 분석 과정은, 전문가 단말에서 판독한 전문가 판독 정보에 기반하여, 상기 심전도 데이터를 측정한 대상이 질병이 있다고 판단된 경우, 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고, 상기 심전도 데이터를 측정한 대상이 질병이 없다고 판단된 경우에 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것이다.
대안적으로, 상기 제3 가치 판단은, 상기 심전도 데이터에 포함된 태그를 기준으로 상기 심전도 데이터의 가치를 판단하는 제3 가치 분석 과정을 포함할 수 있다.
대안적으로, 상기 제3 가치 분석 과정은, 상기 심전도 데이터에 포함된 태그를 분석하기 위한 태그 인터페이스를 통해 상기 심전도 데이터에서 태그를 추출하는 과정; 상기 추출된 태그에 기반하여, 병원의 규모, 병원의 종류, 환자의 종류 또는 심전도 측정기기의 종류 중 적어도 하나의 태깅된 정보를 인식하는 과정; 및 상기 인식된 정보를 기초로, 상기 심전도 데이터의 상대적 가치를 분류하는 과정을 포함할 수 있다.
대안적으로, 상기 인식된 정보를 기초로, 상기 심전도 데이터의 상대적 가치를 분류하는 과정은, 상기 태깅된 정보에 기초하여 병원 규모가 기 설정된 기준 규모를 충족하거나 환자의 특성이 기 설정된 기준 특성과 일치하는 경우에 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고, 병원 규모가 상기 기준 규모를 충족하지 않거나 환자의 특성이 기 설정된 기준 특성과 불일치하는 경우에 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것이다.
대안적으로, 상기 제1 그룹으로 분류된 심전도 데이터는, 상기 태깅된 정보의 병원 종류에 따라 기 설정된 비율로 학습 데이터와 검증 데이터로 구분하는 것인이다.
본 개시의 다른 실시예에 따른 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램(program)으로서, 상기 컴퓨터 프로그램은 하나 이상의 프로세서(processor)에서 실행되는 경우, 심전도 판독을 위한 인공지능 모델의 업데이트 하기 위한 동작들을 수행하도록 하며, 상기 동작들은, 심전도 데이터를 획득하는 동작; 상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하는 동작: 및 상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 동작;을 포함하는 컴퓨터 프로그램을 제공하고자 한다.
본 개시의 또 다른 실시예에 따른 심전도에 기초한 신경망 모델의 대조적인 사전 학습하기 위한 컴퓨팅 장치로서, 적어도 하나의 코어(core)를 포함하는 프로세서(processor); 및 상기 프로세서에서 실행 가능한 프로그램 코드(code)들을 포함하는 메모리(memory); 를 포함하고, 상기 프로세서는, 상기 프로그램 코드의 실행에 따라, 심전도 데이터를 획득하고, 상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하며, 상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 장치를 제공하고자 한다.
본 개시의 일 실시예에 따른 심전도 판독을 위한 인공지능 모델의 업데이트 방법은 상대적 가치가 높은 심전도 데이터를 이용한 학습 데이터를 이용하여 기 구축된 머신러닝 모델을 재학습시키거나 새로운 머신러닝 모델을 학습시킬 수 있어, 인공지능 모델의 출력 정확도가 더욱 높아질 수 있고, 이로 인해 더욱 정확한 심전도 판독 서비스를 제공할 수 있다.
또한, 본 개시는 새롭게 추가되는 심전도 데이터에 대해 상대적 가치에 따라 자동으로 분류할 수 있고, 상대적 가치가 분류된 데이터를 이용하여 학습 데이터를 생성하여 인공지능 모델을 재학습 또는 학습할 수 있으며, 재학습 또는 학습이 완료된 인공지능 모델 중 가장 높은 출력 정확도를 갖는 모델을 선택할 수 있도록 함으로써, 인공지능 모델의 업데이트, 운영 및 관리에 소요되는 노력과 시간을 감소시킬 수 있고, 효율적으로 인공지능 모델을 개발 및 배포할 수 있는 효과가 있다.
도 1은 본 개시의 일 실시예에 따른 컴퓨팅 장치의 블록도이다.
도 2는 본 개시의 일 실시예에 따른 시스템의 블록도이다.
도 3은 본 개시의 일 실시예에 따라 심전도 판독을 위한 인공지능 모델의 업데이트 방법을 보여주는 순서도이다.
도 4는 본 개시의 일 실시예에 따라 심전도 판독 서비스용 모델을 선택하는 과정을 설명하는 도면이다.
도 5는 본 개시의 일 실시예에 따라 제1 가치 분석 과정의 수행 과정을 설명하는 순서도이다.
도 6은 본 개시의 일 실시예에 따라 제2 가치 분석 과정의 수행 과정을 설명하는 순서도이다.
도 7은 본 개시의 일 실시예에 따라 제3 가치 분석 과정의 수행 과정을 설명하는 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 개시의 기술 분야에서 통상의 지식을 가진 자(이하, 당업자)가 용이하게 실시할 수 있도록 본 개시의 실시예가 상세히 설명된다. 본 개시에서 제시된 실시예들은 당업자가 본 개시의 내용을 이용하거나 또는 실시할 수 있도록 제공된다. 따라서, 본 개시의 실시예들에 대한 다양한 변형들은 당업자에게 명백할 것이다. 즉, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며, 이하의 실시예에 한정되지 않는다.
본 개시의 명세서 전체에 걸쳐 동일하거나 유사한 도면 부호는 동일하거나 유사한 구성요소를 지칭한다. 또한, 본 개시를 명확하게 설명하기 위해서, 도면에서 본 개시에 대한 설명과 관계없는 부분의 도면 부호는 생략될 수 있다.
본 개시에서 사용되는 "또는" 이라는 용어는 배타적 "또는" 이 아니라 내포적 "또는" 을 의미하는 것으로 의도된다. 즉, 본 개시에서 달리 특정되지 않거나 문맥상 그 의미가 명확하지 않은 경우, "x는 a 또는 b를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 이해되어야 한다. 예를 들어, 본 개시에서 달리 특정되지 않거나 문맥상 그 의미가 명확하지 않은 경우, "x는 a 또는 b를 이용한다" 는 x가 a를 이용하거나, x가 b를 이용하거나, 혹은 x가 a 및 b 모두를 이용하는 경우 중 어느 하나로 해석될 수 있다.
본 개시에서 사용되는 "및/또는" 이라는 용어는 열거된 관련 개념들 중 하나 이상의 개념의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.
본 개시에서 사용되는 "포함한다" 및/또는 "포함하는" 이라는 용어는, 특정 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는" 이라는 용어는, 하나 이상의 다른 특징, 다른 구성요소 및/또는 이들에 대한 조합의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 단수는 일반적으로 "하나 또는 그 이상" 을 포함할 수 있는 것으로 해석되어야 한다.
본 개시에서 사용되는 "제 n(n은 자연수)" 이라는 용어는 본 개시의 구성요소들을 기능적 관점, 구조적 관점, 혹은 설명의 편의 등 소정의 기준에 따라 상호 구별하기 위해 사용되는 표현으로 이해될 수 있다. 예를 들어, 본 개시에서 서로 다른 기능적 역할을 수행하는 구성요소들은 제 1 구성요소 혹은 제 2 구성요소로 구별될 수 있다. 다만, 본 개시의 기술적 사상 내에서 실질적으로 동일하나 설명의 편의를 위해 구분되어야 하는 구성요소들도 제 1 구성요소 혹은 제 2 구성요소로 구별될 수도 있다.
본 개시에서 사용되는 "획득" 이라는 용어는, 외부 장치 혹은 시스템과의 유무선 통신 네트워크를 통해 데이터를 수신하는 것 뿐만 아니라, 온-디바이스(on-device) 형태로 데이터를 생성하는 것을 의미하는 것으로 이해될 수 있다.
한편, 본 개시에서 사용되는 용어 "모듈(module)", 또는 "부(unit)" 는 컴퓨터 관련 엔티티(entity), 펌웨어(firmware), 소프트웨어(software) 혹은 그 일부, 하드웨어(hardware) 혹은 그 일부, 소프트웨어와 하드웨어의 조합 등과 같이 컴퓨팅 자원을 처리하는 독립적인 기능 단위를 지칭하는 용어로 이해될 수 있다. 이때, "모듈", 또는 "부"는 단일 요소로 구성된 단위일 수도 있고, 복수의 요소들의 조합 혹은 집합으로 표현되는 단위일 수도 있다. 예를 들어, 협의의 개념으로서 "모듈", 또는 "부"는 컴퓨팅 장치의 하드웨어 요소 또는 그 집합, 소프트웨어의 특정 기능을 수행하는 응용 프로그램, 소프트웨어 실행을 통해 구현되는 처리 과정(procedure), 또는 프로그램 실행을 위한 명령어 집합 등을 지칭할 수 있다. 또한, 광의의 개념으로서 "모듈", 또는 "부"는 시스템을 구성하는 컴퓨팅 장치 그 자체, 또는 컴퓨팅 장치에서 실행되는 애플리케이션 등을 지칭할 수 있다. 다만, 상술한 개념은 하나의 예시일 뿐이므로, "모듈", 또는 "부"의 개념은 본 개시의 내용을 기초로 당업자가 이해 가능한 범주에서 다양하게 정의될 수 있다.
본 개시에서 사용되는 "모델(model)" 이라는 용어는 특정 문제를 해결하기 위해 수학적 개념과 언어를 사용하여 구현되는 시스템, 특정 문제를 해결하기 위한 소프트웨어 단위의 집합, 혹은 특정 문제를 해결하기 위한 처리 과정에 관한 추상화 모형으로 이해될 수 있다. 예를 들어, 신경망(neural network) "모델" 은 학습을 통해 문제 해결 능력을 갖는 신경망으로 구현되는 시스템 전반을 지칭할 수 있다. 이때, 신경망은 노드(node) 혹은 뉴런(neuron)을 연결하는 파라미터(parameter)를 학습을 통해 최적화하여 문제 해결 능력을 가질 수 있다. 신경망 "모델" 은 단일 신경망을 포함할 수도 있고, 복수의 신경망들이 조합된 신경망 집합을 포함할 수도 있다.
본 개시에서 사용되는 "데이터"는 "영상", 신호 등을 포함할 수 있다. 본 개시에서 사용되는 "영상" 이라는 용어는 이산적 이미지 요소들로 구성된 다차원 데이터를 지칭할 수 있다. 다시 말해, "영상"은 사람의 눈으로 볼 수 있는 대상의 디지털 표현물을 지칭하는 용어로 이해될 수 있다. 예를 들어, "영상"은 2차원 이미지에서 픽셀에 해당하는 요소들로 구성된 다차원 데이터를 지칭할 수 있다. "영상"은 3차원 이미지에서 복셀에 해당하는 요소들로 구성된 다차원 데이터를 지칭할 수 있다.
본 개시에서 사용되는 "블록(block)" 이라는 용어는 종류, 기능 등과 같은 다양한 기준을 기초로 구분된 구성의 집합으로 이해될 수 있다. 따라서, 하나의 "블록"으로 분류되는 구성은 기준에 따라 다양하게 변경될 수 있다. 예를 들어, 신경망 "블록"은 적어도 하나의 신경망을 포함하는 신경망 집합으로 이해될 수 있다. 이때, 신경망 "블록"에 포함된 신경망을 특정 연산을 동일하게 수행하는 것으로 가정할 수 있다. 전술한 용어의 설명은 본 개시의 이해를 돕기 위한 것이다. 따라서, 전술한 용어를 본 개시의 내용을 한정하는 사항으로 명시적으로 기재하지 않은 경우, 본 개시의 내용을 기술적 사상을 한정하는 의미로 사용하는 것이 아님을 주의해야 한다.
도 1은 본 개시의 일 실시예에 따른 컴퓨팅 장치의 블록 구성도이다.
본 개시의 일 실시예에 따른 컴퓨팅 장치(100)는 데이터의 종합적인 처리 및 연산을 수행하는 하드웨어 장치 혹은 하드웨어 장치의 일부일 수도 있고, 통신 네트워크로 연결되는 소프트웨어 기반의 컴퓨팅 환경일 수도 있다. 예를 들어, 컴퓨팅 장치(100)는 집약적 데이터 처리 기능을 수행하고 자원을 공유하는 주체인 서버일 수도 있고, 서버와의 상호 작용을 통해 자원을 공유하는 클라이언트(client)일 수도 있다. 또한, 컴퓨팅 장치(100)는 복수의 서버들 및 클라이언트들이 상호 작용하여 데이터를 종합적으로 처리하는 클라우드 시스템(cloud system)일 수도 있다. 상술한 기재는 컴퓨팅 장치(100)의 종류와 관련된 하나의 예시일 뿐이므로, 컴퓨팅 장치(100)의 종류는 본 개시의 내용을 기초로 당업자가 이해 가능한 범주에서 다양하게 구성될 수 있다.
도 1을 참조하면, 본 개시의 일 실시예에 따른 컴퓨팅 장치(100)는 프로세서(processor)(110), 메모리(memory)(120), 및 네트워크부(network unit)(130)를 포함할 수 있다. 다만, 도 1은 하나의 예시일 뿐이므로, 컴퓨팅 장치(100)는 컴퓨팅 환경을 구현하기 위한 다른 구성들을 포함할 수 있다. 또한, 상기 개시된 구성들 중 일부만이 컴퓨팅 장치(100)에 포함될 수도 있다.
본 개시의 일 실시예에 따른 프로세서(110)는 컴퓨팅 연산을 수행하기 위한 하드웨어 및/또는 소프트웨어를 포함하는 구성 단위로 이해될 수 있다. 예를 들어, 프로세서(110)는 컴퓨터 프로그램을 판독하여 기계 학습을 위한 데이터 처리를 수행할 수 있다. 프로세서(110)는 기계 학습을 위한 입력 데이터의 처리, 기계 학습을 위한 특징 추출, 역전파(backpropagation)에 기반한 오차 계산 등과 같은 연산 과정을 처리할 수 있다. 이와 같은 데이터 처리를 수행하기 위한 프로세서(110)는 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치(GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit), 주문형 반도체(ASICc: application specific integrated circuit), 혹은 필드 프로그래머블 게이트 어레이(FPGA: field programmable gate array) 등을 포함할 수 있다. 상술한 프로세서(110)의 종류는 하나의 예시일 뿐이므로, 프로세서(110)의 종류는 본 개시의 내용을 기초로 당업자가 이해 가능한 범주에서 다양하게 구성될 수 있다.
프로세서(110)는 심전도 데이터에 기초하여 심전도 판독을 위한 인공지능 모델을 학습 또는 재학습시킬 수 있다. 예를 들어, 프로세서(110)는 심전도 데이터와 함께, 성별, 나이, 체중, 신장 등의 정보를 포함하는 생물학적 데이터를 기초로 진단 식별 및 환자 분류 등의 심전도 판독 결과값을 추정하도록 인공지능 모델을 학습 또는 재학습시킬 수 있다. 프로세서(110)는 인공지능 모델의 학습 또는 재학습 과정에서 머신러닝 모델에 포함된 적어도 하나의 신경망 블록을 표현하는 연산을 수행할 수 있다.
프로세서(110)는 획득된 심전도 데이터 중에서 신뢰도가 높은 심전도 데이터만을 학습 데이터로 이용하여 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시킬 수 있다. 그리고, 재학습된 제 1 머신러닝 모델 또는 학습된 새로운 제 2 머신러닝 모델을 비교하여 사용 모델을 업데이트 함으로써, 인공지능 모델의 출력 정확도를 높일 수 있도록 한다. 즉, 프로세서(110)는 학습 가치가 높은 데이터를 통해 기존 모델을 재학습시키거나 새로운 모델을 학습시켜 기존 모델과 비교함으로써, 심전도 판독에 사용될 모델을 주기적으로 업데이트하고, 최적화 할 수 있다.
상술한 예시 이외에도 심전도 데이터를 포함한 의료 데이터의 종류 및 인인공지능 모델의 출력은 본 개시의 내용을 기초로 당업자가 이해 가능한 범주에서 다양하게 구성될 수 있다.
본 개시의 일 실시예에 따른 메모리(120)는 컴퓨팅 장치(100)에서 처리되는 데이터를 저장하고 관리하기 위한 하드웨어 및/또는 소프트웨어를 포함하는 구성 단위로 이해될 수 있다. 즉, 메모리(120)는 프로세서(110)가 생성하거나 결정한 임의의 형태의 데이터 및 네트워크부(130)가 수신한 임의의 형태의 데이터를 저장할 수 있다. 예를 들어, 메모리(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리, 램(ram: random access memory), 에스램(sram: static random access memory), 롬(rom: read-only memory), 이이피롬(eeprom: electrically erasable programmable read-only memory), 피롬(prom: programmable read-only memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리(120)는 데이터를 소정의 체제로 통제하여 관리하는 데이터베이스(database) 시스템을 포함할 수도 있다. 상술한 메모리(120)의 종류는 하나의 예시일 뿐이므로, 메모리(120)의 종류는 본 개시의 내용을 기초로 당업자가 이해 가능한 범주에서 다양하게 구성될 수 있다.
메모리(120)는 프로세서(110)가 연산을 수행하는데 필요한 데이터, 데이터의 조합, 및 프로세서(110)에서 실행 가능한 프로그램 코드(code) 등을 구조화 및 조직화하여 관리할 수 있다. 예를 들어, 메모리(120)는 후술할 네트워크부(130)를 통해 수신된 심전도 데이터를 저장할 수 있다. 메모리(120)는 인공지능 모델이 심전도 데이터를 입력받아 학습 또는 재학습을 수행하도록 동작시키는 프로그램 코드, 인공지능능 모델이 심전도 데이터를 입력받아 컴퓨팅 장치(100)의 사용 목적에 맞춰 추론을 수행하도록 동작시키는 프로그램 코드, 및 프로그램 코드가 실행됨에 따라 생성된 가공 데이터 등을 저장할 수 있다.
본 개시의 일 실시예에 따른 네트워크부(130)는 임의의 형태의 공지된 유무선 통신 시스템을 통해 데이터를 송수신하는 구성 단위로 이해될 수 있다. 예를 들어, 네트워크부(130)는 근거리 통신망(LAN: local area network), 광대역 부호 분할 다중 접속(WCDMA: wideband code division multiple access), 엘티이(LTE: long term evolution), 와이브로(WIBRO: wireless broadband internet), 5세대 이동통신(5g), 초광역대 무선통신(ultra wide-band), 지그비(zigbee), 무선주파수(RF: radio frequency) 통신, 무선랜(wireless lan), 와이파이(wireless fidelity), 근거리 무선통신(NFC: near field communication), 또는 블루투스(bluetooth) 등과 같은 유무선 통신 시스템을 사용하여 데이터 송수신을 수행할 수 있다. 상술한 통신 시스템들은 하나의 예시일 뿐이므로, 네트워크부(130)의 데이터 송수신을 위한 유무선 통신 시스템은 상술한 예시 이외에 다양하게 적용될 수 있다.
네트워크부(130)는 임의의 시스템 혹은 임의의 클라이언트 등과의 유무선 통신을 통해, 프로세서(110)가 연산을 수행하는데 필요한 데이터를 수신할 수 있다. 또한, 네트워크부(130)는 임의의 시스템 혹은 임의의 클라이언트 등과의 유무선 통신을 통해, 프로세서(110)의 연산을 통해 생성된 데이터를 송신할 수 있다. 예를 들어, 네트워크부(130)는 병원 환경 또는 심전도 판독센터터 내 데이터베이스, 심전도 데이터를 포함한 의료 데이터의 표준화 등의 작업을 수행하는 클라우드 서버, 혹은 컴퓨팅 장치 등과의 통신을 통해 의료 데이터를 수신할 수 있다. 네트워크부(130)는 전술한 데이터베이스, 서버, 혹은 컴퓨팅 장치 등과의 통신을 통해, 신경망 모델의 출력 데이터, 및 프로세서(110)의 연산 과정에서 도출되는 중간 데이터, 가공 데이터 등을 송신할 수 있다.
도 2는 본 개시의 일 실시예에 따른 시스템의 블록도이다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 시스템은 인공지능 모델의 업데이트를 위한 연산 프로세스를 처리하는 컴퓨팅 장치(100)와, 컴퓨팅 장치(100)와 소통을 통해 컴퓨팅 장치(100)가 처리하는 연산 프로세스를 보조하는 복수의 클라이언트들(210, 220, 230)을 포함할 수 있다. 도 2에서 클라이언트들(210, 220, 230)은 컴퓨팅 장치(100)와 독립된 개체로 표현되어 있으나, 클라이언트들(210, 220, 230)은 컴퓨팅 장치(100)에 포함된 일 구성일 수도 있다.
컴퓨팅 장치(100)는 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여 심전도 데이터의 상대적 가치를 분류한다. 이러한 컴퓨팅 장치(100)는 제1 가치 판단을 위해 제1 가치 분석 과정을 수행하는 오답 추출 모듈, 제2 가치 판단을 위해 제2 가치 분석 과정을 수행하는 환자 추출 모듈, 및 제3 가치 판단을 위해 제3 가치 분석 과정을 수행하는 특성 태깅 모듈을 포함할 수 있다. 제1 가치 분석 과정, 제2 가치 분석 과정 및 제3 가치 분석 과정은 이하 도 5 내지 도 7에서 설명한다.
상술한 각 모듈들은 본 발명을 설명하기 위한 일 실시예일 뿐, 이에 한정되지 않고 다양한 변형으로 구현될 수 있다. 또한, 상술한 모듈들은 프로세서(110)에 의해 제어될 수 있는 컴퓨터로 판독 가능한 기록매체로서 메모리(120)에 저장된다. 또한, 상술한 모듈들의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있으며, 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 셋 또는 프로세스를 포함할 수 있다.
제1 클라이언트(210)는 심전도 판독 서비스를 위해 획득된 심전도 데이터에 대한 검수 및 라벨링을 위한 전문가들(예를 들어, 데이터 라벨러 및 판독자 등)로 구성된 클라이언트로 이해될 수 있다.
제2 클라이언트(220)는 새로운 인공지능 기술 개발 및 데이터 분석을 통해 기 구축된 인공지능 모델의 고도화(fine-tuning) 방안에 대한 연구 및 설계를 실제 수행하는 개발자 집단(AI 전문가 등)으로 구성된 클라이언트로 이해될 수 있다.
제3 클라이언트(230)는 서비스 타입에 따라 정해진 기준에 만족하는 인공지능 모델 중 최고의 성능을 보이는 모델을 배포하고, 인공지능 모델의 업데이트를 위한 업무를 담당하는 심전도 판독 서비스의 운영자로 구성된 클라이언트로 이해될 수 있다.
도 3은 본 개시의 일 실시예에 따라 심전도 판독을 위한 인공지능 모델의 업데이트 방법을 보여주는 순서도이고, 도 4는 본 개시의 일 실시예에 따라 심전도 판독 서비스용 모델을 선택하는 과정을 설명하는 도면이다.
도 3을 참조하면, 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치(100)에 의해 수행되는 심전도 판독을 위한 인공지능 모델의 업데이트 방법으로서, 먼저 원시 심전도 데이터를 획득하는 단계(S100)가 수행될 수 있다.
심전도 데이터는 심전도 측정 기기를 통해 측정된 것이 직접적으로 획득되거나, 심전도 측정 기기로부터 네트워크 통신을 통해 획득될 수 있다. 구체적으로, 심전도 데이터는 신체의 특정 표면에 배치된 여러 전극을 통해 획득되고, 전극들 간의 전압을 측정하여 심장 상태가 평가되도록 한다.
심전도 측정 기기는 사용자 신체에 착용되어 심박수, 체지방률, 혈압 등 다양한 건강지표를 측정하여 수집할 수 있는 웨어러블 디바이스, 심전도 키오스크 등 심전도 측정이 가능한 다양한 기기를 사용할 수 있다. 이때, 심전도 측정 기기는 손목 시계형이나 패치 등과 같은 웨어러블 디바이스를 이용한 단유도 방식뿐만 아니라, 12유도 방식, 6유도 방식 등 다양한 전극 조합을 이용하여 심전도를 측정할 수 있다. 심전도 측정 시간 또한 얻고자 하는 신호에 따라 가감되어 설정되는 것이 바람직하다.
일반적으로, 표준 심전도 측정 방식은 12개의 리드(채널)로 구성되며, 각 리드는 특정 전위차를 측정하는 것이지만, 환자가 의료 시설에서 피부에 최소 10개의 전극을 부착해야 하기 때문에 12개 리드를 모두 유지하는 것은 사실상 어렵기 때문에 실제로 많은 의료인과 심장 전문의는 축소 채널 시스템을 활용하고 있다.
컴퓨팅 장치(100)는 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 심전도 데이터의 상대적 가치를 분류한다(S200).
컴퓨팅 장치(100)는 상대적 가치가 분류된 심전도 데이터들을 조합하여 학습 데이터를 생성하고(S300), 이렇게 생성된 학습 데이터를 이용하여 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시킬 수 있다(S400). 학습 데이터는 심전도 데이터를 입력 데이터로 하고, 해당 심전도 데이터에 대한 심전도 판독 결과 데이터를 라벨 데이터로 하여, 입력 데이터와 라벨 데이터의 쌍으로 가공된 것일 수 있다. 여기서, 심전도 판독 결과 데이터는 전문가 단말에 의한 전문가 판독 정보와 인공지능 모델을 통한 심전도 판독 정보를 포함할 수 있다.
또한 상기 재학습 또는 학습 단계(S400)는 제1 머신러닝 모델 및 제2 머신러닝 모델로 심전도 데이터와 함께 나이, 성별, 체중, 신장 중 적어도 하나를 포함하는 생물학적 데이터를 심장질환의 특성에 영향을 미치는 변수로 입력하여, 생물학적 데이터와 심장 질환 간의 상관관계에 기초하여 학습되도록 하는 단계를 더 포함할 수 있다.
컴퓨팅 장치(100)는 재학습이 완료된 제1 머신러닝 모델 또는 학습이 완료된 제2 머신러닝 모델들의 출력 정확도를 비교하고(S500), 가장 높은 출력 정확도를 갖는 머신러닝 모델을 심전도 판독 서비스용 모델로 선택할 수 있도록 한다(S600).
도 4에 도시된 바와 같이, 컴퓨팅 장치(100)는 기존에 누적된 심전도 데이터(A), 상대적 가치가 높다고 분류된 심전도 데이터를 제1 그룹(B1), 상대적 가치가 낮다고 분류된 심전도 데이터를 제2 그룹(B2)으로 설정할 수 있다. 컴퓨팅 장치(100)는 상대적 가치의 기준 가치 범위에 따라 각 그룹을 세분화하거나 새로운 그룹을 추가할 수도 있다.
일반적으로, 병원의 규모가 1차병원(동네 의원), 2차병원(준종합병원), 3차병원(대학병원)과 같이 다양하고, 환자의 종류(산모, 소아, 성인, 심장환자, 수술 전 환자, 성형외과 환자)도 또한 다양하다. 따라서, 컴퓨팅 장치(100)는 인공지능 모델의 서비스를 요청한 병원의 상황에 맞게 B1-1(의원 용), B1-2(종합병원 용), B1-3(성형외과 용)과 같이 추가 데이터를 설정하여 인공지능 모델을 제공할 수 있어, 각 병원 별 맞춤형 인공지능 모델의 개발 및 맞춤형 심전도 판독 서비스를 제공할 수 있다.
이와 같이, 제2 클라이언트(220)는 다양한 학습 방식과 다양한 설정값을 이용하여 적어도 하나 이상의 인공지능 모델을 개발하여 제공할 수 있다. 여기서, 제2 클라이언트(220)는 컴퓨팅 장치(100)와 독립된 개체이거나, 컴퓨팅 장치(100)에 포함된 일 구성일 수도 있다.
일례로, 제2 클라이언트(220)는 기 구축된 제1 머신러닝 모델과 동일한 구조를 갖는 인공지능을 기본 모델로 설정하고, 기본 모델을 이용하여 서로 다른 학습 데이터로 학습시킨 새로운 제2 머신러닝 모델, 즉 모델1, 모델2, 모델3 등을 생성할 수 있다. 이때, 학습 데이터는 복수의 학습 방식과 제1 그룹 및 그룹의 학습 데이터를 조합해서 나올 수 있는 모든 경우의 수로 만든 데이터셋이 될 수 있다.
여기서, 학습 방식에는 전체 학습 방식과 추가 학습 방식을 포함할 수 있고, 학습 데이터에는 데이터A, 데이터B1, 데이터B2를 포함할 수 있다. 따라서, 학습 방식의 조합 수와 학습 데이터의 조합의 수를 이용하면 14개의 데이터셋이 생성될 수 있다. 전체 학습 방식은 학습되지 않은 인공지능 모델에 기존 데이터(A)와 추가로 생성된 심전도 데이터(B1+B2)를 한꺼번에 넣고 학습하는 것이고, 추가 학습 방식은 기존 데이터(A)로 학습이 완료된 인공지능 모델에 추가 생성된 심전도 데이터(B1 or B2)를 추가하여 부분적으로 학습하는 것일 수 있다.
따라서, 제2 클라이언트(220)는 14개의 데이터셋을 이용하여 14개의 머신러닝 모델을 생성할 수 있고, 14개의 머신러닝 모델 각각을 학습 데이터셋을 이용하여 학습시킬 수 있다.
컴퓨팅 장치(100)는 14개의 머신러닝 모델의 학습이 완료되면, 검증 데이터를 이용하여 각 머신러닝 모델에 대한 출력 정확도를 추출한다. 예를 들어, 모델1의 출력 정확도가 94%이고, 모델 2의 출력 정확도가 89%이며, 모델3의 출력 정확도가 87%이고, 모델4의 출력 정확도가 91%라고 가정하면, 컴퓨팅 장치(100)는 심전도 판독 서비스용 모델로 모델1을 선택할 수 있다.
이때, 컴퓨팅 장치(100)는 알람 기능을 통해 제3 클라이언트(230), 즉 심전도 판독 서비스의 운영자가 심전도 판독 서비스용 모델을 업데이트 할 수 있도록 가장 높은 출력 정확도를 갖는 머신러닝 모델에 대한 정보를 포함하는 알람 기능을 제공할 수 있다.
심전도 판독 서비스용 모델의 선택은 기 설정된 선택 발동 조건을 만족하는 경우 수행되는데, 선택 발동 조건은 출력 정확도가 제1 기준을 초과하는 머신러닝 모델들의 수가 제2 기준을 초과하는 경우, 또는 질병이 있는 것으로 판단된 심전도 데이터의 수가 제3 기준을 초과하는 경우 중 어느 하나가 될 수 있다.
제3 클라이언트(230)는 기 구축된 제1 머신러닝 모델을 대체할 새로운 제2 머신러닝 모델을 선택할 경우, 기 설정된 시간을 기준으로 결정하는 것이 아니라, 선택 발동 조건을 만족하는 경우에 새로운 제2 머신러닝 모델을 선택할 수 있다.
이를 위해, 컴퓨팅 장치(100)는 새롭게 생성되는 학습 데이터로 꾸준히 학습이 진행된 모델들 중에서, 출력 정확도가 제1 기준을 넘는 머신러닝 모델의 수가 제2 기준을 초과하는 경우에 알람 정보를 제공할 수 있고, 질병이 있는 것으로 판단된 심전도 데이터의 수가 제3 기준을 초과하는 경우에 알람 정보를 제공할 수 있다. 컴퓨팅 장치(100)는 기 구축된 머신러닝 모델들과 새로운 머신러닝 모델들 중 어느 하나를 선택할 수 있도록 가장 높은 출력 정확도를 갖는 머신러닝 모델에 대한 정보를 알람 정보에 포함시킬 수 있다.
도 5는 본 개시의 일 실시예에 따라 제1 가치 분석 과정의 수행 과정을 설명하는 순서도이다.
구체적으로, 도 5는 도 3의 S200단계의 일 실시예를 더욱 구체적으로 나타낸 것이다. 심전도 데이터에 대한 상대적 가치를 분류하는 단계(S200)는 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용할 수 있다. 도 5에서는 심전도 데이터를 전문가의 심층 판독을 위한 전문가 단말에서 판독한 전문가 판독 정보와 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보를 비교하여 심전도 데이터의 가치를 판단하는 제1 가치판단을 이용하여 상대적 가치를 분류하는 제1 가치 분석 과정(S210)을 설명한다.
제1 가치 분석 과정(S210)에서, 컴퓨팅 장치(100)는 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보가 오답인지 여부를 판단한다(S211). 만일, 컴퓨팅 장치(100)는 심전도 판독 정보가 오답인 경우, 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류한다(S212).
컴퓨팅 장치(100)는 심전도 판독 정보가 오답이 아니고, 심전도 데이터에 포함된 노이즈 신호 또는 결측치로 인한 오류 신호로 인해 심전도 판독이 불가능한 상태가 아닌 경우(S213), 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류한다(S214).
즉, 제 1 머신러닝 모델이 판독한 심전도 판독 정보가 오답인 데이터의 가치는 제 1 머신러닝 모델이 판독한 심전도 판독 정보가 오답이 아닌 데이터에 비해서 모델의 정확도를 높이고 모델 자체를 고도화 할 만한 가치가 높은 데이터로 이해될 수 있다.
이때, 컴퓨팅 장치(100)는 심전도 판독 정보가 오답이 아니고, 심전도 데이터가 심전도 판독이 불가능한 경우에(S213), 해당 심전도 데이터를 재학습 또는 학습을 위한 용도의 데이터로 사용하지 않기 위해 폐기한다(S215).
도 6은 본 개시의 일 실시예에 따라 제2 가치 분석 과정의 수행 과정을 설명하는 순서도이다.
구체적으로, 도 6은 도 3의 S200단계의 일 실시예를 더욱 구체적으로 나타낸 것으로서, 도 6에서는 심전도 데이터를 측정한 대상의 질병 유무를 분석하여, 심전도 데이터의 가치를 판단하는 제2 가치판단을 이용하여 상대적 가치를 분류하는 제2 가치 분석 과정(S220)을 설명한다.
제2 가치 분석 과정(S220)에서, 컴퓨팅 장치(100)는 전문가 단말로부터 심전도 데이터에 대한 전문가 판독 정보를 획득하고(S221), 획득된 전문가 판독 정보에 기반하여 심전도 데이터를 측정한 대상이 질병이 있는지를 판단한다(S222). 컴퓨팅 장치(100)는 심전도 데이터를 측정한 대상이 질병이 있는 경우에 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고(S223), 심전도 데이터를 측정한 대상이 질병이 없다고 판단된 경우에 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류한다(S224).
도 7은 본 개시의 일 실시예에 따라 제3가치 분석 과정의 수행 과정을 설명하는 순서도이다.
구체적으로, 도 7은 도 3의 S200단계의 일 실시예를 더욱 구체적으로 나타낸 것으로서, 도 7에서는 심전도 데이터에 포함된 태그를 기준으로 심전도 데이터의 가치를 판단하는 제3 가치판단을 이용하여 상대적 가치를 분류하는 제3 가치 분석 과정(S230)을 설명한다.
제3 가치 분석 과정(S230)에서, 컴퓨팅 장치(100)는 심전도 데이터에 포함된 태그를 분석하기 위한 태그 인터페이스를 통해 심전도 데이터에서 태그를 추출한다(S231).
컴퓨팅 장치(100)는 추출된 태그에 기반하여, 병원의 규모, 병원의 종류,환자의 종류 또는 심전도 측정기기의 종류 중 적어도 하나의 태깅된 정보를 인식한다(S232).
컴퓨팅 장치(100)는 태깅된 정보에 기초하여 병원 규모가 기 설정된 기준 규모를 충족하거나 환자의 특성이 기 설정된 기준 특성과 일치하는 경우(S233), 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류할 수 있다(S234), 이때, 병원 규모가 기준 규모를 충족한다는 것은, 머신러닝 모델을 사용하려는 병원의 규모와 학습 데이터가 측정된 병원의 규모가 대응된다는 것으로 이해될 수 있다. 그리고, 환자의 특성은, 산모, 중환자, 소아, 성인 등과 같이 의학적으로 진단이나 치료가 구분되는 환자의 종류에 대응되는 것으로 이해될 수 있다. 즉, 환자의 특성이 기 설정된 기준 특성에 일치한다는 것은, 산모, 중환자, 소아, 성인 등과 같은 태그가 정확히 붙어있는지를 확인한다는 것으로 이해될 수 있다. 컴퓨팅 장치(100)는 병원 규모가 기준 규모를 충족하지 않거나 환자의 특성이 기 설정된 기준 특성과 불일치하는 경우에 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류할 수 있다(S235). 여기서, 병원 규모의 기준 규모는 1차 병원이 될 수 있지만, 사용 목적에 따라 다양하게 설정될 수 있다.
한편, 컴퓨팅 장치(100)는 제1 그룹으로 분류된 심전도 데이터를 태깅된 정보의 병원 종류에 따라 기 설정된 비율로 학습 데이터와 검증 데이터로 구분할 수 있다. 일례로, 태깅된 정보에서 병원 종류가 심장질환 전문센터 또는 암 전문센터를 포함하는 심장 관련 전문 병원에 대한 태그를 포함하는 경우에, 해당 심전도 데이터에 대한 검증 데이터의 비율을 학습 데이터의 비율보다 높게 설정할 수 있다. 이러한 구분을 통해 특정 병원의 데이터가 학습에 집중되거나 검증에 집중되는 데이터 편향 문제를 예방할 수 있다.
이와 같이, 본 개시에서는 상대적 가치가 분류된 심전도 데이터를 이용하여 학습 데이터를 생성할 수 있고, 이러한 학습 데이터를 이용하여 업데이트된 인공지능 모델을 사용함으로써 인공지능 모델의 출력 정확도가 높아질 수 있기 때문에 의료진의 심전도 판독 시간을 절약할 수 있으며, 모든 심전도 데이터를 학습 데이터로 사용하는 것이 아닌 신뢰도가 높은 심전도 데이터만을 분류하여 학습데이터로 사용하므로 인공지능의 과부하를 방지할 수 있다.
앞서 설명된 본 개시의 다양한 실시예는 추가 실시예와 결합될 수 있고, 상술한 상세한 설명에 비추어 당업자가 이해 가능한 범주에서 변경될 수 있다. 본 개시의 실시예들은 모든 면에서 예시적인 것이며, 한정적이 아닌 것으로 이해되어야 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다. 따라서, 본 개시의 특허청구범위의 의미, 범위 및 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.

Claims (17)

  1. 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 심전도 판독을 위한 인공지능 모델의 업데이트 방법으로서,
    심전도 데이터를 획득하는 단계;
    상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하는 단계: 및
    상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 단계;
    를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 재학습이 완료된 제1 머신러닝 모델 또는 상기 학습이 완료된 제2 머신러닝 모델들의 출력 정확도를 비교하여, 가장 높은 출력 정확도를 갖는 머신러닝 모델을 심전도 판독 서비스용 모델로 선택하는 단계;
    를 더 포함하는,
    방법.
  3. 제2항에 있어서,
    심전도 판독 서비스의 운영자가 상기 심전도 판독 서비스용 모델을 업데이트 할 수 있도록, 상기 가장 높은 출력 정확도를 갖는 머신러닝 모델에 대한 정보를 포함하는 알람 기능을 제공하는 단계;
    를 더 포함하는,
    방법.
  4. 제2항에 있어서,
    상기 심전도 판독 서비스용 모델의 선택은,
    기 설정된 선택 발동 조건을 만족하는 경우 수행되는 것인,
    방법.
  5. 제4항에 있어서,
    상기 선택 발동 조건은,
    상기 출력 정확도가 제1 기준을 초과하는 머신러닝 모델들의 수가 제2 기준을 초과하는 경우, 또는 질병이 있는 것으로 판단된 심전도 데이터의 수가 제3 기준을 초과하는 경우 중 어느 하나인 것인,
    방법.
  6. 제1항에 있어서,
    상기 제1 가치 판단은,
    상기 심전도 데이터를 전문가 단말에서 판독한 전문가 판독 정보와 상기 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보를 비교하여 상기 심전도 데이터의 가치를 판단하는 제1 가치 분석 과정;
    을 포함하는,
    방법.
  7. 제6항에 있어서,
    상기 제1 가치 분석 과정은,
    상기 제1 머신러닝 모델을 통해 판독한 심전도 판독 정보가 오답인지 여부를 판단하는 과정; 및
    상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정;
    을 포함하는
    방법.
  8. 제7항에 있어서,
    상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정은,
    상기 심전도 판독 정보가 오답인 경우, 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고,
    상기 심전도 판독 정보가 오답이 아닌 경우, 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것인,
    방법.
  9. 제8항에 있어서,
    상기 심전도 판독 정보의 오답 여부에 따라 상기 심전도 데이터의 상대적 가치를 분류하는 과정은,
    상기 심전도 판독 정보가 오답이 아니고, 상기 심전도 데이터에 포함된 노이즈 신호 또는 결측치로 인한 오류 신호로 인해 심전도 판독이 불가능한 경우, 상기 심전도 데이터를 재학습 또는 학습을 위한 용도의 데이터로 사용하지 않기 위해 폐기하는 것인,
    방법.
  10. 제1항에 있어서,
    상기 제2 가치 판단은,
    상기 심전도 데이터를 측정한 대상의 질병 유무를 분석하여, 상기 심전도 데이터의 가치를 판단하는 제2 가치 분석 과정;
    을 포함하는,
    방법.
  11. 제10항에 있어서,
    상기 제2 가치 분석 과정은,
    전문가 단말에서 판독한 전문가 판독 정보에 기반하여, 상기 심전도 데이터를 측정한 대상이 질병이 있다고 판단된 경우, 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고,
    상기 심전도 데이터를 측정한 대상이 질병이 없다고 판단된 경우에 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것인,
    방법.
  12. 제1항에 있어서,
    상기 제3 가치 판단은,
    상기 심전도 데이터에 포함된 태그를 기준으로 상기 심전도 데이터의 가치를 판단하는 제3 가치 분석 과정;
    을 포함하는,
    방법.
  13. 제12항에 있어서,
    상기 제3 가치 분석 과정은,
    상기 심전도 데이터에 포함된 태그를 분석하기 위한 태그 인터페이스를 통해 상기 심전도 데이터에서 태그를 추출하는 과정;
    상기 추출된 태그에 기반하여, 병원의 규모, 병원의 종류, 환자의 종류 또는 심전도 측정기기의 종류 중 적어도 하나의 태깅된 정보를 인식하는 과정; 및
    상기 인식된 정보를 기초로, 상기 심전도 데이터의 상대적 가치를 분류하는 과정;
    을 포함하는,
    방법.
  14. 제13항에 있어서,
    상기 인식된 정보를 기초로, 상기 심전도 데이터의 상대적 가치를 분류하는 과정은,
    상기 태깅된 정보에 기초하여 병원 규모가 기 설정된 기준 규모를 충족하거나 환자의 특성이 기 설정된 기준 특성과 일치하는 경우에 상기 심전도 데이터를 상대적 가치가 높은 제1 그룹으로 분류하고,
    병원 규모가 상기 기준 규모를 충족하지 않거나 환자의 특성이 기 설정된 기준 특성과 불일치하는 경우에 상기 심전도 데이터를 상대적 가치가 낮은 제2 그룹으로 분류하는 것인,
    방법.
  15. 제14항에 있어서,
    상기 제1 그룹으로 분류된 심전도 데이터는,
    상기 태깅된 정보의 병원 종류에 따라 기 설정된 비율로 학습 데이터와 검증 데이터로 구분하는 것인,
    방법.
  16. 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램(program)으로서, 상기 컴퓨터 프로그램은 하나 이상의 프로세서(processor)에서 실행되는 경우, 심전도 판독을 위한 인공지능 모델의 업데이트 하기 위한 동작들을 수행하도록 하며,
    상기 동작들은,
    심전도 데이터를 획득하는 동작;
    상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하는 동작: 및
    상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는 동작;
    을 포함하는,
    컴퓨터 프로그램.
  17. 심전도 판독을 위한 인공지능 모델의 업데이트 방법을 위한 컴퓨팅 장치로서,
    적어도 하나의 코어(core)를 포함하는 프로세서(processor); 및
    상기 프로세서에서 실행 가능한 프로그램 코드(code)들을 포함하는 메모리(memory);
    를 포함하고,
    상기 프로세서는, 상기 프로그램 코드의 실행에 따라,
    심전도 데이터를 획득하고,
    상기 심전도 데이터를 분석하여 기 설정된 기준 가치 범위에 따른 제1 가치 판단, 제2 가치 판단 또는 제3 가치 판단 중 적어도 하나를 이용하여, 상기 심전도 데이터의 상대적 가치를 분류하며,
    상기 상대적 가치가 분류된 심전도 데이터들을 조합해서, 기 구축된 제1 머신러닝 모델을 재학습시키거나, 적어도 하나의 새로운 제2 머신러닝 모델을 학습시키는,
    장치.
KR1020230097255A 2022-07-29 2023-07-26 심전도 판독을 위한 인공지능 모델의 업데이트 방법,프로그램 및 장치 KR20240017321A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2023/010883 WO2024025350A1 (ko) 2022-07-29 2023-07-27 심전도 판독을 위한 인공지능 모델의 업데이트 방법, 프로그램 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220094606 2022-07-29
KR20220094606 2022-07-29

Publications (1)

Publication Number Publication Date
KR20240017321A true KR20240017321A (ko) 2024-02-07

Family

ID=89873124

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230097255A KR20240017321A (ko) 2022-07-29 2023-07-26 심전도 판독을 위한 인공지능 모델의 업데이트 방법,프로그램 및 장치

Country Status (1)

Country Link
KR (1) KR20240017321A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100750886B1 (ko) 2005-12-09 2007-08-22 한국전자통신연구원 학습 데이터 구축 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100750886B1 (ko) 2005-12-09 2007-08-22 한국전자통신연구원 학습 데이터 구축 장치 및 방법

Similar Documents

Publication Publication Date Title
US11694123B2 (en) Computer based object detection within a video or image
CN110459328B (zh) 临床监护设备
JP2020536623A (ja) モバイルデバイスを用いたユーザの健康の連続的監視
US20220254492A1 (en) System and method for automated detection of clinical outcome measures
JP2020042598A (ja) 生体信号データからの個体特徴分離による状態予測方法および装置
US20230420132A1 (en) Noninvasive heart failure detection
CN111951965A (zh) 基于时序知识图谱的全景式健康动态监测与预测系统
US20220351374A1 (en) Method and System for Simultaneous Classification and Regression of Clinical Data
CN112542242A (zh) 数据转换/症状评分
CN115024725A (zh) 融合心理状态多参数检测的肿瘤治疗辅助决策系统
Roostaee et al. Diagnosis of heart disease based on meta heuristic algorithms and clustering methods
US20210361217A1 (en) Ecg-based age and sex estimation
Sharma et al. Classification of heart disease from MRI images using convolutional neural network
KR20240017321A (ko) 심전도 판독을 위한 인공지능 모델의 업데이트 방법,프로그램 및 장치
WO2024025350A1 (ko) 심전도 판독을 위한 인공지능 모델의 업데이트 방법, 프로그램 및 장치
COŞKUN et al. Evaluation of performance of classification algorithms in prediction of heart failure disease
CN110786847B (zh) 心电信号的建库方法和分析方法
Ganesh et al. Diabetes Prediction using Logistic Regression and Feature Normalization
Manivannan et al. Health monitoring system for diabetic patients
KR20240013676A (ko) 심전도를 이용한 심근경색 진단 방법, 프로그램 및장치
Madhuri et al. Novel Internet of Things Based Disease Diagnosis Framework for Smart Healthcare Schemes using Combined Optimized Artificial Intelligence Approach
Das et al. BayesBeat: A Bayesian deep learning approach for atrial fibrillation detection from noisy photoplethysmography data
KR20240013674A (ko) 심전도를 이용한 건강 상태의 예측 방법, 프로그램및 장치
Jain Deep Transfer Learning Approach for Obstructive Sleep Apnea Classification with Photoplethysmography Signal
WO2023053177A1 (ja) アセスメント評価装置、アセスメント支援方法及び記憶媒体