[go: up one dir, main page]

KR102684410B1 - Apparatus for Generating Arrhythmia by using Diffusion Model - Google Patents

Apparatus for Generating Arrhythmia by using Diffusion Model Download PDF

Info

Publication number
KR102684410B1
KR102684410B1 KR1020230144441A KR20230144441A KR102684410B1 KR 102684410 B1 KR102684410 B1 KR 102684410B1 KR 1020230144441 A KR1020230144441 A KR 1020230144441A KR 20230144441 A KR20230144441 A KR 20230144441A KR 102684410 B1 KR102684410 B1 KR 102684410B1
Authority
KR
South Korea
Prior art keywords
arrhythmia
data
noise
diffusion
section
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020230144441A
Other languages
Korean (ko)
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 KR1020230144441A priority Critical patent/KR102684410B1/en
Application granted granted Critical
Publication of KR102684410B1 publication Critical patent/KR102684410B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • 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/7203Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal
    • 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
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • 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/7271Specific aspects of physiological measurement analysis
    • A61B5/7275Determining trends in physiological measurement data; Predicting development of a medical condition based on physiological measurements, e.g. determining a risk factor
    • 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

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Artificial Intelligence (AREA)
  • Pathology (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Surgery (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Veterinary Medicine (AREA)
  • Animal Behavior & Ethology (AREA)
  • Molecular Biology (AREA)
  • Signal Processing (AREA)
  • Biophysics (AREA)
  • Psychiatry (AREA)
  • Physiology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Cardiology (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

디퓨전 모델을 이용한 부정맥 생성장치를 개시한다.
본 실시예는 입력신호를 대입 대상 구간과 복수의 증상에 따른 조건부 관측 구간으로 구분하고, 훈련을 필요로하는 대입 대상 구간을 마스킹하고, 마스킹 부분에 노이즈를 발생시킨 후 나머지 구간이 조건부 관측 구간과 결합한 상태에서 노이즈를 제거하여 추가 노이즈 예측을 수행하는 과정을 학습하여 부정맥 생성 모델을 생성하고, 부정맥 생성 모델에 개인별로 특화된 입력 데이터와 함께 만들고자 하는 급성 심전도 질환을 입력하여 급성 심전도 질환에 대한 출력값을 얻을 수 있도록 하는 디퓨전 모델을 이용한 부정맥 생성장치를 제공한다.
Disclosed is an arrhythmia generating device using a diffusion model.
In this embodiment, the input signal is divided into a substitution target section and a conditional observation section according to a plurality of symptoms, the substitution target section requiring training is masked, and noise is generated in the masking portion, and then the remaining sections are divided into the conditional observation section and the conditional observation section. In the combined state, the process of removing noise and performing additional noise prediction is learned to create an arrhythmia generation model. By entering the acute ECG disease to be created along with individual-specific input data into the arrhythmia generation model, the output value for the acute ECG disease is generated. We provide an arrhythmia generating device using a diffusion model that allows the acquisition of arrhythmia.

Description

디퓨전 모델을 이용한 부정맥 생성장치{Apparatus for Generating Arrhythmia by using Diffusion Model}Arrhythmia generating device using diffusion model {Apparatus for Generating Arrhythmia by using Diffusion Model}

본 발명의 일 실시예는 디퓨전 모델을 이용한 부정맥 생성장치에 관한 것이다. One embodiment of the present invention relates to an arrhythmia generating device using a diffusion model.

이하에 기술되는 내용은 단순히 본 실시예와 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아니다.The content described below simply provides background information related to this embodiment and does not constitute prior art.

의료진의 심전도 분석을 도와주는 심전도 판독 시스템이 개발되어 있다. 종래의 심전도 판독 시스템은 파형의 R, P, T 피크(Peak)를 검출하고 있으며, 규칙기반으로 부정맥 검출하고 분류한다.An electrocardiogram reading system has been developed to help medical staff analyze electrocardiograms. Conventional electrocardiogram reading systems detect the R, P, and T peaks of the waveform, and detect and classify arrhythmia based on rules.

종래의 심전도 판독 시스템은 환자의 전체 심전도 신호 데이터를 받아 분석하여 그 결과를 출력한다. 딥러닝 기술은 기존 방법들에 비해 정확성이 높기 때문에 심전도 판독 알고리즘으로 최근 많이 연구되고 있다.A conventional electrocardiogram reading system receives the patient's entire electrocardiogram signal data, analyzes it, and outputs the results. Deep learning technology has recently been widely studied as an electrocardiogram reading algorithm because it has higher accuracy than existing methods.

심전도를 이용한 부정맥 판단은 일정 자격을 갖춘 의료진만이 할 수 있지만 수요에 비해 인력이 부족한 현실이다. 심전도 판독 시 P, QRS, T 파형의 모양과 구간 간에 시간 차 계산, 심전도 리듬에 대한 분석 등 심전도 신호를 다양한 시각에서 판독해야 하기 때문에 시간이 많이 소요된다. 병상 환자의 심전도는 의료진이 실시간으로 관측하여 환자의 상태를 주시해야 하지만, 인력부족으로 인해 지속적인 모니터링이 힘들다. 심전도 분석은 환자의 생명과 직결되기 때문에 정확해야 하고 응급환자 발생 시에는 빠르게 동작되어야 한다. Only qualified medical staff can determine arrhythmia using an electrocardiogram, but the reality is that there is a shortage of manpower compared to demand. When reading an ECG, it takes a lot of time because the ECG signal must be read from various perspectives, such as calculating the time difference between the shapes and sections of the P, QRS, and T waveforms, and analyzing the ECG rhythm. Medical staff must observe the patient's electrocardiogram in real time to keep an eye on the patient's condition, but continuous monitoring is difficult due to a lack of manpower. Since electrocardiogram analysis is directly related to the patient's life, it must be accurate and operate quickly in the event of an emergency.

종래의 심전도 분석은 P, QRS, T 파형 구간의 끝점, 시작점 등을 이용하는 경우도 있지만 종래의 기술은 피크(Peak)만을 찾아 그 활용도가 떨어진다. 부정맥 검출 및 분류 시 규칙기반의 알고리즘 설계는 파형의 다양성 때문에 정확도가 떨어지고, 부정맥의 추가 시 새로운 규칙기반 알고리즘을 설계해야 한다.Conventional electrocardiogram analysis sometimes uses the end and start points of the P, QRS, and T waveform sections, but the conventional technology only searches for peaks, which reduces its utility. When detecting and classifying arrhythmia, rule-based algorithm design is less accurate due to the diversity of waveforms, and when arrhythmia is added, a new rule-based algorithm must be designed.

종래의 부정맥 생성 알고리즘은 GAN(Generative Adversarial Network) 기반으로 제안 및 개발되었다. The conventional arrhythmia generation algorithm was proposed and developed based on GAN (Generative Adversarial Network).

GAN 기반의 부정맥 생성 알고리즘은 입력과 매우 유사한 특징을 추출할 수 있다. GAN 기반의 부정맥 생성 알고리즘은 입력된 데이터와 유사한 데이터만 출력할 때, 2차 분류/예측 모델에서 입력된 패턴만 정확하게 분류/예측할 수 있다. 하지만, GAN 기반의 부정맥 생성 알고리즘은 부정맥의 세부 분류 안에서도 다양한 조건을 수반한 부정맥이 나타날 수 있어 다양한 조건을 학습하는 것이 중요하다.The GAN-based arrhythmia generation algorithm can extract features that are very similar to the input. When the GAN-based arrhythmia generation algorithm outputs only data similar to the input data, it can accurately classify/predict only the input pattern in the secondary classification/prediction model. However, in the GAN-based arrhythmia generation algorithm, it is important to learn various conditions because arrhythmia accompanied by various conditions may appear even within the detailed classification of arrhythmia.

GAN 기반의 부정맥 생성 알고리즘은 모델의 안정성이 떨어져, 하이퍼파라미터와 같은 모델 내 세부지표들을 잘 조절해야 원하는 형태의 출력물을 얻을 수 있다는 문제가 있다.
선행기술문헌 : 한국공개특허공보 제10-2022-0127680호(2022년 9월 20일 공개)
The GAN-based arrhythmia generation algorithm has a problem in that the stability of the model is low, and detailed indicators within the model, such as hyperparameters, must be carefully adjusted to obtain the desired output.
Prior art document: Korea Patent Publication No. 10-2022-0127680 (published on September 20, 2022)

본 실시예는 입력신호를 대입 대상 구간과 복수의 증상에 따른 조건부 관측 구간으로 구분하고, 훈련을 필요로하는 대입 대상 구간을 마스킹하고, 마스킹 부분에 노이즈를 발생시킨 후 나머지 구간이 조건부 관측 구간과 결합한 상태에서 노이즈를 제거하여 추가 노이즈 예측을 수행하는 과정을 학습하여 부정맥 생성 모델을 생성하고, 부정맥 생성 모델에 개인별로 특화된 입력 데이터와 함께 만들고자 하는 급성 심전도 질환을 입력하여 급성 심전도 질환에 대한 출력값을 얻을 수 있도록 하는 디퓨전 모델을 이용한 부정맥 생성장치를 제공하는 데 목적이 있다.In this embodiment, the input signal is divided into a substitution target section and a conditional observation section according to a plurality of symptoms, the substitution target section requiring training is masked, and noise is generated in the masking portion, and then the remaining sections are divided into the conditional observation section and the conditional observation section. In the combined state, the process of removing noise and performing additional noise prediction is learned to create an arrhythmia generation model. By entering the acute ECG disease to be created along with individual-specific input data into the arrhythmia generation model, the output value for the acute ECG disease is generated. The purpose is to provide an arrhythmia generating device using a diffusion model that can be obtained.

본 실시예의 일 측면에 의하면, 기 설정된 윈도우 중 특정 시간 단위별로 심전도 데이터를 입력받는 데이터 입력부; 상기 심전도 데이터를 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간으로 구분하는 데이터 구분부; 상기 대입 대상 구간을 마스킹한 마스킹 데이터를 생성하는 마스킹부; 상기 대입 대상 구간에 노이즈를 추가하는 디퓨전 프로세스(Diffusion process)와 상기 노이즈를 제거하여 원본으로 복원하는 리버스 프로세스(Reverse process)를 수행하면서 부정맥 패턴을 학습한 결과를 기반으로 디퓨전 임베딩 특징을 추출하는 디퓨전 임베딩부; 상기 디퓨전 임베딩 특징과 상기 마스킹 데이터를 기반으로 새롭게 입력된 입력 데이터에 대응하는 부정맥 형태를 포함하는 부정맥 데이터를 생성하는 부정맥 데이터 생성부;를 포함하는 것을 특징으로 하는 부정맥 생성장치를 제공한다.According to one aspect of the present embodiment, a data input unit that receives electrocardiogram data for each specific time unit among preset windows; a data dividing unit that divides the electrocardiogram data into an imputation target section and a conditional observation section according to a plurality of symptoms; a masking unit that generates masking data that masks the substitution target section; Diffusion, which extracts diffusion embedding features based on the results of learning the arrhythmia pattern while performing a diffusion process that adds noise to the substitution target section and a reverse process that removes the noise and restores the original. Embedding part; An arrhythmia data generator that generates arrhythmia data including an arrhythmia pattern corresponding to newly input input data based on the diffusion embedding feature and the masking data.

이상에서 설명한 바와 같이 본 실시예에 의하면, 입력신호를 대입 대상 구간과 복수의 증상에 따른 조건부 관측 구간으로 구분하고, 훈련을 필요로하는 대입 대상 구간을 마스킹하고, 마스킹 부분에 노이즈를 발생시킨 후 나머지 구간이 조건부 관측 구간과 결합한 상태에서 노이즈를 제거하여 추가 노이즈 예측을 수행하는 과정을 학습하여 부정맥 생성 모델을 생성하고, 부정맥 생성 모델에 개인별로 특화된 입력 데이터와 함께 만들고자 하는 급성 심전도 질환을 입력하여 급성 심전도 질환에 대한 출력값을 얻을 수 있는 효과가 있다.As described above, according to this embodiment, the input signal is divided into a substitution target section and a conditional observation section according to a plurality of symptoms, the substitution target section requiring training is masked, and noise is generated in the masking portion. Create an arrhythmia generation model by learning the process of removing noise and performing additional noise prediction while the remaining section is combined with the conditional observation section, and input the acute electrocardiogram disease you want to create along with individually specialized input data into the arrhythmia generation model. It is effective in obtaining output values for acute electrocardiogram disease.

본 실시예에 의하면, 급성 심전도 질환을 학습하기 위한 데이터 수집에 소요되는 시간과 비용 감소시킬 수 있으며, 데이터 수집을 위한 임상연구에 투입되는 비용을 절감할 수 있는 효과가 있다.According to this embodiment, it is possible to reduce the time and cost required to collect data for learning about acute electrocardiogram disease, and has the effect of reducing the cost invested in clinical research for data collection.

도 1은 본 실시예에 따른 바이오 신호 처리 분야에서 생체 신호 데이터 처리를 나타낸 도면이다.
도 2는 본 실시예에 따른 P,Q,R,S,T파(P파, QRS복합체, T파)와 심전도의 특징지표를 나타낸 도면이다.
도 3은 본 실시예에 따른 온라인 머신러닝 알고리즘을 이용한 심전도 판독 장치를 나타낸 도면이다.
도 4는 본 실시예에 따른 부정맥 생성전 컨텍스트 추출을 위한 디퓨전 임베딩 과정을 나타낸 도면이다.
도 5는 본 실시예에 따른 심전도 신호 데이터와 디퓨전 임베딩을 이용한 부정맥 생성 과정을 나타난 도면이다.
도 6은 본 실시예에 따른 디퓨전 모델을 이용한 부정맥 생성 방법을 설명하기 위한 순서도이다.
Figure 1 is a diagram showing bio-signal data processing in the bio-signal processing field according to this embodiment.
Figure 2 is a diagram showing characteristic indicators of P, Q, R, S, and T waves (P wave, QRS complex, T wave) and electrocardiogram according to this embodiment.
Figure 3 is a diagram showing an electrocardiogram reading device using an online machine learning algorithm according to this embodiment.
Figure 4 is a diagram showing the diffusion embedding process for context extraction before arrhythmia generation according to this embodiment.
Figure 5 is a diagram showing the arrhythmia generation process using ECG signal data and diffusion embedding according to this embodiment.
Figure 6 is a flowchart for explaining the arrhythmia generation method using the diffusion model according to this embodiment.

이하, 본 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, this embodiment will be described in detail with reference to the attached drawings.

도 1은 본 실시예에 따른 바이오 신호 처리 분야에서 생체 신호 데이터 처리를 나타낸 도면이다.Figure 1 is a diagram showing bio-signal data processing in the bio-signal processing field according to this embodiment.

부정맥 생성장치(300)는 심장 박동(Beat) 시 발생하는 전기 신호를 전류에 의한 파형으로 기록하는 검사로 부정맥, 협심증, 심근경색, 심장비대 등의 심장 질환을 진단하는 심전도 검사를 수행한 결과를 판독하기 위해 학습용으로 필요한 급성 질환 또는 희귀 질환에 대응하는 부정맥 데이터를 생성한다.The arrhythmia generator 300 is a test that records the electrical signal generated when the heart beats as a current waveform. Generate arrhythmia data corresponding to acute or rare diseases needed for learning purposes.

부정맥 생성장치(300)는 심전도 파형의 특징과 시간에 따른 변화를 이해하고, 심전도의 다양한 특징정보를 기반으로 심방세동(Atrial fibrillation, AFIB), 심방조동(Atrial flutter, AFL), 심실빈맥(Ventricular tachycardia, VT), 방실차단(Atrioventricular block, AV block) 등의 다양한 부정맥을 생성한다. The arrhythmia generator 300 understands the characteristics of the electrocardiogram waveform and changes over time, and based on various characteristic information of the electrocardiogram, atrial fibrillation (AFIB), atrial flutter (AFL), and ventricular tachycardia It produces various arrhythmias such as tachycardia (VT) and atrioventricular block (AV block).

도 2는 본 실시예에 따른 P,Q,R,S,T파(P파, QRS복합체, T파)와 심전도의 특징지표를 나타낸 도면이다.Figure 2 is a diagram showing characteristic indicators of P, Q, R, S, and T waves (P wave, QRS complex, T wave) and electrocardiogram according to this embodiment.

심전도 파형은 박동의 연속으로 나타나지며, 박동은 크게 노멀 박동(Normal Beat)(N), 심실상 박동(Supraventricular beat)(S), 심실 박동(Ventricular Beat)(V)으로 나눌 수 있다. 심전도 파형의 한 박동은 기본적으로 P 파형, QRS 파형, T 파형을 포함한다.The electrocardiogram waveform appears as a series of beats, and beats can be broadly divided into normal beat (N), supraventricular beat (S), and ventricular beat (V). One beat of the electrocardiogram waveform basically includes the P wave, QRS wave, and T wave.

부정맥 생성장치(300)는 심전도 파형에 포함된 P 파형, Q 파형, R 파형, S 파형, T 파형을 감지하고, 심전도 파형의 특징과 시간에 따른 변화를 감지하여 심전도의 다양한 특징정보를 기반으로 조건에 맞는 다양한 부정맥을 생성한다.The arrhythmia generator 300 detects the P wave, Q wave, R wave, S wave, and T wave included in the ECG waveform, detects the characteristics of the ECG waveform and changes over time, and generates information based on various characteristic information of the ECG. Generates various arrhythmias suitable for different conditions.

부정맥 생성장치(300)는 심장 박동을 노멀 박동(Normal Beat)(N), 심실상 박동(Supraventricular beat)(S), 심실 박동(Ventricular Beat)(V)으로 분류한다. 부정맥 생성장치(300)는 심전도 파형을 판독할 때, 로컬라이제이션(Localization)과 분류(Classification)정보를 기반으로 이상 상태를 감지할 수 있다.The arrhythmia generator 300 classifies heart beats into Normal Beat (N), Supraventricular Beat (S), and Ventricular Beat (V). When reading an electrocardiogram waveform, the arrhythmia generator 300 can detect an abnormal state based on localization and classification information.

부정맥 생성장치(300)는 심방세동(Atrial fibrillation, AFIB), 심방조동(Atrial flutter, AFL), 심실빈맥(Ventricular tachycardia, VT), 방실차단(Atrioventricular block, AV block) 등의 다양한 부정맥을 분류한다. 부정맥 생성장치(300)는 심전도 율동을 생성할 때, 로컬라이제이션(Localization)과 분류(Classification) 특징 정보를 기반으로 이상 상태를 감지할 있다.The arrhythmia generator 300 classifies various arrhythmias such as atrial fibrillation (AFIB), atrial flutter (AFL), ventricular tachycardia (VT), and atrioventricular block (AV block). . When generating an electrocardiogram rhythm, the arrhythmia generator 300 can detect an abnormal state based on localization and classification feature information.

도 3은 본 실시예에 따른 심전도 판독 장치를 나타낸 도면이다.Figure 3 is a diagram showing an electrocardiogram reading device according to this embodiment.

본 실시예에 따른 부정맥 생성장치(300)는 신호 생성부(310), 전처리부(320), 데이터 입력부(330), 데이터 구분부(340), 마스킹부(350), 디퓨전 임베딩부(360), 부정맥 데이터 생성부(370)를 포함한다. 부정맥 생성장치(300)에 포함된 구성요소는 반드시 이에 한정되는 것은 아니다.The arrhythmia generator 300 according to this embodiment includes a signal generator 310, a preprocessor 320, a data input unit 330, a data separator 340, a masking unit 350, and a diffusion embedding unit 360. , includes an arrhythmia data generation unit 370. Components included in the arrhythmia generating device 300 are not necessarily limited thereto.

부정맥 생성장치(300)에 포함된 각 구성요소는 장치 내부의 소프트웨어적인 모듈 또는 하드웨어적인 모듈을 연결하는 통신 경로에 연결되어 상호 간에 유기적으로 동작할 수 있다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 이용하여 통신한다.Each component included in the arrhythmia generating device 300 is connected to a communication path connecting software modules or hardware modules within the device and can operate organically with each other. These components communicate using one or more communication buses or signal lines.

도 3에 도시된 부정맥 생성장치(300)의 각 구성요소는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 소프트웨어적인 모듈, 하드웨어적인 모듈 또는 소프트웨어와 하드웨어의 결합으로 구현될 수 있다.Each component of the arrhythmia generating device 300 shown in FIG. 3 refers to a unit that processes at least one function or operation, and may be implemented as a software module, a hardware module, or a combination of software and hardware.

신호 생성부(310)는 프레임워크에 입력으로 사용할 10초 단위의 심전도 신호를 생성한다.The signal generator 310 generates an ECG signal in units of 10 seconds to be used as an input to the framework.

전처리부(320)는 10초 단위의 심전도 신호를 기저선 변동(Baseline Wandering)을 보정하기 위한 전처리를 수행한 심전도 데이터를 생성한다. 전처리부(320)는 10초 단위로 전처리된 전처리 데이터를 신호 입력부(330)로 입력한다.The preprocessor 320 generates ECG data by preprocessing the ECG signal in 10-second increments to correct baseline wandering. The preprocessing unit 320 inputs preprocessed data into the signal input unit 330 every 10 seconds.

데이터 입력부(330)는 전처리부(320)로부터 10초 단위로 전처리된 심전도 데이터를 입력받는다. 데이터 입력부(330)는 기 설정된 윈도우 중 특정 시간 단위별로 심전도 데이터를 입력받는다.The data input unit 330 receives preprocessed ECG data every 10 seconds from the preprocessor 320. The data input unit 330 receives electrocardiogram data for each specific time unit among preset windows.

데이터 구분부(340)는 심전도 데이터를 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간으로 구분한다. 데이터 구분부(340)는 대입 대상(imputation target) 구간을 훈련에 포함되는 부정맥 데이터로 인식한다. 데이터 구분부(340)는 조건부 관측(Conditional Observations) 구간을 훈련에 미포함되는 관측 데이터로 인식한다. 데이터 구분부(340)는 심전도 데이터를 대입 대상 구간과 조건부 관측 구간별로 잘라서 구분한다.The data classification unit 340 divides the ECG data into an imputation target section and a conditional observation section according to multiple symptoms. The data classification unit 340 recognizes the imputation target section as arrhythmia data included in training. The data classification unit 340 recognizes the Conditional Observations section as observation data not included in training. The data classification unit 340 divides the ECG data by dividing it into a substitution target section and a conditional observation section.

마스킹부(350)는 대입 대상 구간을 마스킹한 마스킹 데이터를 생성한다.The masking unit 350 generates masking data that masks the substitution target section.

디퓨전 임베딩부(360)는 대입 대상 구간에 노이즈를 추가하는 디퓨전 프로세스(Diffusion process)와 노이즈를 제거하여 원본으로 복원하는 리버스 프로세스(Reverse process)를 수행하면서 부정맥 패턴을 학습한 결과를 기반으로 디퓨전 임베딩 특징을 추출한다.The diffusion embedding unit 360 performs diffusion embedding based on the results of learning the arrhythmia pattern while performing a diffusion process that adds noise to the substitution target section and a reverse process that removes noise and restores it to the original. Extract features.

디퓨전 임베딩부(360)는 대입 대상 구간에만 가우시안 노이즈를 발생시켜서 노이즈 타겟(Noisy Targets)을 생성하는 디퓨전 프로세스를 수행한다.The diffusion embedding unit 360 performs a diffusion process to generate noise targets (Noisy Targets) by generating Gaussian noise only in the substitution target section.

디퓨전 임베딩부(360)는 노이즈 타겟과 서로 다른 노이즈 레벨(Noise Level)을 갖는 조건부 관측 구간을 결합한 상태에서 노이즈 제거 기능(Denoising Function)을 이용하여 가우시안 노이즈를 제거하여 원본으로 복원하는 리버스 프로세스를 수행한다.The diffusion embedding unit 360 performs a reverse process to restore the original by removing Gaussian noise using a denoising function while combining a noise target and conditional observation sections with different noise levels. do.

부정맥 데이터 생성부(370)는 디퓨전 임베딩 특징과 마스킹 데이터를 기반으로 새롭게 입력된 입력 데이터에 대응하는 학습용으로 필요한 급성 질환 또는 희귀 질환에 대응하는 부정맥 형태를 포함하는 부정맥 데이터를 생성한다.The arrhythmia data generator 370 generates arrhythmia data including an arrhythmia form corresponding to an acute disease or rare disease required for learning corresponding to newly input input data based on diffusion embedding features and masking data.

부정맥 데이터 생성부(370)는 디퓨전 임베딩 특징과 마스킹 데이터를 비교하여 마스킹 데이터를 기반으로 디퓨전 임베딩 특징에 포함된 가우시안 노이즈의 추가와 제거에 따른 추가 노이즈 예측(Estimate Added Noise)을 확인하고, 추가 노이즈 예측을 기반으로 입력 데이터에 대응하는 부정맥 형태를 포함하는 부정맥 데이터를 생성한다.The arrhythmia data generator 370 compares the diffusion embedding feature and the masking data to confirm the estimate added noise resulting from the addition and removal of the Gaussian noise included in the diffusion embedding feature based on the masking data. Based on the prediction, arrhythmia data containing the arrhythmia type corresponding to the input data is generated.

도 4는 본 실시예에 따른 부정맥 생성전 컨텍스트 추출을 위한 디퓨전 임베딩 과정을 나타낸 도면이다.Figure 4 is a diagram showing the diffusion embedding process for context extraction before arrhythmia generation according to this embodiment.

심전도는 심장의 전기적 활동을 해석하는 것으로, 피부에 부착된 전극과 신체 외부의 장비에 의해 기록된다. 심전도는 심장박동의 비율과 일정함을 측정하는 데 사용하며, 심장의 비정상적 활동에 대한 진단이나 연구의 목적으로 사용된다.An electrocardiogram interprets the electrical activity of the heart and is recorded by electrodes attached to the skin and equipment outside the body. An electrocardiogram is used to measure the rate and consistency of heartbeat, and is used for the purpose of diagnosis or research into abnormal heart activity.

부정맥은 심장이 불규칙하게 뛰는 것을 의미하며, 지나치게 빠르거나, 늦거나 혹은 맥박이 불규칙하게 뛰는 것을 의미한다. 다양한 부정맥은 발작성, 또는 지속적으로 나타날 수 있다. Arrhythmia means that the heart beats irregularly, either too fast, too slow, or the pulse is irregular. Various arrhythmias may occur paroxysmal or persistent.

부정맥의 발생은 정상 심전도 발생에 비해 적게 나타나며, 이러한 현상은 부정맥 분류 및 예측 알고리즘 개발 시 데이터 간 불균형으로 인해 부정맥 발생에 대한 정확한 추론이 어렵게 만드는 원인 중에 하나이다. The occurrence of arrhythmia occurs less often than the occurrence of a normal electrocardiogram, and this phenomenon is one of the reasons that makes accurate inference about the occurrence of arrhythmia difficult due to imbalance between data when developing arrhythmia classification and prediction algorithms.

일반적인 부정맥 생성 알고리즘들은 하나의 입력 내에 부정맥 패턴이 전체적으로 포함되어 있어야 하지만 실제 부정맥은 하나의 입력에 다양한 부정맥이 존재할 수 있다.General arrhythmia generation algorithms require the entire arrhythmia pattern to be included in one input, but in actual arrhythmia, various arrhythmias may exist in one input.

GAN(Generative Adversarial Network) 기반의 부정맥 생성 모델은 훈련 과정의 불안정성이 존재하고 모델이 이미지 생성 시 다양성이 부족하여 입력 데이터와 아주 유사한 일관성이 있는 패턴만 추출할 수 있다는 단점이 있다.The arrhythmia generation model based on GAN (Generative Adversarial Network) has the disadvantage that there is instability in the training process and the model lacks diversity when generating images, so only consistent patterns that are very similar to the input data can be extracted.

다양한 부정맥은 특정 구간에서 여러 부정맥이 동시에 나타날 수 있기 때문에, 부정맥의 패턴까지 고려한 알고리즘이 필요하다.Because various arrhythmias may appear simultaneously in a specific section, an algorithm that takes into account arrhythmia patterns is needed.

부정맥 생성 모델의 안정성과 함께 다양성을 가진 부정맥 데이터를 생성해야 생성된 데이터를 이용한 분류 및 예측 모델 훈련 후 실제 환경에서 사용 시 일반화 능력을 확보할 수 있어야 한다.In addition to the stability of the arrhythmia generation model, arrhythmia data with diversity must be generated to ensure generalization ability when used in a real environment after training a classification and prediction model using the generated data.

따라서, 본 실시예에 따른 부정맥 생성장치(300)는 다양한 부정맥과 정상 심전도 신호가 혼재되어 있는 심전도 신호를 입력으로 받아, 부정맥의 다양성의 확보와 동시에 다중 출력 데이터를 생성한다. Therefore, the arrhythmia generating device 300 according to this embodiment receives as input an ECG signal containing a mixture of various arrhythmia and normal ECG signals, and secures the diversity of arrhythmia while simultaneously generating multiple output data.

부정맥 생성장치(300)는 부정맥의 다양성을 확보하는 동시에 하나의 입력에 다중 출력 데이터를 산출할 수 있으며, 2차적인 부정맥 탐지/분류 및 예측 모델의 훈련 시 데이터 불균형을 해소할 수 있고, 데이터 수집을 위한 시간 및 비용을 줄일 수 있다.The arrhythmia generator 300 can secure the diversity of arrhythmia while producing multiple output data from one input, and can resolve data imbalance when training secondary arrhythmia detection/classification and prediction models, and data collection. Time and cost can be reduced.

부정맥 생성장치(300)는 입력된 신호(10초로 설정된 심전도 신호)로부터 부정맥들을 대표할 수 있는 특징을 추출할 수 있는 디퓨전 기반 모델과 디퓨전 기반 모델에서 추출된 특징과 결합되어 부정맥 데이터 생성 모델을 구축한다.The arrhythmia generator 300 builds an arrhythmia data generation model by combining a diffusion-based model that can extract features representing arrhythmias from an input signal (an electrocardiogram signal set to 10 seconds) and the features extracted from the diffusion-based model. do.

부정맥 생성장치(300)는 디퓨전 기반 모델과 부정맥 데이터 생성 모델을 이용하여 연속적인 시계열 신호의 패턴을 학습하여 다중 부정맥이 포함된 출력 데이터를 생성한다.The arrhythmia generator 300 learns the pattern of a continuous time series signal using a diffusion-based model and an arrhythmia data generation model to generate output data containing multiple arrhythmias.

디퓨전 모델은 생성 모델의 종류 중에 하나로서, 노이즈를 발생시키면서 데이터의 변화 정보를 학습을 했다가 다시 노이즈를 제거하면서 데이터의 변화 정보를 다시 학습하는 모델을 의미한다.A diffusion model is one of the types of generation models. It refers to a model that learns change information in the data while generating noise, and then learns the change information in the data again while removing the noise.

디퓨전 모델은 노이즈 생성 패턴 또는 노이즈 제거 패턴들을 학습하면서, 노이즈 생성 패턴 또는 노이즈 제거 패턴들을 기반으로 새로운 데이터가 입력되는 경우, 변화 정보를 예측한다. The diffusion model learns noise generation patterns or noise removal patterns and predicts change information when new data is input based on the noise generation patterns or noise removal patterns.

디퓨전 모델은 노이즈 생성 패턴 또는 노이즈 제거 패턴들을 학습한 알고리즘을 기반으로 단일 유도 심전도에 부정맥을 생성한다.The diffusion model creates arrhythmia in a single-guided electrocardiogram based on an algorithm that learns noise generation patterns or noise removal patterns.

디퓨전 모델은 슬라이딩 윈도우(100초 데이터 중 10초씩 또는 30초씩 잘라낸 데이터)를 이용할 때, 싱글 입력으로 다중 출력을 예측한다. 디퓨전 모델은 다중 입력을 기반으로 다중 출력을 예측한다.The diffusion model predicts multiple outputs with a single input when using a sliding window (data cut by 10 or 30 seconds out of 100 seconds of data). Diffusion models predict multiple outputs based on multiple inputs.

디퓨전 모델을 학습하기 위해서 많은 학습 데이터를 필요로 한다. 하지만, 학습 데이터를 획득하는데, 한계가 있다. 심방 세동과 같은 뇌졸중과 관련된 흔하게 발생하는 그런 질환 같은 경우에는 대량의 데이터도 얻을 수 있지만, AV 블락 데이터, 급성 심실 세동과 관련된 학습 데이터를 획득하는데 어려움이 존재한다. 따라서, 부정맥 생성장치(300)는 학습 데이터를 획득할 때, 급성 심전도 질환이 발생하기 전에 앞선 시그널을 포함하는 학습 데이터를 생성한다. To learn a diffusion model, a lot of learning data is required. However, there are limitations in acquiring learning data. Although it is possible to obtain large amounts of data for common diseases related to stroke, such as atrial fibrillation, there are difficulties in obtaining training data related to AV block data and acute ventricular fibrillation. Accordingly, when the arrhythmia generator 300 acquires learning data, it generates learning data including preceding signals before the occurrence of an acute electrocardiographic disorder.

단일 인력은 예컨대, 10초의 데이터 하나가 입력되는 것을 의미한다. 다중 입력은 예컨대, 10초의 데이터가 0~10초, 10~20초, 20~30초 식으로 복수 개가 입력되는 것을 의미한다.A single input means, for example, one data input of 10 seconds. Multiple input means, for example, that 10 seconds of data is input in multiple numbers such as 0 to 10 seconds, 10 to 20 seconds, and 20 to 30 seconds.

부정맥 생성장치(300)는 디퓨전 모델을 이용하여 전체 심전도 데이터에서 균일한 노이즈를 발생시켰다가 균일한 노이즈를 제거면서 학습이 이루어지게 되는데, 전체의 균일한 노이즈를 발생시는 게 아니라 컨디션에 따라 심전도 데이터 상에서 특정 구간에만 노이즈 발생시키고, 나머지 구간에는 노이즈를 발생시키기 않은 상태에서 심전도 파형의 패턴 변화를 학습한다.The arrhythmia generator 300 generates uniform noise from the entire ECG data using a diffusion model, and then learns by removing the uniform noise. Rather than generating uniform noise throughout, the ECG data is generated according to conditions. Pattern changes in the ECG waveform are learned while generating noise only in a specific section and not generating noise in the remaining sections.

부정맥 생성장치(300)는 컨디션에 따른 노이즈 발생으로 심전도 파형의 패턴 변화로 학습된 제너레이션 모델(부정맥 생성 모델)을 생성한다. 부정맥 생성장치(300)는 제너레이션 모델(부정맥 생성 모델)을 기반으로 정상 데이터와 심방 세동이 있는 데이터를 출력할 수 있다. 부정맥 생성장치(300)는 출력을 기반으로 새롭게 다양한 조건의 트레이닝 데이터들을 생성할 수 있다.The arrhythmia generator 300 generates a generation model (arrhythmia generation model) learned by changing the pattern of the ECG waveform due to noise generation according to conditions. The arrhythmia generator 300 can output normal data and data with atrial fibrillation based on a generation model (arrhythmia generation model). The arrhythmia generator 300 can generate new training data under various conditions based on the output.

부정맥 생성장치(300)는 입력 데이터(예컨대, 10초짜리 데이터) 상을 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간으로 구분한다.The arrhythmia generator 300 divides input data (eg, 10 seconds of data) into an imputation target section and a conditional observation section based on multiple symptoms.

여기서, 대입 대상(imputation target)은 메인 증상이 될 수 있는 생성하고자 하는 특징을 의미한다. 대입 대상 구간은 훈련에 포함되는 구간을 의미한다. 조건부 관측 구간은 훈련에 포함되지 않는 구간을 의미한다.Here, the imputation target refers to the feature to be created that can be the main symptom. The section subject to college entrance refers to the section included in training. The conditional observation section refers to the section that is not included in training.

부정맥 생성장치(300)는 대입 대상 구간에만 가우시안 노이즈를 발생시켜서 노이즈 타겟(Noisy Targets)을 생성한다. 부정맥 생성장치(300)는 노이즈 타겟과 서로 다른 노이즈 레벨(Noise Level)을 갖는 조건부 관측 구간을 결합한 상태에서 노이즈 제거 기능(Denoising Function)을 이용하여 추가 노이즈 예측(Estimate Added Noise)을 수행한다.The arrhythmia generator 300 generates noise targets (Noisy Targets) by generating Gaussian noise only in the substitution target section. The arrhythmia generator 300 performs estimate added noise using a denoising function by combining a noise target and conditional observation sections with different noise levels.

부정맥 생성장치(300)는 입력 데이터(예컨대, 10초짜리 데이터) 상에 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations)별로 특정 구간을 잘라서 구분한다.The arrhythmia generator 300 divides input data (e.g., 10-second data) by cutting out specific sections according to an imputation target section and conditional observations according to multiple symptoms.

부정맥 생성장치(300)는 대입 대상 구간에만 가우시안 노이즈를 발생시킨 노이즈 타겟에 서론 다른 노이즈 레벨을 갖는 조건부 관측 구간을 결합한 상태에서 노이즈 제거 기능을 이용하여 노이즈를 제거해서 추가 노이즈를 예측하며, 추가 노이즈 예측 패턴을 기반으로 해당 구간의 특징으로 학습한다. The arrhythmia generator 300 predicts additional noise by removing noise using a noise removal function by combining conditional observation sections with different noise levels with a noise target that generates Gaussian noise only in the substitution target section, and predicts additional noise. Based on the predicted pattern, the features of the corresponding section are learned.

부정맥 생성장치(300)는 조건 내에서 특정 데이터(메인 증상)가 어떠한 추가 노이즈 패턴을 가지는지를 예측하여 생성하고, 해당 추가 노이즈 패턴을 학습한다.The arrhythmia generator 300 predicts and generates what additional noise pattern specific data (main symptom) has within the condition and learns the additional noise pattern.

마스킹부(350)는 마스킹을 수행한다. 마스킹부(350)는 대입 대상 구간을 다 0으로 채워넣는 마스킹을 수행한다. 마스킹부(350)는 대입 대상 구간에 노이즈가 합산해져서 새롭게 데이터가 생성될 때, 마스킹 구간을 기반으로 가우시안 노이즈가 어느 부분에 추가되는지의 여부를 확인할 수 있도록 한다. The masking unit 350 performs masking. The masking unit 350 performs masking by filling the substitution target section with zeros. The masking unit 350 allows the user to check which part Gaussian noise is added based on the masking section when new data is generated by adding noise to the substitution target section.

부정맥 생성장치(300)는 응급한 심전도 질환을 학습하기 위한 학습 데이터가 필요한데, 학습 데이터가 충분하지 않으니 학습시킬 데이터를 인공적으로 생성한다.The arrhythmia generator 300 needs learning data to learn about emergency electrocardiogram diseases, but since the learning data is not sufficient, it artificially generates data to be learned.

부정맥 생성장치(300)는 하나의 입력 데이터(예컨대, 10초 짜리 심전도 파형)를 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간으로 구분한다.The arrhythmia generator 300 divides one input data (e.g., a 10-second electrocardiogram waveform) into an imputation target section and a conditional observation section according to a plurality of symptoms.

대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간의 합이 입력 데이터와 동일해지도록 한다.Ensure that the sum of the imputation target section and the Conditional Observations section according to multiple symptoms is equal to the input data.

부정맥 생성장치(300)는 대입 대상 구간에만 가우시안 노이즈를 발생시켜서 노이즈 타겟(Noisy Targets)을 생성하고, 노이즈 타겟과 서로 다른 노이즈 레벨(Noise Level)을 갖는 조건부 관측 구간을 결합 상태에서 노이즈 제거 기능(Denoising Function)을 이용하여 추가 노이즈 예측(Estimate Added Noise)을 수행한다.The arrhythmia generator 300 generates noise targets by generating Gaussian noise only in the substitution target section, and has a noise removal function ( Perform additional noise prediction (Estimate Added Noise) using the Denoising Function.

부정맥 생성장치(300)는 추가 노이즈 예측을 수행한 후 노이즈 타겟을 원래 데이터로 복원 시킨다. 부정맥 생성장치(300)는 노이즈 타겟을 원래 데이터로 복원 시켜서 디퓨전 과정을 마무리한다.The arrhythmia generator 300 performs additional noise prediction and then restores the noise target to the original data. The arrhythmia generator 300 completes the diffusion process by restoring the noise target to the original data.

부정맥 생성장치(300)는 입력 데이터(예컨대, 10초짜리 데이터) 상에 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간별로 특정 구간을 잘라서 구분한다.The arrhythmia generator 300 cuts and divides specific sections into input data (e.g., 10-second data) into an imputation target section and a conditional observation section according to multiple symptoms.

부정맥 생성장치(300)는 훈련에 필요한 대입 대상 구간을 마스킹한다. 부정맥 생성장치(300)는 대입 대상 구간을 자른 다음에 대입 대상 구간에 대응하는 마스킹 부분에 노이즈를 발생시킨다. 부정맥 생성장치(300)는 입력 데이터 상의 나머지 부분인 조건부 관측 구간과 노이즈가 발생한 마스킹 부분을 결합한다.The arrhythmia generator 300 masks the target section required for training. The arrhythmia generator 300 cuts the substitution target section and then generates noise in the masking portion corresponding to the substitution target section. The arrhythmia generator 300 combines the conditional observation section, which is the remaining part of the input data, with the masking part where noise occurs.

부정맥 생성장치(300)는 노이즈가 발생한 마스킹 부분과 조건부 관측 구간을 결합한 상태에서 노이즈 제거 기능을 이용하여 노이즈를 제거하여 추가 노이즈 예측을 수행(리버스)한다. The arrhythmia generator 300 combines the masking part where the noise occurs and the conditional observation section, removes the noise using a noise removal function, and performs additional noise prediction (reverse).

부정맥 생성장치(300)는 디퓨전 과정과 리버스 과정을 거치면서 학습 데이터를 생성한다. 부정맥 생성장치(300)는 학습 데이터를 기반으로 만들고자 하는 심전도 질환의 특징인 디퓨전-스텝 임베딩(Diffusion-Step Embedding)을 생성한다. 부정맥 생성장치(300)는 별도의 입력 데이터(정상 박동)와 만들고자 하는 심전도 질환의 특징인 디퓨전-스텝 임베딩(Diffusion-Step Embedding)을 제너레이션 모델(부정맥 생성 모델)에 입력하여 급성 심전도 질환에 대한 출력값을 얻는다. The arrhythmia generator 300 generates learning data by going through a diffusion process and a reverse process. The arrhythmia generator 300 generates diffusion-step embedding, which is a characteristic of the ECG disease to be created based on learning data. The arrhythmia generator 300 inputs separate input data (normal rhythm) and diffusion-step embedding, which is a characteristic of the ECG disease to be created, into a generation model (arrhythmia generation model) to generate an output value for an acute ECG disease. get

부정맥 생성장치(300)는 대입 대상 구간을 판별하기 위해 이미 판독이 완료된 데이터를 기반으로 입력 데이터 중 대입 대상 구간(부정맥 또는 정상 박동)을 결정한다. 부정맥 생성장치(300)는 1차적으로 이미 판독이 심박 관측 데이터를 기반으로 정상 박동과 부정맥 구간을 구분한다. 부정맥 생성장치(300)는 부정맥 구간에 노이즈를 추가하기 위해서 마스킹 데이터를 준비한다. 부정맥 생성장치(300)는 부정맥 구간에 가우시안 노이즈를 추가한 후 학습 처리한다. In order to determine the target section for substitution, the arrhythmia generator 300 determines the target section (arrhythmia or normal rhythm) among the input data based on data that has already been read. The arrhythmia generator 300 initially distinguishes between a normal beat and an arrhythmia section based on heart rate observation data that has already been read. The arrhythmia generator 300 prepares masking data to add noise to the arrhythmia section. The arrhythmia generator 300 adds Gaussian noise to the arrhythmia section and then performs learning processing.

부정맥 생성장치(300)는 학습이 완료된 후 가우시안 노이즈가 추가된 구간의 부정맥을 구체적으로 구분할 수 있다. 심전도 질환 발생 확률이 낮기 때문에, 심전도 질환 데이터가 상대적으로 적고 정상 박동 데이터를 많다. 부정맥 생성장치(300)는 입력 데이터로서 사람마다 파형이 상이한 정상 박동 데이터를 입력하고, 특정 심전도 질환에 따른 부정맥 데이터에 대한 만들고자 하는 심전도 질환의 특징인 디퓨전-스텝 임베딩(Diffusion-Step Embedding)을 생성하여 다양한 형태의 부정맥 분류할 수 있도록 한다.The arrhythmia generator 300 can specifically distinguish arrhythmia in the section to which Gaussian noise is added after learning is completed. Because the probability of ECG disease occurring is low, there is relatively little ECG disease data and a lot of normal rhythm data. The arrhythmia generator 300 inputs normal rhythm data with different waveforms for each person as input data, and generates diffusion-step embedding, which is a characteristic of the ECG disease to be created, for arrhythmia data according to a specific ECG disease. This allows classification of various types of arrhythmia.

다시 말해, 부정맥 생성장치(300)는 정상 박동 데이터 역시 사람마다 파형이 상이하므로 피험자들의 특성이 고려된 정상 박동 데이터에 만들고자 하는 심전도 질환의 특징 을 반영한 부정맥 데이터를 생성할 수 있다.In other words, the arrhythmia generator 300 can generate arrhythmia data that reflects the characteristics of the ECG disease to be created in the normal rhythm data considering the characteristics of the subjects since the waveform of normal rhythm data is also different for each person.

도 5는 본 실시예에 따른 심전도 신호 데이터와 디퓨전 임베딩을 이용한 부정맥 생성 과정을 나타난 도면이다.Figure 5 is a diagram showing the arrhythmia generation process using ECG signal data and diffusion embedding according to this embodiment.

데이터 구분부(340)는 입력 데이터를 훈련에 미포함되는 관측 데이터(조건부 관측 구간), 훈련에 포함되는 부정맥 데이터(대입 대상 구간)로 구분한다.The data classification unit 340 divides the input data into observation data not included in training (conditional observation section) and arrhythmia data included in training (substitution target section).

마스킹부(350)는 훈련에 포함되는 부정맥 데이터(대입 대상 구간)를 마스킹한 마스킹 데이터를 생성한다.The masking unit 350 generates masking data that masks arrhythmia data (substitution target section) included in training.

디퓨전 임베딩부(360)는 디퓨전 프로세스(Diffusion process)로서, 훈련에 포함되는 부정맥 데이터(대입 대상 구간)에 가우시안 노이즈를 더하는 과정을 수행한다.The diffusion embedding unit 360 is a diffusion process and performs a process of adding Gaussian noise to the arrhythmia data (substitution target section) included in training.

디퓨전 임베딩부(360)는 리버스 프로세스(Reverse process)로서, 훈련에 포함되는 부정맥 데이터(대입 대상 구간)에 가우시안 노이즈를 제거해 원 신호로 복원하는 과정을 수행한다.The diffusion embedding unit 360 is a reverse process and performs a process of removing Gaussian noise from the arrhythmia data (substitution target section) included in training and restoring the original signal.

부정맥 데이터 생성부(370)는 디퓨전 임베딩부(360)에서 디퓨전 프로세스와 리버스 프로세스에 의해 학습되어 생성된 디퓨전 임베딩과 심전도 데이터를 입력받는다.The arrhythmia data generation unit 370 receives diffusion embedding and ECG data generated by learning from the diffusion embedding unit 360 through a diffusion process and a reverse process.

부정맥 데이터 생성부(370)는 디퓨전 임베딩의 컨텍스트 정보를 참고하여 부정맥 데이터를 생성한다.The arrhythmia data generator 370 generates arrhythmia data by referring to the context information of diffusion embedding.

도 6은 본 실시예에 따른 디퓨전 모델을 이용한 부정맥 생성 방법을 설명하기 위한 순서도이다.Figure 6 is a flowchart for explaining the arrhythmia generation method using the diffusion model according to this embodiment.

신호 생성부(310)는 프레임워크에 입력으로 사용할 10초 단위의 심전도 신호를 생성한다(S610).The signal generator 310 generates an electrocardiogram signal in units of 10 seconds to be used as an input to the framework (S610).

전처리부(320)는 10초 단위의 심전도 신호를 기저선 변동(Baseline Wandering)을 보정하기 위한 전처리를 수행한 전처리 데이터를 생성한다(S620).The preprocessor 320 generates preprocessed data by performing preprocessing to correct baseline wandering of the ECG signal in units of 10 seconds (S620).

전처리부(320)는 10초 단위의 전처리 데이터를 데이터 입력부(330)로 입력한다(S630).The preprocessing unit 320 inputs preprocessing data in units of 10 seconds to the data input unit 330 (S630).

데이터 구분부(340)는 데이터 입력부(330)로부터 10초 단위의 전처리 데이터를 수신한다.The data separator 340 receives preprocessed data in units of 10 seconds from the data input unit 330.

데이터 구분부(340)는 10초 단위의 전처리 데이터 중 훈련에 포함될 부정맥 데이터 부분과 미포함되는 부분을 구분한다(S640).The data classification unit 340 distinguishes between the arrhythmia data portion to be included in training and the portion not included among the 10-second preprocessing data (S640).

마스킹부(350)는 훈련에 포함되는 부정맥 데이터(대입 대상 구간) 부분을 0과 1로 마스킹한 마스킹 데이터를 생성한다(S650).The masking unit 350 generates masking data in which the arrhythmia data (substitution target section) included in training is masked with 0 and 1 (S650).

디퓨전 임베딩부(360)는 훈련에 포함될 부정맥 데이터 부분을 입력받아 부정맥 패턴을 학습한다(S660).The diffusion embedding unit 360 receives the arrhythmia data portion to be included in training and learns the arrhythmia pattern (S660).

디퓨전 임베딩부(360)는 학습을 완료한 후 디퓨전 임베딩(Diffusion Embedding) 특징을 추출한 후 마스킹 데이터와 함께 부정맥 데이터 생성부(370)로 입력한다(S670).After completing learning, the diffusion embedding unit 360 extracts diffusion embedding features and inputs them together with the masking data to the arrhythmia data generating unit 370 (S670).

부정맥 데이터 생성부(370)는 디퓨전 임베딩부(360)에서 학습을 완료하여 부정맥 패턴이 포함된 10초 심전도 데이터를 출력한다(S680).The arrhythmia data generation unit 370 completes learning from the diffusion embedding unit 360 and outputs 10 seconds of electrocardiogram data including the arrhythmia pattern (S680).

도 6에서는 단계 S610 내지 단계 S680을 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 6에 기재된 단계를 변경하여 실행하거나 하나 이상의 단계를 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 6은 시계열적인 순서로 한정되는 것은 아니다.In Figure 6, steps S610 to S680 are described as being sequentially executed, but the process is not necessarily limited thereto. In other words, the steps shown in FIG. 6 may be applied by modifying them or executing one or more steps in parallel, so FIG. 6 is not limited to a time-series order.

전술한 바와 같이 도 6에 기재된 본 실시예에 따른 디퓨전 모델을 이용한 부정맥 생성 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 디퓨전 모델을 이용한 부정맥 생성 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. As described above, the arrhythmia generation method using the diffusion model according to the present embodiment shown in FIG. 6 may be implemented as a program and recorded on a computer-readable recording medium. A computer-readable recording medium on which a program for implementing the arrhythmia generation method using the diffusion model according to this embodiment is recorded includes all types of recording devices that store data that can be read by a computer system.

이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present embodiment, and those skilled in the art will be able to make various modifications and variations without departing from the essential characteristics of the present embodiment. Accordingly, the present embodiments are not intended to limit the technical idea of the present embodiment, but rather to explain it, and the scope of the technical idea of the present embodiment is not limited by these examples. The scope of protection of this embodiment should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of rights of this embodiment.

300: 부정맥 생성장치
310: 신호 생성부
320: 전처리부
330: 데이터 입력부
340: 데이터 구분부
350: 마스킹부
360: 디퓨전 임베딩부
370: 부정맥 데이터 생성부
300: Arrhythmia generating device
310: signal generator
320: Preprocessing unit
330: data input unit
340: Data separator
350: Masking unit
360: Diffusion embedding unit
370: Arrhythmia data generation unit

Claims (6)

기 설정된 윈도우 중 특정 시간 단위별로 심전도 데이터를 입력받는 데이터 입력부;
상기 심전도 데이터를 대입 대상(imputation target) 구간과 복수의 증상에 따른 조건부 관측(Conditional Observations) 구간으로 구분하는 데이터 구분부;
상기 대입 대상 구간을 마스킹한 마스킹 데이터를 생성하는 마스킹부;
상기 대입 대상 구간에 노이즈를 추가하는 디퓨전 프로세스(Diffusion process)와 상기 노이즈를 제거하여 원본으로 복원하는 리버스 프로세스(Reverse process)를 수행하면서 부정맥 패턴을 학습한 결과를 기반으로 디퓨전 임베딩 특징을 추출하는 디퓨전 임베딩부; 및
상기 디퓨전 임베딩 특징과 상기 마스킹 데이터를 기반으로 새롭게 입력된 입력 데이터에 대응하는 부정맥 형태를 포함하는 부정맥 데이터를 생성하는 부정맥 데이터 생성부;를 포함하되,
상기 디퓨전 임베딩부는
상기 대입 대상 구간에만 가우시안 노이즈를 발생시켜서 노이즈 타겟(Noisy Targets)을 생성하는 상기 디퓨전 프로세스를 수행하고,
상기 노이즈 타겟과 서로 다른 노이즈 레벨(Noise Level)을 갖는 상기 조건부 관측 구간을 결합한 상태에서 노이즈 제거 기능(Denoising Function)을 이용하여 상기 가우시안 노이즈를 제거하여 상기 원본으로 복원하는 상기 리버스 프로세스를 수행하며,
상기 부정맥 데이터 생성부는
상기 디퓨전 임베딩 특징과 상기 마스킹 데이터를 비교하여 상기 마스킹 데이터를 기반으로 상기 디퓨전 임베딩 특징에 포함된 상기 가우시안 노이즈의 추가와 제거에 따른 추가 노이즈 예측(Estimate Added Noise)을 확인하고, 상기 추가 노이즈 예측을 기반으로 상기 입력 데이터에 대응하는 부정맥 형태를 포함하는 상기 부정맥 데이터를 생성하는 것을 특징으로 하는 부정맥 생성장치.
A data input unit that receives electrocardiogram data for specific time units among preset windows;
a data dividing unit that divides the electrocardiogram data into an imputation target section and a conditional observation section according to a plurality of symptoms;
a masking unit that generates masking data that masks the substitution target section;
Diffusion, which extracts diffusion embedding features based on the results of learning the arrhythmia pattern while performing a diffusion process that adds noise to the substitution target section and a reverse process that removes the noise and restores the original. Embedding part; and
An arrhythmia data generator that generates arrhythmia data including an arrhythmia type corresponding to newly input input data based on the diffusion embedding feature and the masking data,
The diffusion embedding unit
Performing the diffusion process to generate noise targets (Noisy Targets) by generating Gaussian noise only in the substitution target section,
Performing the reverse process to restore the original by removing the Gaussian noise using a denoising function while combining the noise target and the conditional observation section with different noise levels,
The arrhythmia data generator
Compare the diffusion embedding feature and the masking data to confirm an estimate of added noise based on the addition and removal of the Gaussian noise included in the diffusion embedding feature based on the masking data, and estimate the additional noise. An arrhythmia generating device, characterized in that it generates the arrhythmia data including an arrhythmia type corresponding to the input data based on the input data.
제1항에 있어서,
상기 데이터 구분부는,
상기 대입 대상(imputation target) 구간을 훈련에 포함되는 부정맥 데이터로 인식하는 것을 특징으로 하는 부정맥 생성장치.
According to paragraph 1,
The data division unit,
An arrhythmia generating device characterized in that it recognizes the imputation target section as arrhythmia data included in training.
제1항에 있어서,
상기 데이터 구분부는,
상기 조건부 관측(Conditional Observations) 구간을 훈련에 미포함되는 관측 데이터로 인식하는 것을 특징으로 하는 부정맥 생성장치.

According to paragraph 1,
The data division unit,
An arrhythmia generator characterized in that it recognizes the Conditional Observations section as observation data not included in training.

삭제delete 삭제delete 삭제delete
KR1020230144441A 2023-10-26 2023-10-26 Apparatus for Generating Arrhythmia by using Diffusion Model Active KR102684410B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230144441A KR102684410B1 (en) 2023-10-26 2023-10-26 Apparatus for Generating Arrhythmia by using Diffusion Model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230144441A KR102684410B1 (en) 2023-10-26 2023-10-26 Apparatus for Generating Arrhythmia by using Diffusion Model

Publications (1)

Publication Number Publication Date
KR102684410B1 true KR102684410B1 (en) 2024-07-12

Family

ID=91950601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230144441A Active KR102684410B1 (en) 2023-10-26 2023-10-26 Apparatus for Generating Arrhythmia by using Diffusion Model

Country Status (1)

Country Link
KR (1) KR102684410B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102467211B1 (en) * 2021-12-02 2022-11-16 (주)씨어스테크놀로지 Method And Apparatus for Classifying ECG wave by Using Machine Learning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102467211B1 (en) * 2021-12-02 2022-11-16 (주)씨어스테크놀로지 Method And Apparatus for Classifying ECG wave by Using Machine Learning

Similar Documents

Publication Publication Date Title
Çınar et al. Classification of normal sinus rhythm, abnormal arrhythmia and congestive heart failure ECG signals using LSTM and hybrid CNN-SVM deep neural networks
US10959660B2 (en) Electrocardiogram processing system for delineation and classification
US12186086B2 (en) Systems and methods for reduced lead electrocardiogram diagnosis using deep neural networks and rule-based systems
Demirel et al. Energy-efficient real-time heart monitoring on edge–fog–cloud internet of medical things
EP4216232A1 (en) Methods and system for cardiac arrhythmia prediction using transformer-based neural networks
CN111358459A (en) Arrhythmia identification method, device, equipment and storage medium
Yadav et al. Arrhythmia detection on ECG signal using neural network approach
US20250032051A1 (en) Method and device for classifying electrocardiogram waveform by using machine learning
Rangappa et al. Classification of cardiac arrhythmia stages using hybrid features extraction with k-nearest neighbour classifier of ecg signals
Zidelmal et al. Heartbeat classification using support vector machines (SVMs) with an embedded reject option
KR102387703B1 (en) Method And Apparatus for Correcting Electrocardiogram
US11672464B2 (en) Electrocardiogram processing system for delineation and classification
KR102684410B1 (en) Apparatus for Generating Arrhythmia by using Diffusion Model
Sharmila Multi-class arrhythmia detection using a hybrid spatial-temporal feature extraction method and stacked auto encoder
KR102460058B1 (en) Method And Apparatus for Detecting Atrial Fibrillation by Using Deep Learning
KR102652326B1 (en) Apparatus for Detecting Multiple Arrhythmia by using Multi-input and Multiview framework
Kelwade et al. Comparative study of neural networks for prediction of cardiac arrhythmias
Wen et al. ECG beat classification using GreyART network
Sun et al. Multiscale joint recurrence quantification analysis integrating ECG spatiotemporal and dynamic information for cardiopathy detection
Loria-Romero et al. Ventricular fibrillation characterization for sudden cardiac death risk prediction based on wavelet analysis
Shilla et al. Wavelet transform and convolutional neural network based techniques in combating sudden cardiac death
Lomoio et al. AUTAN-ECG: An AUToencoder bAsed system for anomaly detectioN in ECG signals
KR102673765B1 (en) Apparatus for Determining ECG Waveform with Multi-Patient Customization
Yu An ECG arrhythmia image classification system based on convolutional neural network
KR20250060424A (en) Apparatus for Detecting Multiple Arrhythmia by using Temporal Convolution Network, Multiscale Temporal Information Fusion and MultiHead self-Attention

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20231026

PA0201 Request for examination

Patent event code: PA02011R01I

Patent event date: 20231026

Comment text: Patent Application

PA0302 Request for accelerated examination

Patent event date: 20231026

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20231026

Patent event code: PA03021R01I

Comment text: Patent Application

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20240111

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20240701

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20240709

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20240709

End annual number: 3

Start annual number: 1

PG1601 Publication of registration