WO2024019567A1 - Method, apparatus, and computer program for generating sleep analysis model predicting sleep state on the basis of sound information - Google Patents
Method, apparatus, and computer program for generating sleep analysis model predicting sleep state on the basis of sound information Download PDFInfo
- Publication number
- WO2024019567A1 WO2024019567A1 PCT/KR2023/010525 KR2023010525W WO2024019567A1 WO 2024019567 A1 WO2024019567 A1 WO 2024019567A1 KR 2023010525 W KR2023010525 W KR 2023010525W WO 2024019567 A1 WO2024019567 A1 WO 2024019567A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- sleep
- user
- data
- sleep state
- Prior art date
Links
- 230000007958 sleep Effects 0.000 title claims abstract description 1233
- 238000000034 method Methods 0.000 title claims abstract description 337
- 238000004458 analytical method Methods 0.000 title claims abstract description 286
- 238000004590 computer program Methods 0.000 title description 7
- 230000008667 sleep stage Effects 0.000 claims abstract description 154
- 238000007781 pre-processing Methods 0.000 claims abstract description 92
- 238000013136 deep learning model Methods 0.000 claims description 116
- 238000013473 artificial intelligence Methods 0.000 claims description 63
- 239000013598 vector Substances 0.000 claims description 47
- 238000002372 labelling Methods 0.000 claims description 9
- 238000003058 natural language processing Methods 0.000 claims description 8
- 230000006978 adaptation Effects 0.000 claims description 5
- 238000013528 artificial neural network Methods 0.000 abstract description 104
- 238000000605 extraction Methods 0.000 description 102
- 230000008569 process Effects 0.000 description 82
- 230000003416 augmentation Effects 0.000 description 68
- 238000013145 classification model Methods 0.000 description 67
- 238000010586 diagram Methods 0.000 description 60
- 230000006870 function Effects 0.000 description 47
- 238000012549 training Methods 0.000 description 45
- 238000013434 data augmentation Methods 0.000 description 36
- 230000029058 respiratory gaseous exchange Effects 0.000 description 35
- 230000009467 reduction Effects 0.000 description 30
- 208000019116 sleep disease Diseases 0.000 description 27
- 238000012545 processing Methods 0.000 description 26
- 238000013186 photoplethysmography Methods 0.000 description 24
- 238000009826 distribution Methods 0.000 description 23
- 206010041235 Snoring Diseases 0.000 description 20
- 238000013135 deep learning Methods 0.000 description 20
- 230000002829 reductive effect Effects 0.000 description 19
- 239000000284 extract Substances 0.000 description 18
- 230000004044 response Effects 0.000 description 18
- 201000002859 sleep apnea Diseases 0.000 description 18
- 230000007613 environmental effect Effects 0.000 description 17
- 208000037656 Respiratory Sounds Diseases 0.000 description 16
- 208000008784 apnea Diseases 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 15
- 230000004461 rapid eye movement Effects 0.000 description 15
- 206010021079 Hypopnoea Diseases 0.000 description 14
- 238000001228 spectrum Methods 0.000 description 14
- 238000003860 storage Methods 0.000 description 14
- 210000003128 head Anatomy 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 11
- 206010062519 Poor quality sleep Diseases 0.000 description 10
- 238000013527 convolutional neural network Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 230000036541 health Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 238000003062 neural network model Methods 0.000 description 9
- 230000036385 rapid eye movement (rem) sleep Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 208000020685 sleep-wake disease Diseases 0.000 description 8
- 206010041009 Sleep talking Diseases 0.000 description 7
- 208000022249 Sleep-Wake Transition disease Diseases 0.000 description 7
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 7
- 230000003190 augmentative effect Effects 0.000 description 6
- 238000000537 electroencephalography Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 230000003860 sleep quality Effects 0.000 description 6
- 230000003595 spectral effect Effects 0.000 description 6
- 241000282326 Felis catus Species 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 201000010099 disease Diseases 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 230000004622 sleep time Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 206010021133 Hypoventilation Diseases 0.000 description 4
- 210000003477 cochlea Anatomy 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 208000000122 hyperventilation Diseases 0.000 description 4
- 208000006673 asthma Diseases 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 210000003205 muscle Anatomy 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 238000000611 regression analysis Methods 0.000 description 3
- 230000004617 sleep duration Effects 0.000 description 3
- 230000002618 waking effect Effects 0.000 description 3
- 206010011224 Cough Diseases 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000010411 cooking Methods 0.000 description 2
- 238000013503 de-identification Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 230000000870 hyperventilation Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000006698 induction Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000007786 learning performance Effects 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 238000011068 loading method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011946 reduction process Methods 0.000 description 2
- 208000023504 respiratory system disease Diseases 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 208000007590 Disorders of Excessive Somnolence Diseases 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 208000000224 Night Terrors Diseases 0.000 description 1
- 206010029412 Nightmare Diseases 0.000 description 1
- 208000013738 Sleep Initiation and Maintenance disease Diseases 0.000 description 1
- 206010041010 Sleep terror Diseases 0.000 description 1
- 206010041347 Somnambulism Diseases 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 210000003403 autonomic nervous system Anatomy 0.000 description 1
- 206010006514 bruxism Diseases 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000037213 diet Effects 0.000 description 1
- 235000005911 diet Nutrition 0.000 description 1
- 235000006694 eating habits Nutrition 0.000 description 1
- 206010020765 hypersomnia Diseases 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 206010022437 insomnia Diseases 0.000 description 1
- 230000004630 mental health Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000004237 neck muscle Anatomy 0.000 description 1
- 210000000653 nervous system Anatomy 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000241 respiratory effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000036578 sleeping time Effects 0.000 description 1
- 206010041232 sneezing Diseases 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/02—Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
- A61B5/024—Detecting, measuring or recording pulse rate or heart rate
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/08—Detecting, measuring or recording devices for evaluating the respiratory organs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT 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
Definitions
- the present invention is intended to analyze a user's sleeping state, and more specifically, to analyze the sleeping state based on acoustic information obtained from the user's sleeping environment.
- the number of patients with sleep disorders in Korea increased by about 8% on average per year from 2014 to 2018, and the number of patients treated for sleep disorders in Korea in 2018 reached approximately 570,000.
- Republic of Korea Patent Publication No. 10-2003-0032529 receives the user's physical information and outputs vibration and/or ultrasonic waves in the frequency band detected through repetitive learning according to the user's physical condition during sleep to induce optimal sleep.
- Republic of Korea Patent Publication No. 10-2022-0015835 relates to an electronic device for evaluating sleep quality and an operating method in the electronic device, which identifies the sleep cycle based on sleep-related information acquired by the wearable device during sleep time. And it suggests a method to evaluate sleep quality accordingly.
- the conventional sleep analysis method using a wearable device had a problem in that sleep analysis was not possible when the wearable device was not properly contacted with the user's body or when the user was not wearing the wearable device. Additionally, when multiple users sleep in the same space, not only does the movement of the non-wearable device wearer interfere with the sleep analysis of the wearable device wearer, but there is also a problem in that sleep analysis for the non-wearable device wearer is impossible.
- the user can easily acquire acoustic information related to the sleep environment through a user terminal (e.g., a mobile terminal) carried by the user, and analyze the user's sleep stage based on the acquired acoustic information.
- a user terminal e.g., a mobile terminal
- the present invention was developed in response to the above-described background technology, and is intended to provide an artificial neural network model that determines the user's sleep state based on at least one of acoustic information or sleep environment information detected in the user's sleep environment.
- a method for generating a sleep analysis model that predicts a sleep state based on acoustic information is disclosed.
- the method of generating the sleep analysis model includes obtaining sleep sound information of a user, performing preprocessing on the sleep sound information, and performing analysis on the preprocessed sleep sound information to obtain sleep state information. May include steps.
- acquiring the sleep state information may include obtaining the sleep state information using a sleep analysis model including one or more network functions.
- the method for generating a sleep analysis model includes converting raw acoustic information in the time domain having amplitude, phase, and frequency into information including changes in the frequency components along the time axis. May include steps.
- the converted information may be visualized.
- it may include converting raw acoustic information in the time domain into information in the frequency domain having amplitude and frequency.
- the information on the converted frequency domain may be visualized.
- the step of converting acoustic information into spectrogram information in the frequency domain may be included.
- the step of applying the Mel scale to the spectrogram and converting it into a Mel spectrogram may be included.
- it may include performing preprocessing on raw acoustic information in the time domain or information in the frequency domain.
- performing preprocessing on the acoustic information may include performing spectral noise gating or deep learning-based noise reduction.
- the step of performing data augmentation on information in the frequency domain may be included.
- the data augmentation may include performing one or more of pitch shifting, TUT (Tile UnTile) augmentation, or noise-added augmentation.
- the noise addition augmentation may include a method of converting noise information and sleep sound information into the frequency domain, respectively, and adding information on the frequency domain.
- the noise addition augmentation may include a method of converting noise information and sleep sound information into a spectrogram, respectively, and adding information on the domain converted into a spectrogram.
- the noise addition augmentation may include a method of adding information on a domain converted into a Mel spectrogram to which a Mel scale is applied to the sleep sound information and noise information.
- a step of converting information in the frequency domain into a form close to a square may be included.
- the step of converting to a shape close to a square may include at least one of reshaping, resizing, and split-cat methods.
- the step of converting information or spectrogram in the frequency domain to dB scale may be included.
- it may include performing a normalization process so that the average of all values is 0 and the standard deviation is 1 for information or spectrogram in the frequency domain.
- it may include the step of using frequency domain information, spectrogram or mel spectrogram information as an image as input to the artificial intelligence model.
- the step may include configuring a plurality of frequency domain information, spectrograms, or mel spectrograms by dividing information, spectrograms, or mel spectrograms in the frequency domain into 30-second increments.
- the step of extracting sleep state information corresponding to each piece of information in the frequency domain, a spectrogram, or a mel spectrogram divided into 30 second units may be included.
- it may include the step of extracting sleep state information by using a series of information consisting of a plurality of frequency domain information, spectrograms, or mel spectrograms divided into 30 second units as input to a deep learning model. You can.
- the step of outputting a vector with reduced dimensionality by using information in the frequency domain, a spectrogram, or a mel spectrogram containing time series information as input to an artificial intelligence model is performed.
- the step of outputting a vector containing implied time series information by using a vector with reduced dimensionality as an input to an artificial intelligence model may be included.
- the step of outputting a vector containing time series information by using a vector with a reduced dimension as an input to an intermediate layer is performed by using a vector with a reduced dimension as an input to an intermediate layer.
- the intermediate layer where a vector of reduced dimension is input, performs linearization to imply vector information, normalization to input the average and variance, or a dropout step to deactivate some nodes. At least one of the models may be included.
- a method of utilizing an unsupervised learning model that learns using unlabeled data in which the correct answer is not labeled may be included.
- the unsupervised learning model used in one embodiment of the present invention may include a consistency training model using noise in the target environment.
- the consistency training model used in one embodiment of the present invention may include the step of performing learning with data to which noise has been intentionally added and data to which noise has not been intentionally added.
- the unsupervised learning model used in one embodiment of the present invention may include an unsupervised domain adaptation (UDA) model.
- UDA unsupervised domain adaptation
- the UDA model used in one embodiment of the present invention can perform primary learning using unlabeled data and labeled data, and secondary learning using unlabeled data. .
- learning can be performed using labeled data acquired in a specific environment and unlabeled data acquired in another environment or target environment.
- data acquired in a specific environment and data acquired in a different environment or target environment are input to the sleep analysis model and learned to extract commonalities between the data. It may include steps.
- commonalities between data obtained in a specific environment and data acquired in a different environment or target environment are used as input to the sleep analysis model to determine commonalities between the output data. It may include a learning step to classify differences between input data as input to a discriminator model.
- unlabeled data is used as input to the deep learning model to learn the class information contained in the predicted value of sleep state information output from the sleep analysis model to make it more reliable. May include steps.
- unlabeled data is used as input to a deep learning model and the output data is labeled with a pseudo label ( It can include the step of performing learning of a deep learning model by using it as a pseudo label.
- Semi-supervised learning using pseudo labels used in one embodiment of the present invention may include performing augmentation preprocessing on the image.
- the augmentation preprocessing method performed in semi-supervised learning using pseudo labels used in an embodiment of the present invention includes a weakly-augmented method that modulates the image relatively little, or a weakly-augmented method that modulates the image relatively little. At least one of the Strongly-augmented methods may be included.
- Augmentation preprocessing techniques performed in semi-supervised learning using pseudo labels used in an embodiment of the present invention include data augmentation and pitch shifting. It may include one or more of ation, TUT (Tile UnTile) augmentation, or noise-added augmentation techniques.
- Semi-supervised learning using pseudo labels used in one embodiment of the present invention is a weakly-augmented method that modulates images relatively little, and uses image information as input to a deep learning model. By using the output predicted value as a pseudo label, a method of performing learning based on it can be included.
- moving average technique may include one or more of the techniques, or the Exponential Weighted Moving Average technique.
- Semi-supervised learning using pseudo labels used in one embodiment of the present invention uses data obtained from the target environment or target group as input to a deep learning model to determine the output prediction value. It may include tuning the distribution so that it is formed in a direction that matches the distribution of the predicted value output using data obtained from a specific environment or comparison group as input to the deep learning model.
- Unsupervised learning and/or semi-supervised learning used in an embodiment of the present invention may include a method of performing dictionary learning so that the reliability of the predicted value for image information can be increased even if there is no label in the image data in the image domain. .
- Unsupervised learning and/or semi-supervised learning used in an embodiment of the present invention may include a method of damaging part of image information and then performing learning to predict the damaged part of image information.
- a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner is to analyze sleep state information using both sleep sound information and sleep environment information.
- the method includes: a first information acquisition step of acquiring sound information in the time domain related to the user's sleep; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; combining the first information and the second information into multimodal data; Extracting features by using the multimodal data as input to a multimodal learned deep learning model; And obtaining user sleep state information by using the extracted features as input to the deep learning model, including sleep sound. It is possible to provide a method for analyzing sleep state information using multimodal information and sleep environment information.
- the first information acquisition step may include performing preprocessing of the obtained first information
- the second information acquisition step may include performing preprocessing of the obtained second information
- performing preprocessing of the first information includes extracting first information features based on the first information
- performing preprocessing of the second information includes extracting first information features based on the first information. It may include extracting a second information feature.
- performing preprocessing of the first information includes performing data augmentation of the first information
- performing preprocessing of the second information includes performing data augmentation of the second information. It may include steps to perform.
- the deep learning model in the step of acquiring the user sleep state information may be a deep learning model based on natural language processing.
- performing preprocessing of the first information may include converting the first information in the time domain into information in the frequency domain.
- a non-transitory computer readout device storing one or more programs configured to be executed by one or more processors to analyze sleep state information including sleep sound information and sleep environment information in a multimodal manner.
- the one or more programs may provide a non-transitory computer-readable storage medium containing instructions to perform the methods described above.
- a smart device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner sound information in the time domain related to the user's sleep is acquired.
- a device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a can be provided.
- a first information preprocessing unit that performs preprocessing of the first information
- It may further include a second information preprocessing unit that performs preprocessing of the second information.
- a unit performing preprocessing of the first information may extract a first information feature based on the first information
- a unit performing preprocessing of the second information may extract a second information feature based on the second information.
- the preprocessing unit for the first information may perform data augmentation of the first information
- the preprocessing unit for the second information may perform data augmentation for the second information
- the artificial intelligence model for analyzing the user's sleep state information may be an artificial intelligence model based on natural language processing.
- the preprocessing unit that performs the first information preprocessing may convert first information in the time domain into information in the frequency domain.
- information on the frequency domain may be information including changes along the time axis of frequency components included in the first information on the time domain.
- a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes first information for acquiring sleep sound information related to the user's sleep. acquisition phase; Inferring first sleep state information by using the sleep sound information as input to a deep learning model; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; Inferring second sleep state information by using the user sleep environment information as input to an inference model; And analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition step of combining the first sleep state information and the second sleep state information to obtain user sleep state information.
- the first information acquisition step may convert first information on the time domain into information on the frequency domain.
- the step of inferring the first sleep state information includes using a Hypnogram indicating a sleep stage or a Hypnodensity graph indicating the reliability of the sleep stage as a probability as the first sleep state information. can be inferred.
- the step of inferring the second sleep state information includes inferring a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the second sleep state information. It can be characterized.
- the step of acquiring the user sleep state information further includes a sleep state information combining step of combining the first sleep state information and the second sleep state information.
- a method for analyzing sleep state information may be provided.
- the step of obtaining user sleep state information may further include a sleep state data augmentation step of performing data augmentation using the first sleep state information and the second sleep state information.
- the inference model may be an artificial intelligence sleep information inference model.
- user sleep state information may be inferred through an artificial intelligence learning model in order to obtain the user sleep state information.
- a non-transitory computer readout device stores one or more programs configured to be executed by one or more processors to analyze sleep state information using multimodal sleep sound information and sleep environment information.
- the one or more programs may provide a non-transitory computer-readable storage medium containing instructions to perform the methods described above.
- a smart device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner acquires sleep sound information related to the user's sleep, First information acquisition department; a first information inference unit that uses the sleep sound information as input to a deep learning model to infer first sleep state information; a second information acquisition unit that acquires user sleep environment information related to the user's sleep; a second sleep state information inference unit that uses the user sleep environment information as input to an inference model to infer second sleep state information; And analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition unit that combines the first sleep state information and the second sleep state information to obtain user sleep state information.
- Devices can be provided for this.
- the first information acquisition unit may be configured to convert first information on the time domain into information on the frequency domain.
- the first sleep state information inference unit infers a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the first sleep state information. It can be characterized as:
- the second sleep state information inference unit infers a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the second sleep state information. It can be characterized as:
- the user sleep state information acquisition unit may include a sleep state information combining unit that combines the first sleep state information and the second sleep state information.
- the user sleep state information acquisition unit further includes a sleep state data augmentation unit that performs data augmentation using the first sleep state information and the second sleep state information. can do.
- the inference model may be an artificial intelligence sleep information inference model.
- the user sleep state information acquisition unit may infer user sleep state information through an artificial intelligence learning model to obtain the user sleep state information.
- a method for acquiring sleep sound information related to the user's sleep 1 Information acquisition phase; Inferring first sleep state information by using the sleep sound information as input to a deep learning model; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; A method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition step of combining the first sleep state information and the second information to obtain user sleep state information. can be provided.
- the second information may be user information obtained through a smart watch.
- inferring the first sleep state information may include performing preprocessing of the obtained first sleep information into first sleep information.
- performing preprocessing of the first information may include converting the first information on the time domain to information on the frequency domain.
- the step of obtaining user sleep state information may further include a sleep state information combining step of combining the first sleep state information and the second information.
- the step of obtaining user sleep state information further includes a sleep state data augmentation step of performing data augmentation using the first sleep state information and the second information. can do.
- inference of user sleep state information may be performed through an artificial intelligence learning model to obtain the user sleep state information.
- a non-transitory device storing one or more programs configured to be executed by one or more processors to analyze sleep state information using multimodal sleep sound information and sleep environment information according to an embodiment to achieve the purpose of the present invention
- a non-transitory computer-readable storage medium may be provided, wherein the one or more programs include instructions to perform one or more of the methods described above.
- the device in a device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, includes acquiring sleep sound information related to the user's sleep. First information acquisition department; An inference unit that uses the sleep sound information as input to a deep learning model to determine first sleep state information; a second information acquisition unit that acquires user sleep environment information related to the user's sleep; Provides a device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition unit that combines the first sleep state information and the second information to obtain user sleep state information. can do.
- the second information may be user information obtained through a smart watch.
- the first sleep state information inference unit may include a first sleep information preprocessing unit for the obtained first sleep information.
- the first information preprocessing unit may convert the first information on the time domain into information on the frequency domain.
- the user sleep state information acquisition unit may further include a sleep state information combining unit that combines the first sleep state information and the second information.
- the user sleep state information acquisition unit may further include a sleep state data augmentation unit that performs data augmentation using the first sleep state information and the second information. there is.
- the user sleep state information acquisition unit may infer user sleep state information through an artificial intelligence learning model to obtain the user sleep state information.
- a method for detecting a real-time sleep event based on at least one of sleep sound information or sleep environment information may be provided.
- a method of learning a sleep analysis artificial intelligence model can be provided by an unsupervised learning method or a semi-supervised learning method.
- the learning method according to embodiments of the present invention may include semi-supervised learning based on sequential consistency loss. It can be learned to take into account the time-series characteristics of acoustic information through semi-supervised learning based on sequential consistency loss according to an embodiment of the present invention.
- the learning method according to an embodiment of the present invention may include learning based on semi-supervised contrast loss.
- Learning based on semi-supervised contrast loss according to an embodiment of the present invention may include setting a class reliability threshold and adjusting the position in the vector space based on anchor data based on the set class reliability threshold. .
- the anchor data used for learning based on semi-supervised contrast loss is at least one of labeled data given a label for the sleep state or pseudo-labeled data given a pseudo label for the sleep state. may include.
- a deep learning model can be provided for analyzing the user's sleep state information through multi-task learning based on acoustic information.
- the deep learning model may have multiple heads.
- each head included in the multiple heads may perform one different task among the multiple tasks.
- the plurality of tasks may include tasks such as multimodal learning, sleep event analysis, and sleep stage analysis.
- the present invention was developed in response to the above-described background technology, and can provide an artificial neural network model that determines the user's sleep state based on at least one of acoustic information or sleep environment information detected in the user's sleep environment.
- FIGS. 1A to 1C are conceptual diagrams showing a system in which various aspects can be implemented for generating a sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
- Figure 2 is an exemplary diagram illustrating a plurality of sleep sound information acquired in various environments.
- Figure 3 is a block diagram of a computing device for generating the sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
- Figure 4 is a diagram for explaining the process of acquiring sleep sound information in the sleep analysis method according to the present invention.
- Figure 5 is a conceptual diagram illustrating a privacy protection method using Mel spectrogram transformation for sleep sound information extracted from a user in the sleep analysis method according to the present invention.
- Figure 6 is a diagram for explaining a method of obtaining a spectrogram corresponding to sleep sound information in the sleep analysis method according to the present invention.
- Figure 7 is a schematic diagram showing one or more network functions for performing the sleep analysis method according to the present invention.
- Figure 8 is a diagram for explaining sleep stage analysis using a spectrogram in the sleep analysis method according to the present invention.
- Figure 9 is a diagram illustrating sleep event determination using a spectrogram in the sleep analysis method according to the present invention.
- Figure 10 is a diagram showing an experimental process for verifying the performance of the sleep analysis method according to the present invention.
- Figure 11 is a graph verifying the performance of the sleep analysis method according to the present invention, and is a diagram comparing the polysomnography (PSG) result (PSG result) and the analysis result (AI result) using the AI algorithm according to the present invention. am.
- Figure 12 is a graph verifying the performance of the sleep analysis method according to the present invention, showing polysomnography (PSG) results in relation to sleep apnea and hypoventilation (hypopnea) and polysomnography (PSG) results according to the present invention.
- PSG polysomnography
- This is a diagram comparing the analysis results (AI results) using AI algorithms.
- Figure 13 is a schematic diagram of a data set according to an embodiment of the present invention.
- Figure 14 is a diagram for explaining noise reduction according to an embodiment of the present invention.
- Figure 15 is a diagram for explaining pitch shifting according to an embodiment of the present invention.
- FIG. 16 is a diagram illustrating a preprocessing method for converting information or a spectrogram in the frequency domain into a nearly square form according to an embodiment of the present invention.
- Figures 17a and 17b are diagrams for explaining the overall structure of a sleep analysis model according to an embodiment of the present invention.
- Figure 18 is a diagram for explaining a feature extraction model and a feature classification model according to an embodiment of the present invention.
- Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
- Figure 20 is a diagram for explaining an unsupervised or semi-supervised learning model according to an embodiment of the present invention.
- Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention.
- FIG 22 is a diagram for explaining Unsupervised Domain Adaptation (UDA) according to an embodiment of the present invention.
- UDA Unsupervised Domain Adaptation
- FIG. 23 is a diagram for explaining the TUT (Tile UnTile) augmentation method according to an embodiment of the present invention.
- Figure 24 is a diagram for explaining the structure of a sleep analysis model using a natural language processing model according to an embodiment of the present invention.
- Figure 25 shows a flowchart illustrating a method for analyzing a user's sleep state through sound information according to an embodiment of the present invention.
- Figure 26 is a flow chart to explain a method for analyzing a sleep state according to an embodiment of the present invention, including a process of combining sleep sound information and sleep environment information into multimodal data.
- Figure 27 is a flowchart for explaining a method for analyzing a sleep state according to an embodiment of the present invention, including the step of combining the inferred sleep sound information and sleep environment information into multimodal data.
- Figure 28 is a flow chart to explain a method for analyzing a sleep state according to an embodiment of the present invention, including the step of combining inferred sleep sound information with sleep environment information and multimodal data.
- Figures 29a and 29b are diagrams for explaining the performance of noise addition and sleep event determination of a sleep analysis model in the sleep analysis method according to embodiments of the present invention.
- Figure 30 is a diagram illustrating an example of a learning method based on consistency loss or sequential consistency loss when the number of samples in the sequence is 6, according to an embodiment of the present invention.
- Figure 31 is an example diagram for explaining the operating mechanism of a learning method based on semi-supervised contrast loss according to an embodiment of the present invention.
- Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment.
- Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment.
- Figure 33 is a table comparing sleep analysis results based on PSG audio data and analysis results of a sleep analysis model according to an embodiment of the present invention.
- Figure 34 is a diagram illustrating a linear regression analysis function used to analyze sleep events that occur during sleep, according to an embodiment of the present invention.
- the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and the “unit” or “module” performs certain roles.
- “part” or “module” is not limited to software or hardware.
- a “unit” or “module” may be configured to reside on an addressable storage medium and may be configured to run on one or more processors.
- a “part” or “module” refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.
- the functionality provided within components and “parts” or “modules” can be combined into smaller components and “parts” or “modules” or into additional components and “parts” or “modules”. could be further separated.
- a computer refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations that operate on the hardware device.
- a computer can be understood to include, but is not limited to, a smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.
- each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and depending on the embodiment, at least part of each step may be performed in a different device.
- FIG. 1A to 1C illustrate a conceptual diagram illustrating a system in which various aspects of a method for generating a sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention can be implemented.
- Figure 3 is a block diagram of a computing device for generating the sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
- a system may include a computing device 100, a user terminal 10, an external server 20, and a network.
- FIG. 1A is only one example of a system for implementing the present invention, and the configuration is not limited to the embodiment shown in FIG. 1A, and may be added, changed, or deleted as necessary. .
- Figures 1B and 1C show a conceptual diagram showing a system in which various aspects of performing a sleep analysis method related to another embodiment of the present invention can be implemented.
- the present invention provides that the computing device 100, the user terminal 10, and the external server 20 can mutually transmit and receive data for the system according to embodiments of the present invention through a network. You can.
- the computing device 100 or the external server 20 may be a server that provides cloud computing services. More specifically, the computing device 100 or the external server 20 may be a type of Internet-based computing server that provides a cloud computing service that processes information not on the user's computer but on another computer connected to the Internet.
- the cloud computing service may be a service that stores data on the Internet and allows users to use it anytime, anywhere through Internet access without having to install necessary data or programs on their computer.
- the cloud computing service can be used to easily manipulate and manipulate data stored on the Internet. You can easily share and forward with a click.
- cloud computing services not only allow you to simply store data on a server on the Internet, but also allow you to perform desired tasks using the functions of applications provided on the web without having to install a separate program, and allow multiple people to view documents at the same time. It may be a service that allows you to work while sharing.
- cloud computing services may be implemented in at least one of the following forms: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), virtual machine-based cloud server, and container-based cloud server. . That is, the computing device 100 or the external server 20 of the present invention may be implemented in at least one form of the cloud computing service described above.
- the specific description of the cloud computing service described above is merely an example, and may include any platform for constructing the cloud computing environment of the present invention.
- Networks include Public Switched Telephone Network (PSTN), x Digital Subscriber Line (xDSL), Rate Adaptive DSL (RADSL), Multi Rate DSL (MDSL), and Very High Speed DSL (VDSL). ), UADSL (Universal Asymmetric DSL), HDSL (High Bit Rate DSL), and local area network (LAN) can be used.
- PSTN Public Switched Telephone Network
- xDSL Digital Subscriber Line
- RADSL Rate Adaptive DSL
- MDSL Multi Rate DSL
- VDSL Very High Speed DSL
- UADSL Universal Asymmetric DSL
- HDSL High Bit Rate DSL
- LAN local area network
- CDMA Code Division Multi Access
- TDMA Time Division Multi Access
- FDMA Frequency Division Multi Access
- OFDMA Orthogonal Frequency Division Multi Access
- SC-FDMA Single Carrier-FDMA
- the network according to embodiments of the present invention can be configured regardless of the communication mode, such as wired or wireless, and is composed of various communication networks such as a personal area network (PAN) and a wide area network (WAN). It can be. Additionally, the network may be the well-known World Wide Web (WWW), or may use wireless transmission technology used for short-distance communication, such as Infrared Data Association (IrDA) or Bluetooth.
- IrDA Infrared Data Association
- Bluetooth Bluetooth
- the user terminal 10 is a terminal that can receive information related to the user's sleep through information exchange with the computing device 100, and may refer to a terminal owned by the user.
- the user terminal 10 may be a terminal related to a user who wants to improve his or her health through information related to his or her sleeping habits.
- This user terminal 10 may refer to any type of entity(s) in the system that has a mechanism for communication with an external server 20 or computing device 100.
- these user terminals 10 include personal computers (PCs), notebooks (note books), mobile terminals, smart phones, tablet PCs, artificial intelligence (AI) speakers, and It may include artificial intelligence TVs, wearable devices, home appliances, etc., and may include all types of terminals that can connect to wired/wireless networks.
- the user terminal 10 may include an arbitrary server implemented by at least one of an agent, an application programming interface (API), and a plug-in. Additionally, the user terminal 10 may include an application source and/or client application.
- API application programming interface
- the external server 20 may be a server that stores information about a plurality of learning data for learning a neural network.
- the external server 20 may be a digital device, such as a laptop computer, notebook computer, desktop computer, web pad, or mobile phone, equipped with a processor and equipped with memory and computing power.
- the external server 20 may be a web server that processes services.
- the types of servers described above are merely examples and the present invention is not limited thereto.
- the plurality of learning data may include, for example, sleep sound information obtained from a plurality of user terminals, or health checkup information and sleep checkup information obtained at a hospital. A detailed description of the learning dataset will be provided later.
- the external server 20 may be at least one of a hospital server and a government server, and may be a server that stores information about a plurality of polysomnography records, electronic health records, and electronic medical records.
- a polysomnographic record may include information on the sleep examination subject's breathing and movements during sleep, and information on sleep diagnosis results (eg, sleep stages, etc.) corresponding to the information.
- Information stored in the external server 20 can be used as learning data, verification data, and test data to train the neural network in the present invention.
- the external server 20 may record an artificial intelligence model for analyzing sleep state information.
- sleep state information can be generated based on the sleep environment information through an artificial intelligence model mounted on the external server.
- the acquired sleep sound information is transmitted to an external device. It is transmitted to the server, and the external server may generate sleep state information based on the received sleep sound information.
- the computing device 100 of the present invention may receive a plurality of sleep sound information, health checkup information, or sleep checkup information from the external server 20, and construct a learning data set based on the corresponding information.
- the computing device 100 may generate a sleep analysis model that calculates sleep state information in response to sleep sound information by performing learning on one or more network functions through a learning data set.
- At least one of the user terminal 10, the computing device 100, or the external server 20 may generate a sleep analysis model.
- the sleep analysis model may be a neural network model that predicts information about the user's sleep state based on information related to the user's sleep sound that is non-invasively acquired during the user's sleep.
- At least one of the electronic devices according to embodiments of the present invention may generate a sleep analysis model that outputs the user's sleep state information by receiving the user's sleep sound information as input.
- a user can obtain monitoring information related to his or her sleep through the user terminal 10.
- the electronic devices When at least one of the electronic devices according to an embodiment of the present invention acquires or receives sleep sound information, it processes the sleep sound information as an input to the sleep analysis model to cause the sleep analysis model to output sleep state information. can do.
- sleep sound information obtained from an electronic device such as the user terminal 10 may have a low signal-to-noise ratio (SNR).
- the microphone module provided in the user terminal 10 carried by the user may be configured as a MEMS (Micro-Electro Mechanical System) since it must be provided in the user terminal 10 of a relatively small size.
- the microphone module provided in the user terminal 10 may be, for example, a common microphone (low-performance, small microphone). These microphone modules can be manufactured very small, but can have a lower signal-to-noise ratio than a condenser microphone or dynamic microphone.
- a low signal-to-noise ratio may mean that the ratio of noise, which is a sound that is not to be identified, to the sound that is to be identified is high, making it difficult to identify the sound (i.e., unclear).
- This sleep sound information is information about very small sounds (i.e., sounds that are difficult to distinguish) such as the user's breathing and movement, and is acquired along with other sounds during the sleep environment, so the microphone module as described above (i.e., low When acquired through a microphone module with a high signal-to-noise ratio, deriving and analyzing information can be very difficult.
- At least one of various electronic devices can convert and/or adjust sleep sound data that is unclearly acquired including a lot of noise into data that can be analyzed, and convert and/or Learning for artificial neural networks can be performed using adjusted data.
- the learned neural network e.g., acoustic analysis model
- the sleep acoustic information e.g., raw sleep acoustic information
- the user's sleep state information can be obtained based on information including changes along the time axis of the frequency components included in, information in the frequency domain, or a spectrogram).
- the computing device 100 collects sleep sound with a low signal-to-noise ratio through a commonly used user terminal (e.g., artificial intelligence speaker, bedroom IoT device, mobile phone, etc.) to collect sound.
- a commonly used user terminal e.g., artificial intelligence speaker, bedroom IoT device, mobile phone, etc.
- the processed data can be processed to provide sleep state information related to changes in sleep stages. This eliminates the need to have a contact microphone on the user's body to obtain clear sound, and also allows sleep status to be monitored in a typical home environment with just a software update without purchasing an additional device with a high signal-to-noise ratio. This can provide the effect of increasing convenience.
- Monitoring information related to sleep may include, for example, sleep state information related to when the user fell asleep, time spent sleeping, time of waking up, etc., or specifically sleep stage information related to changes in sleep stage during sleep. there is.
- sleep stage information may mean information on changes in the user's sleep to light sleep, normal sleep, deep sleep, or REM sleep at each time point during the user's 8 hours of sleep last night.
- the detailed description of the above-described sleep stage information is only an example, and the present invention is not limited thereto.
- sleep analysis according to the present invention may be performed on the user terminal 10 or the external server 20 without a separate computing device.
- FIG. 1C shows a conceptual diagram showing a system in which various aspects of various electronic devices related to another embodiment of the present invention can be implemented.
- the electronic devices shown in FIG. 1C can perform at least one of the operations performed by various devices according to embodiments of the present invention.
- operations performed by various devices include acquiring sleep environment information or environmental sensing information, learning a sleep analysis model, and inferring the sleep state through the sleep analysis model.
- receive information related to the user's sleep or sleep environment information transmit or receive environmental sensing information, determine environmental sensing information, process or process data, process services, or provide services.
- analyze sleep status construct a learning data set based on information related to the user's sleep, store information about acquired data or a plurality of learning data for learning of a neural network, or transmit or receive various information.
- the electronic devices shown in FIG. 1C may individually perform the operations performed by various devices according to the embodiment of the present invention, but may also perform one or more operations simultaneously or in time series.
- the electronic device may be an electronic device within the range of the area 11a that can obtain object state information, such as information about the user's movement or breathing.
- object state information such as information about the user's movement or breathing.
- area 11a where object state information or environmental sensing information, such as information about the user's movement or breathing, can be obtained will be referred to as “area 11a.”
- the electronic device (reference numerals 1a and 1d) may be a device composed of a combination of two or more electronic devices.
- electronic devices may be electronic devices connected to a network within the area 11a.
- electronic devices may be electronic devices that are not connected to the network within the area 11a.
- electronic devices may be electronic devices outside the range of area 11a.
- FIG. 1C there may be a network that interacts with electronic devices within the scope of the area 11a, and there may be a network that interacts with electronic devices outside the scope of the area 11a.
- a network that interacts with electronic devices within the scope of area 11a may serve to transmit and receive information for controlling smart home appliances.
- the network interacting with electronic devices within the scope of area 11a may be, for example, a local area network or a local network.
- the network interacting with electronic devices within the scope of area 11a may be, for example, a remote network or a global network.
- the electronic devices may distribute data to each other or perform one or more operations separately.
- the electronic devices may perform various operations independently of each other.
- the computing device 100 may include a network unit 110, a memory 120, and a processor 130.
- the components included in the above-described computing device 100 are exemplary, and the scope of the present invention is not limited to the above-described components. That is, depending on the implementation aspect of the embodiments of the present invention, additional components may be included or some of the above-described components may be omitted.
- the computing device 100 may include a user terminal 10 and a network unit 110 that transmits and receives data with the external server 20.
- the network unit 110 may transmit and receive data for performing a method for analyzing a sleep state based on sleep sound information according to an embodiment of the present invention, to other computing devices, servers, etc. That is, the network unit 110 may provide a communication function between the computing device 100, the user terminal 10, and the external server 20.
- the network unit 110 may receive sleep sound information from the user terminal 10 and transmit sleep state information corresponding to the received sleep sound information to the user terminal 10.
- the network unit 110 may receive sleep checkup records and electronic health records for a plurality of users from a hospital server. Additionally, the network unit 110 may allow information to be transferred between the computing device 100, the user terminal 10, and the external server 20 by calling a procedure with the computing device 100.
- the network unit 110 may use various wired/wireless communication systems, such as the network described above. Since the description of the network was previously described, overlapping descriptions will be omitted.
- the memory 120 is configured to generate a sleep analysis model that predicts the sleep state based on sound information according to an embodiment of the present invention and to analyze the sleep state through sleep sound information.
- a computer program for performing the method may be stored, and the stored computer program may be read and driven by the processor 130.
- the memory 120 may store any type of information generated or determined by the processor 130 and any type of information received by the network unit 110.
- the memory 120 may store data related to the user's sleep. For example, the memory 120 may temporarily or permanently store input/output data (e.g., sleep sound information related to the user's sleep environment, sleep state information corresponding to sleep sound information, etc.).
- the memory 120 is a flash memory type, hard disk type, multimedia card micro type, or card type memory (e.g. (e.g. SD or -Only Memory), and may include at least one type of storage medium among magnetic memory, magnetic disk, and optical disk.
- the computing device 100 may operate in connection with web storage that performs a storage function of the memory 120 on the Internet.
- the description of the memory described above is only an example, and the present invention is not limited thereto.
- the processor 130 may be composed of one or more cores, such as a central processing unit (CPU) of a computing device, and a general purpose graphics processing unit (GPGPU). , may include a processor for data analysis, machine learning, or deep learning, such as a tensor processing unit (TPU).
- cores such as a central processing unit (CPU) of a computing device, and a general purpose graphics processing unit (GPGPU).
- GPU general purpose graphics processing unit
- TPU tensor processing unit
- the processor 130 may read a computer program stored in the memory 120 and perform data processing for model learning. According to one embodiment of the present invention, the processor 130 may perform calculations for learning a neural network. The processor 130 performs calculations for learning a neural network, such as processing input data for learning in machine learning or deep learning, extracting features from input data, calculating errors, and updating the weights of the neural network using backpropagation. can do.
- CPU, GPGPU, and TPU of the processor 130 may process learning of the network function.
- CPU and GPGPU can work together to process learning of network functions and data classification using network functions.
- the processors of a plurality of computing devices can be used together to process learning of network functions and data classification using network functions.
- a computer program executed in a computing device according to an embodiment of the present invention may be a CPU, GPGPU, or TPU executable program.
- network function may be used interchangeably with artificial neural network or neural network.
- a network function may include one or more neural networks, and in this case, the output of the network function may be an ensemble of the outputs of one or more neural networks.
- the model may include a network function.
- a model may include one or more network functions, in which case the output of the model may be an ensemble of the outputs of one or more network functions.
- the processor 130 may read a computer program stored in the memory 120 and execute a sleep analysis model according to an embodiment of the present invention. According to an embodiment of the present invention, the processor 130 may perform calculations to calculate sleep analysis information based on sleep sensing data. Alternatively, according to an embodiment of the present invention, the processor 130 may perform calculations to learn a sleep analysis model.
- the processor 130 may typically process the overall operation of the computing device 100.
- the processor 130 can provide or process appropriate information or functions to the user terminal by processing signals, data, information, etc. input or output through the components discussed above or by running an application program stored in the memory 120. there is.
- the processor 130 may acquire a plurality of learning data to perform learning on a neural network (or one or more network functions).
- the plurality of learning data may be related to a plurality of sleep sound information related to each of a plurality of users.
- the processor 130 may acquire a plurality of sleep sound information related to the sleep of a plurality of users, and perform learning on one or more network functions through a learning data set including the plurality of sleep sound information to model a sleep analysis model. can be created.
- acquiring a plurality of sleep sound information may be acquiring or loading sleep sound information stored in the memory 120.
- a plurality of sleep sound information may be received from the external server 20 through the network unit 110, and the received sleep sound information may be stored in the memory 120.
- acquisition of sleep sound information may involve receiving or loading data from another storage medium, another computing device, or a separate processing module within the same computing device based on wired/wireless communication means.
- sleep state information may be information related to whether the user is sleeping.
- the sleep state information may include at least one of first sleep state information indicating that the user is before sleep, second sleep state information indicating that the user is sleeping, and third sleep state information indicating that the user is after sleep.
- the processor 130 may determine that the user is in a pre-sleep state (i.e., before going to bed), and the second sleep state information is inferred. In this case, it may be determined that the user is in a sleeping state, and if third sleep state information is obtained, it may be determined that the user is in a post-sleep state (i.e., waking up).
- This sleep state information may be obtained based on environmental sensing information or actigraphy.
- Environmental sensing information may be sensing information obtained in a non-contact manner in the space where the user is located.
- the processor 130 stores acquired environmental sensing information (sound information related to cleaning, sound information related to food cooking, sound information related to watching TV, sleep sound information acquired during sleep, etc.), actigraphy, biometric information, etc. Based on this, sleep state information can be extracted.
- sleep sound information acquired during the user's sleep may include sounds generated as the user tosses and turns during sleep, sounds related to muscle movements, or breathing sounds during sleep. That is, sleep sound information in the present invention may mean sound information related to movement patterns and breathing patterns related to the user's sleep.
- sleep state information includes, in addition to sleep stage information, information related to breathing during sleep, bruxism information, whether coughing, degree of coughing, whether sneezing, tossing and turning information, sleep talking information, sleep events, etc. It can contain various information related to.
- the processor 130 may extract sleep stage information.
- Sleep stage information may be extracted based on the user's environmental sensing information. Sleep stages can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). there is.
- the sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer. Through sleep stage analysis, it is possible to predict not only sleep-related sleep quality but also various sleep events, such as sleep disorders (e.g., sleep apnea) and their underlying causes (e.g., snoring).
- sleep environment information of the present invention may be obtained through the user terminal 10.
- Sleep environment information may refer to information related to sleep obtained in the space where the user is located.
- Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method.
- Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc.
- sleep environment information may be acoustic information obtained in the bedroom where the user sleeps.
- sleep environment information acquired through the user terminal 10 may be information that serves as the basis for obtaining the user's sleep state information in the present invention.
- sleep state information related to whether the user is before, during, or after sleep may be obtained through sleep environment information obtained in relation to the user's activities.
- the sleep environment information may include various information such as the user's heart rate, the user's breathing, illumination level, and noise information regarding the user's sleep environment.
- sleep environment information includes noise information commonly occurring in daily life (sound information related to cleaning, sound information related to food cooking, sound information related to watching TV, cat sounds, dog sounds, bird sounds, car sounds, wind noise, It may be at least one of (e.g., rain sounds, etc.) or other biometric information (e.g., electrocardiogram, brain wave, pulse information, information on muscle movement, etc.).
- Figure 13 is a schematic diagram of a data set according to an embodiment of the present invention.
- Data according to an embodiment of the present invention may be raw acoustic information collected through a microphone.
- raw acoustic information may be information in the time domain having amplitude, phase, and frequency.
- data according to an embodiment of the present invention may be raw sound information converted into information including changes in the frequency components of the raw sound information along the time axis.
- data according to an embodiment of the present invention may be raw acoustic information converted into information in the frequency domain rather than information in the time domain.
- Fourier Transform or Wavelet Transform can be performed to convert the information into frequency domain information.
- information converted to the frequency domain may be information having amplitude and frequency.
- data according to an embodiment of the present invention may correspond to a spectrogram obtained by converting acoustic information into information in the frequency domain.
- data according to an embodiment of the present invention may be a Mel spectrogram in which the Mel scale is applied to the spectrogram.
- a Mel-Spectrogram can be obtained through a Mel-Filter Bank for the spectrogram.
- the parts of the human cochlea that vibrate may differ depending on the frequency of voice data.
- the human cochlea has the characteristic of detecting frequency changes well in low frequency bands and having difficulty detecting frequency changes in high frequency bands. Accordingly, a Mel spectrogram can be obtained from the spectrogram using a Mel filter bank so as to have a recognition ability similar to the characteristics of the human cochlea for voice data.
- the mel-filter bank may apply a small number of filter banks in a low frequency band and apply a wider filter bank toward higher frequencies.
- the processor 130 can obtain a Mel spectrogram by applying a Mel filter bank to the spectrogram to recognize voice data similar to the characteristics of the human cochlea.
- the Mel spectrogram may include frequency components that reflect human hearing characteristics. That is, in the present invention, the spectrogram generated in response to sleep sound information and subject to analysis using a neural network may include the Mel spectrogram described above.
- the information converted to information in the frequency domain is a domain with amplitude and frequency, and is information containing changes along the time axis of the frequency components of acoustic information. It may have been converted.
- data according to embodiments of the present invention is a visualization of the above-described information and can be input into an artificial intelligence model based on image processing.
- raw acoustic information converted into information including changes in the frequency components along the time axis can be visualized and used as input to an artificial intelligence model.
- information converted to the frequency domain can be visualized and used as input to an artificial intelligence model.
- the artificial intelligence model into which the above information is input may be an image processing-based artificial intelligence model.
- sleep sound information among sleep state information may be collected through polysomnography (PSG) in a hospital environment, and may be collected by a user in a home environment using a wearable device or smartphone, etc. It can also be collected through the microphone built into the terminal.
- PSG polysomnography
- the data set according to an embodiment of the present invention can be collected and constructed through electroencephalography (Video-EEG, video-electroencephalography) during polysomnography (PSG) or through a microphone during polysomnography (PSG).
- electroencephalography Video-EEG, video-electroencephalography
- PSG polysomnography
- PSG polysomnography
- the data set according to an embodiment of the present invention may be constructed by collecting acoustic signals generated during sleep through a microphone built into an electronic device such as a user terminal.
- the processor 130 may derive the final sleep analysis result using weights. Specifically, the processor 130 may apply the same weight to the first sleep analysis result and the sleep analysis result using sleep sound information to derive the second sleep analysis result. Alternatively, the processor 130 may derive a secondary sleep analysis result by applying different weights to the first sleep analysis result and the sleep analysis result using sleep sound information. For example, the final secondary sleep analysis results can be derived by placing a 30% weight on the contact-type primary sleep analysis based on HRV and Actigraphy, and a 70% weight on the AI analysis using sleep sounds.
- the processor 130 determines that the user has entered the corresponding sleep stage only when the sleep stage in the first and second sleep analysis results completely matches, and derives the final sleep analysis result. You can.
- the processor 130 may use a method of learning an AI sleep analysis model that uses at least one of biometric information (Bio-Signal), movement information (ACTIGRAPHY), and sleep sound information (SOUND) as input.
- biometric information Bio-Signal
- ACTIGRAPHY movement information
- SOUND sleep sound information
- the processor 130 first performs a secondary sleep analysis using sleep sound information (SOUND) using an AI sleep analysis model described later, and then adds AI certainty for the sleep stage for each time period. extract it as an enemy. If the extracted certainty is less than a predetermined value, the sleep stage result derived by the first sleep analysis is adopted as the sleep stage for the corresponding time period. In other words, more reliable sleep analysis results can be derived by additionally adopting the first sleep analysis results, focusing on the second sleep analysis results.
- SOUND sleep sound information
- the processor 130 first secures statistics of parts that are inconsistent with actual analysis results in the AI sleep analysis model, which will be described later. Statistics may be entered by a user, but may also be independently obtained through data from multiple users. The processor 130 may center around the secondary sleep analysis results (SOUND-based analysis) and additionally adopt the primary sleep analysis results in areas where the obtained statistics do not match the actual analysis results.
- SOUND-based analysis secondary sleep analysis results
- the processor 130 learns an AI sleep analysis model based on the primary sleep analysis results obtained by bio-signal and movement information (ACTIGRAPHY) and sleep sound information (SOUND). method can be used.
- the learning method of the AI sleep analysis model will be explained in more detail below, but briefly explained, by inputting two pieces of information (first sleep analysis result and sleep sound information) into the input layer of the artificial intelligence model, sleep is determined by two factors.
- An AI sleep analysis model that performs analysis can be created.
- Sleep stages can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4).
- Sleep stage settings may be defined based on generally accepted sleep stages, but may also be arbitrarily set in various ways depending on the designer. Through sleep stage analysis, not only sleep quality but also sleep diseases (e.g. sleep apnea) and their underlying causes (e.g. snoring) can be predicted.
- a method for learning and predicting a plurality of sleep state information according to an embodiment of the present invention will be described using an example.
- the specific description related to the sleep state described below is only an example, and the present invention is not limited thereto, and the present invention is not limited thereto, and sleep events such as other sleep state information (e.g., movement information, snoring information, sleep disease information, etc.) not mentioned
- sleep events such as other sleep state information (e.g., movement information, snoring information, sleep disease information, etc.) not mentioned
- learning about differences in sleep state information according to at least one of information) and/or differences in environment e.g., race, etc.
- Acoustic information acquired over a long time interval may be required to learn or predict sleep stage information.
- sleep state information other than sleep stage information (e.g., sleep event information such as snoring or apnea information)
- information obtained during a relatively short time interval e.g., 1 minute
- a relatively short time interval e.g. 1 minute
- multiple sleep states May include methods of performing to learn information.
- it may include a method of learning a plurality of sleep state information by visualizing information including changes along the time axis of the frequency component of the acquired acoustic information as input to an image processing-based artificial intelligence model.
- the output information can be input to different feature classification models to perform learning.
- various sleep state information can be complementarily learned based on one sound information.
- an artificial intelligence model that only learns sleep stages may incorrectly predict a wake state if a state that generates loud noise, such as apnea or snoring, is recognized.
- the above problem can be prevented as a result of complementary learning of other sleep state information such as apnea or snoring in addition to sleep stage.
- Figure 2 is an exemplary diagram illustrating a plurality of sleep sound information acquired in various environments.
- Sleep sound information is information related to sleep sounds, and may include, for example, sounds generated as the user tosses and turns during sleep, sounds related to muscle movement, or sounds related to the user's breathing during sleep. That is, the sleep sound information of the present invention may include sound information related to the user's movement patterns and breathing patterns during sleep.
- sleep sound information is related to sounds related to breathing and body movement, so it may be a very quiet sound.
- the processor 130 may perform sound analysis by converting the sleep sound information into information or a spectrogram containing changes along the time axis of the frequency components of the raw sleep sound information.
- the converted information includes information showing how the frequency spectrum of the sound transforms over time, as described above, so that breathing or The efficiency of analysis can be improved by easily identifying movement patterns.
- each spectrogram may be configured to have a frequency spectrum of different concentration according to various sleep stages.
- the sleep sound information may be difficult to predict whether the sleep sound information is at least one of the awake state, REM sleep state, light sleep state, and deep sleep state based solely on changes in the energy level of the sleep sound information, but by converting the sleep sound information into a spectrogram, each frequency Since changes in the spectrum can be easily detected, analysis corresponding to small sounds (e.g., breathing and body movements) may be possible.
- small sounds e.g., breathing and body movements
- sleep sound information which is the basis for sleep state analysis, may include various noises.
- sleep sound information acquired corresponding to each of a plurality of users may be acquired in a different bedroom environment for each user and may include different types of noise. Consistent analysis or prediction of sleep sound information using a sleep analysis model may be difficult due to the influence of various types of noise as described above.
- the sleep sound information actually obtained may be different due to various noises generated depending on the bedroom environment or sound measurement device, and accordingly, the neural network model (i.e., sleep analysis model) may be different.
- Prediction information i.e., sleep state information
- Sleep acoustic information may be obtained.
- Figure 2 exemplarily shows that different types of sleep sound information are obtained as the same sound information is acquired through various sleep environments and/or various measuring devices.
- the background noise of the sleep sound information obtained may be different depending on the size or structure of the bedroom where the user sleeps.
- the sleep sound information obtained may be different due to various noises related to sounds generated in the space where the user sleeps (e.g., sounds of air conditioners, fans, pets, or refrigerators, etc.).
- the sleep sound information obtained in response to the same sleep sound may be different depending on the type of sound measurement device used to obtain sleep sound information.
- the connection between the microphone modules provided in both devices is Due to the difference, the first sleep sound information and the second sleep sound information may not be completely identical.
- sleep sound information may include various types of noise.
- the sleep sound information that the user wishes to personally obtain and analyze contains various noises as it is acquired through different bedroom environments and different sound measurement devices for each user, so consistent analysis using the sleep analysis model This can be difficult.
- a sleep analysis model can be created by training a neural network using data acquired in various noise-free environments as learning data.
- a user may sleep in a space (e.g., a hospital) where there is no noise or contains only predetermined noise and is equipped with an acoustic measurement device of predetermined performance, and acquire sleep acoustic information during sleep.
- the sleep sound information acquired in this way can be labeled with the correct answer (i.e., sleep stage) in response to each time point of the time-series sleep sound by a professional medical professional (e.g., sleep technician), and the sleep sound and labeled data can be Through this, learning on the neural network can be performed and a sleep analysis model can be created.
- the sleep analysis model generated in the above manner is a sleep environment with little or no noise or contains only predefined noise, and sleep sound information and sleep sound information acquired through a high-performance microphone module. Since the correct answer is learned through labeled learning data, there is a problem in that it is difficult to expect robust performance even for acoustic data acquired in various noise environments. In addition, since it is difficult to determine that it can be robust in various environments, there is a concern that generalization of the sleep analysis model will not be easy.
- the present invention is intended to easily provide sleep state information in the user's real life, accurate analysis should be possible even for sleep sound information containing various noises depending on the bedroom environment and sound measurement device of each individual user. .
- an electronic device is robust to sleep sound information including various background noises through adaptive learning of a neural network based on sleep sound information related to different domains.
- a sleep analysis model with performance can be created. Sleep sound information related to different domains may mean sleep sound information acquired by different methods in different environments.
- An electronic device generates a sleep analysis model with robust performance even in sleep sound information including various background noises through adaptive learning of a neural network based on sleep sound information related to different domains.
- the specific method of providing sleep state information through a specific method and sleep analysis model will be described in detail later.
- the processor 130 may obtain sleep state information based on acoustic information, actigraphy, and biometric information obtained from the user terminal 10. Specifically, the processor 130 may identify a singularity where information of a preset pattern is sensed in the acoustic information.
- the preset pattern information may be related to breathing and movement patterns related to sleep.
- the processor 130 may identify the point in time at which sound information of a preset pattern related to regular breathing, small body movement, or small breathing sounds, etc., is detected as a singular point in the sound information. Additionally, the processor 130 may obtain sleep sound information based on sound information obtained based on the identified singularity. The processor 130 may identify a singularity related to the user's sleep time from the sound information acquired in time series and obtain sleep sound information based on the singularity.
- FIG. 4 is a diagram for explaining the process of acquiring sleep sound information in the sleep analysis method according to the present invention.
- the processor 130 may identify a singularity (P) related to the user's sleep from the acoustic information (E).
- the processor 130 may acquire sleep sound information (SS) based on the identified singular point (P) and sound information acquired after the singular point (P).
- the waveforms and singularities related to sound in FIG. 4 are merely examples for understanding the present invention, and the present invention is not limited thereto.
- the processor 130 identifies the singularity (P) related to the user's sleep from the acoustic information, and thus extracts only the sleep acoustic information (SS) from the vast amount of environmental sensing information (i.e., acoustic information) based on the singularity (P). It can be obtained by extracting it.
- P singularity
- SS sleep acoustic information
- the processor 130 may obtain sleep state information related to whether the user is before sleep or in sleep based on the singular point (P) identified from the sound information (E). Specifically, if the singular point (P) is not identified, the processor 130 may determine that the user is before sleeping, and if the singular point (P) is identified, the processor 130 may determine that the user is sleeping after the singular point (P). there is. In addition, after the outlier P is identified, the processor 130 identifies a time point (e.g., waking up time) at which the preset pattern is not observed, and when the corresponding time point is identified, it determines that the user has woken up after sleeping. can do.
- a time point e.g., waking up time
- the processor 130 determines whether the user is before, during, or after sleep based on whether a singular point (P) is identified in the acoustic information (E) and whether sleep is continuously detected after the singular point is identified. Sleep state information related to can be obtained.
- the processor 130 may obtain sleep state information based on actigraphy or biometric information rather than acoustic information (E). It may be advantageous to obtain the user's movement information through a sensor unit in contact with the body. In the present invention, since the user's sleep state information is identified in advance using actigraphy or biometric information during the first sleep analysis, the reliability of the sleep state analysis can be further improved.
- the technical idea of obtaining sleep state information based on the above-described sleep-related pattern information or singularity is merely an example, and the present invention is not limited to performing inference based on preset pattern information or singularity. , It may include performing inference through an artificial intelligence model created to obtain sleep state information.
- the plurality of sleep sound information may include sleep sound information related to different domains.
- a plurality of sleep sound information may be configured to include a plurality of source data and a plurality of target data.
- the plurality of source data and the plurality of target data are information about sleep sounds related to different domains, and may be characterized as being acquired in different sleep environments.
- the plurality of source data may be acoustic data acquired in a professional sleep measurement environment (e.g., polysomnography) and may be related to the first domain, and the plurality of target data may be acquired in the daily sleep environment of individual users.
- the audio data may be related to the second domain.
- the plurality of target data may be a large amount of data (i.e., sleep sound information) acquired from multiple users as the computing device 100 provides a sleep analysis service.
- the plurality of target data may be sleep sound information acquired through the microphone module of the user terminal 10.
- the plurality of source data may be sleep sound information obtained in a space (e.g., hospital) where noise is absent or contains only predetermined noise and is equipped with an acoustic measurement device of predetermined performance. there is. Additionally, in one embodiment of the present invention, the plurality of source data is data labeled with information about a plurality of sleep states by a medical professional (eg, a sleep technician), and may be data containing predefined noise.
- a medical professional eg, a sleep technician
- the plurality of target data may include various types of noise depending on each individual's bedroom environment or may be sleep sound information acquired through each of a plurality of user terminals equipped with different microphone modules. You can. Additionally, in one embodiment of the present invention, the plurality of target data may be data in which information about the plurality of sleep states is not labeled and may be data containing undefined noise.
- the plurality of source data may be data related to a plurality of sleep sound data acquired through equipment set in a professional institution (e.g., a hospital) with minimal noise
- the plurality of target data may be data related to each individual user. It may include data related to sleep sound data individually acquired from.
- the plurality of target data is acquired in different ways depending on each user's bedroom environment, it contains various noises, and the correct answer regarding sleep state (e.g., sleep stage) may be related to unlabeled acoustic data. .
- various noises may be included depending on the bedroom environment of each user.
- the sleep sound information obtained may be different depending on the size or structure of the individual user's bedroom and the difference in distance between the user and the sound measuring device. That is, sleep sound information (i.e., a plurality of target data) including different background noise can be obtained depending on the size and shape of the sleeping space and the location of the sound measurement device when the user sleeps.
- the plurality of target data may include various noises related to sounds generated in a space where the user sleeps.
- the space where the user sleeps may contain various noises, such as the sound of electronic appliances such as air conditioners and fans operating, or the sounds of pets.
- the plurality of target data may contain various noises depending on the type of sound measurement device used to obtain sleep sound information.
- the microphone modules provided in both devices Due to differences in specifications, the first sleep sound information and the second sleep sound information may not be completely identical.
- sleep sound information may include various types of noise.
- the plurality of target data is acoustic data acquired in the individual sleeping environment of each of the plurality of users, and may include more diverse noises.
- each of the plurality of target data may be acquired through the user terminal 10 carried by the user.
- sleep sound information related to the user's sleep environment may be obtained through a microphone module provided in the user terminal 10.
- the microphone module provided in the user terminal 10 carried by the user may be configured as a MEMS (Micro-Electro Mechanical System) since it must be provided in the user terminal 10 of a relatively small size.
- MEMS Micro-Electro Mechanical System
- These microphone modules can be manufactured very small, but can have a lower signal-to-noise ratio (SNR) than condenser microphones or dynamic microphones.
- SNR signal-to-noise ratio
- a low signal-to-noise ratio may mean that the ratio of noise, which is a sound that is not to be identified, to the sound that is to be identified is high, making it difficult to identify the sound (i.e., unclear). Therefore, it is necessary to remove or alleviate noise, which will be described in detail below.
- Figure 14 is a diagram for explaining noise reduction according to an embodiment of the present invention.
- noise reduction process As shown in Figure 14 or Figure 5, sound information extracted from the user or sleep sound information (raw data) extracted therefrom undergoes a pre-processing process of noise reduction.
- noise e.g. white noise
- the noise reduction process can be accomplished using algorithms such as spectral gating and spectral subtraction to remove background noise.
- a noise removal process can be performed using a deep learning-based noise reduction algorithm.
- the deep learning-based noise reduction algorithm can use a noise reduction algorithm specialized for the user's breathing or breathing sounds, that is, a noise reduction algorithm learned through the user's breathing or breathing sounds.
- Preprocessing may be performed during the learning process of sleep state information, or may be performed during the inference process. Below, an example of the preprocessing process for noise reduction will be described.
- Spectral gating or spectral noise gating is a preprocessing method for acoustic information. Noise reduction can be performed on all of the acquired acoustic information, but splitting can be performed at regular time intervals (eg, 5 minutes, etc.), and then noise reduction can be performed on each of the split acoustic information. In order to perform noise reduction on acoustic information split at regular time intervals, a method of calculating a spectrum for each frame may first be included.
- a method may be included in which the frame having the frequency spectrum with the lowest energy among each spectrum frame is assumed to be static noise, and the frequency of the frequency spectrum frame assumed to be static noise is attenuated from the spectrum frame.
- sleep sound information when noise reduction preprocessing is performed on a plurality of data, sleep sound information can be classified into one or more sound frames.
- the minimum sound frame with the minimum energy level may be identified based on the energy level of each of the one or more sound frames. Accordingly, noise removal or reduction can be performed on the acoustic data based on the minimum acoustic frame.
- the processor 130 may classify 30 seconds of sleep sound information (eg, target data) into one or more very short sound frames of 40 ms in size. Additionally, the processor 130 may identify the minimum sound frame with the minimum energy level by comparing the sizes of each of the plurality of sound frames with respect to the size of 40 ms.
- sleep sound information eg, target data
- the processor 130 may identify the minimum sound frame with the minimum energy level by comparing the sizes of each of the plurality of sound frames with respect to the size of 40 ms.
- the processor 130 may remove the identified minimum sound frame component from the entire sleep sound information (i.e., 30 seconds of sleep sound information). For example, referring to FIG. 14, as the minimum sound frame component is removed from the sleep sound information, preprocessed sleep sound information can be obtained. That is, the processor 130 may identify the minimum sound frame as the background noise frame and perform noise removal or reduction from the original signal (i.e., sleep sound information).
- the specific numerical description of the above-mentioned time interval is merely an example and is not limited thereto.
- a deep learning-based noise reduction method performed on raw acoustic information in the time domain rather than the frequency domain may be used.
- a method may be used in which information such as sleep sound information, which is necessary information to be used as input to a sleep analysis model, is maintained, and other sounds are attenuated.
- Noise reduction can be performed not only on sound information obtained through PSG test results, but also on sound information acquired through a microphone built into a user terminal such as a smartphone.
- Figure 5 is a conceptual diagram illustrating a privacy protection method using Mel spectrogram transformation for sleep sound information extracted from a user in the sleep analysis method according to the present invention.
- the sleep analysis method creates an inference model through deep learning of acoustic information, and the inference model extracts the user's sleep state and sleep stage.
- environmental sensing information sound information
- sleep sound information is converted into information including changes in the frequency components of the sound information along the time axis, or information in the frequency domain, and is based on the converted information.
- an inference model can be created.
- environmental sensing information including sleep sound information is converted into frequency domain information or a spectrogram, and an inference model is created based on the converted frequency domain information or spectrogram.
- the information in the frequency domain may be information including changes along the time axis in the frequency components of raw sleep sound information.
- the present invention uses a process of preprocessing acoustic information to protect user privacy.
- a method of converting raw acoustic information into information or a spectrogram in the frequency domain based only on the amplitude excluding the phase can be used.
- privacy is not only protected, but the processing speed is improved by lowering the data capacity. You can do it.
- One embodiment of the present invention can generate a sleep analysis model using a spectrogram (SP) converted based on sleep sound information (SS).
- SP spectrogram
- SS sleep sound information
- the amount of information is very large, so the amount of calculation and calculation time will increase significantly, and not only will the calculation precision be lowered because it includes unwanted signals, but also all of the user's audio. If the signal is transmitted to the server, there is a risk of privacy infringement.
- an embodiment of the present invention removes noise from sleep sound information using the above-described method, converts it into information or a spectrogram in the frequency domain, and learns the spectrogram to create a sleep analysis model, so the amount of computation is reduced. , computation time can be reduced and individual privacy can be protected.
- the sleep acoustic information (e.g., the user's breathing sound, etc.) required for sleep stage analysis may be relatively smaller than other noise, but when converted to a spectrogram, it can be compared to other noise around it. Identification of sleep acoustic information can be relatively excellent.
- a method may be included to convert acquired acoustic information into a spectrogram in real time.
- the spectrogram according to an embodiment of the present invention may be a Mel spectrogram to which the Mel scale is applied.
- Figure 6 is a diagram for explaining a method of obtaining a spectrogram corresponding to sleep sound information in the sleep analysis method according to the present invention.
- the processor 130 may generate a spectrogram (SP) in response to the sleep sound information (SS).
- Raw data raw acoustic information in the time domain
- raw data according to the present invention can also be collected through polysomnography (PSG) in a hospital environment.
- PSG polysomnography
- user information in a home environment may be collected through a microphone built into a user terminal such as a wearable device or smartphone.
- raw data is acquired through the user terminal 10, such as a wearable device or smartphone, from the start point input by the user to the end point, or is obtained through device manipulation (e.g., device operation) from the time the user operates the device (e.g., setting an alarm). Alarm setting time), or the time point may be automatically selected and acquired based on the user's sleep pattern. ) It can also be obtained by automatically determining the viewpoint based on sound, etc.) or changes in illumination.
- the processor 130 may perform fast Fourier transform on the sleep sound information (SS) and convert it into information including changes in the frequency components of the sleep sound information (SS) along the time axis.
- this information may be information in the frequency domain, and may be a spectrogram or a Mel spectrogram to which a Mel scale is applied.
- Information that includes changes along the time axis of these frequency components, information in the frequency domain, or spectrogram (SP) is used to visualize and understand sound or waves, and is a combination of waveform and spectrum characteristics. It could be.
- this information may be visualized by representing the information along the time axis of the frequency components of the sound information as a difference in amplitude according to changes in the time axis and frequency axis as a difference in print density or display color.
- sleep state information can be obtained as input to an image processing-based artificial intelligence model.
- Preprocessed acoustic-related raw data can be cut into 30-second increments and converted into a spectrogram. Accordingly, a 30-second spectrogram has dimensions of 20 frequency bins x 1201 time steps.
- a rectangular spectrogram can be converted into a shape close to a square by using various methods such as reshaping, resizing, and split-cat to change it into a shape close to a square. Alternatively, by using this method, the amount of information can be preserved.
- the present invention can use a method of simulating breathing sounds measured in various home environments by adding various noises occurring in the home environment to clean breathing sounds. Because sounds have additive properties, they can be added to each other. However, adding original sound signals such as mp3 or pcm and converting them to a spectrogram results in very large consumption of computing resources. Therefore, the present invention proposes a method of converting breathing sounds and noise into spectrograms and adding them, respectively. Through this, it is possible to secure the robustness of sleep analysis in various home environments by simulating breathing sounds measured in various home environments and using them to learn deep learning models.
- the purpose of converting data according to an embodiment of the present invention into information including changes in frequency components along the time axis, information in the frequency domain, or a spectrogram is to use the converted information as an input to a sleep analysis model.
- the purpose is to infer through the learned model which sleep state or sleep stage the pattern corresponds to, and several preprocessing processes may be required before using it as input to the sleep analysis model.
- the converted information is converted so that the acoustic information becomes the input of an image processing-based artificial intelligence model, so the acoustic information may be visualized through this preprocessing process before being input.
- These preprocessing processes may be performed only during the learning process, or may be performed not only during the learning process but also during the inference process. Or, it may only occur during the reasoning process.
- Figure 15 is a diagram for explaining pitch shifting according to an embodiment of the present invention.
- a preprocessing method that performs data augmentation on the spectrogram may be included.
- Data augmentation is intended to secure a sufficient amount of learning data set or to conduct sufficient learning assuming a diverse and anomalous environment.
- the data augmentation preprocessing method includes adding Gaussian noise to the spectrogram to inflate the amount of data, or a pitch shifting method of gradually raising or lowering the pitch of the overall acoustic information.
- the spectrogram or mel spectrogram is converted to a vector during the learning process, and the converted vector is randomly cut (tiled) at the input stage of one node (neuron) and recombined after the output of the node (neuron) ( Untile) TUT (Tile UnTile) augmentation method may be included.
- the data augmentation preprocessing method includes noise occurring in various environments other than Gaussian noise (e.g., external sounds, sounds of nature, sounds of a fan running, sounds of doors opening or closing, animals
- noise addition augmentation method that adds sounds (sounds made by people, people talking, movement sounds, etc.) may also be included.
- noise addition augmentation converts noise information into a spectrogram and then artificially adds it to the sleep sound information and the spectrogram. It may include how to do it. In this case, there is a significant difference between the spectrogram obtained by adding noise information to the sleep sound information in the original sound information domain and the spectrogram obtained by adding sleep sound information and noise information to the spectrogram converted domain. There may not be.
- the noise-added augmentation makes it difficult to convert the spectrogram back to the original signal, so that in order to protect the user's privacy, the amplitude and phase are changed from the spectrogram of each sleep sound information and noise information. By maintaining only the amplitude and adding a random phase, it is possible to make it difficult to convert back to the original signal from the spectrogram.
- noise addition augmentation may include not only a method of adding sound information on a domain converted into a spectrogram, but also a method of adding noise on a domain converted into a Mel spectrogram to which a Mel scale is applied. there is.
- time required for hardware to process data can be shortened by the method added by Mel Scale according to an embodiment of the present invention.
- FIG. 23 is a diagram for explaining the TUT (Tile UnTile) augmentation method according to an embodiment of the present invention.
- TUT (Tile UnTile) augmentation uses a spectrogram or vector at the input and output stages of a node (neuron) to increase the amount of learning data of various patterns when using a spectrogram as an input to a learning model. It may include randomly cutting and combining steps. Spectrograms or vectors that are randomly cut at the input stage of a node (neuron) have missing data or have less information than the information of the spectrogram or vector input to the layer of the corresponding neural network that has not been cut. There may be losses. In this case, limited information can be input to the node (neuron) and learned.
- a node (neuron) that takes a cut spectrogram or vector as input can output the vector after calculation. At this time, it can be combined (untiled) in the same way as it was cut again before being used as the input of the node (neuron) of the next neural network layer.
- TUT augmentation randomly cuts spectrograms or vectors at the input and output stages of nodes (neurons) and combines them in the same way to induce learning of data with missing information, It can contribute to increasing the accuracy or reliability of the learning model.
- FIG. 16 is a diagram illustrating a preprocessing method for converting information or a spectrogram in the frequency domain into a nearly square form according to an embodiment of the present invention.
- the frequency domain after going through the data augmentation process of the information or spectrogram in the frequency domain, such as the above-described pitch shifting, noise-added augmentation, or TUT augmentation, the frequency domain A preprocessing method may be performed to convert the image information or spectrogram into a nearly square form.
- the information or spectrogram on the frequency domain on which data augmentation was performed as input to deep learning models CNN, Transformer, Vision Transformer (ViT), and Mobile Vision Transformer (MobileViT) After conversion to a form close to a square, the information or spectrogram in the frequency domain converted to a form close to a square can be used as input to AI, a deep learning model.
- a method of lowering the resolution on the x-axis and increasing the resolution on the y-axis by copying values can be performed.
- a preprocessing method is performed to convert the entire 30-second spectrogram with a dimension of 20 frequency bin ⁇ 1201 time step into a form close to a square at once by resizing, while removing missing information. It can be supplemented by using interpolation.
- the split-cat preprocessing method is a method of splitting the spectrogram to a certain size and then concatenating the data into a nearly square shape using the concatenation function. It can be included.
- the split-cat method splits one spectrogram so that it can correspond to a patch in order to perform learning on a patch-by-patch basis in a deep learning model based on Vit (Vision Transformer) or Mobile Vit (Mobile Vision Transformer). Second, it refers to a method of merging each patch into a shape close to a square.
- a 30-second spectrogram with dimensions of 20 frequency bins ⁇ 1201 time steps can be converted to dimensions of 150 frequency bins ⁇ 160 time steps.
- a 30-second spectrogram with a dimension of 150 frequency bin ⁇ 160 time step can be converted to a dimension close to 160 frequency bin ⁇ 160 time step using a resizing technique.
- the spectrogram corresponding to every 30 second interval can be converted into a form close to a square.
- a deep learning model based on the Transformer learning model can show further improved learning performance.
- the detailed numerical description of the bins, division time units, and number of divisions of the above-described spectrogram is only an example, and the present invention is not limited thereto.
- the information or spectrogram in the frequency domain according to an embodiment of the present invention has a very small value, so if it is not converted to another scale, it is expressed very brightly in the part where the value is greater than a certain level, while it is expressed very dark in the remaining part, so deep learning It may be inappropriate to use as model input. Accordingly, a preprocessing process can be performed to convert the information or spectrogram in the frequency domain according to an embodiment of the present invention to dB scale (log scale) before using it as input to the deep learning model.
- dB scale log scale
- the maximum value of the logarithmic value can be set to 0 as the default base value, and the remaining values can be converted to logarithmic values.
- normalization preprocessing is additionally performed so that the average of all values is 0 and the standard deviation is 1, and then used as the input of the deep learning model. It may be possible.
- Figure 25 shows a flowchart illustrating a method for analyzing a user's sleep state through sound information according to an embodiment of the present invention.
- the method may include a step (S10) of acquiring sleep sound information related to the user's sleep.
- the method may include performing preprocessing on sleep sound information (S20).
- the method may include a step (S30) of obtaining sleep state information by performing analysis on preprocessed sleep sound information.
- Figures 17a and 17b are diagrams for explaining the overall structure of a sleep analysis model according to an embodiment of the present invention.
- sleep state information can be obtained through a sleep analysis model that analyzes the user's sleep stage based on sound information (sleep sound information).
- the sleep sound information (SS) may be a very small sound because it is a sound related to breathing and body movement acquired during the user's sleeping time. Accordingly, the present invention uses the sleep sound information (SS) as described above. Analysis of sound can be performed by converting it into a spectrogram (SP). In this case, the spectrogram (SP) contains information that shows how the frequency spectrum of the sound changes over time, so breathing or movement patterns related to relatively small sounds can be easily identified, improving the efficiency of analysis. there is.
- the sleep sound information is at least one of the awake state, REM sleep state, light sleep state, and deep sleep state based solely on changes in the energy level of the sleep sound information, but by converting the sleep sound information into a spectrogram, each sleep sound information is converted into a spectrogram. Since changes in the frequency spectrum can be easily detected, analysis corresponding to small sounds (eg, breathing and body movements) may be possible.
- the processor 130 may obtain sleep state information by processing information on the frequency domain or a spectrogram (SP) converted according to an embodiment of the present invention as an input to a sleep analysis model.
- the sleep analysis model is a model for obtaining sleep state information related to changes in the user's sleep stage, and can output sleep state information by inputting sleep sound information acquired during the user's sleep.
- the sleep analysis model may include a neural network model constructed through one or more network functions.
- a sleep analysis model is comprised of one or more network functions, and one or more network functions may be comprised of a set of interconnected computational units, which may generally be referred to as 'nodes'. These 'nodes' may also be referred to as 'neurons'.
- One or more network functions are composed of at least one or more nodes. Nodes (or neurons) that make up one or more network functions may be interconnected by one or more 'links'.
- FIG. 7 is a schematic diagram showing one or more network functions for performing the sleep analysis method according to the present invention.
- a deep neural network may refer to a neural network that includes multiple hidden layers in addition to the input layer and output layer. Deep neural networks allow you to identify latent structures in data. In other words, it is possible to identify the potential structure of a photo, text, video, voice, or music (e.g., what object is in the photo, what the content and emotion of the text are, what the content and emotion of the voice are, etc.) . Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBMs).
- CNN convolutional neural networks
- RNN recurrent neural networks
- GAN generative adversarial networks
- RBMs restricted Boltzmann machines
- the network function may include an auto encoder.
- An autoencoder may be a type of artificial neural network to output output data similar to input data.
- the autoencoder may include at least one hidden layer, and an odd number of hidden layers may be placed between input and output layers.
- the number of nodes in each layer may be reduced from the number of nodes in the input layer to an intermediate layer called the bottleneck layer (encoding), and then expanded symmetrically and reduced from the bottleneck layer to the output layer (symmetrical to the input layer).
- the nodes of the dimensionality reduction layer and dimensionality restoration layer may or may not be symmetric.
- Autoencoders can perform nonlinear dimensionality reduction.
- the number of input layers and output layers may correspond to the number of sensors remaining after preprocessing of the input data.
- the number of nodes in the hidden layer included in the encoder may have a structure that decreases as the distance from the input layer increases. If the number of nodes in the bottleneck layer (the layer with the fewest nodes located between the encoder and decoder) is too small, not enough information may be conveyed, so if it is higher than a certain number (e.g., more than half of the input layers, etc.) ) may be maintained.
- a certain number e.g., more than half of the input layers, etc.
- a neural network may be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. Learning of a neural network is intended to minimize errors in output.
- learning data is repeatedly input into the neural network, the output of the neural network and the error of the target for the learning data are calculated, and the error of the neural network is transferred from the output layer of the neural network to the input layer in the direction of reducing the error. This is the process of updating the weight of each node in the neural network through backpropagation.
- supervised learning learning data in which the correct answer is labeled for each learning data is used (i.e., labeled learning data), and in the case of unsupervised learning, the correct answer may not be labeled in each learning data.
- the learning data may be data in which each training data is labeled with a category. Labeled training data is input to the neural network, and the error can be calculated by comparing the output (category) of the neural network with the label of the training data.
- the error can be calculated by comparing the input training data with the neural network output. The calculated error is backpropagated in the reverse direction (i.e., from the output layer to the input layer) in the neural network, and the connection weight of each node in each layer of the neural network can be updated according to backpropagation. The amount of change in the connection weight of each updated node may be determined according to the learning rate.
- the neural network's calculation of input data and backpropagation of errors can constitute a learning cycle (epoch).
- the learning rate may be applied differently depending on the number of repetitions of the learning cycle of the neural network. For example, in the early stages of neural network training, a high learning rate can be used to increase efficiency by allowing the neural network to quickly achieve a certain level of performance, and in the later stages of training, a low learning rate can be used to increase accuracy.
- the training data can generally be a subset of real data (i.e., the data to be processed using the learned neural network), and thus the error for the training data is reduced, but the error for the real data is reduced. There may be an incremental learning cycle.
- Overfitting is a phenomenon in which errors in actual data increase due to excessive learning on training data. For example, a phenomenon in which a neural network that learned a cat by showing a yellow cat fails to recognize that it is a cat when it sees a non-yellow cat may be a type of overfitting. Overfitting can cause errors in AI algorithms to increase. To prevent such overfitting, various optimization methods can be used. To prevent overfitting, methods such as increasing the learning data, regularization or regularization, and dropout, which omits some of the network nodes during the learning process, can be applied.
- the data structure may include a neural network.
- the data structure including the neural network may be stored in a computer-readable medium.
- Data structures including neural networks may also include data input to the neural network, weights of the neural network, hyperparameters of the neural network, data obtained from the neural network, activation functions associated with each node or layer of the neural network, and loss functions for learning the neural network.
- a data structure containing a neural network may include any of the components disclosed above. In other words, the data structure including the neural network is all or It may be configured to include any combination of these.
- a data structure containing a neural network may include any other information that determines the characteristics of the neural network. Additionally, the data structure may include all types of data used or generated in the computational process of a neural network and is not limited to the above.
- Computer-readable media may include computer-readable recording media and/or computer-readable transmission media.
- a neural network can generally consist of a set of interconnected computational units, which can be referred to as nodes. These nodes may also be referred to as neurons.
- a neural network consists of at least one node.
- one or more nodes connected through a link may form a relative input node and output node relationship.
- the concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa.
- input node to output node relationships can be created around links.
- One or more output nodes can be connected to one input node through a link, and vice versa.
- the value of the output node may be determined based on data input to the input node.
- the nodes connecting the input node and the output node may have a weight. Weights may be variable and may be varied by the user or algorithm in order for the neural network to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.
- one or more nodes are interconnected through one or more links to form an input node and output node relationship within the neural network.
- the characteristics of the neural network can be determined according to the number of nodes and links within the neural network, the correlation between the nodes and links, and the value of the weight assigned to each link. For example, if there are two neural networks with the same number of nodes and links and different weight values between the links, the two neural networks may be recognized as different from each other.
- Some of the nodes constituting the neural network may form one layer based on the distances from the first input node.
- a set of nodes with a distance n from the initial input node may constitute n layers.
- the distance from the initial input node can be defined by the minimum number of links that must be passed to reach the node from the initial input node.
- this definition of a layer is arbitrary for explanation purposes, and the order of a layer within a neural network may be defined in a different way than described above.
- a layer of nodes may be defined by distance from the final output node.
- the initial input node may refer to one or more nodes in the neural network through which data is directly input without going through links in relationships with other nodes.
- a neural network network in the relationship between nodes based on links, it may mean nodes that do not have other input nodes connected by links.
- the final output node may refer to one or more nodes that do not have an output node in their relationship with other nodes among the nodes in the neural network.
- hidden nodes may refer to nodes constituting a neural network other than the first input node and the last output node.
- the neural network according to an embodiment of the present invention may have more nodes in the input layer than the nodes in the hidden layer close to the output layer, and may be a neural network in which the number of nodes decreases as it progresses from the input layer to the hidden layer.
- a neural network may contain one or more hidden layers.
- the hidden node of the hidden layer can take the output of the previous layer and the output of surrounding hidden nodes as input.
- the number of hidden nodes for each hidden layer may be the same or different.
- the number of nodes in the input layer may be determined based on the number of data fields of the input data and may be the same as or different from the number of hidden nodes.
- Input data input to the input layer can be operated by the hidden node of the hidden layer and output by the fully connected layer (FCL), which is the output layer.
- FCL fully connected layer
- Figure 18 is a diagram for explaining a feature extraction model and a feature classification model according to an embodiment of the present invention.
- Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
- the sleep analysis model used in the present invention is a feature extraction model that extracts one or more features for each predetermined epoch and a feature classification model that generates sleep state information by classifying each of the features extracted through the feature extraction model into one or more sleep stages.
- the feature extraction model can extract features related to breathing sounds, breathing patterns, and movement patterns by analyzing the time-series frequency pattern of the spectrogram (SP).
- the feature extraction model may be constructed from part of a neural network model that has been pre-trained using a training data set.
- the sleep analysis model used in the present invention may include a feature extraction model and a feature classification model.
- the feature extraction model may be a deep learning learning model based on a natural language processing model that can learn the time-series correlation of given data.
- the feature classification model may be a learning model based on a natural language processing model that can learn the time-series correlation of given data.
- deep learning learning models based on natural language processing models that can learn time-series correlations may include Tarnsformer, ViT, MobileViT, and MobileViT2, but are not limited thereto.
- the learning data set according to an embodiment of the present invention may be composed of data in the frequency domain and a plurality of sleep state information corresponding to each data.
- the learning data set according to an embodiment of the present invention may be composed of a plurality of spectrograms and a plurality of sleep state information corresponding to each spectrogram.
- the learning data set according to an embodiment of the present invention may be composed of a plurality of Mel spectrograms and a plurality of sleep state information corresponding to each Mel spectrogram.
- the configuration and performance of the sleep analysis model according to an embodiment of the present invention will be described in detail based on the data set of the spectrogram.
- the learning data used in the sleep analysis model of the present invention is included in the spectrogram. It is not limited, and information in the frequency domain, a spectrogram, or a mel spectrogram can be used as learning data.
- the feature extraction model is a one-to-one proxy task in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by .
- learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network).
- FC Full Connected Layer
- FCN Full Connected Neural Network
- learning may be performed by adopting the structure of the intermediate layer.
- the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. It can be learned to predict or classify overall sleep state information.
- pre-learning is performed through a one-to-one proxy task for the feature extraction model, and then through many-to-many tasks for the pre-trained feature extraction model and feature classification model. Fine tuning can be performed.
- the sleep stage may be inferred by inputting a sequence of 40 consecutive spectrograms into a plurality of feature extraction models learned through a one-to-one proxy task and outputting 20 sleep state information.
- the above-described specific numerical descriptions regarding the number of spectrograms, the number of feature extraction models, and the number of sleep state information are merely examples, and the present invention is not limited thereto.
- the sleep analysis model of the present invention is not limited to being generated or learned based on a spectrogram, and as described above, information including changes along the time axis of the frequency components of raw acoustic information, or, It may be generated or learned based on information in the frequency domain. Additionally, inference of sleep state information through a sleep analysis model can also be performed based on information including changes in the frequency components of raw acoustic information along the time axis or converted to information in the frequency domain.
- Figures 29a and 29b are diagrams for explaining the performance of determining sleep disorder and adding noise using a spectrogram in the sleep analysis method according to the present invention.
- apnea can be detected with high reliability even when the spectrogram is damaged by noise.
- the feature extraction model may be composed of an independent deep learning model learned through a training data set.
- the feature extraction model can be learned through supervised learning or unsupervised learning methods.
- a feature extraction model can be trained to output output data similar to input data through a learning data set.
- only the core feature data (or features) of the input spectrogram can be learned through the hidden layer.
- the output data of the hidden layer may be an approximation of the input data (i.e., spectrogram) rather than a perfect copy value.
- Each of the plurality of spectrograms included in the learning data set may be tagged with sleep state information.
- Each of the plurality of spectrograms may be input to a feature extraction model, and the output corresponding to each spectrogram may be stored by matching the tagged sleep state information.
- first learning data sets i.e., multiple spectrograms
- first sleep state information e.g., light sleep
- features related to the output for the input are first sleep state information. It can be saved by matching.
- one or more features relevant to the output may be represented in a vector space.
- the feature data output corresponding to each of the first learning data sets is output through a spectrogram related to the first sleep stage, they may be located at a relatively close distance in the vector space. That is, learning can be performed so that a plurality of spectrograms output similar features corresponding to each sleep stage.
- the feature extraction model through the above-described learning process receives a spectrogram (eg, a spectrogram converted in response to sleep sound information) as input, features corresponding to the spectrogram can be extracted.
- a spectrogram eg, a spectrogram converted in response to sleep sound information
- the processor 130 may extract features by processing the spectrogram (SP) generated in response to the sleep sound information (SS) as an input to a feature extraction model.
- the processor 130 may divide the spectrogram (SP) into predetermined epochs. For example, the processor 130 may obtain a plurality of spectrograms by dividing the spectrogram (SP) corresponding to the sleep sound information (SS) into 30-second increments. For example, if sleep sound information is acquired during the user's 7-hour (i.e., 420-minute) sleep, the processor 130 may obtain 840 spectrograms by dividing the spectrogram in 30-second increments.
- the detailed numerical description of the above-described sleep time, division time unit of the spectrogram, and number of divisions is only an example, and the present invention is not limited thereto.
- the processor 130 may process each of the plurality of segmented spectrograms as input to a feature extraction model to extract a plurality of features corresponding to each of the plurality of spectrograms. For example, if the number of spectrograms is 840, the number of features extracted by the feature extraction model may also be 840.
- the above-described specific numerical description regarding the spectrogram and number of features is only an example, and the present invention is not limited thereto.
- the feature extraction model according to an embodiment of the present invention may be trained using a one-to-one proxy task. Additionally, in the process of learning to extract sleep state information for one spectrogram, it may be learned to extract sleep state information by combining a feature extraction model and another NN (Neural Network).
- NN Neuron
- the learning time of the feature extraction model can be shortened or the learning efficiency can be increased.
- one spectrogram divided in 30-second increments may be used as an input to a feature extraction model, and the output vector may be learned to output sleep state information by using it as an input to another NN. .
- the processor 130 may generate a feature extraction model using a plurality of source data.
- the feature extraction model may include a dimensionality reduction network function (eg, Encoder).
- each of a plurality of frequency domain information or spectrograms (i.e., a plurality of converted information corresponding to a plurality of source data) used as learning data may be labeled with sleep stage information.
- the plurality of source data is information about sleeping sounds acquired in a specific space (eg, hospital), and information about a plurality of sleep states (ie, sleep stages) may be pre-labeled.
- Each of the plurality of pieces of converted information may be input to a dimensionality reduction network function, and the output corresponding to each piece of converted information may be matched with labeled sleep stage information.
- first learning data sets e.g., a plurality of spectrograms related to source data
- first sleep stage information e.g., light sleep
- the dimensionality for the input Features related to the output of the reduction network function may be matched with first sleep stage information.
- one or more features associated with the output of a dimensionality reduction network function may be represented on a vector space.
- the feature data output corresponding to each of the first learning data sets are output through a spectrogram related to the first sleep stage (e.g., output through a spectrogram corresponding to the same class), so they are relatively close in the vector space. It can be located on the street.
- learning of the dimensionality reduction network function may be performed so that a plurality of spectrograms output similar features corresponding to each sleep stage, but the specific learning method of the dimensionality reduction network is not limited.
- the feature extraction model when the feature extraction model inputs information converted to sleep sound information, it can extract features corresponding to the converted information.
- Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
- the processor 130 may obtain sleep state information by processing a plurality of features output through a feature extraction model as input to a feature classification model.
- the feature classification model may be a neural network model modeled to predict sleep stages in response to features.
- the feature classification model includes a fully connected layer and may be a model that classifies features into at least one of the sleep stages. For example, when the feature classification model inputs the first feature corresponding to the first spectrogram, the first feature may be classified as shallow water. Or, for example, when the feature classification model inputs a second feature corresponding to the second spectrogram, the feature classification model may classify the second feature as deep sleep.
- the feature classification model uses a third feature corresponding to the third spectrogram as input, the third feature may be classified as REM sleep.
- the feature classification model may classify the fourth feature as fine.
- the feature classification model may be a neural network model modeled to predict events that occur in sleep corresponding to features.
- the feature classification model includes a fully connected layer and may be a model that classifies a feature as at least one of the events that occur on the water surface.
- the feature classification model inputs the first feature corresponding to the first spectrogram, the first feature may be classified as a sleep apnea event.
- the feature classification model inputs a second feature corresponding to the second spectrogram, it can classify the second feature as an occurrence of a sleep hypopnea event.
- the feature classification model may classify the third feature as a normal sleep state. For example, when the feature classification model inputs the fourth feature corresponding to the fourth spectrogram, the fourth feature may be classified as a snoring event during sleep. For example, when the feature classification model inputs the fifth feature corresponding to the fifth spectrogram, it can classify the fifth feature as a sleep talking event during sleep.
- a feature classification model can perform classification for a plurality of features.
- the feature classification model may classify each of a plurality of features into at least one of a plurality of sleep stages.
- the feature extraction model extracts features so that the feature classification model can easily classify which sleep stage it corresponds to, and the feature classification model better classifies the features delivered from the feature extraction model. It can be trained to do so (i.e., to classify well into specific sleep stages). In other words, through adversarial learning, the feature classification model can better classify the features delivered from the feature extraction model.
- a feature classification model may be learned to facilitate class classification between features in order to perform sleep stage classification or sleep event classification well in response to features.
- the processor 130 models the feature extraction model through first learning information related to the first loss between the feature extraction model and the feature classification model, according to the learning results of the feature extraction model and the feature classification model.
- the updated feature extraction model can extract features that allow the feature classification model to well classify the class (i.e., sleep stage).
- the updated feature extraction model can extract features so that each of the features related to the same sleep stage is clustered.
- the discriminator model may be a neural network model that distinguishes whether each of the plurality of features delivered from the feature extraction model is a feature related to source data or a feature related to target data.
- the discriminator model can determine whether the feature related to the input is a feature corresponding to sleep sound information acquired in a hospital or a feature corresponding to sleep sound information acquired in the real life of an individual user. That is, the discriminator model can use at least one of a plurality of features as input to distinguish whether the feature related to the input is a feature related to source data or a feature related to target data. Learning of the sleep analysis model using the discriminator model will be described in detail below.
- the feature classification model can perform multi-epoch classification to predict sleep stages of multiple epochs by using spectrograms related to multiple epochs as input.
- Multi-epoch classification does not provide one sleep stage analysis information in response to the spectrogram of a single epoch (i.e., one spectrogram corresponding to 30 seconds), but spectrograms corresponding to multiple epochs (i.e. It may be used to estimate several sleep stages (e.g., changes in sleep stages according to time changes) at once by using a combination of spectrograms (each corresponding to 30 seconds) as input.
- the feature classification model may receive 40 spectrograms (e.g., 40 spectrograms corresponding to 30 seconds each) as input and perform prediction for the 20 spectrograms located in the center. That is, all spectrograms from 1 to 40 are examined, but the sleep stage can be predicted through classification corresponding to the spectrograms corresponding to 10 to 20.
- the detailed numerical description of the number of spectrograms described above is only an example, and the present invention is not limited thereto.
- spectrograms corresponding to multiple epochs are input so that both past and future information can be considered.
- the accuracy of output can be improved.
- the accuracy of the output can be improved by performing inference using not only the spectrogram but also information including changes along the time axis of frequency components corresponding to multiple epochs or information in the frequency domain as input.
- Figure 8 is a diagram for explaining sleep stage analysis using a spectrogram in the sleep analysis method according to the present invention.
- the second analysis based on sleep sound information uses the sleep analysis model described above, and as shown in FIG. 8, the user When sleep sound information is input, the corresponding sleep stage (Wake, REM, Light, Deep) can be immediately inferred.
- secondary analysis based on sleep sound information can extract the time when sleep disorders (sleep apnea, hyperventilation) or snoring occurred through the singularity of the Mel spectrum corresponding to the sleep stage.
- Figure 9 is a diagram illustrating sleep event determination using a spectrogram in the sleep analysis method according to the present invention.
- the breathing pattern is analyzed in one converted frequency domain information or spectrogram or mel spectrogram, and when characteristics corresponding to sleep apnea or hyperpnea events are detected, The relevant point in time can be determined as the point in time when the sleep event occurred. At this time, a process of classifying snoring rather than sleep apnea or hyperpnea through frequency analysis may be further included.
- Figure 10 is a diagram showing an experimental process for verifying the performance of the sleep analysis method according to the present invention.
- the user's sleep image and sleep sound are acquired in real time, and the acquired sleep sound information is immediately converted into a spectrogram.
- a preprocessing process of sleep sound information may be performed.
- the spectrogram can be input into a sleep analysis model and sleep stages can be analyzed immediately.
- the operation may be performed as follows.
- a spectrogram containing time series information can be used as an input to a CNN-based deep learning model, and a vector with reduced dimension can be output.
- a vector with reduced dimension can be output.
- the output vector of the Transformer-based deep learning model is input to a 1D Convolutional Neural Network (1D CNN) so that the average pooling technique can be applied, and through averaging work on time series information, The process of converting time series information into an implied N-dimensional vector can also be performed.
- the N-dimensional vector containing time series information corresponds to data that still contains time series information, although there is only a difference in resolution from the input data.
- prediction of various sleep stages can be performed by performing multi-epoch classification on a combination of N-dimensional vectors containing output time series information.
- continuous prediction of sleep state information can be performed by using the output vectors of Transformer-based deep learning models as input to a plurality of FC (Fully Connected layers).
- Figure 24 is a diagram for explaining the structure of a sleep analysis model using a natural language processing model according to an embodiment of the present invention.
- a spectrogram containing time series information can be used as an input to a Mobile ViT-based deep learning model, and a vector with reduced dimension can be output.
- features can be extracted from each spectrogram as the output of a Mobile ViT-based deep learning model.
- a vector containing time series information can be output by using a vector with a reduced dimension as an input to the intermediate layer.
- the intermediate layer model may include at least one of the following steps: a linearization step to imply vector information, a layer normalization step to input the average and variance, or a dropout step to disable some nodes. there is.
- overfitting can be prevented by performing a process of outputting a vector containing time series information by using a reduced-dimensional vector as an input to the intermediate layer.
- sleep state information can be output by using the output vector of the intermediate layer as an input to a ViT-based deep learning model.
- sleep state information corresponding to information on the frequency domain containing time series information, a spectrogram, or a mel spectrogram can be output.
- sleep state information corresponding to a series of frequency domain information, spectrogram, or mel spectrogram containing time series information can be output.
- various artificial intelligence models in addition to the above-mentioned AI models may be employed to perform learning or inference, and specific descriptions related to the types of artificial intelligence models described above may be provided. is merely an example, and the present invention is not limited thereto.
- Figure 20 is a diagram for explaining an unsupervised or semi-supervised learning model according to an embodiment of the present invention.
- the data set according to an embodiment of the present invention may be composed of labeled data acquired in a specific environment (preferably, a polysomnography environment), but may be composed of labeled data acquired in a different environment (preferably, a polysomnography environment). It may be composed of unlabeled data obtained from the environment, etc.
- a specific environment preferably, a polysomnography environment
- a different environment preferably, a polysomnography environment
- It may be composed of unlabeled data obtained from the environment, etc.
- the specific description of the environment described above is merely an example, and the present invention is not limited thereto.
- Supervised learning is possible when learning using labeled data, which is labeled learning data in which the correct answer is labeled, but unsupervised learning is necessary when learning using unlabeled data in which the correct answer is not labeled.
- Unsupervised learning models, etc. according to examples will be explained.
- Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention.
- Consistency Training is a type of semi-supervised learning model. Consistency Training according to an embodiment of the present invention involves intentionally adding noise to one data, and intentionally adding noise to one data. This may be a method of performing learning with data that has not been added.
- Consistency Training may be a method of performing learning by generating data of a virtual sleep environment using noise of the target environment.
- Noise intentionally added according to an embodiment of the present invention may be noise of the target environment, where the noise of the target environment may be noise obtained in an environment other than polysomnography, for example.
- Corrupted data may preferably refer to data to which noise of the target environment has been intentionally added.
- clean data data to which noise has not been intentionally added
- noise may actually be included.
- Clean data used for Consistency Training may be data acquired in a specific environment (preferably, a polysomnographic environment), and corrupted data may be data obtained in a different environment or target environment (preferably, This may be data obtained in an environment other than polysomnography.
- Corrupted data may be data in which noise acquired in another environment or a target environment (preferably, an environment other than polysomnography) is intentionally added to clean data.
- Consistency Training when clean data and corrupted data are input to the same deep learning model, a loss function or consistency loss is defined so that each output is the same, learning to achieve consistent prediction. This can be done.
- the noise sampling method may be used. Describe about it.
- each spectrogram may be divided into 30 second units and 40 (data corresponding to a total time interval of 20 minutes) may be input to the deep learning model.
- noise can be randomly sampled to correspond to a time interval of 20 minutes (e.g., 5 minutes, 9 minutes, 4 minutes, 7 minutes, etc.). If the total time interval of the sampled noises exceeds 20 minutes, the portion exceeding 20 minutes may be excluded.
- a process of converting noises into a spectrogram is also performed on noises corresponding to the same time interval (e.g., 20 minutes) as the time interval of the clean data spectrogram according to an embodiment of the present invention, and a random change is performed on the clean data spectrogram.
- Corrupted data can be obtained by adding .
- the spectrogram may be a Mel spectrogram to which a Mel scale is applied.
- the noise may be noise or spectrogram of the same domain as the acoustic information, or noise of the same domain as the Mel spectrogram to which the Mel scale is applied.
- the domain of acoustic information may be a domain having amplitude, phase, and frequency.
- the domain of the spectrogram or mel spectrogram according to an embodiment of the present invention may be a domain having amplitude and frequency.
- the addition process can be performed by assigning a random phase to the noise, through which the inversion of the data in the Mel state can be performed.
- time required for hardware to process data can be shortened by the method added by Mel Scale according to an embodiment of the present invention.
- UDA Unsupervised Domain Adaptation
- Figure 22 is a diagram for explaining Unsupervised Domain Adaptation (UDA) according to an embodiment of the present invention.
- the processor 130 may perform learning on an artificial intelligence model including a feature extraction model, a feature classification model, and a discriminator model.
- UDA can sufficiently learn an AI model through supervised learning using labeled data, and then conduct additional learning only with additional unlabeled data.
- UDA may be configured and performed through primary learning and secondary learning.
- unlabeled data and labeled data can be used.
- unlabeled data can be used.
- the primary learning of UDA may include performing learning to extract commonalities between data by using data acquired in different environments as input to a sleep analysis model. In addition, it may include performing learning to distinguish and classify differences between the input data by using data acquired in different environments as input to one sleep analysis model and using commonalities between the extracted data as input to the deep learning model. there is.
- the primary learning of UDA according to an embodiment of the present invention may include learning to extract common data (eg, human sleep sound information) among labeled data and unlabeled data using a feature extraction model.
- Labeled data used for primary learning of UDA may be data acquired in a specific environment (preferably, a polysomnographic environment), and unlabeled data may be data acquired in a different environment or target environment (preferably a polysomnography environment). In other words, it may be data obtained in an environment other than polysomnography.
- Labeled data used for primary learning of UDA may be sleep sound information obtained from a specific race (e.g., Korean), and unlabeled data may be sleep sound information obtained from a specific race (e.g., yellow race, black race, white race). , Hispanic, etc.), it may be sleep sound information obtained from people.
- a specific race e.g., Korean
- unlabeled data may be sleep sound information obtained from a specific race (e.g., yellow race, black race, white race). , Hispanic, etc.), it may be sleep sound information obtained from people.
- Labeled data used for primary learning of UDA may be sleep sound information obtained from a specific gender (e.g., male), and unlabeled data may be sleep sound information obtained from a different gender (e.g., female). It may be acoustic information.
- Labeled data used for primary learning of UDA may be sleep sound information obtained from a specific age group (e.g., 20s), and unlabeled data may be sleep sound information obtained from a specific age group (e.g., 10s or 30s). It may be sleep sound information obtained from people in their 40s, etc.
- a specific age group e.g. 20s
- unlabeled data may be sleep sound information obtained from a specific age group (e.g., 10s or 30s). It may be sleep sound information obtained from people in their 40s, etc.
- Labeled data used for primary learning of UDA may be sleep sound information obtained from a specific body composition index group (e.g., a group with a body mass index BMI of 25 or more), and unlabeled data may be sleep sound information obtained from a specific body composition index group (e.g., a group with a body mass index of 25 or more) It may be sleep sound information obtained from an index group (for example, a group with a body mass index of less than 25 BMI).
- a specific body composition index group e.g., a group with a body mass index BMI of 25 or more
- an index group for example, a group with a body mass index of less than 25 BMI
- Labeled data used for primary learning of UDA may be sleep sound information obtained from a group with sleep disease (e.g., a group of patients with sleep apnea), and unlabeled data may be sleep sound information obtained from a group without sleep disease. It may be sleep sound information obtained from (for example, a group without sleep apnea disease).
- a group with sleep disease e.g., a group of patients with sleep apnea
- unlabeled data may be sleep sound information obtained from a group without sleep disease. It may be sleep sound information obtained from (for example, a group without sleep apnea disease).
- Labeled data used in the first learning of UDA may be sleep sound information obtained from a group with respiratory disease (e.g., a group of asthma patients), and unlabeled data may be sleep sound information obtained from a group without respiratory disease (e.g., a group of asthma patients). For example, it may be sleep sound information obtained from a group without asthma disease.
- Labeled data used for primary learning of UDA is not limited to applying each environment or characteristic described above individually, but is obtained from a combination of target groups representing one or more environments or characteristics. It may be acoustic information.
- the unlabeled data used for primary learning of UDA is not limited to applying each environment or characteristic described above individually, but is obtained from a combination of target groups representing one or more environments or characteristics. It may be acquired acoustic information.
- the primary learning of UDA uses data acquired in a specific environment and data acquired in a different environment or target environment as input to a feature extraction model, and uses common data extracted as a discriminator ( Discriminator) may include learning to classify whether the input data was obtained from a specific environment, another environment, or the target environment as input to the model.
- the feature extraction model is learned to output only commonalities between input data, so data acquired from a specific environment and data acquired from a different environment or target environment It can play a role in weakening the classification between data, and the discriminator model can play a role in strengthening the classification between data, so for this purpose, the loss applied to each model can be set to the opposite way.
- data acquired from another environment or target environment may not have labeling related to sleep state information. Accordingly, learning of sleep state information may be separately performed using data labeled with sleep state information obtained from a specific environment (eg, a polysomnography environment) through a feature extraction model or feature classification model.
- a feature extraction model or feature classification model that performs learning on sleep state information by inputting the above labeled data will be referred to as a Classifier for convenience.
- the feature extraction model uses data acquired from a specific environment and data acquired from another environment or target environment as input, and is trained to extract only the commonalities between the input data, so feature extraction Sleep state information can be output even if the output value of unlabeled data obtained from another environment or target environment among the model's output data is entered into the Classifier.
- the primary learning of UDA is obtained from a specific environment (e.g., polysomnography environment) or another environment or target environment (e.g., environment other than polysomnography) through a feature extraction model. Extracting or outputting common features of one data and inputting the output common features into a discriminator model to perform learning to classify the differences between data obtained from a specific environment and data obtained from another environment or target environment.
- a classifier that acquires sleep state information from data acquired from a specific environment
- data acquired from another environment or target environment is input into the feature extraction model and the extracted information is input into the classifier, although it is labeled Even if there is no data, learning can be performed to output sleep state information.
- the output data of the discriminator model according to an embodiment of the present invention may be recycled in the primary learning of UDA and may be used in various ways, such as being used as a correction value for the final output of the classifier.
- the feature extraction model can extract commonalities between data, so the classifier with the output commonalities as input performs clustering (clustering) when outputting sleep state information.
- Clustering it is possible to distinguish well whether the sleep stage corresponding to the input data is REM sleep, light sleep, wake state, or deep sleep stage, but Conditionalization is used to better perform such clustering.
- Secondary learning can also be performed using techniques such as Entropy.
- learning can be performed using unlabeled data as input to a deep learning model.
- a process of learning is performed using loss to make the class information included in the predicted value of the sleep state information or sleep stage information of the classifier more reliable.
- It can include a method of self-learning using unlabeled output data.
- the processor 130 may utilize a feature extraction model to extract a plurality of features corresponding to each of a plurality of source data and a plurality of target data.
- the processor 130 may generate a plurality of converted information (e.g., information on the frequency domain or a spectrogram) corresponding to a plurality of source data and a plurality of converted information (e.g., information on the frequency domain or a spectrogram) corresponding to a plurality of target data.
- Gram can be processed as input to a feature extraction model to extract multiple features. That is, the plurality of features related to the output of the feature extraction model may include a plurality of features related to source data and a plurality of features related to target data.
- the converted information (e.g., information in the frequency domain or spectrogram) corresponding to the plurality of source data is generated for each epoch.
- the extracted features are labeled with information about the sleep stage
- the information corresponding to the plurality of target data may not be labeled with the information about the sleep stage in the extracted features for each epoch.
- sleep stage classification may be difficult because features corresponding to target data containing various noises do not have labeled information.
- the processor 130 adjacent each of the plurality of first features corresponding to the plurality of source data and the plurality of second features corresponding to the plurality of target data in the vector space.
- each of the plurality of first features and the plurality of second features may be clustered and arranged by class.
- the first features corresponding to a plurality of source data and the second features corresponding to a plurality of target data each include various features (e.g., features of sleep stages such as light sleep, REM sleep, etc. ) may include information about.
- the second features corresponding to the plurality of target data do not have labeled information, but when they are well mixed based on the first features corresponding to the plurality of source data, as the first features are classified, the second features Since classification may become possible, analysis of sleep acoustic information (i.e., multiple target data) including various noises may also become possible. In other words, it may be important that the second features be mapped to blend well with the first features and facilitate classification between classes, based on the first features in which labeled information exists.
- the second features can be easily mapped for classification between classes. For example, when the first features and the second features are far away in the vector space, when classifying each class based on the labeling information of the first features (e.g., classifying the class of the first features through an imaginary line) case), features corresponding to different classes of the second features may be classified into the same class, or features corresponding to the same class may be classified into different classes.
- the present invention allows each of the first and second features to be arranged adjacent to each other in a vector space, and a feature extraction model can be trained so that each feature is clustered and arranged by class.
- the processor 130 may transfer a plurality of features to each of the feature classification model and the discriminator model.
- the feature classification model may be a neural network model that classifies a plurality of features into each of one or more sleep stages.
- the feature classification model may be a neural network model learned to predict sleep stages in response to features.
- the processor 130 may generate a feature classification model by performing learning on a neural network using label information matched to each feature.
- the feature classification model may include a fully connected layer and may be a model that classifies features into at least one of the sleep stages. For example, when the feature classification model inputs a feature corresponding to the first spectrogram, the feature may be classified as shallow sleep (eg, first sleep stage).
- the processor 130 uses the first learning information related to the first loss between the feature extraction model and the feature classification model according to the learning results of the feature extraction model and the feature classification model.
- the extraction model can be updated.
- the processor 130 may obtain second learning information from the discriminator model.
- the second learning information may be related to adversarial learning between the feature extraction model and the discriminator model.
- the processor 130 may perform learning through the second loss of the feature extraction model and the discriminator model.
- the second loss may refer to the loss related to adversarial learning between the feature extraction model and the discriminator model.
- the discriminator model when the discriminator model inputs the first feature corresponding to source data, it outputs a probability value close to 1, and when it inputs the second feature corresponding to target data, it outputs a probability value close to 0. It can be learned to print.
- the sum of the difference between the output value when inputting the first feature and 1, and the difference between the output value when inputting the second feature and 0 may be the loss (or loss function) of the discriminator model.
- the purpose of the feature extraction model is to deceive the discriminator model (i.e., make it difficult to distinguish between the first and second features) so that when the features generated by the feature extraction model are input to the discriminator model, they come out close to 1. It can be learned.
- the error between the output value and 1 may be the loss of the feature extraction model. That is, each model can be learned by the processor 130 in a way that minimizes loss. In other words, the processor 130 may perform training on the adversarial neural network by updating the parameters of the feature extraction model and discriminator model in a direction that minimizes adversarial loss.
- the processor 130 generates a second feature as close to the first feature as possible through a feature extraction model, and determines the second feature as a feature related to target data through a discriminator model. You can update the parameters of each model to increase the probability of success.
- the processor 130 updates the parameters of the feature extraction model by using the second adversarial loss between the feature extraction model and the discriminator model as second learning information, so that the feature extraction model has similar spectrograms corresponding to the two domains.
- Features i.e., features whose positions are close in the vector space
- the feature extraction model updated through the second learning information can extract the first features related to the source data and the second features related to the target data in a vector space so that they are well mixed without distinction, regardless of the domain. .
- the processor 130 selects the first features and the second features.
- Each of these features can be arranged adjacent to each other in the vector space, but each feature can be clustered and arranged by class.
- second features without labeling information are appropriately arranged based on first features with labeling information, so that as the first features are classified, classification of the second features becomes possible. You can. Accordingly, analysis of sleep sound information (i.e., multiple target data) including various noises may also be possible.
- the processor 130 may generate a plurality of source sub-data and a plurality of target sub-data by dividing each of the plurality of source data and the plurality of target data into predetermined sample units.
- the processor 130 processes information or spectrograms in the frequency domain corresponding to each of a plurality of source sub-data and a plurality of target sub-data as input to a feature extraction model to generate one or more sample features. can be created.
- the processor 130 divides each data into samples and Information or spectrograms on the corresponding plurality of frequency domains can be processed as input to each of the plurality of feature extraction models.
- each of the plurality of feature extraction models may be characterized by sharing parameters. That is, a plurality of feature extraction models may be updated to have the same performance.
- Spectrograms corresponding to each sample may generate features as they independently pass through each feature extraction model, and each of the generated features may be passed to the discriminator model.
- the discriminator model receives each feature corresponding to the sample unit.
- Raw sleep sound information according to embodiments of the present invention is sequential (or time series) data according to time, and may be large-capacity data.
- the discriminator model Since the transmitted spectrogram must be divided into epoch units and a decision corresponding to each epoch unit (e.g., judgment whether it is a feature related to the source data or a feature related to the target data) must be performed, the learning information (or learning amount) to be learned is It can be aggravating. In other words, when features are extracted corresponding to the entire spectrogram that has not been divided into samples and transmitted to the discriminator model, the learning efficiency of the discriminator model may be reduced.
- the processor 130 may divide data (eg, a spectrogram) into samples, extract features corresponding to each sample, and input features for each sample into a discriminator model. This makes it possible to learn the discriminator model with less data through sample to sample, and can improve the overall model performance through efficient learning.
- data eg, a spectrogram
- the processor 130 may refine the feature classification model through decision boundary iterative refinement learning using a plurality of target data.
- Refining the feature classification model may mean using features corresponding to target data as a classification standard rather than features corresponding to source data in the process of classifying features into each class. In other words, this may mean transforming the decision boundary (i.e., classification boundary) of features corresponding to source data into a boundary based on features corresponding to target data.
- Processor 130 may gradually push the decision boundary out of the data density region by minimizing the target-side cluster assumption violation loss.
- the processor 130 may perform decision boundary iterative refinement learning using a teacher network.
- Decision boundary iterative refinement learning may be learning to improve the placement of decision boundaries based on minimizing conditional entropy related to the output of each teacher network and student network.
- the processor 130 may input spectrograms corresponding to a plurality of target data into each of the student network and the teacher network.
- each of the student network and teacher network may be configured to include a feature extraction model and a feature classification model. The processor 130 can learn to improve the arrangement of the decision boundary through conditional entropy related to the output of the student network and the output of the teacher network.
- the feature classification model can be refined to transform the decision boundary so that classification, which was performed based on the decision boundary of features corresponding to the source data, is performed based on the features corresponding to the target data. Since the sleep analysis model of the present invention must be equipped to provide analysis information on sounds containing a lot of noise in the real lives of general users, as described above, when the features corresponding to the target data are based on the decision boundary, Accuracy in calculating sleep state information can be improved. In other words, through decision boundary iterative refinement learning, the feature classification model can output sleep state information with improved accuracy in response to features related to sleep acoustic information including various noises.
- the processor 130 may generate a sleep analysis model through a learning model in response to the time when learning is completed. Specifically, based on the updated learning model through adversarial learning between the feature extraction model and the feature classification model and adversarial learning between the feature extraction model and the discriminator model, a sleep analysis model was developed based on the learned feature extraction model and feature classification model. can be created. That is, the sleep analysis model can be constructed through a feature extraction model and a feature classification model in the updated learning model, as shown in FIG. 17A or 17B.
- the sleep analysis model according to an embodiment of the present invention is created through an adaptive learning process, that is, a training model updated through first learning information and second learning information, thereby providing improved accuracy even for acoustic data containing various noises. Through this, you can predict your sleep state.
- the processor 130 may obtain sleep sound information from the user terminal 10 and provide sleep state information corresponding to the acquired sleep sound information.
- the processor 130 may generate sleep state information corresponding to sleep sound information using a sleep analysis model.
- the sleep analysis model can perform robust predictions even on acoustic data containing a variety of noises through the adaptive learning described above, allowing users to easily monitor their sleep status in their daily environment. It has the advantage of being able to obtain analysis information. In other words, analysis of one's sleep status in a general home environment, even without directly visiting a specialized medical institution, without cost, without having to have separate special equipment other than equipment capable of acquiring sound, or without creating a special sleep environment. Information can be provided.
- Semi-supervised learning may mean performing learning of a deep learning model by using data output by a deep learning model inputting unlabeled data as a pseudo label.
- a higher reliability may mean that the class information contained in the predicted value is more reliable.
- Semi-supervised learning treats the prediction value output from the deep learning model as a new label (pseudo label) when unlabeled data is input into a deep learning model and uses it as a basis. You can learn about sleep state information.
- Semi-supervised learning can perform augmentation preprocessing on images to perform learning.
- Augmentation preprocessing can be weakly-augmented or strongly-augmented.
- the weakly-augmented method is a method that modulates the image relatively little, and one or more augmentation techniques can be used.
- Weakly-augmented augmentation techniques may include data augmentation or pitch shifting augmentation techniques (preferably, a technique in which the pitch is shifted in the range of 10% to 20%).
- the strongly-augmented method is a method of modulating an image relatively heavily, and one or more augmentation techniques may be used.
- the strongly-augmented augmentation technique may include one or more of data augmentation, TUT augmentation, or noise-added augmentation techniques.
- the learning method may include a method of going through an augmentation preprocessing process for an image and then learning it by using it as an input to a deep learning model.
- Using weakly-augmentated image information as an input to a deep learning model By using the prediction output as an input as a pseudo label, a method of performing learning again based on it can be included.
- moving average technique and weighted average are used to reflect intermediate learning information in the final learning model. Average) technique, Weighted Moving Average technique, or Exponential Weighted Moving Average technique can be used.
- a highly reliable pseudo label that can be generated by performing inference using data using a weakly-augmented augmentation technique as input to a deep learning model can be obtained.
- strongly-augmented data augmentation is performed by using pseudo labels obtained by performing unsupervised learning through weakly-augmented data augmentation as data labels.
- supervised learning can be performed.
- By performing supervised learning using pseudo labels more information can be learned using relatively heavily modulated images as input.
- supervised learning can be performed without data labeling to learn more data.
- the learning method involves using data acquired from a target environment (e.g., an environment other than polysomnography, etc.) or a target target group (e.g., a target group without sleep diseases, etc.) of a deep learning model.
- a target environment e.g., an environment other than polysomnography, etc.
- a target target group e.g., a target group without sleep diseases, etc.
- the distribution of the predicted values of the sleep state e.g., predicted values of the REM sleep stage, predicted values of the wake state, predicted values of the light sleep stage, predicted values of the deep sleep stage, etc.
- output as a result of learning as input is determined in a specific environment.
- Data acquired from e.g., polysomnography environment, etc.
- comparison group e.g., group of sleep disorder patients, etc.
- a deep learning model to match the distribution of predicted values of sleep state output as a result of learning. It may include a method of performing tuning so that it is formed.
- data acquired in a specific environment e.g., polysomnography environment, etc.
- a deep learning model e.g., a neural network environment, etc.
- the distribution of the predicted value of the output sleep state is different in an environment or target environment (e.g., an environment other than polysomnography, etc.)
- the distributions of the predicted values obtained may not completely match each other, but may include a tuning method so that the modeling data is formed in a consistent direction.
- Un-Supervised learning or Self-Supervised learning refers to a method of performing dictionary learning so that deep learning can increase the reliability of the prediction value for image information even if there is no label in the image information in the image domain. You can. In this case, it may include a method of damaging part of the image information and then performing learning to predict the damaged part of the image information.
- the learning method according to an embodiment of the present invention may include first performing dictionary learning using unlabeled data as input to a deep learning model, and then performing additional learning using labeled data as input.
- the dictionary As a result of training a deep learning model that performed dictionary learning according to the Un-Supervised learning or Self-Supervised learning method according to an embodiment of the present invention to perform the originally intended task by inputting a smaller number of labeled data, the dictionary The reliability of the predicted values of the learned deep learning model can be further increased.
- analysis of sleep state information based on sound information may include a step of identifying patterns for sleep sounds, such as breathing and body movements.
- sleep sounds such as breathing and body movements.
- the characteristics of sleep sound patterns are reflected over time, it may be difficult to fully understand them with only a short snapshot of sound data at a specific point in time. Therefore, in order to model acoustic information, analysis must be performed based on the time series characteristics of acoustic information, and there has been a demand for applying semi-supervised learning methods to such time series data.
- unlabeled sound information may include environmental sensing information, which is sound information acquired by the user through the user terminal 10.
- This environmental sensing information includes unlabeled data (e.g., life).
- a semi-supervised learning method based on sequential consistency loss that considers the time-series characteristics of sleep sound information can be provided.
- SSCL semi-supervised contrastive learning
- a sleep analysis method based on acoustic information that requires analysis of temporal or time-series information may consist of a sequence prediction task.
- a series of Mel spectrogram samples, denoted by are input, and the corresponding sequence of sleep stage labels is can be predicted or output.
- x i and y i mean the ith sample of x and y, which are a series of information, respectively
- N s means the number of samples in the sequence.
- the label of the sleep stage can appear as a class of four possible sleep stage information: wake stage, REM sleep stage, light sleep stage, and deep sleep stage. It can be expressed as a one-hot label.
- a sequence-to-sequence system consisting of a backbone network for low-level feature extraction and a head for learning the time-series correlation between Mel spectrograms model is available.
- the backbone network and the head network can be replaced with transformer-based artificial intelligence models such as MobileViTV2 and ViT, respectively, as shown in FIG. 17B.
- These models are sequenced It generates predictions for the logit of sleep stages expressed as , and the supervised baseline is trained exclusively using cross-entropy loss (L SUP ).
- unlabeled data is important to use.
- two different augmented samples from u i are , and the sleep analysis model is the logit of the sleep stage corresponding to each sample. can be output.
- the consistency loss (L C ) for each sample as shown in [Equation 1] below can be used.
- Equation 1 Jensen-Shannon divergence can be used, and B u means the batch size of the unlabeled sequence.
- consistency loss ( LC : consistency loss) can make the sleep analysis model more generalizable for predicting sleep stages for each sample, but it utilizes the temporal correlation or time-series information of sleep acoustic information and corresponding labels. This can be difficult to do. Therefore, according to an embodiment of the present invention, sequential consistency loss (L SC ) that matches the similarity of the prediction sequence can be used, as shown in Equation 2 below.
- Equation 2 ° is the Hadamard power, and ⁇ means the element-by-element product of the two matrices averaged by the value.
- cosine similarity may be adopted between the logit of the i-th sample and the j-th sample in order to predict the degree of sleep stage variation over time.
- Cosine similarity is calculated by dividing the dot product of two vectors by the product of the sizes of the two vectors, and may indicate the degree of similarity or relationship between vectors measured using the cosine value of the angle between the two vectors in the dot product space.
- a weighting mask matrix W that assigns a higher weight to a pair of nearby samples than to a pair of distant samples can be defined as shown in [Equation 3] below.
- w min means the minimum weight value of the furthest pair. Therefore, according to one embodiment of the present invention, the loss can be forced so that predictions for two different augmentation results from the same sequence have similar sequential tendencies.
- Figure 30 is a diagram illustrating an example of a learning method based on consistency loss or sequential consistency loss when the number of samples in the sequence is 6, according to an embodiment of the present invention.
- the upper triangular matrices of C a and W are displayed to facilitate understanding of the two consistency losses.
- Sequential shown in the upper part of Figure 30 included in inside Each is the predicted value for each epoch of the sleep analysis model.
- the sequential shown in the lower part of Figure 30 included in inside Each is the predicted value for each epoch of the sleep analysis model. Shown in Figure 30 and may be the result of performing prediction on the same unlabeled sequential. Learning a model using Consistency Loss involves training a sleep analysis model by setting the loss to maintain consistency for these two result values.
- the predicted values for epoch 1 and epoch 2 are There can be relationships even within a sequence, There may be relationships within the sequence, and the sleep analysis model is trained by setting a loss to maintain consistency among those relationships.
- the upper triangular matrix represented by W in FIG. 30 represents weights according to importance. Even within the same sequence, the farther apart the sample order, the lower the correlation, so the weight can be set small.
- weights of 0.5, 0.625, 0.75, 0.875, and 1.0 are set among weights from 0 to 1, as expressed in the upper triangular matrix of W, but this is only a simple example, and the present invention does not apply to this. It is not limited. For example, the larger the number of samples included in the sequence, the smaller the difference between weight values can be set. Additionally, the minimum value of the weight may be set to a value other than 0.5, and the difference between the weight values may not necessarily be constant.
- the number of samples in the sequence shown in FIG. 30 is merely an example, and the present invention is not limited thereto. For example, it may consist of 40 samples or 14 samples. This may vary depending on what sleep state information the sleep analysis model predicts, and is not absolute.
- CCSSL Class-aware Contrastive Learning
- the present invention not only can push and pull be performed between unlabeled data, but also push and pull can be performed including labeled data.
- learning can be performed so that data determined to be out-of-distribution (OOD) is reliably pushed out.
- OOD out-of-distribution
- the labeled data can serve as an anchor that remains stationary and does not move, and only the unlabeled data can be used. This can move.
- Figure 31 is an example diagram for explaining the operating mechanism of a learning method based on semi-supervised contrast loss according to an embodiment of the present invention.
- x1 is information labeled as a deep sleep stage and can serve as an anchor.
- u1 since u1 has sufficiently high confidence for the class of the deep sleep stage due to its clear and regular breathing pattern, u1 can be pulled as the anchor x1.
- a certain level of threshold can be viewed as the in-distribution threshold of the pseudo label, and if the reliability exceeds that threshold, it can be judged to be pulling.
- u3 since u3 has no evidence of being a Deep sleep stage class, it may be another class or Out-of-Distribution (OOD) data, pushing u3 away from anchor x1. .
- OOD Out-of-Distribution
- a certain level of threshold can be viewed as the in-distribution threshold of the pseudo label, and if it does not exceed the threshold, it can be judged to be pushed out.
- OOD out-of-distribution
- the CCSSL method uses labeled data or pseudo labels as above to calculate supervised contrastive loss between unlabeled data samples, and calculates OOD in clusters representing features within the class. Samples can be excluded.
- B u unlabeled sequences have a total of There are samples, and CCSSL can apply two strong augmentation methods to each unlabeled sample u i .
- the index of any augmentation sample is If expressed as , the contrast loss of CCSSL is It can be defined as:
- the loss of anchor i can be expressed as Equation 4 below.
- z i is the embedding of anchor i obtained through a transformer-based artificial intelligence model (or ViT), is the embedding of another augmented sample derived from the same unlabeled sample.
- z i means a feature corresponding to one piece of input data (e.g., image information), may mean that data augmentation is performed on z i .
- ⁇ is a combustion symbol representing the inner product. Additionally, ⁇ represents the temperature, represents the index of the augmented sample associated with the same pseudo label. also, is a re-weighting factor.
- the loss value on the right side is Corresponds to the numerator of the base of log in the term
- the part represents samples pulling together, and corresponds to the denominator of the base of log.
- the parts can be interpreted as representing samples pushing each other. That is, the above claim In part, Since data augmentation is performed on z i , it can be understood as being based on data (e.g., images) of the same class as z i . Samples output based on data of the same class are pulled together. Learning can be performed. Additionally, the above protest In part, z i and z j can be understood as being based on data of different classes (e.g., images), and learning can be performed so that samples output based on data of different classes are pushed together. .
- SSCL semi-supervised contrast learning
- SSCL semi-supervised contrast learning
- reliable positive and negative samples can be used by considering labeled samples as anchors.
- a positive sample refers to a sample that exceeds the threshold of in-distribution data, and corresponds to a sample that is judged to be of the same class. Learning can be performed such that positive samples are pulled to labeled samples.
- a voice sample refers to a sample that does not exceed a threshold called in-distribution data, and corresponds to a sample that is determined to be of a different class from the labeled sample. Learning may be performed so that speech samples are pushed from labeled samples.
- learning can be performed to push out OOD samples from the embedding cluster (cluster) within the class. Meanwhile, if it is not determined clearly whether the class of the sample is positive or negative in relation to the anchor, push and pull learning may not be performed.
- the contrastive loss for labeled anchor m can be defined as follows [Equation 5].
- m represents the index of a sample in a batch of B l labeled sequences, means the similarity between the ith augmented unlabeled sample i and the class y m of the mth anchor.
- positive and negative samples can be constructed using only pseudo labels with high reliability. in other words, and can be defined as a set of unlabeled samples that are positively and negatively augmented, respectively.
- L SSCL represents the filtering threshold, respectively.
- B l means the batch size of the labeled sequence.
- SSCL can detach the gradient of the labeled embedding z m . This is because the goal of SSCL is not to train the characteristics of labeled samples, but to push OOD samples in the unlabeled sequence away from labeled samples.
- the overall training loss according to an embodiment of the present invention can be expressed as [Equation 7]. From here, means the weight value applied to the corresponding loss L A.
- the sleep analysis model according to one embodiment of the present invention was learned or trained based on labeled data obtained from approximately 3,000 PSG tests in a laboratory environment and approximately 3,000 self-collected unlabeled data at home.
- the sleep analysis model according to an embodiment of the present invention was evaluated based on PSG in a laboratory environment, PSG in a home environment, and PSG audio data.
- PSG-Auido PSG audio data
- the N S value which is the number of samples in the sequence
- a sleep analysis technician performs the analysis every 30 seconds.
- assigning labels it was evaluated in the same way, considering that it usually checks for about ⁇ 10 minutes.
- the labeled batch size (B l ) and unlabeled batch size (B u ) were each set to 4.
- the weight value of each unsupervised learning loss is , , and were set to 1.5, 0.1, 0.1, and 0.1, respectively, for unsupervised training.
- the filtering thresholds were set to 0.9 and 0.2, respectively.
- the description of the specific numerical values mentioned above is merely an example, and the present invention is not limited thereto.
- Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment.
- the SoundSleepNet row in Figure 32 is a sequence-to-sequence consisting of a head for learning the time-series correlation between a backbone network for low-level feature extraction and a mel spectrogram according to an embodiment of the present invention. -sequence) This refers to the results of applying the sleep analysis model to a PSG test in a home environment.
- the SleepFormer row in FIG. 32 represents a sleep analysis model reflecting the unsupervised learning and/or semi-supervised learning method according to an embodiment of the present invention.
- C, SC, CC, SS, and WA represent consistency, sequential consistency, CCSSL, SSCL, and weight average, respectively.
- Figure 33 is a table comparing sleep analysis results based on PSG audio data and analysis results of a sleep analysis model according to an embodiment of the present invention.
- the table at the top of Figure 33 is a table comparing sleep analysis results based on PSG-Audio
- the table at the bottom of Figure 33 is a table comparing sleep analysis results based on PSG data in a laboratory environment.
- the SleepFormer model which is the guidance baseline, was constructed using a transformer-based artificial intelligence model, and the F1 score was 0.6332, which was confirmed to be improved by 0.0614 compared to SoundSleepNet. Additionally, by adding consistency loss (C: consistency loss) and sequential consistency loss (SC), it was confirmed that the F1 score improved significantly to 0.6597 and 0.6751, respectively.
- C consistency loss
- SC sequential consistency loss
- the F1 score was greatly improved to 0.6780, and when the weights of three models trained with different seeds were averaged and compared (WA), the total final result was It was confirmed that a score of 0.6804 was achieved, which was improved by 0.1085.
- the sleep analysis results based on PSG audio data were compared with the analysis results of the sleep analysis model according to an embodiment of the present invention.
- the first row of each table in FIG. 33 is the result of predicting sleep state information by inputting PSG audio data into a sleep analysis model according to an embodiment of the present invention
- Ours the second row, is the result of predicting sleep state information according to an embodiment of the present invention. This is the result of predicting sleep state information by inputting PSG audio data into a sleep analysis model based on semi-supervised learning.
- the PSG-Audio dataset that is the input to the sleep analysis model in the table shown at the top of Figure 33 is a data distribution that the sleep analysis model did not encounter, that is, was not exposed during training, and this dataset is exposed to new data. It can be used to evaluate the generalization performance of sleep analysis models on unresolved data. Meanwhile, the PSG-Audio dataset mainly consists of severe apnea patients, so the sleep stage class distribution may be unbalanced.
- the PSG data set in a laboratory environment that is input to the sleep analysis model may represent the distribution of labeled sources.
- the sleep analysis model can be further improved through processing of time-series sleep sound information in an actual sleep environment.
- sequential consistency loss improves the temporal correlation of sleep analysis models
- semi-supervised contrastive loss improves the feature representation clustering with labeled samples, thereby improving the distribution.
- Accuracy can be improved by effectively filtering out-of-distribution (OOD) samples.
- OOD out-of-distribution
- CONCEPT-A One embodiment of a multimodal sleep state information analysis method (CONCEPT-A)
- FIG. 26 is a flowchart illustrating a method for analyzing sleep state information including a process of combining sleep sound information and sleep environment information into multimodal data according to an embodiment of the present invention.
- a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep.
- S100 An information acquisition step
- S102 a step of preprocessing the first information
- S110 second information acquisition step of acquiring user sleep environment information related to the user's sleep
- S112 a step of performing preprocessing of the second information
- S112 a combining step of combining multi-modal data
- S130 a step of in
- the first information acquisition step (S100) may acquire sound information in the time domain related to the user's sleep from the user terminal 10.
- Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
- sleep sound information in the time domain is converted into information including changes in the frequency component along the time axis or information in the frequency domain. can do.
- information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied.
- a spectrogram By converting to a spectrogram, user privacy can be protected and the amount of data processing can be reduced.
- information converted from sleep sound information in the time domain is visualized, and in this case, sleep state information can be obtained through image analysis by using it as input to an image processing-based artificial intelligence model.
- the step of performing data preprocessing of the first information (S102) may further include extracting features based on the acoustic information.
- the user's sleep breathing pattern can be extracted based on the acquired acoustic information in the time domain.
- the acquired acoustic information in the time domain can be converted into information including changes in frequency components along the time axis, and the user's breathing pattern can be extracted based on the converted information.
- acoustic information on the time domain may be converted into information on the frequency domain, and the user's sleep breathing pattern may be extracted based on the acoustic information on the frequency domain.
- the converted information is visualized and can be used as input to an image processing-based artificial intelligence model to output information such as the user's breathing pattern.
- the step of performing data preprocessing of the first information (S102) may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model.
- Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation.
- Pitch Shifting Pitch Shifting
- TUT Tile UnTile
- noise-added augmentation may be used to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model.
- the above-described augmentation technique is merely an example, and the present invention is not limited thereto.
- the time required for hardware to process data can be shortened by the method added by Mel Scale.
- the second information acquisition step (S110) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network.
- the user's sleep environment information may refer to information related to sleep obtained in the space where the user is located.
- Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method.
- Sleep environment information may be breathing movement and body movement information measured through radar.
- Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc.
- Sleep environment information may be a photoplethysmography signal (PhotoPlethysmoGraphy).
- Sleep environment information can be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. There is. Sleep environment information may be an electroencephalography (EEG) signal. Sleep environment information may be an Actigraphy signal measured during sleep.
- HRV Heart Rate Variability
- PPG PhotoPlethysmoGraphy
- EEG electroencephalography
- Sleep environment information may be an Actigraphy signal measured during sleep.
- the step of preprocessing the second information (S112) is a data augmentation process to obtain a sufficient amount of meaningful data to input the data of the user's sleep environment information into a deep learning model. It can be included.
- the preprocessing of the second information may include processing data of the user's sleep environment information to extract features.
- the second information is a photoplethysmography signal (PPG)
- HRV heart rate variability
- heart rate can be extracted from the photoplethysmography signal.
- the image information is subjected to TUT (Tile UnTile) augmentation and noise addition. May include augmentation.
- TUT Tile UnTile
- the above-described augmentation technique is merely an example of an augmentation technique for image information, and the present invention is not limited thereto.
- the user's sleep environment information may be information in various storage formats. Various methods may be employed to augment the user's sleep environment information.
- the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data combines the data to input the multimodal data to the deep learning model.
- a method of combining multimodal data may be combining preprocessed first information and preprocessed second information into data of the same format.
- the first information may be acoustic image information in the frequency domain
- the second information may be heart rate image information in the time domain obtained from a smart watch. At this time, since the domains of the first information and the second information are not the same, they can be converted to the same domain and combined.
- a method of combining multimodal data may be combining preprocessed first information and preprocessed second information into data of the same format.
- the first information may be acoustic image information in the frequency domain
- the second information may be heart rate image information in the time domain obtained from a smart watch.
- each data can be labeled as being related to the first information and the second information.
- the step of combining multimodal data may be performed by performing first information augmentation, performing second information augmentation, and then combining.
- the first information may be acoustic information in the user's time domain
- the second information may be a photoplethysmography signal (PPG), which may be combined into multimodal data.
- the first information may be sound information on the user's time domain or a spectrogram converted from sound information on the time domain into sound information on the frequency domain
- the second information may be a photoplethysmography signal (PPG), , this can be combined into multimodal data.
- the step of combining multimodal data may be performed by performing first information augmentation and extracting and combining second information augmentation and features.
- the first information may be the user's sound information in the time domain or a spectrogram converted from the sound information in the time domain to sound information in the frequency domain
- the second information may be the heart rate obtained from the photoplethysmography signal (PPG). This can be HRV or heart rate, and can be combined into multimodal data.
- the step of combining multimodal data (S120) may be performed by performing first information augmentation and feature extraction, and performing second information augmentation.
- the first information may be the user's breathing pattern extracted based on the user's acoustic information
- the second information may be heart rate variability (HRV) or heart rate obtained from the photoplethysmography signal (PPG). Rate), and this can be combined into multimodal data.
- HRV heart rate variability
- PPG photoplethysmography signal
- first information augmentation and feature extraction may be performed, and second information augmentation and feature extraction may be performed and combined.
- first information may be a user's breathing pattern extracted based on the user's acoustic information
- second information may be heart rate variability (HRV) or heart rate obtained from a photoplethysmography signal (PPG). and can be combined into multimodal data.
- HRV heart rate variability
- PPG photoplethysmography signal
- the step of inputting multimodal combined data into a deep learning model can process the data into a matching form required for inputting the deep learning model to input multimodal combined data.
- the step of acquiring sleep state information as an output of a deep learning model is to infer sleep state information by using multimodal combined data as an input to a deep learning model for inferring sleep state information.
- Sleep state information may be information about the user's sleep state.
- the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can.
- the sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
- the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep.
- sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease.
- sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talk, whether he tosses and turns, and the duration of the tossing and turning.
- the user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
- Figure 27 is a flowchart illustrating a method for analyzing sleep state information including the step of combining the inferred sleep sound information and sleep environment information into multimodal data according to an embodiment of the present invention.
- a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep.
- Information acquisition step (S200) performing preprocessing of the first information (S202), inferring information about sleep by using the first information as input to the deep learning model (S204), user sleep related to the user's sleep
- sound information in the time domain related to the user's sleep may be acquired from the user terminal 10.
- Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
- temporal acoustic information on the time domain is converted into information including changes in the frequency component along the time axis or information on the frequency domain. can do.
- information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied.
- the step of performing data preprocessing of the first information (S202) may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model.
- Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation.
- Pitch Shifting Pitch Shifting
- TUT Tile UnTile
- noise-added augmentation may be used to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model.
- the above-described augmentation technique is merely an example, and the present invention is not limited thereto.
- the time required for hardware to process data can be shortened by the method added by Mel Scale.
- the second information acquisition step (S210) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network.
- the user's sleep environment information may refer to information related to sleep obtained in the space where the user is located.
- Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method.
- Sleep environment information may be breathing movement and body movement information measured through radar.
- Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc.
- Sleep environment information may be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. You can. Sleep environment information may be an electroencephalography (EEG) signal. Sleep environment information may be an Actigraphy signal measured during sleep.
- HRV Heart Rate Variability
- PPG PhotoPlethysmoGraphy
- EEG electroencephalography
- Sleep environment information may be an Actigraphy signal measured during sleep.
- the preprocessing of the second information (S212) involves a data augmentation process to obtain a sufficient amount of meaningful data to input the data of the user's sleep environment information into a deep learning model. It can be included.
- the image information is converted to TUT (Tile UnTile) augmentation. and noise-added augmentation.
- TUT Tile UnTile
- noise-added augmentation the above-described augmentation technique is merely an example of an augmentation technique for image information, and the present invention is not limited thereto.
- the user's sleep environment information may be information in various storage formats. Various methods may be employed to augment the user's sleep environment information.
- the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model involves inferring information about sleep by using the preprocessed first information as an input to a deep learning model. You can.
- a previously learned deep learning model can use inferred data as input for self-learning through inferred data.
- a deep learning sleep analysis model that infers information about sleep by using first information about sleep sounds as input may include a feature extraction model and a feature classification model.
- the feature extraction model is a one-to-one proxy task (Proxy) in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by task.
- Proxy a one-to-one proxy task
- learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network).
- FC Full Connected Layer
- FCN Fely Connected Neural Network
- learning may be performed by adopting the structure of the intermediate layer.
- the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. Thus, it can be learned to predict or classify overall sleep state information.
- the step (S214) of inferring information about sleep by using the preprocessed second information as an input to the inference model information about sleep can be inferred by using the preprocessed second information as an input to the inference model.
- the previously learned inference model may be the sleep deep learning sleep analysis model described above, but is not limited thereto, and the previously learned inference model may be an inference model of various types to achieve the purpose. A variety of methods can be used for the previously learned inference model.
- the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data combines the information to determine sleep state information.
- a method of combining multimodal data may be to combine sleep information inferred through preprocessed first information and information inferred through preprocessed second information into data of the same format.
- the user's sleep state information in the step of acquiring sleep state information by combining multimodal data (S230), can be determined by combining data obtained through multimodality.
- Sleep state information may be information about the user's sleep state.
- the step of acquiring sleep state information by combining multimodal data includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204).
- the step (S214) of inferring information about sleep using the inferred hypnogram about the user's sleep and the preprocessed second information as input to the inference model the hypnogram about the inferred user's sleep is generated.
- the step of acquiring sleep state information by combining multimodal data includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204).
- Graphs can be combined. For example, by substituting the probability of each hypnodensity graph into a formula, the sleep stage with the highest reliability at each time can be obtained as the user's sleep stage information.
- each hypnodensity graph if the reliability over time exceeds the preset reliability threshold, it is adopted as the user's sleep stage information, and the sleep stage information whose reliability over time exceeds the preset reliability threshold is adopted as the user's sleep stage information. If there is no, sleep state information can be obtained by adopting it as sleep stage information through weighting.
- the step of acquiring sleep state information by combining multimodal data includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204).
- a hypnodensity graph about the user's sleep inferred in the step (S214) of inferring information about sleep using the inferred hypnogram about the user's sleep and the preprocessed second information as input to the inference model. graph) can be combined. For example, if the reliability of the sleep stage displayed in the hypnogram and the hypnodensity graph exceeds a preset threshold, information on the user's sleep state can be obtained by adopting it as the user's sleep stage.
- a weighted calculation is made and adopted as the user's sleep stage to obtain highly reliable user's sleep state information. You can.
- the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can.
- the sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
- the user's sleep state information may include sleep stage information indicating the user's sleep as a stage.
- Methods for displaying sleep stages may include a Hypnogram, which displays sleep stages on a graph, and a Hypnodensity graph, which displays the probability of each sleep stage on a graph, but the display method is as follows. It is not limited.
- the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep.
- sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease.
- the sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talking, whether he tosses and turns, and the duration of the tossing and turning.
- the user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
- CONCEPT-C One embodiment of a multimodal sleep state information analysis method
- Figure 28 is a flowchart illustrating a method for analyzing sleep state information including the step of combining inferred sleep sound information into sleep environment information and multimodal data according to an embodiment of the present invention.
- a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep.
- Information acquisition step (S300) performing preprocessing of the first information (S302), inferring information about sleep by using the first information as input to the deep learning model (S304), user sleep related to the user's sleep
- It may include a second information acquisition step of acquiring environmental information (S310), a combining step of combining multi-modal data (S320), and a step of acquiring sleep state information by combining multi-modal data (S330).
- the first information acquisition step (S300) may acquire sound information in the time domain related to the user's sleep from the user terminal 10.
- Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
- temporal sound information on the time domain may be converted into information on the frequency domain.
- information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied.
- the step of performing data preprocessing of the first information may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model.
- Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation.
- Pitch Shifting Pitch Shifting
- TUT Tile UnTile
- noise-added augmentation Pitch Shifting
- the above-described augmentation technique is merely an example, and the present invention is not limited thereto.
- the time required for hardware to process data can be shortened by the method added by Mel Scale.
- the second information acquisition step (S310) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network.
- the user's sleep environment information may refer to information related to sleep obtained in the space where the user is located.
- Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method.
- Sleep environment information may be breathing movement and body movement information measured through radar.
- Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc.
- Sleep environment information may be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. You can.
- Sleep environment information may be an electroencephalography (EEG) signal.
- Sleep environment information may be an Actigraphy signal measured during sleep.
- Sleep environment information may be labeling data representing user information. Specifically, the labeling data may include the user's age, disease status, physical condition, race, height, weight, and body mass index, and this is only an example of labeling data representing the user's information and is not limited thereto.
- the above-described sleep environment information is only an example of information that may affect the user's sleep, and is not limited thereto.
- the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model involves inferring information about sleep by using the preprocessed first information as an input to a deep learning model. You can.
- a deep learning sleep analysis model that infers information about sleep by using first information about sleep sounds as input may include a feature extraction model and a feature classification model.
- the feature extraction model is a one-to-one proxy task (Proxy) in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by task.
- Proxy a one-to-one proxy task
- learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network).
- FC Full Connected Layer
- FCN Fely Connected Neural Network
- learning may be performed by adopting the structure of the intermediate layer.
- the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. Thus, it can be learned to predict or classify time-series sleep state information.
- the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data combines the data to input the multimodal data to the deep learning model.
- a method of combining multimodal data may be to combine sleep information inferred through preprocessed first information and information inferred through preprocessed second information into data of the same format.
- the step of acquiring sleep state information by combining multi-modal data can determine the user's sleep state information by combining data obtained through multi-modality.
- Sleep state information may be information about the user's sleep state.
- the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can.
- the sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
- the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep.
- sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease.
- the sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talking, whether he tosses and turns, and the duration of the tossing and turning.
- the user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
- analysis of sleep state information based on acoustic information may include a detection step for sleep events (eg, apnea, hypopnea, snoring, sleep talking, etc.).
- sleep events eg, apnea, hypopnea, snoring, sleep talking, etc.
- a detection step for sleep events eg, apnea, hypopnea, snoring, sleep talking, etc.
- sleep events that occur during sleep have various characteristics related to sleep events. For example, there is no sound during an apnea event, but when the apnea event ends, a loud sound may be generated as air passes again, and sleep events can be detected by learning the characteristics of the apnea event in time series.
- the deep neural network structure for analyzing the above-described sleep stages can be modified and used. Specifically, sleep stage analysis requires time-series learning of sleep sounds, but sleep event detection occurs on average between 10 and 60 seconds, so 1 epoch or 2 epochs of 30 seconds are used. ) is sufficient to accurately detect. Therefore, the deep neural network structure for analyzing sleep stages according to an embodiment of the present invention can reduce the amount of input and output of the deep neural network structure for analyzing sleep stages. For example, if the deep neural network structure for analyzing sleep stages processes 40 Mel spectrograms and outputs sleep stages of 20 epochs, the deep neural network structure for detecting sleep events processes 14 Mel spectrograms. Thus, the sleep event label of 10 epochs can be output.
- the sleep event label may include, but is not limited to, no event, apnea, hypopnea, snoring, tossing and turning, etc.
- a deep neural network structure for detecting sleep events that occur during sleep may include a feature extraction model and a feature classification model.
- the feature extraction model extracts the features of sleep events found in each mel spectrogram
- the feature classification model detects multiple epochs, finds epochs containing sleep events, and analyzes neighboring features to identify sleep events in time series. Types of events can be predicted and classified.
- a method for detecting sleep events that occur during sleep may assign class weights to solve the class imbalance problem of each sleep event. Specifically, among sleep events that occur during sleep, “no event” may have a dominant effect on the overall sleep length, resulting in a decrease in sleep event learning efficiency. Therefore, by assigning a higher weight than “no event” to other sleep events, learning efficiency and accuracy can be improved.
- the sleep event class is classified into three categories: “No event,” “Apnea,” and “Hypopnea,” to reduce the impact of “No event” on learning, “No event” is assigned 1.0, “ A weight of 1.3 can be assigned to “apnea” and a weight of 2.1 to “hypopnea.”
- Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention.
- the step of detecting a sleep event that occurs during sleep is to detect a sleep event that occurs during sleep in a home environment and a noisy environment.
- consistency training is performed as shown in FIG. 21.
- Consistency Training is a type of semi-supervised learning model.
- Consistency Training according to an embodiment of the present invention involves intentionally adding noise to one data, and intentionally adding noise to one data. This may be a method of performing learning with data that has not been added.
- Consistency Training may be a method of performing learning by generating data of a virtual sleep environment using noise of the target environment.
- Noise intentionally added according to an embodiment of the present invention may be noise of the target environment, where the noise of the target environment may be noise obtained in an environment other than polysomnography, for example.
- various noises can be added by adjusting the SNR and type of noise to resemble the actual user's environment. Through this, you can collect and learn about the types of noise obtained in various laboratories and the noise that occurs in actual home environments.
- corrupted data data to which noise is intentionally added
- Corrupted data may preferably refer to data to which noise of the target environment has been intentionally added.
- clean data data to which no noise is intentionally added will be referred to as clean data.
- noise was intentionally added to the clean data, but noise may actually be included.
- Clean data used for Consistency Training may be data acquired in a specific environment (preferably, a polysomnographic environment), and corrupted data may be data obtained in a different environment or target environment (preferably, This may be data obtained in an environment other than polysomnography.
- Corrupted data may be data in which noise acquired in another environment or a target environment (preferably, an environment other than polysomnography) is intentionally added to clean data.
- Consistency Training when clean data and corrupted data are input to the same deep learning model, a loss function or consistency loss is defined so that each output is the same, learning to achieve consistent prediction. This can be done.
- detection of sleep events may include home noise consistency training.
- Consistency learning in the home environment can make the model perform robustly even against noise at home.
- Consistency learning in a home environment can be made robust to noise by performing consistency learning so that the model outputs similar predictions regardless of whether there is noise or not.
- sleep event detection that occurs during sleep can proceed with consistency learning in the home environment.
- Consistency learning in the home environment may involve a consistency loss function.
- consistency loss can be defined as the mean square error (MSE) between the prediction of a clean sleep breathing sound and the prediction of a corrupted version of that sound.
- MSE mean square error
- consistency learning in a home environment randomly samples data from the training noise to generate corrupted sounds, and adds noise to clean sleep breathing sounds with a random SNR between -20 and 5. can do.
- consistency learning in a home environment can be done so that the length of the input sequence is 14 epochs and the total length of sampled noise is 7 minutes or more.
- detecting a sleep event according to the present invention detects information within a shorter period of time compared to sleep stage analysis according to the present invention, and the accuracy of sleep event detection can be increased.
- Figure 34 is a diagram illustrating a linear regression analysis function used to analyze AHI, a sleep apnea occurrence index, through sleep events that occur during sleep, according to an embodiment of the present invention.
- the AHI index which means the number of respiratory events that occur per unit time (e.g., 1 hour) is, separately from sleep stage analysis, the length of an epoch for one sleep stage analysis and Analysis can be done independently. Specifically, two or three short sleep events may be included during one epoch, and one long sleep event may be included during multiple epochs.
- sleep A regression analysis function can be used to estimate the number of actual events that occur from the number of epochs in which sleep events occur.
- a RANSAC (Random Sample Consensus) regression analysis model can be used.
- the RANSAC regression model is one of the methods for estimating the parameters of an approximate model (fitting model). It is a method of randomly selecting sample data and then selecting the model that matches the maximum.
- a method for analyzing a sleep state according to an embodiment of the present invention may include analysis through a deep learning model.
- the deep learning model according to an embodiment of the present invention is capable of multi-task learning and/or multi-task analysis.
- multi-task learning and multi-task analysis can simultaneously learn tasks according to the above-described embodiments of the present invention (eg, multi-modal learning, real-time sleep event analysis, sleep stage analysis, etc.).
- a deep learning model for analyzing sleep states is capable of multi-task learning and multi-task analysis.
- a deep learning model may adopt a structure with multiple heads.
- Each of the plurality of heads may be responsible for a specific task or task (eg, multimodal learning, real-time sleep event analysis, sleep stage analysis, etc.).
- a deep learning model may have a structure with a total of three heads: a first head, a second head, and a third head, and the first head performs inference and/or classification on sleep stage information,
- the second head may perform detection and/or classification of sleep apnea and hypopnea during the sleep event, and the third head may perform detection and classification of snoring during the sleep event.
- the detailed description of the specific work or task of the head described above is only an example for explaining the present invention, and is not limited thereto.
- the deep learning model according to the present invention can perform multi-task learning and analysis through a structure with multiple heads, and can optimize multiple tasks or specific tasks by increasing data efficiency.
- Figure 11 is a graph verifying the performance of the sleep analysis method according to the present invention, and is a diagram comparing the polysomnography (PSG) result (PSG result) and the analysis result (AI result) using the AI algorithm according to the present invention. am.
- the sleep analysis results obtained according to the present invention are not only consistent with polysomnography, but also contain more precise and meaningful information related to sleep stages (Wake, Light, Deep, REM). do.
- the hypnogram shown at the bottom of Figure 10 shows the probability of which of the four classes (Wake, Light, Deep, REM) it belongs to in 30 second increments when predicting the sleep stage by receiving the user's sleep sound information. indicates.
- the four classes refer to the awake state, light sleep state, deep sleep state, and REM sleep state, respectively.
- Figure 12 is a graph verifying the performance of the sleep analysis method according to the present invention, showing polysomnography (PSG) results in relation to sleep apnea and hypoventilation (hypopnea) and polysomnography (PSG) results according to the present invention.
- PSG polysomnography
- This is a diagram comparing the analysis results (AI results) using AI algorithms.
- the hypnogram shown at the bottom of FIG. 12 indicates the probability of which of the two diseases (sleep apnea, hypoventilation) it belongs to in 30-second increments when predicting a sleep disease by receiving user sleep sound information.
- the sleep state information obtained according to the present invention not only closely matches polysomnography, but also includes more precise analysis information related to apnea and hypoventilation. do.
- the present invention can analyze the user's sleep in real time and identify the point where sleep disorders (sleep apnea, sleep hyperventilation, sleep hypopnea) occur. If stimulation (tactile, auditory, olfactory, etc.) is provided to the user at the moment the sleep disorder occurs, the sleep disorder may be temporarily alleviated. In other words, the present invention can stop the user's sleep disorder and reduce the frequency of sleep disorder based on accurate event detection related to the sleep disorder. In addition, according to the present invention, there is an effect that very accurate sleep analysis is possible by performing sleep analysis in a multimodal manner.
- sleep In the inference stage of inferring the sleep stage through learning, sleep consists not only of a certain amount of time (e.g., 30 seconds, 20 minutes, etc.) like the learning data, but also of sleep time (e.g., 5 hours, 8 hours, etc.) It could be.
- post-processing can be performed to increase the accuracy of inferences in light of sleep duration.
- the specific values related to the above-mentioned time interval are merely examples, and the present invention is not limited thereto.
- inference regarding the depth of sleep according to sleep duration can be post-processed using medical information.
- post-processing can be performed through artificial intelligence learning using sleep stage information data according to sleep duration.
- the steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof.
- the software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
- the components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer.
- Components of the invention may be implemented as software programming or software elements, and similarly, embodiments of the invention may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, including: It can be implemented in a programming or scripting language such as C, C++, Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.
- the various embodiments presented herein may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques.
- article of manufacture includes a computer program, carrier, or media accessible from any computer-readable device.
- computer-readable media include magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory. Includes, but is not limited to, devices (e.g., EEPROM, cards, sticks, key drives, etc.).
- various storage media presented herein include one or more devices and/or other machine-readable media for storing information.
- machine-readable media includes, but is not limited to, wireless channels and various other media capable of storing, retaining, and/or transmitting instruction(s) and/or data.
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- Pathology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Animal Behavior & Ethology (AREA)
- Surgery (AREA)
- Veterinary Medicine (AREA)
- Heart & Thoracic Surgery (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Cardiology (AREA)
- Physiology (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Primary Health Care (AREA)
- Pulmonology (AREA)
- Epidemiology (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
The present invention provides an artificial neural network model for determining a sleep state of a user on the basis of sound information sensed in the sleep environment of the user. This method for generating a sleep analysis model may comprise the steps of: acquiring sleep sound information about the user; pre-processing the sleep sound information; and acquiring sleep state information by analyzing the pre-processed sleep sound information. According to the present invention, sound information related to a sleep environment is easily acquired through a user terminal (for example, a mobile terminal) carried by a user, and a sleep stage of the user is analyzed on the basis of the acquired sound information so that a sleep state can be determined.
Description
본 발명은 사용자의 수면 상태를 분석하기 위한 것으로서, 보다 구체적으로, 사용자의 수면 환경에서 획득되는 음향 정보에 기초하여 수면 상태를 분석하기 위한 것이다.The present invention is intended to analyze a user's sleeping state, and more specifically, to analyze the sleeping state based on acoustic information obtained from the user's sleeping environment.
건강을 유지하고 개선하는 방법에는 운동, 식이요법 등 다양한 방법이 있지만, 하루 중 약 30% 이상의 시간을 차지하는 수면을 잘 관리하는 것이 무엇보다 중요하다. 하지만, 현대인들은 기계의 단순한 노동 대체 및 삶의 여유에도 불구하고 불규칙한 식습관과 생활습관 및 스트레스로 인해 숙면을 취하지 못하고, 불면증, 과다수면, 수면 무호흡 증후군, 악몽, 야경증, 몽유병 등과 같은 수면 질환으로 고통받고 있다.There are various ways to maintain and improve your health, such as exercise and diet, but it is most important to manage sleep well, which takes up more than 30% of the day. However, despite the simple replacement of labor by machines and the leisure of life, modern people are unable to sleep well due to irregular eating habits, lifestyle habits, and stress, and suffer from sleep disorders such as insomnia, hypersomnia, sleep apnea syndrome, nightmares, night terrors, and sleepwalking. I'm receiving it.
국민건강보험 공단에 따르면, 국내 수면장애 환자가 2014년부터 2018년까지 연 평균 약 8%씩 증가하는 것으로 나타났으며, 2018년 국내에서 수면장애로 진료받은 환자는 약 57만명에 달한다.According to the National Health Insurance Service, the number of patients with sleep disorders in Korea increased by about 8% on average per year from 2014 to 2018, and the number of patients treated for sleep disorders in Korea in 2018 reached approximately 570,000.
또한, 2019년 수면 관련 조사에 의하면 전세계 성인의 62%가 원하는 만큼 수면을 취하지 못하며, 성인의 67%가 매일 밤 최소 한 번 이상의 수면 장애를 겪는다. 그리고, 전 세계 성인 10명 중 8명은 수면을 개선하기 원하지만 60%는 의료 전문가의 도움을 구하지 못하는 실정이고, 전 세계 성인의 44%가 지난 5년 동안 수면의 질이 나빠졌다고 한다. Additionally, according to a 2019 sleep-related survey, 62% of adults around the world do not get as much sleep as they want, and 67% of adults experience at least one sleep disorder every night. And while eight out of 10 adults around the world want to improve their sleep, 60% are unable to seek help from a medical professional, and 44% of adults worldwide say their sleep quality has worsened over the past five years.
숙면이 신체적 또는, 정신적 건강에 영향을 미치는 중요한 요소로 인식되면서 숙면에 대한 관심이 증가하고 있지만, 수면 질환의 개선을 위해서는 전문 의료 기관을 직접 방문해야 하며, 별도의 검사 비용이 요구되고, 그리고 지속적인 관리가 어려움에 따라 치료에 대한 사용자들의 노력이 미비한 실정이다.Interest in a good night's sleep is increasing as it is recognized as an important factor affecting physical and mental health. However, in order to improve sleep disorders, a person must visit a specialized medical institution, a separate test fee is required, and continuous treatment is required. Due to the difficulty in management, users' efforts toward treatment are insufficient.
이와 같이 날로 심각해지는 수면 문제로 인하여 수면 건강 관리에 대한 니즈가 증가하고, 이에 따라 수면 문제를 기술로 해결하려는 슬립테크 시장도 빠르게 성장하고 있다.As sleep problems become more serious day by day, the need for sleep health management is increasing, and the sleep tech market, which seeks to solve sleep problems through technology, is also growing rapidly.
또한, 수면 건강 관리를 위해 수면에 관한 정보를 분석하고 추론하는 것에 있어 하나의 데이터만을 사용하는 것 보다 멀티모달로 여러 종류의 데이터를 학습하고, 이를 통해서 보다 정확한 추론이 요구되고 있다.In addition, when analyzing and inferring information about sleep for sleep health management, it is required to learn various types of data in a multimodal manner rather than using only one data, and to make more accurate inferences through this.
대한민국 공개특허공보 제10-2003-0032529호는 사용자의 신체 정보를 입력받고, 수면 중 사용자의 신체 상태에 따라 반복적인 학습에 의해 검출한 주파수 대역의 진동 및/또는 초음파를 출력하여 최적의 수면 유도가 가능하도록 하는 취침 유도기 및 수면 유도 방법에 대해 개시하고 있다.Republic of Korea Patent Publication No. 10-2003-0032529 receives the user's physical information and outputs vibration and/or ultrasonic waves in the frequency band detected through repetitive learning according to the user's physical condition during sleep to induce optimal sleep. Discloses a sleep induction device and a sleep induction method that enable.
다만, 종래의 기술은 신체 착용형 장비로 인해 야기되는 불편함으로 수면의 질이 감소될 우려가 있으며, 장비의 주기적인 관리(예컨대, 충전 등)가 필요하다. 이에 따라, 최근에는 비접촉식으로 사용자의 수면을 모니터링하여 수면 상태를 추정하고, 추정된 수면 상태에 따라서 사용자의 수면을 관리하기 위한 연구들이 진행되고 있다.However, in the conventional technology, there is a risk that sleep quality may be reduced due to discomfort caused by body-worn equipment, and periodic management of the equipment (eg, charging, etc.) is required. Accordingly, research has recently been conducted to estimate the sleep state by monitoring the user's sleep in a non-contact manner and to manage the user's sleep according to the estimated sleep state.
특히, 최근에는 웨어러블 디바이스를 이용하여 사용자의 수면을 분석하는 방법이 제안되고 있다. 대한민국 공개특허공보 제10-2022-0015835호는 수면 질을 평가하기 위한 전자장치 및 그 전자 장치에서의 동작 방법에 관한 것으로, 수면 시간 동안 웨어러블 디바이스가 획득한 수면 관련 정보에 기초하여 수면 주기를 식별하고, 이에 따라 수면의 질을 평가하는 방법을 제시하고 있다.In particular, recently, a method of analyzing a user's sleep using a wearable device has been proposed. Republic of Korea Patent Publication No. 10-2022-0015835 relates to an electronic device for evaluating sleep quality and an operating method in the electronic device, which identifies the sleep cycle based on sleep-related information acquired by the wearable device during sleep time. And it suggests a method to evaluate sleep quality accordingly.
하지만, 종래의 웨어러블 디바이스를 이용한 수면 분석 방법은 웨어러블 디바이스가 사용자 신체에 적절하게 접촉되지 않은 경우, 사용자가 웨어러블 디바이스를 착용하지 않은 경우에는 수면 분석이 불가능하다는 문제점이 있었다. 또한, 복수의 사용자가 같은 공간에서 수면을 취하는 경우, 웨어러블 디바이스 비착용자의 움직임 때문에 웨어러블 디바이스 착용자의 수면 분석에 지장이 생기게 될뿐만 아니라, 웨어러블 디바이스 비착용자에 대한 수면 분석은 불가능하다는 문제점이 있었다.However, the conventional sleep analysis method using a wearable device had a problem in that sleep analysis was not possible when the wearable device was not properly contacted with the user's body or when the user was not wearing the wearable device. Additionally, when multiple users sleep in the same space, not only does the movement of the non-wearable device wearer interfere with the sleep analysis of the wearable device wearer, but there is also a problem in that sleep analysis for the non-wearable device wearer is impossible.
따라서, 별도의 장비를 구비하지 않더라도, 사용자가 소지하는 사용자 단말(예컨대, 이동식 단말)을 통해 용이하게 수면 환경에 관련한 음향 정보를 획득하고, 획득한 음향 정보를 기반으로 사용자의 수면 단계를 분석하여 수면 상태를 감지하고자 하는 기술에 대한 수요가 존재할 수 있다.Therefore, even without separate equipment, the user can easily acquire acoustic information related to the sleep environment through a user terminal (e.g., a mobile terminal) carried by the user, and analyze the user's sleep stage based on the acquired acoustic information. There may be a demand for technology that seeks to detect sleep states.
또한, PSG 환경, 병원 환경 또는 실험실 환경 등 제한된 환경이 아닌, 제한되지 않은 일반적인 환경(예컨대, 가정 환경 등)에서 별다른 장치 없이도 수면 상태를 간편하면서도 정확하게 분석하고자 하는 기술에 대한 수요가 존재할 수 있다.In addition, there may be a demand for a technology that can easily and accurately analyze sleep status without any special devices in an unrestricted general environment (e.g., home environment, etc.) rather than a limited environment such as a PSG environment, hospital environment, or laboratory environment.
또한, 수면 음향 정보 또는 다른 수면 환경 정보 중 적어도 하나 이상에 기초하여 사용자의 수면 상태를 감지하고자 하는 기술에 대한 수요가 존재할 수 있다.Additionally, there may be a demand for technology that detects the user's sleep state based on at least one of sleep sound information or other sleep environment information.
또한, 사용자의 수면 음향 정보 또는 다른 수면 환경 정보 중 적어도 하나 이상에 기초하여 수면 상태를 실시간으로 감지하고자 하는 기술에 대한 수요가 존재할 수 있다.Additionally, there may be a demand for a technology that detects sleep status in real time based on at least one of the user's sleep sound information or other sleep environment information.
본 발명은 전술한 배경 기술에 대응하여 안출된 것으로, 사용자의 수면 환경에서 감지되는 음향 정보 또는 수면 환경 정보 중 적어도 하나 이상에 기반하여 사용자의 수면 상태를 판별하는 인공신경망 모델을 제공하기 위함이다.The present invention was developed in response to the above-described background technology, and is intended to provide an artificial neural network model that determines the user's sleep state based on at least one of acoustic information or sleep environment information detected in the user's sleep environment.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.
상술한 과제를 해결하기 위한 본 발명의 일실시예에서 음향 정보에 기반하여 수면 상태를 예측하는 수면 분석 모델을 생성하기 위한 방법이 개시된다.In one embodiment of the present invention to solve the above-described problem, a method for generating a sleep analysis model that predicts a sleep state based on acoustic information is disclosed.
상기 수면 분석 모델을 생성하는 방법은, 사용자의 수면 음향 정보를 획득하는 단계, 상기 수면 음향 정보에 대한 전처리를 수행하는 단계 및 상기 전처리된 수면 음향 정보에 대한 분석을 수행하여 수면 상태 정보를 획득하는 단계를 포함할 수 있다.The method of generating the sleep analysis model includes obtaining sleep sound information of a user, performing preprocessing on the sleep sound information, and performing analysis on the preprocessed sleep sound information to obtain sleep state information. May include steps.
본 발명의 일실시예에서, 상기 수면 상태 정보를 획득하는 단계는, 하나 이상의 네트워크 함수를 포함하는 수면 분석 모델을 이용하여 상기 수면 상태 정보를 획득하는 단계를 포함할 수 있다.In one embodiment of the present invention, acquiring the sleep state information may include obtaining the sleep state information using a sleep analysis model including one or more network functions.
본 발명의 일실시예에서, 수면 분석 모델을 생성하는 방법은 진폭, 위상, 주파수를 가지는 시간 도메인상의 로우(raw) 음향 정보를, 그 주파수 성분의 시간 축에 따른 변화를 포함하는 정보로 변환하는 단계를 포함할 수 있다. 여기서, 본 발명의 일 실시예에 따르면, 변환된 정보는 시각화된 것일 수 있다.In one embodiment of the present invention, the method for generating a sleep analysis model includes converting raw acoustic information in the time domain having amplitude, phase, and frequency into information including changes in the frequency components along the time axis. May include steps. Here, according to an embodiment of the present invention, the converted information may be visualized.
또는, 본 발명의 일 실시예에서, 시간 도메인상의 로우 음향 정보를 진폭과 주파수를 가지는 주파수 도메인상의 정보로 변환하는 단계를 포함할 수 있다. 여기서, 본 발명의 일 실시예에 따르면, 변환된 주파수 도메인상의 정보는 시각화된 것일 수 있다.Alternatively, in one embodiment of the present invention, it may include converting raw acoustic information in the time domain into information in the frequency domain having amplitude and frequency. Here, according to an embodiment of the present invention, the information on the converted frequency domain may be visualized.
본 발명의 일실시예에서, 음향 정보를 주파수 도메인상의 스펙트로그램 정보로 변환하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of converting acoustic information into spectrogram information in the frequency domain may be included.
본 발명의 일실시예에서, 스펙트로그램에 멜 스케일을 적용하여 멜 스펙트로그램으로 변환하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of applying the Mel scale to the spectrogram and converting it into a Mel spectrogram may be included.
본 발명의 일실시예에서, 시간 도메인상의 로우 음향 정보 또는 주파수 도메인상의 정보에 대한 전처리를 수행하는 단계를 포함할 수 있다.In one embodiment of the present invention, it may include performing preprocessing on raw acoustic information in the time domain or information in the frequency domain.
본 발명의 일실시예에서, 상기 음향 정보에 대한 전처리를 수행하는 단계는, 스펙트랄 노이즈 게이팅 또는 딥러닝 기반의 노이즈 리덕션을 수행하는 단계를 포함할 수 있다.In one embodiment of the present invention, performing preprocessing on the acoustic information may include performing spectral noise gating or deep learning-based noise reduction.
본 발명의 일실시예에서, 주파수 도메인의 정보에 대하여 데이터 어그멘테이션을 수행하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of performing data augmentation on information in the frequency domain may be included.
본 발명의 일실시예에서, 상기 데이터 어그멘테이션은 피치 시프팅(pitch shifting), TUT(Tile UnTile) 어그멘테이션, 또는 노이즈 부가 어그멘테이션 중 하나 이상을 수행하는 단계를 포함할 수 있다.In one embodiment of the present invention, the data augmentation may include performing one or more of pitch shifting, TUT (Tile UnTile) augmentation, or noise-added augmentation.
본 발명의 일실시예에서, 상기 노이즈 부가 어그멘테이션은 노이즈 정보와 수면 음향 정보를 주파수 도메인으로 각각 변환하여, 주파수 도메인 상에서 정보를 부가하는 방법을 포함할 수 있다.In one embodiment of the present invention, the noise addition augmentation may include a method of converting noise information and sleep sound information into the frequency domain, respectively, and adding information on the frequency domain.
본 발명의 일실시예에서, 상기 노이즈 부가 어그멘테이션은 노이즈 정보와 수면 음향 정보를 스펙트로그램으로 각각 변환하여, 스펙트로그램으로 변환한 도메인 상에서 정보를 부가하는 방법을 포함할 수도 있다.In one embodiment of the present invention, the noise addition augmentation may include a method of converting noise information and sleep sound information into a spectrogram, respectively, and adding information on the domain converted into a spectrogram.
본 발명의 일실시예에서, 상기 노이즈 부가 어그멘테이션은 수면 음향 정보와 노이즈 정보에 멜 스케일이 적용된 멜 스펙트로그램으로 변환한 도메인 상에서 정보를 부가하는 방법을 포함할 수도 있다.In one embodiment of the present invention, the noise addition augmentation may include a method of adding information on a domain converted into a Mel spectrogram to which a Mel scale is applied to the sleep sound information and noise information.
본 발명의 일실시예에서, 주파수 도메인상의 정보에 대하여 정방형에 가까운 형태로 변환하는 단계를 포함할 수 있다.In one embodiment of the present invention, a step of converting information in the frequency domain into a form close to a square may be included.
본 발명의 일실시예에서, 상기 정방형에 가까운 형태로 변환하는 단계는 리세이핑(Reshaping), 리사이즈(Resize), 스플릿-캣(Split-cat) 방법 중 적어도 하나 이상을 포함할 수 있다.In one embodiment of the present invention, the step of converting to a shape close to a square may include at least one of reshaping, resizing, and split-cat methods.
본 발명의 일실시예에서, 주파수 도메인상의 정보 또는 스펙트로그램에 대하여 dB 스케일(로그스케일)로 변환하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of converting information or spectrogram in the frequency domain to dB scale (log scale) may be included.
본 발명의 일실시예에서, 주파수 도메인상의 정보 또는 스펙트로그램에 대하여 전체 값의 평균이 0이 되고, 표준 편차가 1이 되도록 하는 정규화(Normalization) 과정을 수행하는 단계를 포함할 수 있다.In one embodiment of the present invention, it may include performing a normalization process so that the average of all values is 0 and the standard deviation is 1 for information or spectrogram in the frequency domain.
본 발명의 일실시예에서, 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램 정보를 이미지로서 인공지능 모델의 입력으로 하는 단계를 포함할 수 있다.In one embodiment of the present invention, it may include the step of using frequency domain information, spectrogram or mel spectrogram information as an image as input to the artificial intelligence model.
본 발명의 일실시예에서 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램을 30초 단위로 분할하여 복수개의 주파수 도메인상의 정보들, 스펙트로그램들 또는 멜 스펙트로그램들을 구성하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step may include configuring a plurality of frequency domain information, spectrograms, or mel spectrograms by dividing information, spectrograms, or mel spectrograms in the frequency domain into 30-second increments.
본 발명의 일실시예에서 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램이 30초 단위로 분할된 각각의 정보에 대응하는 수면 상태 정보를 추출하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of extracting sleep state information corresponding to each piece of information in the frequency domain, a spectrogram, or a mel spectrogram divided into 30 second units may be included.
본 발명의 일실시예에서 30초 단위로 분할된 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램이 복수 개로 구성된 일련의 정보를 딥러닝 모델의 입력으로 하여, 수면 상태 정보를 추출하는 단계를 포함할 수 있다.In one embodiment of the present invention, it may include the step of extracting sleep state information by using a series of information consisting of a plurality of frequency domain information, spectrograms, or mel spectrograms divided into 30 second units as input to a deep learning model. You can.
본 발명의 일실시예에서 시계열 정보가 포함되어 있는 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램을 인공지능 모델의 입력으로 하여 차원이 낮아진 벡터를 출력하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of outputting a vector with reduced dimensionality by using information in the frequency domain, a spectrogram, or a mel spectrogram containing time series information as input to an artificial intelligence model.
본 발명의 일실시예에서 차원이 낮아진 벡터를 인공지능 모델의 입력으로 하여 시계열 정보가 함축된 벡터를 출력하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of outputting a vector containing implied time series information by using a vector with reduced dimensionality as an input to an artificial intelligence model may be included.
본 발명의 일실시예에서 차원이 낮아진 벡터를 중간층(Intermediate Layer)의 입력으로 하여, 시계열 정보가 함축된 벡터를 출력하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of outputting a vector containing time series information by using a vector with a reduced dimension as an input to an intermediate layer.
본 발명의 일실시예에서, 차원이 낮아진 벡터가 입력되는 중간층(Intermediate Layer)에는 벡터의 정보를 함축하는 선형화, 평균과 분산을 입력하기 위한 정규화, 또는 일부 노드를 비활성화하는 드롭아웃 단계를 수행하는 모델 중 적어도 하나 이상이 포함될 수 있다.In one embodiment of the present invention, the intermediate layer, where a vector of reduced dimension is input, performs linearization to imply vector information, normalization to input the average and variance, or a dropout step to deactivate some nodes. At least one of the models may be included.
본 발명의 일실시예에서, 정답이 라벨링 되어있지 않은 언레이블드 데이터(Unlabeled data)를 사용하여 학습하는 비지도 학습모델을 활용하는 방법이 포함될 수 있다.In one embodiment of the present invention, a method of utilizing an unsupervised learning model that learns using unlabeled data in which the correct answer is not labeled may be included.
본 발명의 일실시예에서 활용되는 비지도 학습모델에는, 타겟 환경의 노이즈를 이용한 컨시스턴시 트레이닝(Consistency Training)모델이 포함될 수 있다.The unsupervised learning model used in one embodiment of the present invention may include a consistency training model using noise in the target environment.
본 발명의 일실시예에서 활용되는 컨시스턴시 트레이닝(Consistency Training)모델에는, 노이즈를 의도적으로 부가한 데이터와, 노이즈를 의도적으로 부가하지 않은 데이터를 가지고 학습을 수행하는 단계가 포함될 수 있다.The consistency training model used in one embodiment of the present invention may include the step of performing learning with data to which noise has been intentionally added and data to which noise has not been intentionally added.
본 발명의 일실시예에서 활용되는 비지도 학습모델에는, 비지도 도메인 적응(Unsupervised Domain Adaptation, UDA)모델이 포함될 수 있다.The unsupervised learning model used in one embodiment of the present invention may include an unsupervised domain adaptation (UDA) model.
본 발명의 일실시예에서 활용되는 UDA 모델은, 언레이블드 데이터(unlabeled data)와 레이블드 데이터(labeled data)가 활용되는 1차 학습과, unlabeled data가 활용되는 2차 학습을 수행할 수 있다.The UDA model used in one embodiment of the present invention can perform primary learning using unlabeled data and labeled data, and secondary learning using unlabeled data. .
본 발명의 일실시예에 따른 UDA 모델의 1차 학습에서는 특정 환경에서 획득한 labeled data와, 다른 환경 또는 타겟 환경에서 획득한 unlabeled data를 활용하여 학습을 수행할 수 있다.In the first learning of the UDA model according to an embodiment of the present invention, learning can be performed using labeled data acquired in a specific environment and unlabeled data acquired in another environment or target environment.
본 발명의 일실시예에 따른 UDA 모델의 1차 학습에서는 특정 환경에서 특정 환경에서 획득한 데이터와 다른 환경 또는 타겟 환경 에서 획득한 데이터 각각을 수면 분석 모델의 입력으로 하여 데이터간의 공통점을 추출하도록 학습하는 단계를 포함할 수 있다.In the first learning of the UDA model according to an embodiment of the present invention, data acquired in a specific environment and data acquired in a different environment or target environment are input to the sleep analysis model and learned to extract commonalities between the data. It may include steps.
본 발명의 일실시예에 따른 UDA 모델의 1차 학습에서는 특정 환경에서 특정 환경에서 획득한 데이터와 다른 환경 또는 타겟 환경 에서 획득한 데이터 각각을 수면 분석 모델의 입력으로 하여 출력된 데이터간의 공통점을 판별자(Discriminator) 모델의 입력으로 하여, 입력된 데이터간의 차이점을 분류하기 위해 학습하는 단계를 포함할 수 있다.In the first learning of the UDA model according to an embodiment of the present invention, commonalities between data obtained in a specific environment and data acquired in a different environment or target environment are used as input to the sleep analysis model to determine commonalities between the output data. It may include a learning step to classify differences between input data as input to a discriminator model.
본 발명의 일실시예에 따른 UDA 모델의 2차 학습에서는 Unlabeled data를 딥러닝 모델의 입력으로 하여 수면 분석 모델에서 출력된 수면 상태 정보의 예측값이 포함하고 있는 클래스 정보를 더 신뢰할 수 있도록 학습을 하는 단계를 포함할 수 있다.In the secondary learning of the UDA model according to an embodiment of the present invention, unlabeled data is used as input to the deep learning model to learn the class information contained in the predicted value of sleep state information output from the sleep analysis model to make it more reliable. May include steps.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)에서는 언레이블드 데이터(unlabeled data)를 딥러닝 모델의 입력으로 하여 출력된 데이터를 슈도 라벨(pseudo label)로 활용함으로써 딥러닝 모델의 학습을 수행하는 단계를 포함할 수 있다.In semi-supervised learning using pseudo labels used in one embodiment of the present invention, unlabeled data is used as input to a deep learning model and the output data is labeled with a pseudo label ( It can include the step of performing learning of a deep learning model by using it as a pseudo label.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)에서는 이미지에 대한 어그멘테이션 전처리를 수행하는 단계를 포함할 수 있다. Semi-supervised learning using pseudo labels used in one embodiment of the present invention may include performing augmentation preprocessing on the image.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)에서 수행되는 어그멘테이션 전처리 방법에는 이미지를 상대적으로 적게 변조시키는 Weakly-augmented 방법 또는 이미지를 상대적으로 많이 변조시키는 Strongly-augmented 방법 중 적어도 하나가 포함될 수 있다.The augmentation preprocessing method performed in semi-supervised learning using pseudo labels used in an embodiment of the present invention includes a weakly-augmented method that modulates the image relatively little, or a weakly-augmented method that modulates the image relatively little. At least one of the Strongly-augmented methods may be included.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)에서 수행되는 어그멘테이션 전처리 기법으로는 데이터 어그멘테이션, 피치 시프팅(Pitch shifting) 어그멘테이션, TUT(Tile UnTile) 어그멘테이션, 또는 노이즈 부가 어그멘테이션 기법 중 하나 이상이 포함될 수 있다.Augmentation preprocessing techniques performed in semi-supervised learning using pseudo labels used in an embodiment of the present invention include data augmentation and pitch shifting. It may include one or more of ation, TUT (Tile UnTile) augmentation, or noise-added augmentation techniques.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)은 이미지를 상대적으로 적게 변조시키는 Weakly-augmented 방법이 수행된 이미지 정보를 딥러닝 모델의 입력으로 하여 출력된 예측값을 슈도 라벨로 활용함으로써, 그것을 기반으로 학습을 수행하는 방법을 포함할 수 있다.Semi-supervised learning using pseudo labels used in one embodiment of the present invention is a weakly-augmented method that modulates images relatively little, and uses image information as input to a deep learning model. By using the output predicted value as a pseudo label, a method of performing learning based on it can be included.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)에서 이동평균(Moving Average)기법, 가중평균(Weighted Average)기법, 가중이동평균(Weighted Moving Average)기법, 또는 지수가중이동평균(Exponential Weighted Moving Average)기법 중 하나 이상의 기법을 포함할 수 있다.In semi-supervised learning using pseudo labels used in an embodiment of the present invention, moving average technique, weighted average technique, weighted moving average ) may include one or more of the techniques, or the Exponential Weighted Moving Average technique.
본 발명의 일실시예에서 활용되는 슈도 라벨(pseudo label)을 이용한 반지도학습(Semi-Supervised learning)은, 타겟 환경 또는 타겟 대상집단으로부터 획득한 데이터를 딥러닝 모델의 입력으로 하여 출력된 예측값의 분포가, 특정 환경 또는 비교대상집단으로부터 획득한 데이터를 딥러닝 모델의 입력으로 하여 출력된 예측값의 분포와 일치하는 방향으로 형성되게끔 튜닝(Tuning)하는 단계를 포함할 수 있다.Semi-supervised learning using pseudo labels used in one embodiment of the present invention uses data obtained from the target environment or target group as input to a deep learning model to determine the output prediction value. It may include tuning the distribution so that it is formed in a direction that matches the distribution of the predicted value output using data obtained from a specific environment or comparison group as input to the deep learning model.
본 발명의 일실시예에서 활용되는 비지도학습 및/또는 반지도학습은 이미지 도메인에서 이미지 데이터에 label이 없더라도 이미지 정보에 대한 예측값의 신뢰도가 높아질 수 있도록 사전 학습을 수행하는 방법을 포함할 수 있다.Unsupervised learning and/or semi-supervised learning used in an embodiment of the present invention may include a method of performing dictionary learning so that the reliability of the predicted value for image information can be increased even if there is no label in the image data in the image domain. .
본 발명의 일실시예에서 활용되는 비지도학습 및/또는 반지도학습에는 이미지 정보의 일부분을 훼손한 뒤, 훼손된 이미지 정보 부분을 예측할 수 있도록 학습을 수행하는 방법을 포함할 수 있다.Unsupervised learning and/or semi-supervised learning used in an embodiment of the present invention may include a method of damaging part of image information and then performing learning to predict the damaged part of image information.
또한, 본 발명의 일 실시예에 따라 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법은, 수면 음향 정보와 수면 환경 정보를 모두 이용하여 수면 상태 정보를 분석하기 위한 방법으로, 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득하는 제1 정보 획득 단계; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계; 상기 제1 정보와 상기 제2 정보를 멀티모달 데이터로 결합하는 단계; 상기 멀티모달 데이터를 멀티모달 학습된 딥러닝 모델의 입력으로 하여, 피처를 추출하는 단계;및 상기 추출된 피처를 딥러닝 모델의 입력으로 하여 사용자 수면 상태 정보를 획득하는 단계를 포함하며, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법을 제공할 수 있다.In addition, according to an embodiment of the present invention, a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner is to analyze sleep state information using both sleep sound information and sleep environment information. The method includes: a first information acquisition step of acquiring sound information in the time domain related to the user's sleep; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; combining the first information and the second information into multimodal data; Extracting features by using the multimodal data as input to a multimodal learned deep learning model; And obtaining user sleep state information by using the extracted features as input to the deep learning model, including sleep sound. It is possible to provide a method for analyzing sleep state information using multimodal information and sleep environment information.
또한, 상기 제1 정보 획득 단계는 상기 획득된 제1 정보의 전처리를 수행하는 단계를 포함하고, 상기 제2 정보 획득 단계는 상기 획득된 제2 정보의 전처리를 수행하는 단계를 포함할 수 있다.Additionally, the first information acquisition step may include performing preprocessing of the obtained first information, and the second information acquisition step may include performing preprocessing of the obtained second information.
그리고, 상기 제1 정보의 전처리를 수행하는 단계는 상기 제1 정보에 기초하여 제1 정보 특징을 추출하는 단계를 포함하고, 상기 제2 정보의 전처리를 수행하는 단계는 상기 제2 정보에 기초하여 제2 정보 특징을 추출하는 단계를 포함할 수 있다.And, performing preprocessing of the first information includes extracting first information features based on the first information, and performing preprocessing of the second information includes extracting first information features based on the first information. It may include extracting a second information feature.
또한, 상기 제1 정보의 전처리를 수행하는 단계는 상기 제1 정보의 데이터 어그멘테이션을 수행하는 단계를 포함하고, 상기 제2 정보의 전처리를 수행하는 단계는 상기 제2 정보의 데이터 어그멘테이션을 수행하는 단계를 포함할 수 있다.In addition, performing preprocessing of the first information includes performing data augmentation of the first information, and performing preprocessing of the second information includes performing data augmentation of the second information. It may include steps to perform.
그리고, 상기 사용자 수면 상태 정보를 획득하는 단계의 상기 딥러닝 모델은 자연어처리 기반의 딥러닝 모델일 수 있다.And, the deep learning model in the step of acquiring the user sleep state information may be a deep learning model based on natural language processing.
또한, 상기 제1 정보의 전처리를 수행하는 단계는, 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환하는 단계를 포함할 수 있다.Additionally, performing preprocessing of the first information may include converting the first information in the time domain into information in the frequency domain.
본 발명의 목적 달성하기 위한 일 실시예에 따르면, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위해 하나 이상의 프로세서에 의해 실행되도록 구성된 하나 이상의 프로그램을 저장한 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 전술된 방법을 수행하라는 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체를 제공할 수 있다.According to one embodiment for achieving the object of the present invention, a non-transitory computer readout device storing one or more programs configured to be executed by one or more processors to analyze sleep state information including sleep sound information and sleep environment information in a multimodal manner. As an enabling storage medium, the one or more programs may provide a non-transitory computer-readable storage medium containing instructions to perform the methods described above.
본 발명의 목적을 달성하기 위한 일 실시예에 따르면, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 스마트 장치에 있어서, 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득하는 제1 정보 획득부; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는, 제2 정보 획득부; 상기 제1 정보와 상기 제2 정보를 멀티모달 데이터로 결합하는 데이터 결합부; 상기 멀티모달 표현을 학습된 딥러닝 모델의 입력으로 하여, 피처를 추론하는 피처추론부; 및 상기 추론된 피처를 딥러닝 모델의 입력으로 하여 수면 상태 정보를 획득하는 사용자 수면 상태 정보 획득부;를 포함하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 장치를 제공할 수 있다.According to one embodiment for achieving the purpose of the present invention, in a smart device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, sound information in the time domain related to the user's sleep is acquired. a first information acquisition unit; a second information acquisition unit that acquires user sleep environment information related to the user's sleep; a data combiner that combines the first information and the second information into multimodal data; a feature inference unit that infers features by using the multimodal expression as an input to a learned deep learning model; and a user sleep state information acquisition unit that acquires sleep state information by using the inferred features as input to a deep learning model. A device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a can be provided.
여기서, 상기 제1 정보의 전처리를 수행하는 제1 정보 전처리 수행부; 및Here, a first information preprocessing unit that performs preprocessing of the first information; and
상기 제2 정보의 전처리를 수행하는 제2 정보 전처리 수행부를 더 포함할 수 있다.It may further include a second information preprocessing unit that performs preprocessing of the second information.
그리고, 상기 제1 정보의 전처리를 수행부는 상기 제1 정보에 기초하여 제1 정보 특징을 추출하고, 상기 제2 정보의 전처리를 수행부는 상기 제2 정보에 기초하여 제2 정보 특징을 추출할 수 있다.In addition, a unit performing preprocessing of the first information may extract a first information feature based on the first information, and a unit performing preprocessing of the second information may extract a second information feature based on the second information. there is.
또한, 상기 제1 정보의 전처리 수행부는 상기 제1 정보의 데이터 어그멘테이션을 수행하고, 상기 제2 정보의 전처리 수행부는 상기 제2 정보의 데이터 어그멘테이션을 수행할 수 있다.Additionally, the preprocessing unit for the first information may perform data augmentation of the first information, and the preprocessing unit for the second information may perform data augmentation for the second information.
그리고, 상기 사용자 수면 상태 정보의 분석을 수행하기 위한 인공지능 모델은 자연어처리 기반의 인공지능 모델일 수 있다.Additionally, the artificial intelligence model for analyzing the user's sleep state information may be an artificial intelligence model based on natural language processing.
또한, 상기 제1 정보 전처리를 수행하는 전처리 수행부는, 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환할 수 있다. 여기서 주파수 도메인 상의 정보란, 시간 도메인 상의 제1 정보에 포함되어 있는 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보일 수 있다. Additionally, the preprocessing unit that performs the first information preprocessing may convert first information in the time domain into information in the frequency domain. Here, information on the frequency domain may be information including changes along the time axis of frequency components included in the first information on the time domain.
본 발명의 목적을 달성하기 위하여 일 실시예에 따른, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법은, 사용자의 수면과 관련한 수면 음향 정보를 획득하는 제1 정보 획득 단계; 상기 수면 음향 정보를 딥러닝 모델의 입력으로 하여, 제1 수면 상태 정보를 추론하는 단계; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계; 상기 사용자 수면 환경 정보를 추론 모델의 입력으로 하여, 제2 수면 상태 정보를 추론하는 단계; 및 상기 제1 수면 상태 정보와 제2 수면 상태 정보를 결합하여 사용자 수면상태정보를 획득하는 사용자 수면 상태 정보 획득 단계를 포함하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법을 제공할 수 있다In order to achieve the purpose of the present invention, a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner according to an embodiment includes first information for acquiring sleep sound information related to the user's sleep. acquisition phase; Inferring first sleep state information by using the sleep sound information as input to a deep learning model; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; Inferring second sleep state information by using the user sleep environment information as input to an inference model; And analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition step of combining the first sleep state information and the second sleep state information to obtain user sleep state information. can provide a method for
그리고, 상기 제1 정보 획득 단계는, 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환할 수 있다.In addition, the first information acquisition step may convert first information on the time domain into information on the frequency domain.
또한, 상기 제1 수면 상태 정보를 추론하는 단계는, 수면 단계를 표시하는 힙노그램(Hypnogram) 또는 수면 단계의 신뢰도를 확률로 표시하는 힙노덴시티 그래프(Hypnodensity graph)를 상기 제1 수면 상태 정보로 추론할 수 있다.In addition, the step of inferring the first sleep state information includes using a Hypnogram indicating a sleep stage or a Hypnodensity graph indicating the reliability of the sleep stage as a probability as the first sleep state information. can be inferred.
그리고, 상기 제2 수면 상태 정보를 추론하는 단계는, 수면 단계를 표시하는 힙노그램 또는 수면 단계의 신뢰도를 확률로 표시하는 힙노덴시티 그래프(Hypnodensity graph)를 상기 제2 수면 상태 정보로 추론하는 것을 특징으로 할 수 있다.And, the step of inferring the second sleep state information includes inferring a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the second sleep state information. It can be characterized.
또한, 상기 사용자 수면 상태 정보 획득 단계는, 상기 제1 수면 상태 정보와 상기 제2 수면 상태 정보를 결합하는 수면 상태 정보 결합 단계를 더 포함하는 것을 특징으로 하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법이 제공될 수 있다.In addition, the step of acquiring the user sleep state information further includes a sleep state information combining step of combining the first sleep state information and the second sleep state information. A method for analyzing sleep state information may be provided.
그리고, 상기 사용자 수면 상태 정보 획득 단계는, 상기 제1 수면 상태 정보와 상기 제2 수면 상태 정보를 활용하여 데이터 어그멘테이션을 진행하는 수면 상태 데이터 어그멘테이션 단계를 더 포함할 수 있다.In addition, the step of obtaining user sleep state information may further include a sleep state data augmentation step of performing data augmentation using the first sleep state information and the second sleep state information.
여기서, 상기 추론 모델은 인공지능 수면 정보 추론 모델일 수 있다.Here, the inference model may be an artificial intelligence sleep information inference model.
그리고, 상기 사용자 수면 상태 정보 획득 단계는, 상기 사용자 수면 상태 정보를 획득하기 위해서 인공지능 학습 모델을 통해 사용자 수면 상태 정보 추론을 진행할 수 있다.In addition, in the step of acquiring user sleep state information, user sleep state information may be inferred through an artificial intelligence learning model in order to obtain the user sleep state information.
본 발명의 목적을 달성하기 위한 일실시예로서, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위해 하나 이상의 프로세서에 의해 실행되도록 구성된 하나 이상의 프로그램을 저장한 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 전술한 방법을 수행하라는 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체를 제공할 수 있다.As an embodiment for achieving the purpose of the present invention, a non-transitory computer readout device stores one or more programs configured to be executed by one or more processors to analyze sleep state information using multimodal sleep sound information and sleep environment information. As an enabling storage medium, the one or more programs may provide a non-transitory computer-readable storage medium containing instructions to perform the methods described above.
본 발명의 목적을 달성하기 위한 일실시예에 따른, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 스마트 장치에 있어서, 사용자의 수면과 관련한 수면 음향 정보를 획득하는, 제1 정보 획득부; 상기 수면 음향 정보를 딥러닝 모델의 입력으로 하여, 제1 수면 상태 정보를 추론하는, 제1 정보 추론부; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는, 제2 정보 획득부; 상기 사용자 수면 환경 정보를 추론 모델의 입력으로 하여, 제2 수면 상태 정보를 추론하는, 제2 수면 상태 정보 추론부; 및 상기 제1 수면 상태 정보와 제2 수면 상태 정보를 결합하여 사용자 수면상태정보를 획득하는, 사용자 수면 상태 정보 획득부를 포함하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 장치를 제공할 수 있다.According to an embodiment for achieving the purpose of the present invention, a smart device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, acquires sleep sound information related to the user's sleep, First information acquisition department; a first information inference unit that uses the sleep sound information as input to a deep learning model to infer first sleep state information; a second information acquisition unit that acquires user sleep environment information related to the user's sleep; a second sleep state information inference unit that uses the user sleep environment information as input to an inference model to infer second sleep state information; And analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition unit that combines the first sleep state information and the second sleep state information to obtain user sleep state information. Devices can be provided for this.
여기서, 본 발명의 일 실시예에 따르면 상기 제1 정보 획득부는 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환하는 것을 특징으로 할 수 있다.Here, according to an embodiment of the present invention, the first information acquisition unit may be configured to convert first information on the time domain into information on the frequency domain.
또한, 본 발명의 일 실시예에 따르면 상기 제1 수면 상태 정보 추론부는, 수면 단계를 표시하는 힙노그램 또는 수면 단계의 신뢰도를 확률로 표시하는 힙노덴시티 그래프를 상기 제1 수면 상태 정보로 추론하는 것을 특징으로 할 수 있다.In addition, according to an embodiment of the present invention, the first sleep state information inference unit infers a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the first sleep state information. It can be characterized as:
그리고, 본 발명의 일 실시예에 따르면 상기 제2 수면 상태 정보 추론부는, 수면 단계를 표시하는 힙노그램 또는 수면 단계의 신뢰도를 확률로 표시하는 힙노덴시티 그래프를 상기 제2 수면 상태 정보로 추론하는 것을 특징으로 할 수 있다.And, according to an embodiment of the present invention, the second sleep state information inference unit infers a hypnogram indicating a sleep stage or a hypnodensity graph indicating the reliability of the sleep stage with probability as the second sleep state information. It can be characterized as:
또한, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 제1 수면 상태 정보와 상기 제2 수면 상태 정보를 결합하는 수면 상태 정보 결합부를 포함할 수 있다.Additionally, according to one embodiment of the present invention, the user sleep state information acquisition unit may include a sleep state information combining unit that combines the first sleep state information and the second sleep state information.
그리고, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 제1 수면 상태 정보와 상기 제2 수면 상태 정보를 활용하여 데이터 어그멘테이션을 진행하는 수면 상태 데이터 어그멘테이션부를 더 포함할 수 있다.And, according to an embodiment of the present invention, the user sleep state information acquisition unit further includes a sleep state data augmentation unit that performs data augmentation using the first sleep state information and the second sleep state information. can do.
또한, 본 발명의 일 실시예에 따르면 상기 추론 모델은 인공지능 수면 정보 추론 모델일 수 있다.Additionally, according to an embodiment of the present invention, the inference model may be an artificial intelligence sleep information inference model.
그리고, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 사용자 수면 상태 정보를 획득하기 위해서 인공지능 학습 모델을 통해 사용자 수면 상태 정보 추론을 진행할 수 있다.And, according to one embodiment of the present invention, the user sleep state information acquisition unit may infer user sleep state information through an artificial intelligence learning model to obtain the user sleep state information.
한편, 본 발명의 목적을 달성하기 위한 일 실시예에 따른 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법에 있어서, 사용자의 수면과 관련한 수면 음향 정보를 획득하는 제1 정보 획득 단계; 상기 수면 음향 정보를 딥러닝 모델의 입력으로 하여, 제1 수면 상태 정보를 추론하는 단계; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계; 상기 제1 수면 상태 정보와 제2 정보를 결합하여 사용자 수면 상태 정보를 획득하는 사용자 수면 상태 정보 획득 단계를 포함하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법을 제공할 수 있다.Meanwhile, in a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner according to an embodiment for achieving the purpose of the present invention, a method for acquiring sleep sound information related to the user's sleep 1 Information acquisition phase; Inferring first sleep state information by using the sleep sound information as input to a deep learning model; A second information acquisition step of acquiring user sleep environment information related to the user's sleep; A method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition step of combining the first sleep state information and the second information to obtain user sleep state information. can be provided.
그리고, 본 발명의 일 실시예에 따르면 상기 제2 정보는 스마트 워치를 통해 얻어지는 사용자 정보일 수 있다.And, according to an embodiment of the present invention, the second information may be user information obtained through a smart watch.
또한, 본 발명의 일 실시예에 따르면 상기 제1 수면 상태 정보를 추론하는 단계는, 상기 획득된 제1 수면 정보를 제1 수면 정보의 전처리를 수행하는 단계를 포함할 수 있다.Additionally, according to an embodiment of the present invention, inferring the first sleep state information may include performing preprocessing of the obtained first sleep information into first sleep information.
그리고, 본 발명의 일 실시예에 따르면 상기 제1 정보의 전처리를 수행하는 단계는, 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환하는 단계를 포함할 수 있다.And, according to an embodiment of the present invention, performing preprocessing of the first information may include converting the first information on the time domain to information on the frequency domain.
또한, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득 단계는, 상기 제1 수면 상태 정보와 상기 제2 정보를 결합하는 수면 상태 정보 결합 단계를 더 포함할 수 있다.Additionally, according to an embodiment of the present invention, the step of obtaining user sleep state information may further include a sleep state information combining step of combining the first sleep state information and the second information.
그리고, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득 단계는, 상기 제1 수면 상태 정보와 상기 제2 정보를 활용하여 데이터 어그멘테이션을 진행하는 수면 상태 데이터 어그멘테이션 단계를 더 포함할 수 있다.And, according to an embodiment of the present invention, the step of obtaining user sleep state information further includes a sleep state data augmentation step of performing data augmentation using the first sleep state information and the second information. can do.
또한, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득 단계는, 상기 사용자 수면 상태 정보를 획득하기 위해서 인공지능 학습 모델을 통해 사용자 수면 상태 정보 추론을 진행할 수 있다.Additionally, according to an embodiment of the present invention, in the step of acquiring user sleep state information, inference of user sleep state information may be performed through an artificial intelligence learning model to obtain the user sleep state information.
한편, 본 발명의 목적에 달성하기 위한 일 실시예에 따른 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위해 하나 이상의 프로세서에 의해 실행되도록 구성된 하나 이상의 프로그램을 저장한 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 전술한 방법 중 하나 이상의 방법을 수행하라는 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체를 제공할 수 있다.Meanwhile, a non-transitory device storing one or more programs configured to be executed by one or more processors to analyze sleep state information using multimodal sleep sound information and sleep environment information according to an embodiment to achieve the purpose of the present invention A non-transitory computer-readable storage medium may be provided, wherein the one or more programs include instructions to perform one or more of the methods described above.
또한, 본 발명의 목적을 달성하기 위한 일 실시예에 따른, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 장치에 있어서, 사용자의 수면과 관련한 수면 음향 정보를 획득하는 제1 정보 획득부; 상기 수면 음향 정보를 딥러닝 모델의 입력으로 하여, 제1 수면 상태 정보를 추론부; 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득부; 상기 제1 수면 상태 정보와 제2 정보를 결합하여 사용자 수면 상태 정보를 획득하는 사용자 수면 상태 정보 획득부를 포함하는 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 장치를 제공할 수 있다.In addition, according to an embodiment to achieve the purpose of the present invention, in a device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, the device includes acquiring sleep sound information related to the user's sleep. First information acquisition department; An inference unit that uses the sleep sound information as input to a deep learning model to determine first sleep state information; a second information acquisition unit that acquires user sleep environment information related to the user's sleep; Provides a device for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner, including a user sleep state information acquisition unit that combines the first sleep state information and the second information to obtain user sleep state information. can do.
그리고, 본 발명의 일 실시예에 따르면 상기 제2 정보는 스마트 워치를 통해 얻어지는 사용자 정보일 수 있다.And, according to an embodiment of the present invention, the second information may be user information obtained through a smart watch.
또한, 본 발명의 일 실시예에 따르면 상기 제1 수면 상태 정보 추론부는, 상기 획득된 제1 수면 정보를 제1 수면 정보 전처리 수행부를 포함할 수 있다.Additionally, according to one embodiment of the present invention, the first sleep state information inference unit may include a first sleep information preprocessing unit for the obtained first sleep information.
그리고, 본 발명의 일 실시예에 따르면 상기 제1 정보의 전처리 수행부는, 시간 도메인 상의 제1 정보를 주파수 도메인 상의 정보로 변환할 수 있다.And, according to an embodiment of the present invention, the first information preprocessing unit may convert the first information on the time domain into information on the frequency domain.
또한, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 제1 수면 상태 정보와 상기 제2 정보를 결합하는 수면 상태 정보 결합부를 더 포함할 수 있다.Additionally, according to one embodiment of the present invention, the user sleep state information acquisition unit may further include a sleep state information combining unit that combines the first sleep state information and the second information.
그리고, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 제1 수면 상태 정보와 상기 제2 정보를 활용하여 데이터 어그멘테이션을 진행하는 수면 상태 데이터 어그멘테이션부를 더 포함할 수 있다.And, according to one embodiment of the present invention, the user sleep state information acquisition unit may further include a sleep state data augmentation unit that performs data augmentation using the first sleep state information and the second information. there is.
또한, 본 발명의 일 실시예에 따르면 상기 사용자 수면 상태 정보 획득부는, 상기 사용자 수면 상태 정보를 획득하기 위해서 인공지능 학습 모델을 통해 사용자 수면 상태 정보 추론을 진행할 수 있다.Additionally, according to one embodiment of the present invention, the user sleep state information acquisition unit may infer user sleep state information through an artificial intelligence learning model to obtain the user sleep state information.
또한, 본 발명의 일 실시예에 따르면 수면 음향 정보 또는 수면 환경 정보 중 적어도 하나에 기초하여 실시간 수면 이벤트를 탐지하는 방법이 제공될 수 있다.Additionally, according to an embodiment of the present invention, a method for detecting a real-time sleep event based on at least one of sleep sound information or sleep environment information may be provided.
또한, 본 발명의 일 실시예에 따르면 비지도 학습 방법 또는 반지도 학습 방법에 의하여 수면 분석 인공지능 모델을 학습시키는 방법이 제공될 수 있다.Additionally, according to an embodiment of the present invention, a method of learning a sleep analysis artificial intelligence model can be provided by an unsupervised learning method or a semi-supervised learning method.
여기서, 본 발명의 실시예들에 따른 학습 방법에는 순차적 일관성 손실에 기초한 반지도 학습이 포함될 수 있다. 본 발명의 실시예에 따른 순차적 일관성 손실에 기초한 반지도 학습을 통해 음향 정보의 시계열적인 특성을 고려하도록 학습될 수 있다.Here, the learning method according to embodiments of the present invention may include semi-supervised learning based on sequential consistency loss. It can be learned to take into account the time-series characteristics of acoustic information through semi-supervised learning based on sequential consistency loss according to an embodiment of the present invention.
또는, 본 발명의 일 실시예에 따른 학습 방법에는 반지도 대조 손실에 기초한 학습이 포함될 수 있다. 본 발명의 실시예에 따른 반지도 대조 손실에 기초한 학습은 클래스 신뢰도 임계값을 설정하는 단계 및 상기 설정된 클래스 신뢰도 임계값에 기초하여 앵커 데이터를 기준으로 벡터 공간 상의 위치를 조정하는 단계가 포함될 수 있다.Alternatively, the learning method according to an embodiment of the present invention may include learning based on semi-supervised contrast loss. Learning based on semi-supervised contrast loss according to an embodiment of the present invention may include setting a class reliability threshold and adjusting the position in the vector space based on anchor data based on the set class reliability threshold. .
여기서, 본 발명의 일 실시예에 따른 반지도 대조 손실에 기초한 학습에 사용되는 앵커 데이터는 수면 상태에 대한 라벨이 부여된 라벨링 데이터 또는 수면 상태에 대한 슈도 라벨이 부여된 슈도 라벨 데이터 중 적어도 하나 이상을 포함할 수 있다.Here, the anchor data used for learning based on semi-supervised contrast loss according to an embodiment of the present invention is at least one of labeled data given a label for the sleep state or pseudo-labeled data given a pseudo label for the sleep state. may include.
또한, 본 발명의 일 실시예에 따르면 음향 정보에 기초하여 멀티 태스크 학습을 통해 사용자의 수면 상태 정보를 분석하기 위한 딥러닝 모델이 제공될 수 있다.Additionally, according to an embodiment of the present invention, a deep learning model can be provided for analyzing the user's sleep state information through multi-task learning based on acoustic information.
여기서, 멀티 태스크 학습을 위하여 딥러닝 모델은 복수의 헤드를 갖는 것일 수 있으며, 이 경우 복수의 헤드에 포함되는 각각의 헤드는 복수의 태스크 중 서로 상이한 하나의 태스크를 수행할 수 있다.Here, for multi-task learning, the deep learning model may have multiple heads. In this case, each head included in the multiple heads may perform one different task among the multiple tasks.
본 발명의 실시예들에 따르면, 복수의 태스크는 멀티모달 학습, 수면 이벤트 분석, 수면 단계 분석 등의 태스크를 포함할 수 있다.According to embodiments of the present invention, the plurality of tasks may include tasks such as multimodal learning, sleep event analysis, and sleep stage analysis.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
본 발명은 전술한 배경 기술에 대응하여 안출된 것으로, 사용자의 수면 환경에서 감지되는 음향 정보 또는 수면 환경 정보 중 적어도 하나 이상에 기반하여 사용자의 수면 상태를 판별하는 인공신경망 모델을 제공할 수 있다.The present invention was developed in response to the above-described background technology, and can provide an artificial neural network model that determines the user's sleep state based on at least one of acoustic information or sleep environment information detected in the user's sleep environment.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
도 1a 내지 도 1c는 본 발명의 일실시예와 관련된 정보에 기반하여 수면 상태를 예측하는 수면 분석 모델을 생성하기 위한 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도이다.1A to 1C are conceptual diagrams showing a system in which various aspects can be implemented for generating a sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
도 2는 다양한 환경에서 획득되는 복수의 수면 음향 정보를 예시적으로 나타낸 예시도이다.Figure 2 is an exemplary diagram illustrating a plurality of sleep sound information acquired in various environments.
도 3은 본 발명의 일실시예와 관련된 정보에 기반하여 수면 상태를 예측하는 상기 수면 분석 모델을 생성하기 위한 컴퓨팅 장치의 블록 구성도이다.Figure 3 is a block diagram of a computing device for generating the sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
도 4는 본 발명에 따른 수면 분석 방법에 있어서 수면 음향 정보를 획득하는 과정을 설명하기 위한 도면이다.Figure 4 is a diagram for explaining the process of acquiring sleep sound information in the sleep analysis method according to the present invention.
도 5는 본 발명에 따른 수면 분석 방법에 있어서 사용자로부터 추출된 수면 음향 정보에 대한 멜 스펙트로그램 변환을 이용한 프라이버시 보호 방법을 설명하기 위한 개념도이다.Figure 5 is a conceptual diagram illustrating a privacy protection method using Mel spectrogram transformation for sleep sound information extracted from a user in the sleep analysis method according to the present invention.
도 6은 본 발명에 따른 수면 분석 방법에 있어서 수면 음향 정보에 대응하는 스펙트로그램을 획득하는 방법을 설명하기 위한 도면이다.Figure 6 is a diagram for explaining a method of obtaining a spectrogram corresponding to sleep sound information in the sleep analysis method according to the present invention.
도 7은 본 발명에 따른 수면 분석 방법을 수행하기 위한 하나 이상의 네트워크 함수를 나타낸 개략도이다.Figure 7 is a schematic diagram showing one or more network functions for performing the sleep analysis method according to the present invention.
도 8은 본 발명에 따른 수면 분석 방법에 있어서 스펙트로그램을 이용한 수면 단계 분석을 설명하기 위한 도면이다.Figure 8 is a diagram for explaining sleep stage analysis using a spectrogram in the sleep analysis method according to the present invention.
도 9는 본 발명에 따른 수면 분석 방법에 있어서 스펙트로그램을 이용한 수면 이벤트 판단을 설명하기 위한 도면이다.Figure 9 is a diagram illustrating sleep event determination using a spectrogram in the sleep analysis method according to the present invention.
도 10은 본 발명에 따른 수면 분석 방법의 성능을 검증하기 위한 실험과정을 나타내는 도면이다.Figure 10 is a diagram showing an experimental process for verifying the performance of the sleep analysis method according to the present invention.
도 11은 본 발명에 따른 수면 분석 방법의 성능을 검증한 그래프로, 수면다원검사(polysomnography, PSG) 결과(PSG result)와 본 발명에 따른 AI 알고리즘을 이용한 분석 결과(AI result)를 비교한 도면이다.Figure 11 is a graph verifying the performance of the sleep analysis method according to the present invention, and is a diagram comparing the polysomnography (PSG) result (PSG result) and the analysis result (AI result) using the AI algorithm according to the present invention. am.
도 12는 본 발명에 따른 수면 분석 방법의 성능을 검증한 그래프로, 수면 무호흡증(apnea), 호흡저하(hypopnea)와 관련하여 수면다원검사(polysomnography, PSG) 결과(PSG result)와 본 발명에 따른 AI 알고리즘을 이용한 분석 결과(AI result)를 비교한 도면이다.Figure 12 is a graph verifying the performance of the sleep analysis method according to the present invention, showing polysomnography (PSG) results in relation to sleep apnea and hypoventilation (hypopnea) and polysomnography (PSG) results according to the present invention. This is a diagram comparing the analysis results (AI results) using AI algorithms.
도 13은 본 발명의 일실시예에 따른 데이터 셋의 모식도이다.Figure 13 is a schematic diagram of a data set according to an embodiment of the present invention.
도 14는 본 발명의 일실시예에 따른 노이즈 리덕션을 설명하기 위한 도면이다.Figure 14 is a diagram for explaining noise reduction according to an embodiment of the present invention.
도 15는 본 발명의 일실시예에 따른 피치 시프팅(Pitch Shifting)을 설명하기 위한 도면이다.Figure 15 is a diagram for explaining pitch shifting according to an embodiment of the present invention.
도 16은 본 발명의 일실시예에 따라 주파수 도메인상의 정보 또는 스펙트로그램을 정방형에 가까운 형태로 변환하는 전처리 방법을 설명하기 위한 도면이다.FIG. 16 is a diagram illustrating a preprocessing method for converting information or a spectrogram in the frequency domain into a nearly square form according to an embodiment of the present invention.
도 17a 및 도 17b는 본 발명의 일실시예에 따른 수면 분석 모델의 전체적인 구조를 설명하기 위한 도면이다.Figures 17a and 17b are diagrams for explaining the overall structure of a sleep analysis model according to an embodiment of the present invention.
도 18은 본 발명의 일실시예에 따른 피처 추출 모델과 피처 분류 모델을 설명하기 위한 도면이다.Figure 18 is a diagram for explaining a feature extraction model and a feature classification model according to an embodiment of the present invention.
도 19는 본 발명의 일실시예에 따른 수면 분석 모델의 동작을 자세히 설명하기 위한 도면이다.Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
도 20은 본 발명의 일실시예에 따른 비지도 또는 반지도 학습모델을 설명하기 위한 도면이다.Figure 20 is a diagram for explaining an unsupervised or semi-supervised learning model according to an embodiment of the present invention.
도 21은 본 발명의 일실시예에 따른 컨시스턴시 트레이닝(Consistency Training)을 설명하기 위한 도면이다.Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention.
도 22는 본 발명의 일실시예에 따른 UDA(Unsupervised Domain Adaptation)를 설명하기 위한 도면이다.Figure 22 is a diagram for explaining Unsupervised Domain Adaptation (UDA) according to an embodiment of the present invention.
도 23은 본 발명의 일실시예에 따른 TUT(Tile UnTile) 어그멘테이션 방법을 설명하기 위한 도면이다.Figure 23 is a diagram for explaining the TUT (Tile UnTile) augmentation method according to an embodiment of the present invention.
도 24는 본 발명의 일실시예에 따른 자연어 처리 모델을 활용한 수면 분석 모델의 구조를 설명하기 위한 도면이다.Figure 24 is a diagram for explaining the structure of a sleep analysis model using a natural language processing model according to an embodiment of the present invention.
도 25는 본 발명의 일 실시예에 따른 음향 정보를 통해 사용자의 수면 상태를 분석하기 위한 방법을 예시적으로 나타낸 순서도를 도시한다.Figure 25 shows a flowchart illustrating a method for analyzing a user's sleep state through sound information according to an embodiment of the present invention.
도 26은 본 발명의 일실시예에 따른 수면 상태를 분석하기 위한 방법으로서, 수면 음향 정보와 수면 환경 정보를 멀티모달 데이터로 결합하는 과정을 포함하는 방법을 설명하기 위한 흐름도이다.Figure 26 is a flow chart to explain a method for analyzing a sleep state according to an embodiment of the present invention, including a process of combining sleep sound information and sleep environment information into multimodal data.
도 27은 본 발명의 일실시예에 따른 수면 상태를 분석하기 위한 방법으로서, 수면 음향 정보와 수면 환경 정보 각각을 추론한 것을 멀티모달 데이터로 결합하는 단계를 포함하는 방법을 설명하기 위한 흐름도이다.Figure 27 is a flowchart for explaining a method for analyzing a sleep state according to an embodiment of the present invention, including the step of combining the inferred sleep sound information and sleep environment information into multimodal data.
도 28은 본 발명의 일실시예에 따른 수면 상태를 분석하기 위한 방법으로서, 수면 음향 정보를 추론한 것을 수면 환경 정보와 멀티모달 데이터로 결합하는 단계를 포함하는 방법을 설명하기 위한 흐름도이다.Figure 28 is a flow chart to explain a method for analyzing a sleep state according to an embodiment of the present invention, including the step of combining inferred sleep sound information with sleep environment information and multimodal data.
도 29a 및 29b는 본 발명의 실시예들에 따른 수면 분석 방법에 있어서, 노이즈 부가 및, 수면 분석 모델의 수면 이벤트 판단의 성능을 설명하기 위한 도면이다.Figures 29a and 29b are diagrams for explaining the performance of noise addition and sleep event determination of a sleep analysis model in the sleep analysis method according to embodiments of the present invention.
도 30은 본 발명의 일 실시예에 따라, 시퀀스 내의 샘플의 수가 6인 경우의 일관성 손실 또는 순차적 일관성 손실에 기초한 학습 방법의 예시를 나타내는 도면이다.Figure 30 is a diagram illustrating an example of a learning method based on consistency loss or sequential consistency loss when the number of samples in the sequence is 6, according to an embodiment of the present invention.
도 31은 본 발명의 일 실시예에 따른 반지도 대조 손실에 기초한 학습 방법의 작동 메커니즘을 설명하기 위한 예시 도면이다.Figure 31 is an example diagram for explaining the operating mechanism of a learning method based on semi-supervised contrast loss according to an embodiment of the present invention.
도 32는 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과와, 가정 환경에서의 PSG 테스트의 분석 결과를 비교한 표이다.Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment.
도 32는 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과와, 가정 환경에서의 PSG 테스트의 분석 결과를 비교한 표이다.Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment.
도 33은 PSG 오디오 데이터에 기반한 수면 분석 결과와, 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과를 비교한 표이다.Figure 33 is a table comparing sleep analysis results based on PSG audio data and analysis results of a sleep analysis model according to an embodiment of the present invention.
도 34는 본 발명의 일 실시예에 따른, 수면 중 발생하는 수면 이벤트를 분석하기 위해 활용되는 선형회귀분석 함수를 설명하기 위한 도면이다. Figure 34 is a diagram illustrating a linear regression analysis function used to analyze sleep events that occur during sleep, according to an embodiment of the present invention.
전체적인 구성overall composition
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure of the present invention is complete and to provide a general understanding of the technical field to which the present invention pertains. It is provided to fully inform the skilled person of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for describing embodiments and is not intended to limit the invention. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used in the specification, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other elements in addition to the mentioned elements. Like reference numerals refer to like elements throughout the specification, and “and/or” includes each and every combination of one or more of the referenced elements. Although “first”, “second”, etc. are used to describe various components, these components are of course not limited by these terms. These terms are merely used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may also be a second component within the technical spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which the present invention pertains. Additionally, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly specifically defined.
명세서에서 사용되는 "부" 또는 "모듈"이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 "모듈"은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 "모듈"은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 "모듈"은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 "모듈"은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 "모듈"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 "모듈"들로 결합되거나 추가적인 구성요소들과 "부" 또는 "모듈"들로 더 분리될 수 있다.As used in the specification, the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and the “unit” or “module” performs certain roles. However, “part” or “module” is not limited to software or hardware. A “unit” or “module” may be configured to reside on an addressable storage medium and may be configured to run on one or more processors. Thus, as an example, a “part” or “module” refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within components and “parts” or “modules” can be combined into smaller components and “parts” or “modules” or into additional components and “parts” or “modules”. Could be further separated.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations that operate on the hardware device. For example, a computer can be understood to include, but is not limited to, a smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 발명내용의 영역을 벗어나게 하는 것으로 해석되어서는 안 된다.Those of ordinary skill in the art to which the present invention pertains will additionally recognize various example logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein. It should be recognized that they may be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented in hardware or software will depend on the specific application and design constraints imposed on the overall system. A skilled technician can implement the described functionality in a variety of ways for each specific application. However, such implementation decisions should not be construed as departing from the scope of the present invention.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and depending on the embodiment, at least part of each step may be performed in a different device.
도 1a 내지 도 1c는 본 발명의 일실시예와 관련된 정보에 기반하여 수면 상태를 예측하는 수면 분석 모델을 생성하기 위한 방법의 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.1A to 1C illustrate a conceptual diagram illustrating a system in which various aspects of a method for generating a sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention can be implemented.
도 3은 본 발명의 일실시예와 관련된 정보에 기반하여 수면 상태를 예측하는 상기 수면 분석 모델을 생성하기 위한 컴퓨팅 장치의 블록 구성도이다.Figure 3 is a block diagram of a computing device for generating the sleep analysis model that predicts sleep state based on information related to an embodiment of the present invention.
본 발명의 실시예들에 따른 시스템은 컴퓨팅 장치(100), 사용자 단말(10), 외부 서버(20) 및 네트워크를 포함할 수 있다.A system according to embodiments of the present invention may include a computing device 100, a user terminal 10, an external server 20, and a network.
여기서, 도 1a에 도시된 장치들은 본 발명을 구현하기 위한 시스템의 하나의 예시일 뿐이고, 그 구성이 도 1a에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 부가, 변경 또는 삭제될 수 있다.Here, the devices shown in FIG. 1A are only one example of a system for implementing the present invention, and the configuration is not limited to the embodiment shown in FIG. 1A, and may be added, changed, or deleted as necessary. .
한편, 도 1b 및 도 1c는 본 발명의 또 다른 실시예와 관련된 수면 분석 방법이 수행되는 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.Meanwhile, Figures 1B and 1C show a conceptual diagram showing a system in which various aspects of performing a sleep analysis method related to another embodiment of the present invention can be implemented.
먼저, 도 1a에 도시된 실시예에 따른 시스템에 대하여 설명하기로 한다.First, the system according to the embodiment shown in FIG. 1A will be described.
도 1a에 도시된 바와 같이, 본 발명은 컴퓨팅 장치(100), 사용자 단말(10), 외부 서버(20)는 네트워크를 통해, 본 발명의 일실시예들에 따른 시스템을 위한 데이터를 상호 송수신할 수 있다.As shown in FIG. 1A, the present invention provides that the computing device 100, the user terminal 10, and the external server 20 can mutually transmit and receive data for the system according to embodiments of the present invention through a network. You can.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(100) 또는 외부 서버(20)는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 보다 구체적으로, 컴퓨팅 장치(100) 또는 외부 서버(20)는 인터넷 기반 컴퓨팅의 일종으로 정보를 사용자의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 상기 클라우드 컴퓨팅 서비스는 인터넷 상에 자료를 저장해 두고, 사용자가 필요한 자료나 프로그램을 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제 어디서나 이용할 수 있는 서비스일 수 있으며, 인터넷 상에 저장된 자료들을 간단한 조작 및 클릭으로 쉽게 공유하고 전달할 수 있다.According to one embodiment of the present invention, the computing device 100 or the external server 20 may be a server that provides cloud computing services. More specifically, the computing device 100 or the external server 20 may be a type of Internet-based computing server that provides a cloud computing service that processes information not on the user's computer but on another computer connected to the Internet. The cloud computing service may be a service that stores data on the Internet and allows users to use it anytime, anywhere through Internet access without having to install necessary data or programs on their computer. The cloud computing service can be used to easily manipulate and manipulate data stored on the Internet. You can easily share and forward with a click.
또한, 클라우드 컴퓨팅 서비스는 인터넷 상의 서버에 단순히 자료를 저장하는 것뿐만 아니라, 별도로 프로그램을 설치하지 않아도 웹에서 제공하는 응용프로그램의 기능을 이용하여 원하는 작업을 수행할 수 있으며, 여러 사람이 동시에 문서를 공유하면서 작업을 진행할 수 있는 서비스일 수 있다. In addition, cloud computing services not only allow you to simply store data on a server on the Internet, but also allow you to perform desired tasks using the functions of applications provided on the web without having to install a separate program, and allow multiple people to view documents at the same time. It may be a service that allows you to work while sharing.
또한, 클라우드 컴퓨팅 서비스는 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service), 가상 머신 기반 클라우드 서버 및 컨테이너 기반 클라우드 서버 중 적어도 하나의 형태로 구현될 수 있다. 즉, 본 발명의 컴퓨팅 장치(100) 또는 외부 서버(20)는 상술한 클라우드 컴퓨팅 서비스 중 적어도 하나의 형태로 구현될 수 있다. 전술한 클라우드 컴퓨팅 서비스의 구체적인 기재는 예시일 뿐, 본 발명의 클라우드 컴퓨팅 환경을 구축하는 임의의 플랫폼을 포함할 수도 있다.Additionally, cloud computing services may be implemented in at least one of the following forms: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), virtual machine-based cloud server, and container-based cloud server. . That is, the computing device 100 or the external server 20 of the present invention may be implemented in at least one form of the cloud computing service described above. The specific description of the cloud computing service described above is merely an example, and may include any platform for constructing the cloud computing environment of the present invention.
본 발명의 실시예들에 따른 네트워크는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다. 또한, 여기서 제시되는 네트워크는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.Networks according to embodiments of the present invention include Public Switched Telephone Network (PSTN), x Digital Subscriber Line (xDSL), Rate Adaptive DSL (RADSL), Multi Rate DSL (MDSL), and Very High Speed DSL (VDSL). ), UADSL (Universal Asymmetric DSL), HDSL (High Bit Rate DSL), and local area network (LAN) can be used. In addition, the networks presented here include Code Division Multi Access (CDMA), Time Division Multi Access (TDMA), Frequency Division Multi Access (FDMA), Orthogonal Frequency Division Multi Access (OFDMA), Single Carrier-FDMA (SC-FDMA), and A variety of wireless communication systems, such as other systems, may be used.
본 발명의 실시예들에 따른 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.The network according to embodiments of the present invention can be configured regardless of the communication mode, such as wired or wireless, and is composed of various communication networks such as a personal area network (PAN) and a wide area network (WAN). It can be. Additionally, the network may be the well-known World Wide Web (WWW), or may use wireless transmission technology used for short-distance communication, such as Infrared Data Association (IrDA) or Bluetooth. The techniques described herein can be used in the networks mentioned above, as well as other networks.
본 발명의 일실시예에 따르면, 사용자 단말(10)은 컴퓨팅 장치(100)와의 정보 교환을 통해 사용자의 수면과 관련한 정보를 제공받을 수 있는 단말로, 사용자가 소지한 단말을 의미할 수 있다. 예컨대, 사용자 단말(10)은 자신의 수면 습관에 관련한 정보들을 통해 건강을 증진시키고자 하는 사용자와 관련한 단말일 수 있다.According to one embodiment of the present invention, the user terminal 10 is a terminal that can receive information related to the user's sleep through information exchange with the computing device 100, and may refer to a terminal owned by the user. For example, the user terminal 10 may be a terminal related to a user who wants to improve his or her health through information related to his or her sleeping habits.
이러한 사용자 단말(10)은 외부 서버(20) 또는 컴퓨팅 장치(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 엔티티(들)를 의미할 수 있다. 예를 들어, 이러한 사용자 단말(10)은 PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smartphone), 태블릿 PC(tablet pc), 인공지능(AI) 스피커 및 인공지능 TV 및 웨어러블 디바이스(wearable device), 가전기기 등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다. 또한, 사용자 단말(10)은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 단말(10)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.This user terminal 10 may refer to any type of entity(s) in the system that has a mechanism for communication with an external server 20 or computing device 100. For example, these user terminals 10 include personal computers (PCs), notebooks (note books), mobile terminals, smart phones, tablet PCs, artificial intelligence (AI) speakers, and It may include artificial intelligence TVs, wearable devices, home appliances, etc., and may include all types of terminals that can connect to wired/wireless networks. Additionally, the user terminal 10 may include an arbitrary server implemented by at least one of an agent, an application programming interface (API), and a plug-in. Additionally, the user terminal 10 may include an application source and/or client application.
본 발명의 일 실시예에 따르면, 외부 서버(20)는 신경망의 학습을 위한 복수의 학습 데이터에 대한 정보들을 저장하는 서버일 수 있다. 또는, 외부 서버(20)는 디지털 기기로서, 랩탑 컴퓨터, 노트북 컴퓨터, 데스크톱 컴퓨터, 웹 패드, 이동 전화기와 같이 프로세서를 탑재하고 메모리를 구비한 연산 능력을 갖춘 디지털 기기일 수 있다. 외부 서버(20)는 서비스를 처리하는 웹 서버일 수 있다. 전술한 서버의 종류는 예시일 뿐이며 본 발명은 이에 제한되지 않는다. 복수의 학습 데이터는 예컨대, 복수의 사용자 단말로부터 획득된 수면 음향 정보, 또는 병원에서 획득된 건강검진 정보 및 수면검진 정보 등을 포함할 수 있다. 학습 데이터셋에 대한 자세한 설명은 후술하도록 한다.According to one embodiment of the present invention, the external server 20 may be a server that stores information about a plurality of learning data for learning a neural network. Alternatively, the external server 20 may be a digital device, such as a laptop computer, notebook computer, desktop computer, web pad, or mobile phone, equipped with a processor and equipped with memory and computing power. The external server 20 may be a web server that processes services. The types of servers described above are merely examples and the present invention is not limited thereto. The plurality of learning data may include, for example, sleep sound information obtained from a plurality of user terminals, or health checkup information and sleep checkup information obtained at a hospital. A detailed description of the learning dataset will be provided later.
본 발명의 일 실시예에 따르면, 외부 서버(20)는 병원 서버 및 정부 서버 중 적어도 하나일 수 있으며, 복수의 수면다원검사 기록, 전자건강기록 및 전자의료기록 등에 관한 정보를 저장하는 서버일 수 있다. 예를 들어, 수면다원검사 기록은 수면검진 대상자의 수면 동안의 호흡 및 움직임 등에 대한 정보 및 해당 정보들에 대응하는 수면 진단 결과(예컨대, 수면 단계 등)에 대한 정보를 포함할 수 있다. 외부 서버(20)에 저장된 정보들은 본 발명에서의 신경망을 학습시키기 위한 학습 데이터, 검증 데이터 및 테스트 데이터로 활용될 수 있다.According to one embodiment of the present invention, the external server 20 may be at least one of a hospital server and a government server, and may be a server that stores information about a plurality of polysomnography records, electronic health records, and electronic medical records. there is. For example, a polysomnographic record may include information on the sleep examination subject's breathing and movements during sleep, and information on sleep diagnosis results (eg, sleep stages, etc.) corresponding to the information. Information stored in the external server 20 can be used as learning data, verification data, and test data to train the neural network in the present invention.
또한, 본 발명의 일 실시예에 따른 외부 서버(20)는 수면 상태 정보를 분석하기 위한 인공지능 모델이 기록될 수 있다. 이 경우 사용자 단말(10) 등으로부터 수면 환경 정보를 획득하고, 외부 서버에 송신하면, 외부 서버에 실장된 인공지능 모델을 통해 수면 환경 정보에 기초하여 수면 상태 정보를 생성할 수 있다.Additionally, the external server 20 according to an embodiment of the present invention may record an artificial intelligence model for analyzing sleep state information. In this case, if sleep environment information is obtained from the user terminal 10, etc. and transmitted to an external server, sleep state information can be generated based on the sleep environment information through an artificial intelligence model mounted on the external server.
또는, 본 발명의 일 실시예에 따라 사용자 단말(10)에서 수면 환경 정보를 획득하고, 사용자 단말(10)에서 수면 환경 정보의 전처리를 통해 수면 음향 정보를 획득하면, 획득한 수면 음향 정보를 외부 서버에 송신하고, 외부 서버는 수신된 수면 음향 정보에 기초하여 수면 상태 정보를 생성할 수도 있다.Alternatively, according to an embodiment of the present invention, if sleep environment information is acquired from the user terminal 10 and sleep sound information is acquired through preprocessing of the sleep environment information in the user terminal 10, the acquired sleep sound information is transmitted to an external device. It is transmitted to the server, and the external server may generate sleep state information based on the received sleep sound information.
본 발명의 컴퓨팅 장치(100)는 외부 서버(20)로부터 복수의 수면 음향 정보, 건강검진 정보 또는 수면 검진 정보 등을 수신하고, 해당 정보들에 기초하여 학습 데이터 세트를 구축할 수 있다. 컴퓨팅 장치(100)는 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행함으로써, 수면 음향 정보에 대응하여 수면 상태 정보를 산출하는 수면 분석 모델을 생성할 수 있다. The computing device 100 of the present invention may receive a plurality of sleep sound information, health checkup information, or sleep checkup information from the external server 20, and construct a learning data set based on the corresponding information. The computing device 100 may generate a sleep analysis model that calculates sleep state information in response to sleep sound information by performing learning on one or more network functions through a learning data set.
본 발명의 일 실시예에 따르면, 사용자 단말(10), 컴퓨팅 장치(100) 또는 외부 서버(20) 중 적어도 하나 이상이 수면 분석 모델을 생성할 수 있다. 수면 분석 모델은, 사용자의 수면 동안 비침습적으로 획득되는 사용자의 수면 음향에 관련한 정보에 기초하여 사용자의 수면 상태에 관한 정보를 예측하는 신경망 모델일 수 있다. 본 발명의 실시예들에 따른 전자장치들 중 적어도 하나 이상이 사용자의 수면 음향 정보를 입력으로 하여 사용자의 수면 상태 정보를 출력하는 수면 분석 모델을 생성할 수 있다. 본 발명의 신경망 학습을 위한 학습 데이터 세트를 구축하는 구성 및 학습 데이터 세트를 활용한 학습 방법, 수면 분석 모델의 생성 및 학습에 대한 구체적인 설명은 후술하도록 한다.According to an embodiment of the present invention, at least one of the user terminal 10, the computing device 100, or the external server 20 may generate a sleep analysis model. The sleep analysis model may be a neural network model that predicts information about the user's sleep state based on information related to the user's sleep sound that is non-invasively acquired during the user's sleep. At least one of the electronic devices according to embodiments of the present invention may generate a sleep analysis model that outputs the user's sleep state information by receiving the user's sleep sound information as input. A detailed description of the construction of the learning data set for learning the neural network of the present invention, the learning method using the learning data set, and the creation and learning of the sleep analysis model will be described later.
본 발명의 일 실시예에 따르면, 사용자는 사용자 단말(10)을 통해 자신의 수면에 관련한 모니터링 정보를 획득할 수 있다. 본 발명의 일 실시예에 따른 전자장치들 중 적어도 하나 이상은 수면 음향 정보를 획득 또는 수신하는 경우, 수면 음향 정보를 수면 분석 모델의 입력으로 처리하여, 수면 분석 모델로 하여금 수면 상태 정보를 출력하도록 할 수 있다.According to an embodiment of the present invention, a user can obtain monitoring information related to his or her sleep through the user terminal 10. When at least one of the electronic devices according to an embodiment of the present invention acquires or receives sleep sound information, it processes the sleep sound information as an input to the sleep analysis model to cause the sleep analysis model to output sleep state information. can do.
한편, 본 발명의 일 실시예에 따르면, 사용자 단말(10) 등의 전자장치로부터 획득된 수면 음향 정보는 낮은 신호 대 잡음비(SNR)를 가질 수 있다. 일반적으로, 사용자가 소지한 사용자 단말(10)에 구비된 마이크 모듈은, 비교적 작은 크기의 사용자 단말(10)에 구비되어야 하므로 MEMS(Micro-Electro Mechanical Systems)로 구성될 수 있다. 사용자 단말(10)에 구비된 마이크 모듈은, 예컨대, Common microphone(저성능, 소형 마이크)일 수 있다. 이러한 마이크 모듈은 매우 소형으로 제작이 가능하나, 콘덴서 마이크(Condenser Microphone)나 다이나믹 마이크(dynamic microphone)에 비해 낮은 신호 대 잡음비를 가질 수 있다. 신호 대 잡음비가 낮다는 것은, 식별하고자 하는 음향 대비 식별하지 않고자 하는 음향인 잡음의 비율이 높은 것으로 음향의 식별이 용이하지 않음(즉, 불분명함)을 의미할 수 있다. 이러한 수면 음향 정보는, 사용자의 호흡 및 움직임 등 매우 작은 음향(즉, 구분이 어려운 음향)에 관한 정보이며, 수면 환경 동안 다른 음향들과 함께 획득되는 것이므로, 상기한 바와 같은 마이크 모듈(즉, 낮은 신호 대 잡음비를 갖는 마이크 모듈)을 통해 획득되는 경우, 정보 도출 및 분석이 매우 어려울 수 있다.Meanwhile, according to an embodiment of the present invention, sleep sound information obtained from an electronic device such as the user terminal 10 may have a low signal-to-noise ratio (SNR). In general, the microphone module provided in the user terminal 10 carried by the user may be configured as a MEMS (Micro-Electro Mechanical System) since it must be provided in the user terminal 10 of a relatively small size. The microphone module provided in the user terminal 10 may be, for example, a common microphone (low-performance, small microphone). These microphone modules can be manufactured very small, but can have a lower signal-to-noise ratio than a condenser microphone or dynamic microphone. A low signal-to-noise ratio may mean that the ratio of noise, which is a sound that is not to be identified, to the sound that is to be identified is high, making it difficult to identify the sound (i.e., unclear). This sleep sound information is information about very small sounds (i.e., sounds that are difficult to distinguish) such as the user's breathing and movement, and is acquired along with other sounds during the sleep environment, so the microphone module as described above (i.e., low When acquired through a microphone module with a high signal-to-noise ratio, deriving and analyzing information can be very difficult.
따라서, 본 발명의 일 실시예에 따르면, 다양한 전자장치들 중 적어도 하나는, 많은 노이즈를 포함하여 불명료하게 획득된 수면 음향 데이터를 분석이 가능한 데이터로 변환 및/또는 조정할 수 있으며, 변환 및/또는 조정된 데이터를 활용하여 인공 신경망에 대한 학습을 수행할 수 있다. 인공 신경망에 대한 사전 학습이 완료된 경우, 학습된 신경망(예컨대, 음향 분석 모델)은 수면 음향 정보에 대응하여 획득된(예컨대, 변환 및/또는 조정된) 데이터(예컨대, 로우(raw) 수면 음향 정보에 포함된 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보, 주파수 도메인상의 정보 또는 스펙트로그램)에 기초하여 사용자의 수면 상태 정보를 획득할 수 있다.Therefore, according to an embodiment of the present invention, at least one of various electronic devices can convert and/or adjust sleep sound data that is unclearly acquired including a lot of noise into data that can be analyzed, and convert and/or Learning for artificial neural networks can be performed using adjusted data. When pre-training of the artificial neural network is completed, the learned neural network (e.g., acoustic analysis model) is used to obtain (e.g., transformed and/or adjusted) data corresponding to the sleep acoustic information (e.g., raw sleep acoustic information). The user's sleep state information can be obtained based on information including changes along the time axis of the frequency components included in, information in the frequency domain, or a spectrogram).
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(100)는 음향을 수집하도록 일반적으로 많이 보급된 사용자 단말(예컨대, 인공지능 스피커, 침실 IoT기기, 휴대폰 등)을 통해 낮은 신호 대 잡음비를 갖는 수면 음향 정보를 획득하는 경우, 이를 분석에 적절한 데이터로 가공하고, 가공된 데이터를 처리하여 수면 단계의 변화에 관련한 수면 상태 정보를 제공할 수 있다. 이는 명료한 음향 획득을 위해 사용자의 신체에 접촉식으로 마이크를 구비하지 않아도 되며, 또한, 높은 신호 대 잡음비를 가진 별도의 추가 디바이스를 구매하지 않고 소프트웨어 업데이트 만으로 일반적인 가정 환경에서 수면 상태를 모니터링할 수 있게 하여 편의성을 증대시키는 효과를 제공할 수 있다.According to one embodiment of the present invention, the computing device 100 collects sleep sound with a low signal-to-noise ratio through a commonly used user terminal (e.g., artificial intelligence speaker, bedroom IoT device, mobile phone, etc.) to collect sound. When information is obtained, it can be processed into data appropriate for analysis, and the processed data can be processed to provide sleep state information related to changes in sleep stages. This eliminates the need to have a contact microphone on the user's body to obtain clear sound, and also allows sleep status to be monitored in a typical home environment with just a software update without purchasing an additional device with a high signal-to-noise ratio. This can provide the effect of increasing convenience.
수면에 관련한 모니터링 정보는 예컨대, 사용자가 잠에 든 시점, 잠을 잔 시간, 잠에서 깨어난 시점 등에 관련한 수면 상태 정보 또는, 구체적으로는 수면 동안 수면 단계의 변화에 관련한 수면 단계 정보를 포함할 수 있다. Monitoring information related to sleep may include, for example, sleep state information related to when the user fell asleep, time spent sleeping, time of waking up, etc., or specifically sleep stage information related to changes in sleep stage during sleep. there is.
구체적인 예를 들어, 수면 단계 정보는, 사용자의 지난 밤 8시간 수면 동안 각 시점 별로 사용자의 수면이 얕은 수면, 보통 수면, 깊은 수면 또는 REM 수면 등으로 변화한 정보를 의미할 수 있다. 전술한 수면 단계 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.For a specific example, sleep stage information may mean information on changes in the user's sleep to light sleep, normal sleep, deep sleep, or REM sleep at each time point during the user's 8 hours of sleep last night. The detailed description of the above-described sleep stage information is only an example, and the present invention is not limited thereto.
한편, 도 1b에 도시된 바와 같이, 별도의 컴퓨팅 장치가 없어도 사용자 단말(10) 또는 외부 서버(20)에서 본 발명에 따른 수면 분석이 수행될 수도 있다.Meanwhile, as shown in FIG. 1B, sleep analysis according to the present invention may be performed on the user terminal 10 or the external server 20 without a separate computing device.
한편, 도 1c는 본 발명의 또 다른 실시예와 관련된 다양한 전자장치들의 다양한 양태가 구현될 수 있는 시스템을 나타낸 개념도를 도시한다.Meanwhile, FIG. 1C shows a conceptual diagram showing a system in which various aspects of various electronic devices related to another embodiment of the present invention can be implemented.
도 1c에 도시된 전자장치들은, 본 발명의 실시예에 따른 다양한 장치들이 수행하는 동작들 중 적어도 하나 이상을 수행할 수 있다.The electronic devices shown in FIG. 1C can perform at least one of the operations performed by various devices according to embodiments of the present invention.
예를 들어, 본 발명의 실시예에 따른 다양한 장치들이 수행하는 동작들은, 수면 환경 정보 또는 환경 센싱 정보를 획득하는 동작, 수면 분석 모델을 학습하는 동작, 수면 분석 모델을 통해 수면 상태를 추론하는 동작, 수면 상태 정보를 획득하는 동작을 포함할 수 있다.For example, operations performed by various devices according to embodiments of the present invention include acquiring sleep environment information or environmental sensing information, learning a sleep analysis model, and inferring the sleep state through the sleep analysis model. , may include an operation of acquiring sleep state information.
또는, 예컨대, 사용자의 수면과 관련한 정보 또는 수면 환경 정보를 제공받거나, 환경 센싱 정보를 송신 또는 수신하거나, 환경 센싱 정보를 판별하거나, 데이터를 처리 또는 가공하거나, 서비스를 처리하거나, 서비스를 제공하거나, 수면 상태를 분석하거나, 사용자의 수면과 관련한 정보에 기초하여 학습 데이터 세트를 구축하거나, 획득한 데이터 또는 신경망의 학습을 위한 복수의 학습 데이터에 대한 정보들을 저장하거나, 다양한 정보들을 송신 또는 수신하거나, 네트워크를 통해 본 발명의 실시예들에 따른 시스템을 위한 데이터를 상호 송수신하는 동작 등을 포함할 수도 있다.Or, for example, receive information related to the user's sleep or sleep environment information, transmit or receive environmental sensing information, determine environmental sensing information, process or process data, process services, or provide services. , analyze sleep status, construct a learning data set based on information related to the user's sleep, store information about acquired data or a plurality of learning data for learning of a neural network, or transmit or receive various information. , It may also include an operation of mutually transmitting and receiving data for the system according to embodiments of the present invention through a network.
도 1c에 도시된 전자장치들은, 상기 본 발명의 실시예에 따른 다양한 장치들이 수행하는 동작들을 개별적으로 수행할 수도 있으나, 하나 이상의 동작을 동시에 또는 시계열적으로 수행할 수도 있다.The electronic devices shown in FIG. 1C may individually perform the operations performed by various devices according to the embodiment of the present invention, but may also perform one or more operations simultaneously or in time series.
도 1c를 참조하면, 전자장치(참조번호 1a 내지 1d)는 사용자의 움직임이나 또는 호흡에 관한 정보 등 객체 상태 정보를 획득할 수 있는 영역(11a)의 범위 내에 있는 전자장치일 수 있다. 이하, 편의상 사용자의 움직임이나 또는 호흡에 관한 정보 등의 객체 상태 정보 또는 환경 센싱 정보를 획득할 수 있는 영역(11a)을 "영역(11a)"이라 지칭하기로 한다.Referring to FIG. 1C, the electronic device (reference numerals 1a to 1d) may be an electronic device within the range of the area 11a that can obtain object state information, such as information about the user's movement or breathing. Hereinafter, for convenience, the area 11a where object state information or environmental sensing information, such as information about the user's movement or breathing, can be obtained will be referred to as “area 11a.”
한편, 도 1c를 참조하면, 전자장치(참조번호 1a 및 1d)는 2개 이상의 복수 개의 전자장치의 조합으로 이루어진 장치일 수 있다.Meanwhile, referring to FIG. 1C, the electronic device ( reference numerals 1a and 1d) may be a device composed of a combination of two or more electronic devices.
한편, 도 1c를 참조하면, 전자장치(참조번호 1a 및 1b)는 영역(11a) 내에서 네트워크와 연결된 전자장치일 수 있다.Meanwhile, referring to FIG. 1C, electronic devices (reference numerals 1a and 1b) may be electronic devices connected to a network within the area 11a.
한편, 도 1c를 참조하면, 전자장치(참조번호 1c 및 1d)는 영역(11a) 내에서 네트워크와 연결되지 않은 전자장치일 수 있다.Meanwhile, referring to FIG. 1C, electronic devices ( reference numerals 1c and 1d) may be electronic devices that are not connected to the network within the area 11a.
한편, 도 1c를 참조하면, 전자장치(참조번호 2a 내지 2b)는 영역(11a)의 범위 밖에 있는 전자장치일 수 있다.Meanwhile, referring to FIG. 1C, electronic devices (reference numerals 2a to 2b) may be electronic devices outside the range of area 11a.
한편, 도 1c를 참조하면, 영역(11a)의 범위 내에서 전자장치들과 상호작용하는 네트워크가 있을 수 있고, 영역(11a)의 범위 밖에서 전자장치들과 상호작용하는 네트워크가 있을 수 있다. Meanwhile, referring to FIG. 1C, there may be a network that interacts with electronic devices within the scope of the area 11a, and there may be a network that interacts with electronic devices outside the scope of the area 11a.
여기서, 영역(11a)의 범위 내에서 전자장치들과 상호작용하는 네트워크는 스마트 가전기기를 제어하기 위한 정보를 송수신하기 위한 역할을 수행할 수 있다. Here, a network that interacts with electronic devices within the scope of area 11a may serve to transmit and receive information for controlling smart home appliances.
또한, 영역(11a)의 범위 내에서 전자장치들과 상호작용하는 네트워크는 예를 들면, 근거리 네트워크 또는 로컬 네트워크일 수 있다. 여기서, 영역(11a)의 범위 내에서 전자장치들과 상호작용하는 네트워크는 예를 들면, 원거리 네트워크 또는 글로벌 네트워크일 수 있다.Additionally, the network interacting with electronic devices within the scope of area 11a may be, for example, a local area network or a local network. Here, the network interacting with electronic devices within the scope of area 11a may be, for example, a remote network or a global network.
도 1c에 도시된 네트워크들의 동작에 대한 구체적인 설명은 앞서 설명한 것과 동일하므로, 중복되는 기재는 생략하기로 한다.Since the detailed description of the operation of the networks shown in FIG. 1C is the same as previously described, redundant description will be omitted.
한편, 도 1c를 참조하면, 영역(11a)의 범위 밖에서 네트워크를 통해 연결된 전자장치들은 하나 이상일 수 있으며, 이 경우의 전자장치들은 서로 데이터를 분산처리하거나 또는 하나 이상의 동작을 나누어 수행할 수도 있다.Meanwhile, referring to FIG. 1C, there may be one or more electronic devices connected through a network outside the range of area 11a, and in this case, the electronic devices may distribute data to each other or perform one or more operations separately.
또는, 영역(11a)의 범위 밖에서 네트워크를 통해 연결된 전자장치가 하나 이상인 경우 전자장치들은 서로 독립하여 다양한 동작을 수행할 수도 있다.Alternatively, when there is more than one electronic device connected through a network outside the range of area 11a, the electronic devices may perform various operations independently of each other.
한편, 본 발명의 일 실시예에 따르면, 도 3에 도시된 바와 같이, 컴퓨팅 장치(100)는 네트워크부(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 전술한 컴퓨팅 장치(100)에 포함된 컴포넌트들은 예시적인 것으로서 본 발명내용의 권리범위가 전술한 컴포넌트들로 제한되지 않는다. 즉, 본 발명내용의 실시예들에 대한 구현 양태에 따라서 추가적인 컴포넌트들이 포함되거나 또는 전술한 컴포넌트들 중 일부가 생략될 수 있다.Meanwhile, according to an embodiment of the present invention, as shown in FIG. 3, the computing device 100 may include a network unit 110, a memory 120, and a processor 130. The components included in the above-described computing device 100 are exemplary, and the scope of the present invention is not limited to the above-described components. That is, depending on the implementation aspect of the embodiments of the present invention, additional components may be included or some of the above-described components may be omitted.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(100)는 사용자 단말(10) 및 외부 서버(20)와 데이터를 송수신하는 네트워크부(110)를 포함할 수 있다. 네트워크부(110)는 본 발명의 일 실시예에 따른 수면 음향 정보에 기반하여 수면 상태를 분석하기 위한 방법을 수행하기 위한 데이터 등을 다른 컴퓨팅 장치, 서버 등과 송수신할 수 있다. 즉, 네트워크부(110)는 컴퓨팅 장치(100)와 사용자 단말(10) 및 외부 서버(20) 간의 통신 기능을 제공할 수 있다. 예를 들어, 네트워크부(110)는 사용자 단말(10)로부터 수면 음향 정보를 수신할 수 있으며, 수신한 수면 음향 정보에 대응하는 수면 상태 정보를 사용자 단말(10)로 전송할 수 있다. 또한, 예를 들어, 네트워크부(110)는 병원 서버로부터 복수의 사용자들에 대한 수면검진기록 및 전자건강기록을 수신할 수 있다. 추가적으로, 네트워크부(110)는 컴퓨팅 장치(100)로 프로시저를 호출하는 방식으로 컴퓨팅 장치(100)와 사용자 단말(10) 및 외부 서버(20) 간의 정보 전달을 허용할 수 있다.According to one embodiment of the present invention, the computing device 100 may include a user terminal 10 and a network unit 110 that transmits and receives data with the external server 20. The network unit 110 may transmit and receive data for performing a method for analyzing a sleep state based on sleep sound information according to an embodiment of the present invention, to other computing devices, servers, etc. That is, the network unit 110 may provide a communication function between the computing device 100, the user terminal 10, and the external server 20. For example, the network unit 110 may receive sleep sound information from the user terminal 10 and transmit sleep state information corresponding to the received sleep sound information to the user terminal 10. Additionally, for example, the network unit 110 may receive sleep checkup records and electronic health records for a plurality of users from a hospital server. Additionally, the network unit 110 may allow information to be transferred between the computing device 100, the user terminal 10, and the external server 20 by calling a procedure with the computing device 100.
본 발명의 일 실시예에 따른 네트워크부(110)는 상술한 네트워크와 같은, 다양한 유선/무선 통신 시스템들을 사용할 수 있다. 네트워크에 대한 설명은 앞서 서술하였기 때문에, 중복되는 서술은 생략하기로 한다.The network unit 110 according to an embodiment of the present invention may use various wired/wireless communication systems, such as the network described above. Since the description of the network was previously described, overlapping descriptions will be omitted.
본 발명의 일 실시예에 따르면, 메모리(120)는 본 발명의 일 실시예에 따른 음향 정보에 기반하여 수면 상태를 예측하는 수면 분석 모델을 생성하기 위한 및 수면 음향 정보를 통해 수면 상태를 분석하기 위한 방법을 수행하기 위한 컴퓨터 프로그램을 저장할 수 있으며, 저장된 컴퓨터 프로그램은 프로세서(130)에 의하여 판독되어 구동될 수 있다. 또한, 메모리(120)는 프로세서(130)가 생성하거나 결정한 임의의 형태의 정보 및 네트워크부(110)가 수신한 임의의 형태의 정보를 저장할 수 있다. 또한, 메모리(120)는 사용자의 수면에 관련한 데이터를 저장할 수 있다. 예를 들어, 메모리(120)는 입/출력되는 데이터들(예를 들어, 사용자의 수면 환경에 관련한 수면 음향 정보, 수면 음향 정보에 대응하는 수면 상태 정보 등)을 임시 또는 영구 저장할 수도 있다.According to an embodiment of the present invention, the memory 120 is configured to generate a sleep analysis model that predicts the sleep state based on sound information according to an embodiment of the present invention and to analyze the sleep state through sleep sound information. A computer program for performing the method may be stored, and the stored computer program may be read and driven by the processor 130. Additionally, the memory 120 may store any type of information generated or determined by the processor 130 and any type of information received by the network unit 110. Additionally, the memory 120 may store data related to the user's sleep. For example, the memory 120 may temporarily or permanently store input/output data (e.g., sleep sound information related to the user's sleep environment, sleep state information corresponding to sleep sound information, etc.).
본 발명의 일 실시예에 따르면, 메모리(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 컴퓨팅 장치(100)는 인터넷(internet) 상에서 상기 메모리(120)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다. 전술한 메모리에 대한 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.According to one embodiment of the present invention, the memory 120 is a flash memory type, hard disk type, multimedia card micro type, or card type memory (e.g. (e.g. SD or -Only Memory), and may include at least one type of storage medium among magnetic memory, magnetic disk, and optical disk. The computing device 100 may operate in connection with web storage that performs a storage function of the memory 120 on the Internet. The description of the memory described above is only an example, and the present invention is not limited thereto.
본 발명의 일 실시예에 따르면, 프로세서(130)는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치 (GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등의 데이터 분석, 머신 러닝 또는 딥 러닝을 위한 프로세서를 포함할 수 있다.According to one embodiment of the present invention, the processor 130 may be composed of one or more cores, such as a central processing unit (CPU) of a computing device, and a general purpose graphics processing unit (GPGPU). , may include a processor for data analysis, machine learning, or deep learning, such as a tensor processing unit (TPU).
본 발명의 일 실시예에 따른 프로세서(130)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 모델의 학습을 위한 데이터 처리를 수행할 수 있다. 본 발명의 일 실시예에 따라 프로세서(130)는 신경망의 학습을 위한 연산을 수행할 수 있다. 프로세서(130)는 머신 러닝 또는 딥 러닝에서 학습을 위한 입력 데이터의 처리, 입력 데이터에서의 피처 추출, 오차 계산, 역전파(backpropagation)를 이용한 신경망의 가중치 업데이트 등의 신경망의 학습을 위한 계산을 수행할 수 있다.The processor 130 according to an embodiment of the present invention may read a computer program stored in the memory 120 and perform data processing for model learning. According to one embodiment of the present invention, the processor 130 may perform calculations for learning a neural network. The processor 130 performs calculations for learning a neural network, such as processing input data for learning in machine learning or deep learning, extracting features from input data, calculating errors, and updating the weights of the neural network using backpropagation. can do.
또한, 프로세서(130)의 CPU, GPGPU, 및 TPU 중 적어도 하나가 네트워크 함수의 학습을 처리할 수 있다. 예를 들어, CPU 와 GPGPU가 함께 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에서 복수의 컴퓨팅 장치의 프로세서를 함께 사용하여 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에서 수행되는 컴퓨터 프로그램은 CPU, GPGPU 또는 TPU 실행가능 프로그램일 수 있다.Additionally, at least one of the CPU, GPGPU, and TPU of the processor 130 may process learning of the network function. For example, CPU and GPGPU can work together to process learning of network functions and data classification using network functions. Additionally, in one embodiment of the present invention, the processors of a plurality of computing devices can be used together to process learning of network functions and data classification using network functions. Additionally, a computer program executed in a computing device according to an embodiment of the present invention may be a CPU, GPGPU, or TPU executable program.
본 명세서에서 네트워크 함수는 인공 신경망, 뉴럴 네트워크와 상호 교환 가능하게 사용될 수 있다. 본 명세서에서 네트워크 함수는 하나 이상의 뉴럴 네트워크를 포함할 수도 있으며, 이 경우 네트워크 함수의 출력은 하나 이상의 뉴럴 네트워크의 출력의 앙상블(ensemble)일 수 있다. 또한, 본 명세서에서 모델은 네트워크 함수를 포함할 수 있다. 모델은 하나 이상의 네트워크 함수를 포함할 수도 있으며, 이 경우 모델의 출력은 하나 이상의 네트워크 함수의 출력의 앙상블일 수 있다.In this specification, network function may be used interchangeably with artificial neural network or neural network. In this specification, a network function may include one or more neural networks, and in this case, the output of the network function may be an ensemble of the outputs of one or more neural networks. Additionally, in this specification, the model may include a network function. A model may include one or more network functions, in which case the output of the model may be an ensemble of the outputs of one or more network functions.
프로세서(130)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 수면 분석 모델을 실행할 수 있다. 본 발명의 일 실시예에 따라, 프로세서(130)는 수면 센싱 데이터에 기초하여 수면 분석 정보를 산출하기 위한 계산을 수행할 수 있다. 또는, 본 발명의 일 실시예에 따라 프로세서(130)는 수면 분석 모델을 학습시키기 위한 계산을 수행할 수 있다.The processor 130 may read a computer program stored in the memory 120 and execute a sleep analysis model according to an embodiment of the present invention. According to an embodiment of the present invention, the processor 130 may perform calculations to calculate sleep analysis information based on sleep sensing data. Alternatively, according to an embodiment of the present invention, the processor 130 may perform calculations to learn a sleep analysis model.
본 발명의 일 실시예에 따르면, 프로세서(130)는 통상적으로 컴퓨팅 장치(100)의 전반적인 동작을 처리할 수 있다. 프로세서(130)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(120)에 저장된 응용 프로그램을 구동함으로써, 사용자 단말에게 적정한 정보 또는, 기능을 제공하거나 처리할 수 있다.According to one embodiment of the present invention, the processor 130 may typically process the overall operation of the computing device 100. The processor 130 can provide or process appropriate information or functions to the user terminal by processing signals, data, information, etc. input or output through the components discussed above or by running an application program stored in the memory 120. there is.
본 발명의 일 실시예에 따르면, 프로세서(130)는 신경망(또는 하나 이상의 네트워크 함수)에 대한 학습을 수행하기 위하여, 복수의 학습 데이터를 획득할 수 있다. 복수의 학습 데이터는 복수의 사용자 각각에 관련한 복수의 수면 음향 정보에 관련한 것일 수 있다. 프로세서(130)는 복수의 사용자의 수면과 관련한 복수의 수면 음향 정보를 획득할 수 있으며, 해당 복수의 수면 음향 정보를 포함하는 학습 데이터 세트를 통해 하나 이상의 네트워크 함수에 대한 학습을 수행하여 수면 분석 모델을 생성할 수 있다.According to one embodiment of the present invention, the processor 130 may acquire a plurality of learning data to perform learning on a neural network (or one or more network functions). The plurality of learning data may be related to a plurality of sleep sound information related to each of a plurality of users. The processor 130 may acquire a plurality of sleep sound information related to the sleep of a plurality of users, and perform learning on one or more network functions through a learning data set including the plurality of sleep sound information to model a sleep analysis model. can be created.
본 발명의 일 실시예에 따르면, 복수의 수면 음향 정보의 획득은, 메모리(120)에 저장된 수면 음향 정보를 획득하거나, 또는 로딩(loading)하는 것일 수 있다. 일 실시예에서, 네트워크부(110)를 통해 외부 서버(20)로부터 복수의 수면 음향 정보가 수신될 수 있으며, 수신된 수면 음향 정보들은 메모리(120)에 저장될 수 있다. 또한, 수면 음향 정보의 획득은, 유/무선 통신 수단에 기초하여 다른 저장 매체, 다른 컴퓨팅 장치, 또는 동일한 컴퓨팅 장치 내의 별도 처리 모듈로부터 데이터를 수신하거나 또는 로딩하는 것일 수 있다.According to an embodiment of the present invention, acquiring a plurality of sleep sound information may be acquiring or loading sleep sound information stored in the memory 120. In one embodiment, a plurality of sleep sound information may be received from the external server 20 through the network unit 110, and the received sleep sound information may be stored in the memory 120. Additionally, acquisition of sleep sound information may involve receiving or loading data from another storage medium, another computing device, or a separate processing module within the same computing device based on wired/wireless communication means.
수면 상태 정보Sleep status information
한편, 본 발명에 있어서, 수면 상태 정보는 사용자가 수면을 취하고 있는지 여부에 관련한 정보일 수 있다. 구체적으로, 수면 상태 정보는, 사용자가 수면 전이라는 제1수면 상태 정보, 사용자가 수면 중이라는 제2수면 상태 정보 및 사용자가 수면 후라는 제3수면 상태 정보 중 적어도 하나를 포함할 수 있다. 다시 말해, 사용자에 관련하여 제1수면 상태 정보가 추론되는 경우, 프로세서(130)는 해당 사용자가 수면 전(즉, 취침 전)인 상태인 것으로 판단할 수 있으며, 제2수면 상태 정보가 추론되는 경우, 해당 사용자가 수면 중인 상태인 것으로 판단할 수 있고, 그리고 제3 수면 상태 정보가 획득되는 경우, 해당 사용자가 수면 후(즉, 기상)인 상태인 것으로 판단할 수 있다.Meanwhile, in the present invention, sleep state information may be information related to whether the user is sleeping. Specifically, the sleep state information may include at least one of first sleep state information indicating that the user is before sleep, second sleep state information indicating that the user is sleeping, and third sleep state information indicating that the user is after sleep. In other words, when first sleep state information is inferred with respect to the user, the processor 130 may determine that the user is in a pre-sleep state (i.e., before going to bed), and the second sleep state information is inferred. In this case, it may be determined that the user is in a sleeping state, and if third sleep state information is obtained, it may be determined that the user is in a post-sleep state (i.e., waking up).
이러한 수면 상태 정보는, 환경 센싱 정보 또는 Actigraphy 등에 기초하여 획득될 수 있다. 환경 센싱 정보는, 비접촉 방식으로 사용자가 위치한 공간에서 획득되는 센싱 정보일 수 있다. 예를 들어, 프로세서(130)는 획득된 환경 센싱 정보(청소에 관련한 음향 정보, 음식 조리에 관련한 음향 정보, TV 시청에 관련한 음향 정보, 수면 중 획득되는 수면 음향 정보 등), Actigraphy, 생체정보 등에 기초하여 수면 상태 정보를 추출할 수 있다. 이때, 사용자의 수면 중 획득되는 수면 음향 정보는, 수면 중 사용자가 뒤척거림에 따라 발생되는 음향, 근육 움직임에 관련한 음향 또는 수면 중 호흡 사운드 등을 포함할 수 있다. 즉, 본 발명에서의 수면 음향 정보는 사용자의 수면 동안에 관련한 움직임 패턴 및 호흡 패턴에 관련한 음향 정보를 의미할 수 있다.This sleep state information may be obtained based on environmental sensing information or actigraphy. Environmental sensing information may be sensing information obtained in a non-contact manner in the space where the user is located. For example, the processor 130 stores acquired environmental sensing information (sound information related to cleaning, sound information related to food cooking, sound information related to watching TV, sleep sound information acquired during sleep, etc.), actigraphy, biometric information, etc. Based on this, sleep state information can be extracted. At this time, sleep sound information acquired during the user's sleep may include sounds generated as the user tosses and turns during sleep, sounds related to muscle movements, or breathing sounds during sleep. That is, sleep sound information in the present invention may mean sound information related to movement patterns and breathing patterns related to the user's sleep.
또한, 본 발명의 일 실시예에 따른 수면 상태 정보는, 수면 단계 정보 외에도 수면 중의 호흡과 관련한 정보, 이갈이 정보, 기침을 하는지 여부, 기침의 정도, 재채기 여부, 뒤척임 정보, 잠꼬대 정보 등, 수면 이벤트와 관련한 다양한 정보를 포함할 수 있다.In addition, sleep state information according to an embodiment of the present invention includes, in addition to sleep stage information, information related to breathing during sleep, bruxism information, whether coughing, degree of coughing, whether sneezing, tossing and turning information, sleep talking information, sleep events, etc. It can contain various information related to.
수면 단계 정보Sleep stage information
일 실시예에 따르면, 프로세서(130)는 수면 단계 정보를 추출할 수 있다. 수면 단계 정보는 사용자의 환경 센싱 정보에 기초하여 추출될 수 있다. 수면 단계는 NREM(non-REM) 수면, REM(Rapid eye movement) 수면으로 구분될 수 있고, NREM 수면은 다시 복수(예: Light, Deep의 2단계, N1 내지 N4의 4단계)로 구분될 수 있다. 수면 단계의 설정은 일반적인 수면 단계로 정의될 수도 있지만, 설계자에 따라 다양한 수면 단계로 임의 설정될 수도 있다. 수면 단계 분석을 통하여 수면과 관련한 수면의 질 뿐만 아니라 수면 질환(예: 수면 무호흡증)과 그의 근본적인 원인(예: 코골이) 등, 다양한 수면 이벤트까지 예측할 수 있다.According to one embodiment, the processor 130 may extract sleep stage information. Sleep stage information may be extracted based on the user's environmental sensing information. Sleep stages can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). there is. The sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer. Through sleep stage analysis, it is possible to predict not only sleep-related sleep quality but also various sleep events, such as sleep disorders (e.g., sleep apnea) and their underlying causes (e.g., snoring).
수면 환경 정보Sleep environment information
실시예에서, 사용자 단말(10)을 통해 본 발명의 수면 환경 정보가 획득될 수 있다. 수면 환경 정보는, 사용자가 위치한 공간에서 획득되는 수면과 관련한 정보를 의미할 수 있다. 수면 환경 정보는, 비접촉식 방법으로 사용자가 위치한 공간에서 획득되는 센싱 정보일 수 있다. 수면 환경 정보는, 스마트 워치, 스마트 가전 등에서 획득되는 사용자의 수면에 관련한 정보일 수 있다.In an embodiment, sleep environment information of the present invention may be obtained through the user terminal 10. Sleep environment information may refer to information related to sleep obtained in the space where the user is located. Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method. Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc.
예를 들어, 수면 환경 정보는, 사용자가 수면을 취하는 침실에서 획득되는 음향 정보일 수 있다. 실시예에 따르면, 사용자 단말(10)을 통해 획득된 수면 환경 정보는, 본 발명에서 사용자의 수면 상태 정보를 획득하기 위한 기반이 되는 정보일 수 있다. 구체적인 예를 들어, 사용자의 활동에 관련하여 획득되는 수면 환경 정보를 통해 사용자가 수면 전인지, 수면 중인지 또는 수면 후인지 여부에 관련한 수면 상태 정보가 획득될 수 있다. 또 다른 구체적인 예를 들어, 수면 환경 정보는 사용자의 심박수, 사용자의 호흡, 사용자의 수면 환경에 관한 조도, 소음 정보 등, 다양한 정보를 포함할 수 있다.For example, sleep environment information may be acoustic information obtained in the bedroom where the user sleeps. According to an embodiment, sleep environment information acquired through the user terminal 10 may be information that serves as the basis for obtaining the user's sleep state information in the present invention. For a specific example, sleep state information related to whether the user is before, during, or after sleep may be obtained through sleep environment information obtained in relation to the user's activities. As another specific example, the sleep environment information may include various information such as the user's heart rate, the user's breathing, illumination level, and noise information regarding the user's sleep environment.
또한, 수면 환경 정보는 일상생활에서 흔히 발생하는 노이즈 정보(청소에 관련한 음향 정보, 음식 조리에 관련한 음향 정보, TV 시청에 관련한 음향 정보, 고양이 소리, 강아지 소리, 새 소리, 차 소리, 바람 소리, 비 소리 등) 또는, 기타 생체 정보(심전도, 뇌파, 맥박 정보, 근육 움직임에 관한 정보 등) 중 적어도 하나 이상일 수 있다.In addition, sleep environment information includes noise information commonly occurring in daily life (sound information related to cleaning, sound information related to food cooking, sound information related to watching TV, cat sounds, dog sounds, bird sounds, car sounds, wind noise, It may be at least one of (e.g., rain sounds, etc.) or other biometric information (e.g., electrocardiogram, brain wave, pulse information, information on muscle movement, etc.).
수면 분석을 위한 데이터Data for sleep analysis
도 13은 본 발명의 일실시예에 따른 데이터 셋의 모식도이다.Figure 13 is a schematic diagram of a data set according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 데이터는, 마이크로폰을 통해 수집된 로우(raw) 음향 정보일 수 있다. 여기서 로우 음향 정보는 진폭, 위상, 주파수를 가지는 시간 도메인상의 정보일 수 있다.Data according to an embodiment of the present invention may be raw acoustic information collected through a microphone. Here, raw acoustic information may be information in the time domain having amplitude, phase, and frequency.
또한, 본 발명의 일 실시예에 따른 데이터는, 로우 음향 정보를, 로우 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보로 변환한 것일 수 있다.Additionally, data according to an embodiment of the present invention may be raw sound information converted into information including changes in the frequency components of the raw sound information along the time axis.
또는, 본 발명의 일 실시예에 따른 데이터는, 로우 음향 정보를 시간 도메인상의 정보가 아닌, 주파수 도메인상의 정보로 변환한 것일 수 있다. 여기서 주파수 도메인상의 정보로 변환하기 위하여 푸리에 변환(Fourier Transform) 또는 웨이블릿 변환(Wavelet Transform)을 수행할 수 있다. Alternatively, data according to an embodiment of the present invention may be raw acoustic information converted into information in the frequency domain rather than information in the time domain. Here, Fourier Transform or Wavelet Transform can be performed to convert the information into frequency domain information.
또한, 본 발명의 일 실시예에 따라 주파수 도메인으로 변환한 정보는 진폭과 주파수를 가지는 정보일 수 있다.Additionally, information converted to the frequency domain according to an embodiment of the present invention may be information having amplitude and frequency.
또한, 본 발명의 일 실시예에 따른 데이터는, 음향 정보를 주파수 도메인상의 정보로 변환한 것 중 스펙트로그램에 해당할 수 있다.Additionally, data according to an embodiment of the present invention may correspond to a spectrogram obtained by converting acoustic information into information in the frequency domain.
또는, 본 발명의 일 실시예에 따른 데이터는, 스펙트로그램에 멜 스케일을 적용한 멜 스펙트로그램일 수 있다. 구체적으로, 스펙트로그램에 대한 멜-필터 뱅크(Mel-Filter Bank)를 통해 멜 스펙트로그램(Mel-Spectrogram)을 획득할 수 있다. 일반적으로, 인간의 달팽이관은 음성 데이터의 주파수에 따라 진동하는 부위가 상이할 수 있다. 또한, 인간의 달팽이관은 주파수가 낮은 대역에서 주파수 변화를 잘 감지하며, 높은 대역에서의 주파수 변화를 잘 감지하지 못하는 특성을 가지고 있다. 이에 따라, 음성 데이터에 대한 인간의 달팽이관의 특성과 유사한 인식 능력을 갖도록 멜-필터 뱅크를 활용하여 스펙트로그램으로부터 멜 스펙트로그램을 획득할 수 있다. 즉, 멜-필터 뱅크는, 낮은 주파수 대역에서 적은 필터 뱅크를 적용하고, 고대역으로 갈수록 넓은 필터 뱅크를 적용하는 것 일 수 있다. 다시 말해, 프로세서(130)는 인간의 달팽이관의 특성과 유사하도록 음성 데이터를 인식하기 위해 멜-필터 뱅크를 스펙트로그램에 적용함으로써, 멜 스펙트로그램을 획득할 수 있다. 멜 스펙트로그램은 인간의 청각 특성이 반영된 주파수 성분을 포함할 수 있다. 즉, 본 발명에서 수면 음향 정보에 대응하여 생성되며, 신경망을 활용한 분석의 대상이 되는 스펙트로그램은, 전술한 멜 스펙트로그램을 포함할 수 있다.Alternatively, data according to an embodiment of the present invention may be a Mel spectrogram in which the Mel scale is applied to the spectrogram. Specifically, a Mel-Spectrogram can be obtained through a Mel-Filter Bank for the spectrogram. In general, the parts of the human cochlea that vibrate may differ depending on the frequency of voice data. In addition, the human cochlea has the characteristic of detecting frequency changes well in low frequency bands and having difficulty detecting frequency changes in high frequency bands. Accordingly, a Mel spectrogram can be obtained from the spectrogram using a Mel filter bank so as to have a recognition ability similar to the characteristics of the human cochlea for voice data. In other words, the mel-filter bank may apply a small number of filter banks in a low frequency band and apply a wider filter bank toward higher frequencies. In other words, the processor 130 can obtain a Mel spectrogram by applying a Mel filter bank to the spectrogram to recognize voice data similar to the characteristics of the human cochlea. The Mel spectrogram may include frequency components that reflect human hearing characteristics. That is, in the present invention, the spectrogram generated in response to sleep sound information and subject to analysis using a neural network may include the Mel spectrogram described above.
여기서 본 발명의 일 실시예에 따른 스펙트로그램 또는 멜 스펙트로그램 등, 주파수 도메인상의 정보로 변환한 정보는 진폭, 주파수를 가지는 도메인으로서, 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보로 변환한 것일 수 있다.Here, the information converted to information in the frequency domain, such as a spectrogram or mel spectrogram according to an embodiment of the present invention, is a domain with amplitude and frequency, and is information containing changes along the time axis of the frequency components of acoustic information. It may have been converted.
또한, 본 발명의 실시예들에 따른 데이터는, 상술한 정보들을 시각화한 것으로서, 이미지 처리를 기반으로 하는 인공지능 모델에 입력될 수 있다. 예를 들어, 로우 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보로 변환한 것을 시각화하여 인공지능 모델의 입력으로 할 수 있다. 또는, 주파수 도메인으로 변환한 정보를 시각화하여 인공지능 모델의 입력으로 할 수 있다. 위 정보들이 입력되는 인공지능 모델은 이미지 처리 기반의 인공지능 모델일 수 있다.Additionally, data according to embodiments of the present invention is a visualization of the above-described information and can be input into an artificial intelligence model based on image processing. For example, raw acoustic information converted into information including changes in the frequency components along the time axis can be visualized and used as input to an artificial intelligence model. Alternatively, information converted to the frequency domain can be visualized and used as input to an artificial intelligence model. The artificial intelligence model into which the above information is input may be an image processing-based artificial intelligence model.
한편, 본 발명의 실시예에 따르면, 수면 상태 정보 중 수면 음향 정보는 병원 환경에서의 수면다원검사(PSG,polysomnography)를 통해 수집될 수도 있고, 가정환경 등에서의 사용자가 웨어러블 디바이스 또는 스마트폰 등 사용자 단말에 내장된 마이크로폰을 통해 수집될 수도 있다.Meanwhile, according to an embodiment of the present invention, sleep sound information among sleep state information may be collected through polysomnography (PSG) in a hospital environment, and may be collected by a user in a home environment using a wearable device or smartphone, etc. It can also be collected through the microphone built into the terminal.
본 발명의 실시예에 따른 데이터 셋은 수면다원검사(PSG) 중의 뇌파검사(Video-EEG, Video-electroencephalography) 또는, 수면다원검사(PSG)에서 마이크로폰을 통하여 수집 및 구성될 수 있다.The data set according to an embodiment of the present invention can be collected and constructed through electroencephalography (Video-EEG, video-electroencephalography) during polysomnography (PSG) or through a microphone during polysomnography (PSG).
또는, 본 발명의 실시예에 따른 데이터 셋은, 사용자 단말 등의 전자기기에 내장된 마이크로폰을 통하여 수면 중에 발생하는 음향 신호를 수집하여 구성될 수도 있다.Alternatively, the data set according to an embodiment of the present invention may be constructed by collecting acoustic signals generated during sleep through a microphone built into an electronic device such as a user terminal.
수면 분석 결과 도출 방식How to derive sleep analysis results
이하에서는, 프로세서(130)가 생체정보(Bio-Signal), 움직임정보(ACTIGRAPHY), 수면 음향 정보(SOUND)를 이용하여, 최종 수면 분석결과를 도출하는 방식에 대해 설명한다. Below, a method in which the processor 130 derives the final sleep analysis result using biometric information (Bio-Signal), movement information (ACTIGRAPHY), and sleep sound information (SOUND) will be described.
먼저, 프로세서(130)는 가중치를 이용하여 최종 수면 분석결과를 도출할 수 있다. 구체적으로, 프로세서(130)는 1차 수면 분석 결과와, 수면 음향 정보를 이용한 수면 분석 결과에 동일한 가중치를 적용하여 2차 수면 분석 결과를 도출할 수 있다. 이와 달리, 프로세서(130)는 1차 수면 분석 결과와, 수면 음향 정보를 이용한 수면 분석 결과에 상이한 가중치를 적용하여 2차 수면 분석 결과를 도출할 수도 있다. 예를 들어, HRV, Actigraphy에 기초한 접촉식 1차 수면 분석에는 30%의 가중치를 두고, 수면음향을 이용한 AI 분석에는 70%의 가중치를 두어 최종 2차 수면 분석 결과를 도출할 수 있다.First, the processor 130 may derive the final sleep analysis result using weights. Specifically, the processor 130 may apply the same weight to the first sleep analysis result and the sleep analysis result using sleep sound information to derive the second sleep analysis result. Alternatively, the processor 130 may derive a secondary sleep analysis result by applying different weights to the first sleep analysis result and the sleep analysis result using sleep sound information. For example, the final secondary sleep analysis results can be derived by placing a 30% weight on the contact-type primary sleep analysis based on HRV and Actigraphy, and a 70% weight on the AI analysis using sleep sounds.
다른 실시예에서, 프로세서(130)는 1차 수면 분석 결과와 2차 수면 분석 결과에 있어서 수면단계가 완전히 일치하는 경우에만, 사용자가 해당 수면단계 진입한 것으로 판단하여, 최종 수면 분석결과를 도출할 수 있다.In another embodiment, the processor 130 determines that the user has entered the corresponding sleep stage only when the sleep stage in the first and second sleep analysis results completely matches, and derives the final sleep analysis result. You can.
또 다른 실시예에서, 프로세서(130)는 생체정보(Bio-Signal), 움직임정보(ACTIGRAPHY) 및 수면 음향 정보(SOUND)중 적어도 하나 이상을 입력으로 하는 AI 수면 분석 모델을 학습하는 방법을 이용할 수 있다. AI 수면 분석 모델의 학습방법은 아래에서 더욱 상세히 설명하겠지만, 간략히 설명하면, 인공지능 모델의 입력층에 하나 이상의 정보를 입력함으로써 하나 이상의 요인에 의하여 수면 분석을 수행하는 AI 수면 분석 모델이 생성될 수 있다.In another embodiment, the processor 130 may use a method of learning an AI sleep analysis model that uses at least one of biometric information (Bio-Signal), movement information (ACTIGRAPHY), and sleep sound information (SOUND) as input. there is. The learning method of the AI sleep analysis model will be explained in more detail below, but briefly explained, an AI sleep analysis model that performs sleep analysis based on one or more factors can be created by inputting one or more information into the input layer of the artificial intelligence model. there is.
다른 실시예에서, 프로세서(130)는 후술하는 AI 수면 분석 모델을 이용하여 수면 음향 정보(SOUND)를 이용해서 2차 수면 분석을 먼저 수행한 뒤, 각 시간대별 수면단계에 대한 AI 확신도를 부가적으로 추출한다. 추출된 확신도가 소정의 수치 이하인 경우, 해당 시간대의 수면단계는 1차 수면 분석에 의하여 도출된 수면단계 결과를 채택한다. 즉, 2차 수면 분석 결과를 중심으로, 1차 수면 분석 결과를 부가적으로 채택함으로써, 더욱 신뢰성 있는 수면 분석 결과를 도출할 수 있다.In another embodiment, the processor 130 first performs a secondary sleep analysis using sleep sound information (SOUND) using an AI sleep analysis model described later, and then adds AI certainty for the sleep stage for each time period. extract it as an enemy. If the extracted certainty is less than a predetermined value, the sleep stage result derived by the first sleep analysis is adopted as the sleep stage for the corresponding time period. In other words, more reliable sleep analysis results can be derived by additionally adopting the first sleep analysis results, focusing on the second sleep analysis results.
또 다른 실시예에서, 프로세서(130)는 후술하는 AI 수면 분석 모델에서 실제 분석결과와 불일치하는 부분의 통계를 먼저 확보한다. 통계는 사용자에 의하여 입력될 수도 있지만, 다수의 사용자 데이터에 의하여 자체적으로 확보될 수도 있다. 프로세서(130)는 2차 수면 분석 결과(SOUND에 기초한 분석)를 중심으로, 확보된 통계에서 실제 분석결과와 불일치하는 부분에서는 1차 수면 분석 결과를 부가적으로 채택할 수 있다. In another embodiment, the processor 130 first secures statistics of parts that are inconsistent with actual analysis results in the AI sleep analysis model, which will be described later. Statistics may be entered by a user, but may also be independently obtained through data from multiple users. The processor 130 may center around the secondary sleep analysis results (SOUND-based analysis) and additionally adopt the primary sleep analysis results in areas where the obtained statistics do not match the actual analysis results.
또 다른 실시예에서, 프로세서(130)는 생체정보(Bio-Signal), 움직임정보(ACTIGRAPHY)에 의하여 확보된 1차 수면 분석 결과와, 수면음향 정보(SOUND)에 기초한 AI 수면 분석 모델을 학습하는 방법을 이용할 수 있다. AI 수면 분석 모델의 학습방법은 아래에서 더욱 상세히 설명하겠지만, 간략히 설명하면, 인공지능 모델의 입력층에 2가지 정보(1차 수면 분석 결과 및 수면음향 정보)를 입력함으로써, 2가지 요인에 의하여 수면 분석을 수행하는 AI 수면 분석 모델이 생성될 수 있다.In another embodiment, the processor 130 learns an AI sleep analysis model based on the primary sleep analysis results obtained by bio-signal and movement information (ACTIGRAPHY) and sleep sound information (SOUND). method can be used. The learning method of the AI sleep analysis model will be explained in more detail below, but briefly explained, by inputting two pieces of information (first sleep analysis result and sleep sound information) into the input layer of the artificial intelligence model, sleep is determined by two factors. An AI sleep analysis model that performs analysis can be created.
수면단계는 NREM(non-REM) 수면, REM(Rapid eye movement) 수면으로 구분될 수 있고, NREM 수면은 다시 복수(예: Light, Deep의 2단계, N1 내지 N4의 4단계)로 구분될 수 있다. 수면단계의 설정은 일반적으로 통용되는 수면단계를 기준으로 정의될 수도 있지만, 설계자에 따라 다양한 방식으로 임의 설정될 수도 있다. 수면단계분석을 통해서는 수면의 질 뿐만 아니라 수면 질환(예: 수면 무호흡증)과 그의 근본적인 원인(예: 코골이)까지 예측할 수 있다.Sleep stages can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). there is. Sleep stage settings may be defined based on generally accepted sleep stages, but may also be arbitrarily set in various ways depending on the designer. Through sleep stage analysis, not only sleep quality but also sleep diseases (e.g. sleep apnea) and their underlying causes (e.g. snoring) can be predicted.
본 발명의 실시예에 따른 복수의 수면 상태 정보를 학습 및 예측하는 방식에 대하여 예를 들어 설명하기로 한다. 다만, 이하 설명하는 수면상태와 관련한 구체적인 기재는 단순한 예시일 뿐, 본 발명은 이에 제한되는 것은 아니며, 언급되지 않은 다른 수면 상태 정보(예컨대, 움직임 정보, 코골이 정보, 수면질환 정보 등의 수면 이벤트 정보)중 적어도 하나 이상 및/또는 환경의 차이(예컨대, 인종 등)에 따른 수면 상태 정보의 차이에 대한 학습도 이루어질 수 있다는 것을 이해하여야 한다.A method for learning and predicting a plurality of sleep state information according to an embodiment of the present invention will be described using an example. However, the specific description related to the sleep state described below is only an example, and the present invention is not limited thereto, and the present invention is not limited thereto, and sleep events such as other sleep state information (e.g., movement information, snoring information, sleep disease information, etc.) not mentioned It should be understood that learning about differences in sleep state information according to at least one of information) and/or differences in environment (e.g., race, etc.) may also be performed.
수면 단계 정보를 학습 또는 예측하기 위해 긴 시간 간격동안 획득한 음향 정보를 필요로 할 수 있다. 또한 수면 단계 정보 외의 수면 상태 정보(예컨대, 코골이 또는 무호흡증 정보 등의 수면 이벤트 정보)를 학습 또는 예측하기 위해서는 해당 수면상태가 발생하는 시점 전후로 상대적으로 짧은 시간 간격(예컨대, 1분)동안 획득한 음향 정보를 필요로 할 수 있다.Acoustic information acquired over a long time interval may be required to learn or predict sleep stage information. In addition, in order to learn or predict sleep state information other than sleep stage information (e.g., sleep event information such as snoring or apnea information), information obtained during a relatively short time interval (e.g., 1 minute) before and after the corresponding sleep state occurs Acoustic information may be required.
본 발명의 실시예에 따라 획득한 음향 정보를, 주파수 성분의 시간 축에 따른 변화를 포함하는 정보, 주파수 도메인상의 정보 또는 스펙트로그램으로 변환하여, 동일한 인공지능 모델의 입력으로 하였을 때 복수의 수면 상태 정보를 학습하도록 수행하는 방법을 포함할 수 있다. 또는, 획득한 음향 정보의 주파수 성분의 시간 축에 따른 변화를 포함하는 정보를 시각화하여 나타낸 것을 이미지 처리 기반의 인공지능 모델의 입력으로 하여 복수의 수면 상태 정보를 학습하도록 수행하는 방법을 포함할 수 있다.When the acoustic information obtained according to an embodiment of the present invention is converted into information including changes in the frequency component along the time axis, information in the frequency domain, or a spectrogram, and used as input to the same artificial intelligence model, multiple sleep states May include methods of performing to learn information. Alternatively, it may include a method of learning a plurality of sleep state information by visualizing information including changes along the time axis of the frequency component of the acquired acoustic information as input to an image processing-based artificial intelligence model. there is.
예를 들어, 본 발명의 실시예에 따른 스펙트로그램의 정보를 동일한 피처 추출 모델의 입력으로 하여 출력된 정보가 각각 서로 다른 피처 분류 모델에 입력되어 학습을 수행할 수 있다.For example, by using the information of the spectrogram according to an embodiment of the present invention as input to the same feature extraction model, the output information can be input to different feature classification models to perform learning.
이러한 방법을 통하여, 하나의 음향 정보를 기초로 다양한 수면 상태 정보를 예측할 수 있도록 학습이 수행될 수 있다.Through this method, learning can be performed to predict various sleep state information based on one sound information.
또는, 이러한 방법을 통하여, 하나의 음향 정보를 기초로 다양한 수면 상태 정보를 상호보완적으로 학습을 수행할 수 있다. 예컨대, 수면단계만 학습하는 인공지능 모델은, 무호흡증 또는 코골이와 같이 큰 소음이 발생하는 상태가 인식된다면 이를 Wake 상태로 잘못 예측할 수 있는 문제가 발생할 수 있다. 반면, 복수의 수면 상태 정보를 학습하도록 설계된 인공지능 모델의 경우, 수면단계 외에 무호흡증 또는 코골이 등의 다른 수면 상태 정보에 대하여도 상호보완적으로 학습한 결과, 위와 같은 문제를 방지할 수 있다.Alternatively, through this method, various sleep state information can be complementarily learned based on one sound information. For example, an artificial intelligence model that only learns sleep stages may incorrectly predict a wake state if a state that generates loud noise, such as apnea or snoring, is recognized. On the other hand, in the case of an artificial intelligence model designed to learn multiple sleep state information, the above problem can be prevented as a result of complementary learning of other sleep state information such as apnea or snoring in addition to sleep stage.
전술한 시간 간격에 관한 구체적인 기재 및 수면 상태 정보에 관련한 구체적인 기재는 단순히 본 발명을 설명하기 위한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.The specific description regarding the above-mentioned time interval and the specific description regarding sleep state information are merely examples for explaining the present invention, and the present invention is not limited thereto.
수면 음향 정보 획득Acquisition of sleep acoustic information
도 2는 다양한 환경에서 획득되는 복수의 수면 음향 정보를 예시적으로 나타낸 예시도이다.Figure 2 is an exemplary diagram illustrating a plurality of sleep sound information acquired in various environments.
수면 음향 정보는 수면 음향에 관련한 정보로서, 예를 들어, 수면 동안 사용자가 뒤척거림에 따라 발생되는 음향, 근육의 움직임에 관련한 음향 또는 수면 동안 사용자의 호흡에 관련한 음향 등을 포함할 수 있다. 즉, 본 발명의 수면 음향 정보는, 사용자의 수면 동안에 관련한 움직인 패턴 및 호흡 패턴에 관련한 음향 정보를 포함할 수 있다.Sleep sound information is information related to sleep sounds, and may include, for example, sounds generated as the user tosses and turns during sleep, sounds related to muscle movement, or sounds related to the user's breathing during sleep. That is, the sleep sound information of the present invention may include sound information related to the user's movement patterns and breathing patterns during sleep.
본 발명에서 수면 음향 정보는, 호흡 및 몸 움직임에 관련한 음향에 관련한 것이므로, 매우 작은 소리일 수 있다. 이에 따라, 프로세서(130)는 수면 음향 정보를 로우(raw) 수면 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보 또는 스펙트로그램으로 변환하여 음향에 대한 분석을 수행할 수 있다. 이 경우, 변환된 정보는 전술한 바와 같이, 소리의 주파수 스펙트럼이 시간에 따라 어떻게 변환하는지 보여주는 정보를 포함하고 있으므로, 비교적 작은 음향(즉, 특징을 식별하는 것이 용이하지 않은 음향)에 관련한 호흡 또는 움직임 패턴을 용이하게 식별하도록 하여 분석의 효율을 향상시킬 수 있다. In the present invention, sleep sound information is related to sounds related to breathing and body movement, so it may be a very quiet sound. Accordingly, the processor 130 may perform sound analysis by converting the sleep sound information into information or a spectrogram containing changes along the time axis of the frequency components of the raw sleep sound information. In this case, the converted information includes information showing how the frequency spectrum of the sound transforms over time, as described above, so that breathing or The efficiency of analysis can be improved by easily identifying movement patterns.
본 발명의 일 실시예에 따르면, 도 8에 도시된 바와 같이, 다양한 수면 단계에 따라 각각의 스펙트로그램이 상이한 농도의 주파수 스펙트럼을 갖도록 구성될 수 있다. 즉, 수면 음향 정보의 에너지 레벨의 변화만으로는, 깨어있는 상태, REM 수면 상태, 얕은 수면 상태 및 깊은 수면 상태 중 적어도 하나인지를 예측하기 어려울 수 있으나, 수면 음향 정보를 스펙트로그램으로 변환함으로써, 각 주파수의 스펙트럼의 변화를 용이하게 감지할 수 있으므로, 작은 소리(예컨대, 호흡 및 몸 움직임)에 대응한 분석이 가능해질 수 있다. 즉, 음향을 이미지화하여 이미지 패턴을 분석함으로써, 퀄리티가 낮은 음향에 대한 분석이 가능해질 수 있다.According to one embodiment of the present invention, as shown in FIG. 8, each spectrogram may be configured to have a frequency spectrum of different concentration according to various sleep stages. In other words, it may be difficult to predict whether the sleep sound information is at least one of the awake state, REM sleep state, light sleep state, and deep sleep state based solely on changes in the energy level of the sleep sound information, but by converting the sleep sound information into a spectrogram, each frequency Since changes in the spectrum can be easily detected, analysis corresponding to small sounds (e.g., breathing and body movements) may be possible. In other words, by imaging the sound and analyzing the image pattern, it can be possible to analyze low-quality sound.
본 발명의 일 실시예에 따르면, 수면 상태 분석의 기반이 되는 정보인 수면 음향 정보는, 다양한 노이즈를 포함할 수 있다. 실시예에서, 복수의 사용자 각각에 대응하여 획득되는 수면 음향 정보는, 각 사용자 별 상이한 침실 환경에서 획득되는 것으로 각기 상이한 종류의 노이즈를 포함하고 있을 수 있다. 상기와 같은 다양한 종류의 노이즈의 영향에 의해 수면 분석 모델을 활용한 수면 음향 정보에 대한 일관적인 분석 또는 예측이 어려울 수 있다.According to one embodiment of the present invention, sleep sound information, which is the basis for sleep state analysis, may include various noises. In an embodiment, sleep sound information acquired corresponding to each of a plurality of users may be acquired in a different bedroom environment for each user and may include different types of noise. Consistent analysis or prediction of sleep sound information using a sleep analysis model may be difficult due to the influence of various types of noise as described above.
구체적으로, 사용자의 수면 음향이 동일하더라도 침실 환경 또는 음향 측정 기기에 따라 발생하는 다양한 노이즈로 인해 실제로 획득되는 수면 음향 정보가 상이해질 수 있으며, 이에 따라, 신경망 모델(즉, 수면 분석 모델)이 상이한 예측 정보(즉, 수면 상태 정보)를 출력할 수 있다. 예를 들어, 사용자의 수면 동안 발생된 수면 음향은 모두 동일할지라도, 사용자가 수면을 취하는 공간에 관련한 환경적인 요인과 수면 음향을 획득하는 기기 간의 차이에 따라, 도 2에 도시된 바와 같이, 상이한 수면 음향 정보가 획득될 수 있다. 도 2는 동일한 음향 정보가 다양한 수면 환경 및/또는 다양한 측정 기기를 통해 획득됨에 따라 상이한 형태의 수면 음향 정보가 획득됨을 예시적으로 나타낸다.Specifically, even if the user's sleep sound is the same, the sleep sound information actually obtained may be different due to various noises generated depending on the bedroom environment or sound measurement device, and accordingly, the neural network model (i.e., sleep analysis model) may be different. Prediction information (i.e., sleep state information) can be output. For example, even if the sleep sounds generated during the user's sleep are all the same, depending on environmental factors related to the space where the user sleeps and differences between the devices that acquire the sleep sounds, as shown in FIG. 2, they may be different. Sleep acoustic information may be obtained. Figure 2 exemplarily shows that different types of sleep sound information are obtained as the same sound information is acquired through various sleep environments and/or various measuring devices.
보다 구체적인 예를 들어, 사용자가 수면을 취하는 침실의 크기나 구조 등에 따라 획득되는 수면 음향 정보의 배경 노이즈가 상이해질 수 있다. 또한, 예를 들어, 사용자가 수면을 취하는 공간에서 발생되는 소리(예컨대, 에어컨, 선풍기, 애완동물 또는 냉장고 소리 등)에 관련한 다양한 노이즈로 인해 획득되는 수면 음향 정보가 상이해질 수 있다.For a more specific example, the background noise of the sleep sound information obtained may be different depending on the size or structure of the bedroom where the user sleeps. In addition, for example, the sleep sound information obtained may be different due to various noises related to sounds generated in the space where the user sleeps (e.g., sounds of air conditioners, fans, pets, or refrigerators, etc.).
다른 예를 들어, 수면 음향 정보 획득에 활용되는 음향 측정 기기의 기종 상이함에 따라, 동일한 수면 음향에 대응하여 획득되는 수면 음향 정보가 상이해질 수 있다. 구체적인 예를 들어, 동일한 수면 음향에 대응하여 제1사용자 단말을 통해 제1수면 음향 정보를 획득하고, 제2사용자 단말을 통해 제2수면 음향 정보를 획득하는 경우, 양 기기에 구비된 마이크 모듈 간의 차이로 인해, 제1수면 음향 정보와 제2수면 음향 정보가 완벽히 동일하지 않을 수 있다. 기기마다 활용하는 마이크 모듈이 상이함에 따라 수면 음향 정보에는 다양한 형태의 노이즈가 포함될 수 있다.For another example, depending on the type of sound measurement device used to obtain sleep sound information, the sleep sound information obtained in response to the same sleep sound may be different. For a specific example, when first sleeping sound information is acquired through a first user terminal and second sleeping sound information is acquired through a second user terminal in response to the same sleeping sound, the connection between the microphone modules provided in both devices is Due to the difference, the first sleep sound information and the second sleep sound information may not be completely identical. As the microphone module used by each device is different, sleep sound information may include various types of noise.
즉, 사용자가 개인적으로 획득하여 분석하고자 하는 수면 음향 정보는 사용자 개개인 별로, 상이한 침실 환경과 상이한 음향 측정 기기를 통해 획득되는 것임에 따라 다양한 노이즈를 포함하고 있으므로, 수면 분석 모델을 활용한 일관적인 분석이 어려울 수 있다.In other words, the sleep sound information that the user wishes to personally obtain and analyze contains various noises as it is acquired through different bedroom environments and different sound measurement devices for each user, so consistent analysis using the sleep analysis model This can be difficult.
예컨대, 다양한 노이즈가 없는 환경에서 획득된 데이터들을 학습 데이터로 활용하여 신경망을 학습시켜 수면 분석 모델이 생성될 수 있다. 구체적인 예를 들어, 노이즈가 존재하지 않거나 또는 미리 정해진 노이즈만을 포함하며, 사전 결정된 성능의 음향 측정 기기가 구비된 공간(예컨대, 병원)에서 사용자가 수면을 취하고, 수면 동안 수면 음향 정보를 획득할 수 있는데, 이러한 방식으로 획득된 수면 음향 정보들은 전문 의료인(예컨대, 수면 기사)이 시계열적인 수면 음향의 각 시점에 대응하여 정답(즉, 수면 단계)이 라벨링될 수 있으며, 수면 음향 및 라벨링된 데이터를 통해 신경망에 대한 학습이 수행되어 수면 분석 모델이 생성될 수 있다.For example, a sleep analysis model can be created by training a neural network using data acquired in various noise-free environments as learning data. As a specific example, a user may sleep in a space (e.g., a hospital) where there is no noise or contains only predetermined noise and is equipped with an acoustic measurement device of predetermined performance, and acquire sleep acoustic information during sleep. The sleep sound information acquired in this way can be labeled with the correct answer (i.e., sleep stage) in response to each time point of the time-series sleep sound by a professional medical professional (e.g., sleep technician), and the sleep sound and labeled data can be Through this, learning on the neural network can be performed and a sleep analysis model can be created.
다만, 상기와 같은 방식으로 생성된 수면 분석 모델은, 노이즈가 거의 존재하지 않거나, 미리 정의된 노이즈만을 포함하는 수면 환경, 그리고, 고성능의 마이크 모듈을 통해 획득된 수면 음향 정보들과 수면 음향 정보들에 대응하여 정답이 라벨링된 학습 데이터들을 통해 학습된 것이므로, 다양한 노이즈 환경에서 획득된 음향 데이터에 대해서도 견고한 성능을 기대하기 어렵다는 문제점을 가진다. 또한, 다양한 환경에서 강건성을 가질 수 있다고 단정하기 어려우므로, 수면 분석 모델의 일반화가 용이하지 않을 우려가 있다.However, the sleep analysis model generated in the above manner is a sleep environment with little or no noise or contains only predefined noise, and sleep sound information and sleep sound information acquired through a high-performance microphone module. Since the correct answer is learned through labeled learning data, there is a problem in that it is difficult to expect robust performance even for acoustic data acquired in various noise environments. In addition, since it is difficult to determine that it can be robust in various environments, there is a concern that generalization of the sleep analysis model will not be easy.
특히, 본원 발명은 사용자의 실생활에서 용이하게 수면 상태 정보를 제공하기 위한 것임에 따라, 각기 다른 개별 사용자의 침실 환경과 음향 측정 기기에 따라 다양한 노이즈를 포함하는 수면 음향 정보에도 정확한 분석이 가능해야 한다.In particular, since the present invention is intended to easily provide sleep state information in the user's real life, accurate analysis should be possible even for sleep sound information containing various noises depending on the bedroom environment and sound measurement device of each individual user. .
본 발명의 일 실시예에 따르면, 본 발명의 일 실시예에 따른 전자장치는 상이한 도메인에 관련한 수면 음향 정보들을 기반으로 신경망에 대한 적응적 학습을 통해 다양한 배경 노이즈를 포함하는 수면 음향 정보들에도 견고한 성능을 가진 수면 분석 모델을 생성할 수 있다. 상이한 도메인에 관련한 수면 음향 정보들이란, 서로 상이한 환경에서 상이한 방법으로 획득된 수면 음향 정보들을 의미할 수 있다. According to an embodiment of the present invention, an electronic device according to an embodiment of the present invention is robust to sleep sound information including various background noises through adaptive learning of a neural network based on sleep sound information related to different domains. A sleep analysis model with performance can be created. Sleep sound information related to different domains may mean sleep sound information acquired by different methods in different environments.
본 발명의 일 실시예에 따른 전자장치가 상이한 도메인에 관련한 수면 음향 정보들을 기반으로 신경망에 대한 적응적 학습을 통해 다양한 배경 노이즈를 포함하는 수면 음향 정보들에도 견고한 성능을 가진 수면 분석 모델을 생성하는 구체적인 방법 및 수면 분석 모델을 통해 수면 상태 정보를 제공하는 구체적인 방법은, 자세하게 후술하도록 한다. 또한, 본 발명의 일 실시예에 따르면 노이즈를 제거 또는 완화(reduction)하는 전처리를 수행하거나, 노이즈가 부가된 음향 정보에 기초하여 수면 상태 정보를 획득하는 것이 가능한데, 이러한 방법들 역시 자세히 후술하도록 한다.An electronic device according to an embodiment of the present invention generates a sleep analysis model with robust performance even in sleep sound information including various background noises through adaptive learning of a neural network based on sleep sound information related to different domains. The specific method of providing sleep state information through a specific method and sleep analysis model will be described in detail later. In addition, according to an embodiment of the present invention, it is possible to perform preprocessing to remove or reduce noise, or to obtain sleep state information based on acoustic information to which noise has been added. These methods will also be described in detail later. .
한편, 본 발명의 일 실시예에 따르면 프로세서(130)는 사용자 단말(10)로부터 획득되는 음향 정보, Actigraphy, 생체정보에 기초하여 수면상태 정보를 획득할 수 있다. 구체적으로, 프로세서(130)는 음향 정보에 기 설정된 패턴의 정보가 감지되는 특이점을 식별할 수 있다. 여기서 기 설정된 패턴의 정보는, 수면에 관련한 호흡 및 움직임 패턴에 관련한 것일 수 있다. Meanwhile, according to an embodiment of the present invention, the processor 130 may obtain sleep state information based on acoustic information, actigraphy, and biometric information obtained from the user terminal 10. Specifically, the processor 130 may identify a singularity where information of a preset pattern is sensed in the acoustic information. Here, the preset pattern information may be related to breathing and movement patterns related to sleep.
예컨대, 깨어있는 상태(wake)에서는 모든 신경계가 활성화되어 있기 때문에 호흡 패턴이 불규칙적이고 몸의 움직임이 많을 수 있다. 또한, 목 근육의 이완이 이루어지지 않기 때문에 호흡 소리가 매우 적을 수 있다. 반면, 사용자가 수면을 취하는 경우에는, 자율신경계가 안정화되어 호흡이 규칙적으로 변화하고 몸의 움직임 또한 적어질 수 있으며, 호흡음도 커질 수 있다. 즉, 프로세서(130)는 음향 정보에서, 규칙적인 호흡, 적은 몸의 움직임 또는 적은 호흡음 등에 관련한 기 설정된 패턴의 음향 정보가 감지되는 시점을 특이점으로 식별할 수 있다. 또한, 프로세서(130)는 식별된 특이점을 기준으로 획득되는 음향 정보에 기초하여 수면 음향 정보를 획득할 수 있다. 프로세서(130)는 시계열적으로 획득되는 음향 정보에서 사용자의 수면 시점에 관련한 특이점을 식별하고, 해당 특이점을 기준으로 수면 음향 정보를 획득할 수 있다.For example, in the awake state, all nervous systems are activated, so breathing patterns may be irregular and body movements may be frequent. Additionally, breathing sounds may be very low because the neck muscles are not relaxed. On the other hand, when the user sleeps, the autonomic nervous system stabilizes, breathing changes regularly, body movements may decrease, and breathing sounds may become louder. That is, the processor 130 may identify the point in time at which sound information of a preset pattern related to regular breathing, small body movement, or small breathing sounds, etc., is detected as a singular point in the sound information. Additionally, the processor 130 may obtain sleep sound information based on sound information obtained based on the identified singularity. The processor 130 may identify a singularity related to the user's sleep time from the sound information acquired in time series and obtain sleep sound information based on the singularity.
도 4는 본 발명에 따른 수면 분석 방법에 있어서 수면 음향 정보를 획득하는 과정을 설명하기 위한 도면이다. 도 4를 참조하면, 프로세서(130)는 음향 정보(E)로부터 사용자의 수면에 관련한 특이점(P)을 식별할 수 있다. 프로세서(130)는 식별된 특이점(P)을 기준으로 해당 특이점(P) 이후에 획득되는 음향 정보들에 기초하여 수면 음향 정보(SS)를 획득할 수 있다. 도 4에서의 음향에 관련한 파형 및 특이점은 본 발명의 이해를 위한 예시에 불과할 뿐, 본 발명은 이에 제한되지 않는다.Figure 4 is a diagram for explaining the process of acquiring sleep sound information in the sleep analysis method according to the present invention. Referring to FIG. 4, the processor 130 may identify a singularity (P) related to the user's sleep from the acoustic information (E). The processor 130 may acquire sleep sound information (SS) based on the identified singular point (P) and sound information acquired after the singular point (P). The waveforms and singularities related to sound in FIG. 4 are merely examples for understanding the present invention, and the present invention is not limited thereto.
즉, 프로세서(130)는 음향 정보로부터 사용자의 수면에 관련한 특이점(P)을 식별함으로써, 특이점(P)에 기초하여 방대한 양의 환경 센싱 정보(즉, 음향 정보)로부터 수면 음향 정보(SS)만을 추출하여 획득할 수 있다. 이는, 사용자가 자신의 수면 시간을 기록하는 과정을 자동화하도록 하여 편의성을 제공함과 동시에, 획득되는 수면 음향 정보의 정확성 향상에 기여할 수 있다.In other words, the processor 130 identifies the singularity (P) related to the user's sleep from the acoustic information, and thus extracts only the sleep acoustic information (SS) from the vast amount of environmental sensing information (i.e., acoustic information) based on the singularity (P). It can be obtained by extracting it. This provides convenience by allowing users to automate the process of recording their sleep time, and can also contribute to improving the accuracy of acquired sleep sound information.
또한, 실시예에서, 프로세서(130)는 음향 정보(E)로부터 식별된 특이점(P)을 기준으로 사용자가 수면 전인지 또는 수면 중인지 여부에 관련한 수면 상태 정보를 획득할 수 있다. 구체적으로, 프로세서(130)는 특이점(P)이 식별되지 않는 경우, 사용자가 수면 전인 것으로 판단할 수 있으며, 특이점(P)이 식별되는 경우, 해당 특이점(P) 이후 사용자가 수면 중이라고 판단할 수 있다. 또한, 프로세서(130)는 특이점(P)이 식별된 이후, 기설정된 패턴이 관측되지 않는 시점(예컨대, 기상 시점)을 식별하고, 해당 시점이 식별된 경우, 사용자가 수면 후, 즉 기상하였다고 판단할 수 있다.Additionally, in an embodiment, the processor 130 may obtain sleep state information related to whether the user is before sleep or in sleep based on the singular point (P) identified from the sound information (E). Specifically, if the singular point (P) is not identified, the processor 130 may determine that the user is before sleeping, and if the singular point (P) is identified, the processor 130 may determine that the user is sleeping after the singular point (P). there is. In addition, after the outlier P is identified, the processor 130 identifies a time point (e.g., waking up time) at which the preset pattern is not observed, and when the corresponding time point is identified, it determines that the user has woken up after sleeping. can do.
즉, 프로세서(130)는 음향 정보(E)에서 특이점(P)이 식별되는지 여부 및 특이점이 식별된 이후, 수면이 지속적으로 감지되는지 여부에 기초하여 사용자가 수면 전인지, 중인지, 또는 후인지 여부에 관련한 수면 상태 정보를 획득할 수 있다.That is, the processor 130 determines whether the user is before, during, or after sleep based on whether a singular point (P) is identified in the acoustic information (E) and whether sleep is continuously detected after the singular point is identified. Sleep state information related to can be obtained.
한편, 프로세서(130)는 음향 정보(E)가 아닌, Actigraphy나 생체정보에 기초하여 수면 상태 정보를 획득할 수 있다. 사용자의 움직임정보는 신체에 접촉된 센서부를 통해 획득하는 것이 유리할 수 있다. 본 발명에서는 1차 수면 분석시 Actigraphy나 생체정보를 이용하여 사용자의 수면 상태 정보를 사전에 파악하기 때문에, 수면 상태에 대한 분석 신뢰성을 더욱 향상시킬 수 있다.Meanwhile, the processor 130 may obtain sleep state information based on actigraphy or biometric information rather than acoustic information (E). It may be advantageous to obtain the user's movement information through a sensor unit in contact with the body. In the present invention, since the user's sleep state information is identified in advance using actigraphy or biometric information during the first sleep analysis, the reliability of the sleep state analysis can be further improved.
한편, 상술한 수면과 관련한 패턴의 정보 또는 특이점에 기초하여 수면 상태 정보를 획득하는 기술사상은 단순한 예시일 뿐이고, 본 발명은 기 설정된 패턴의 정보 또는 특이점에 기초하여 추론을 수행하는 것에 한정되지 않으며, 수면 상태 정보를 획득하기 위하여 생성된 인공지능 모델을 통해 추론을 수행하는 것을 포함할 수 있다.Meanwhile, the technical idea of obtaining sleep state information based on the above-described sleep-related pattern information or singularity is merely an example, and the present invention is not limited to performing inference based on preset pattern information or singularity. , It may include performing inference through an artificial intelligence model created to obtain sleep state information.
다양한 환경에서 획득한 수면 음향 정보 Sleep acoustic information acquired in various environments
본 발명의 일 실시에 따르면, 복수의 수면 음향 정보는, 서로 상이한 도메인에 관련한 수면 음향 정보들을 포함할 수 있다. 구체적으로, 복수의 수면 음향 정보는, 복수의 소스 데이터 및 복수의 타겟 데이터를 포함하여 구성될 수 있다. 복수의 소스 데이터 및 복수의 타겟 데이터는 서로 상이한 도메인에 관련한 수면 음향에 관한 정보로, 서로 상이한 수면 환경에서 획득된 것을 특징으로 할 수 있다. According to one embodiment of the present invention, the plurality of sleep sound information may include sleep sound information related to different domains. Specifically, a plurality of sleep sound information may be configured to include a plurality of source data and a plurality of target data. The plurality of source data and the plurality of target data are information about sleep sounds related to different domains, and may be characterized as being acquired in different sleep environments.
일 예로, 복수의 소스 데이터는 전문적인 수면 측정 환경(예컨대, 수면 다원 검사)에서 획득된 음향 데이터들로 제1도메인에 관련할 수 있으며, 복수의 타겟 데이터는 개별 사용자들의 일상적인 수면 환경에서 획득된 음향 데이터들로 제2도메인에 관련한 것일 수 있다. 예컨대, 복수의 타겟 데이터는 컴퓨팅 장치(100)가 수면 분석 서비스를 제공함에 따라 다수의 사용자로부터 획득되는 다량의 데이터(즉, 수면 음향 정보)일 수 있다. 다른 예를 들어, 복수의 타겟 데이터는 사용자 단말(10)의 마이크 모듈을 통해 획득되는 수면 음향 정보일 수 있다.As an example, the plurality of source data may be acoustic data acquired in a professional sleep measurement environment (e.g., polysomnography) and may be related to the first domain, and the plurality of target data may be acquired in the daily sleep environment of individual users. The audio data may be related to the second domain. For example, the plurality of target data may be a large amount of data (i.e., sleep sound information) acquired from multiple users as the computing device 100 provides a sleep analysis service. For another example, the plurality of target data may be sleep sound information acquired through the microphone module of the user terminal 10.
본 발명의 실시예에서, 복수의 소스 데이터는, 노이즈가 존재하지 않거나 또는 미리 정해진 노이즈만을 포함하며, 사전 결정된 성능의 음향 측정 기기가 구비된 공간(예컨대, 병원)에서 획득되는 수면 음향 정보들일 수 있다. 또한, 본 발명의 일 실시예에서, 복수의 소스 데이터는 전문 의료인(예컨대, 수면 기사)에 의해 복수의 수면 상태에 관한 정보가 라벨링된 데이터이며, 미리 정의된 노이즈를 포함하는 데이터일 수 있다.In an embodiment of the present invention, the plurality of source data may be sleep sound information obtained in a space (e.g., hospital) where noise is absent or contains only predetermined noise and is equipped with an acoustic measurement device of predetermined performance. there is. Additionally, in one embodiment of the present invention, the plurality of source data is data labeled with information about a plurality of sleep states by a medical professional (eg, a sleep technician), and may be data containing predefined noise.
또한, 본 발명의 실시예에서, 복수의 타겟 데이터는, 개개인의 침실 환경에 따라 다양한 형태의 노이즈가 포함되거나 또는 서로 상이한 마이크 모듈을 구비하는 복수의 사용자 단말들 각각을 통해 획득되는 수면 음향 정보들일 수 있다. 또한, 본 발명의 일 실시예에서, 복수의 타겟 데이터는 복수의 수면 상태에 관한 정보가 라벨링되지 않은 데이터이며, 정의되지 않은 노이즈를 포함하는 데이터일 수 있다. In addition, in an embodiment of the present invention, the plurality of target data may include various types of noise depending on each individual's bedroom environment or may be sleep sound information acquired through each of a plurality of user terminals equipped with different microphone modules. You can. Additionally, in one embodiment of the present invention, the plurality of target data may be data in which information about the plurality of sleep states is not labeled and may be data containing undefined noise.
즉, 복수의 소스 데이터는, 전문 기관(예컨대, 병원)에서 노이즈가 최소화된 상태에서 설정된 장비를 통해 획득된 복수의 수면 음향 데이터에 관련한 데이터일 수 있으며, 복수의 타겟 데이터는, 개인 사용자들 각각으로부터 개별적으로 획득된 수면 음향 데이터에 관련한 데이터를 포함할 수 있다. 복수의 타겟 데이터는, 각 사용자의 침실 환경에 따라 상이한 방법으로 획득됨에 따라, 다양한 노이즈를 포함하고 있으며, 수면 상태(예컨대, 수면 단계)에 관한 정답이 라벨링되지 않은 음향 데이터들에 관련한 것일 수 있다.That is, the plurality of source data may be data related to a plurality of sleep sound data acquired through equipment set in a professional institution (e.g., a hospital) with minimal noise, and the plurality of target data may be data related to each individual user. It may include data related to sleep sound data individually acquired from. As the plurality of target data is acquired in different ways depending on each user's bedroom environment, it contains various noises, and the correct answer regarding sleep state (e.g., sleep stage) may be related to unlabeled acoustic data. .
복수의 타겟 데이터의 경우, 각 사용자의 침실 환경에 따라 다양한 노이즈를 포함할 수 있다. 예를 들어, 동일한 수면 음향이라도, 개별 사용자의 침실의 크기나 구조 그리고, 사용자와 음향 측정 기기 간의 거리 차이에 따라 획득되는 수면 음향 정보가 상이할 수 있다. 즉, 수면을 취하는 공간의 크기 및 형태와 사용자의 수면 시, 음향 측정 기기의 위치에 따라 상이한 배경 노이즈를 포함하는 수면 음향 정보들(즉, 복수의 타겟 데이터)이 획득될 수 있다.In the case of multiple target data, various noises may be included depending on the bedroom environment of each user. For example, even if the sleep sound is the same, the sleep sound information obtained may be different depending on the size or structure of the individual user's bedroom and the difference in distance between the user and the sound measuring device. That is, sleep sound information (i.e., a plurality of target data) including different background noise can be obtained depending on the size and shape of the sleeping space and the location of the sound measurement device when the user sleeps.
또한, 예를 들어, 복수의 타겟 데이터는 사용자가 수면을 취하는 공간에서 발생되는 소리에 관련한 다양한 노이즈를 포함할 수 있다. 구체적인 예를 들어, 사용자가 수면을 취하는 공간에는, 에어컨, 선풍기 등 전자제품의 가동 소리나 반려 동물의 소리 등 다양한 노이즈가 포함될 수 있다.Additionally, for example, the plurality of target data may include various noises related to sounds generated in a space where the user sleeps. For example, the space where the user sleeps may contain various noises, such as the sound of electronic appliances such as air conditioners and fans operating, or the sounds of pets.
다른 예를 들어, 복수의 타겟 데이터는, 수면 음향 정보 획득에 활용되는 음향 측정 기기의 기종에 따라 다양한 노이즈가 포함될 수 있다. 구체적인 예를 들어, 동일한 수면 음향에 대응하여 제1사용자 단말을 통해 제1수면 음향 정보를 획득하고, 제2사용자 단말을 통해 제2수면 음향 정보를 획득하는 경우, 양 기기에 구비된 마이크 모듈 간 스펙의 차이로 인해, 제1수면 음향 정보와 제2수면 음향 정보가 완벽히 동일하지 않을 수 있다. 기기 마다 활용하는 마이크 모듈이 상이함에 따라 수면 음향 정보에는 다양한 형태의 노이즈가 포함될 수 있다. For another example, the plurality of target data may contain various noises depending on the type of sound measurement device used to obtain sleep sound information. For a specific example, when first sleeping sound information is acquired through a first user terminal and second sleeping sound information is acquired through a second user terminal in response to the same sleeping sound, the microphone modules provided in both devices Due to differences in specifications, the first sleep sound information and the second sleep sound information may not be completely identical. As the microphone module used for each device is different, sleep sound information may include various types of noise.
즉, 전술한 바와 같이, 복수의 타겟 데이터는, 복수의 사용자 각각의 개별적인 취침 환경에서 획득되는 음향 데이터들로, 보다 다양한 노이즈들을 포함하고 있을 수 있다.That is, as described above, the plurality of target data is acoustic data acquired in the individual sleeping environment of each of the plurality of users, and may include more diverse noises.
실시예에 따르면, 복수의 타겟 데이터 각각은 사용자가 소지한 사용자 단말(10)을 통해 획득될 수 있다. 예컨대, 사용자 단말(10)에 구비된 마이크 모듈을 통해 사용자의 수면 환경에 관련한 수면 음향 정보가 획득될 수 있다.According to the embodiment, each of the plurality of target data may be acquired through the user terminal 10 carried by the user. For example, sleep sound information related to the user's sleep environment may be obtained through a microphone module provided in the user terminal 10.
일반적으로, 사용자가 소지한 사용자 단말(10)에 구비된 마이크 모듈은, 비교적 작은 크기의 사용자 단말(10)에 구비되어야 하므로 MEMS(Micro-Electro Mechanical Systems)로 구성될 수 있다. 이러한 마이크 모듈은 매우 소형으로 제작이 가능하나, 콘덴서 마이크(Condenser Microphone)나 다이나믹 마이크(dynamic microphone)에 비해 낮은 신호 대 잡음비(SNR)를 가질 수 있다. 신호 대 잡음비가 낮다는 것은, 식별하고자 하는 음향 대비 식별하지 않고자 하는 음향인 잡음의 비율이 높은 것으로 음향의 식별이 용이하지 않음(즉, 불분명함)을 의미할 수 있다. 따라서, 노이즈를 제거하거나 완화하는 것이 필요한데, 이하 자세히 설명한다.In general, the microphone module provided in the user terminal 10 carried by the user may be configured as a MEMS (Micro-Electro Mechanical System) since it must be provided in the user terminal 10 of a relatively small size. These microphone modules can be manufactured very small, but can have a lower signal-to-noise ratio (SNR) than condenser microphones or dynamic microphones. A low signal-to-noise ratio may mean that the ratio of noise, which is a sound that is not to be identified, to the sound that is to be identified is high, making it difficult to identify the sound (i.e., unclear). Therefore, it is necessary to remove or alleviate noise, which will be described in detail below.
노이즈 리덕션 전처리Noise reduction preprocessing
도 14는 본 발명의 일실시예에 따른 노이즈 리덕션을 설명하기 위한 도면이다.Figure 14 is a diagram for explaining noise reduction according to an embodiment of the present invention.
도 14 또는 도 5에 도시된 바와 같이, 사용자로부터 추출된 음향 정보, 혹은 이로부터 추출된 수면 음향 정보(로우 데이터)는 노이즈 리덕션의 전처리 과정을 거친다. 노이즈 리덕션 과정에서는 로우 데이터에 포함된 노이즈(예: 화이트노이즈)가 제거된다. 노이즈 리덕션 과정은 백그라운드 노이즈(background noise)를 제거하기 위한 스펙트럴 게이팅(spectral gating), 스펙트럴 서브스트랙션(spectral substraction) 등의 알고리즘을 이용하여 이루어질 수 있다. 나아가, 본 발명에서는 딥러닝 기반의 노이즈 리덕션 알고리즘을 이용하여 노이즈 제거 과정을 수행할 수 있다. 딥러닝 기반의 노이즈 리덕션 알고리즘은 사용자의 숨소리, 호흡소리에 특화된, 다시 말해, 사용자의 숨소리나 호흡소리를 통해 학습된(learned) 노이즈 리덕션 알고리즘을 이용할 수 있다. As shown in Figure 14 or Figure 5, sound information extracted from the user or sleep sound information (raw data) extracted therefrom undergoes a pre-processing process of noise reduction. In the noise reduction process, noise (e.g. white noise) included in raw data is removed. The noise reduction process can be accomplished using algorithms such as spectral gating and spectral subtraction to remove background noise. Furthermore, in the present invention, a noise removal process can be performed using a deep learning-based noise reduction algorithm. The deep learning-based noise reduction algorithm can use a noise reduction algorithm specialized for the user's breathing or breathing sounds, that is, a noise reduction algorithm learned through the user's breathing or breathing sounds.
전처리는 수면 상태 정보의 학습과정에서 수행될 수도 있고, 추론과정에서 수행될 수도 있다. 이하 노이즈 리덕션의 전처리 과정의 예시에 대하여 설명한다.Preprocessing may be performed during the learning process of sleep state information, or may be performed during the inference process. Below, an example of the preprocessing process for noise reduction will be described.
스펙트럴 노이즈 게이팅Spectral noise gating
스펙트럴 게이팅(spectral gating) 또는 스펙트럴 노이즈 게이팅(spectral noise gating)은 음향 정보에 대한 전처리 방법이다. 획득한 음향 정보 전체에 대하여 노이즈 리덕션을 수행할 수 있으나, 일정한 시간 간격으로(예컨대, 5분 등) 스플릿(split)을 수행한 뒤, 스플릿된 음향 정보에 대하여 각각 노이즈 리덕션을 수행할 수도 있다. 일정한 시간 간격으로 스플릿이 수행된 음향 정보에 대하여 노이즈 리덕션을 수행하기 위해서, 우선 각각의 프레임에 대하여 스펙트럼을 산출하는 방법을 포함할 수 있다.Spectral gating or spectral noise gating is a preprocessing method for acoustic information. Noise reduction can be performed on all of the acquired acoustic information, but splitting can be performed at regular time intervals (eg, 5 minutes, etc.), and then noise reduction can be performed on each of the split acoustic information. In order to perform noise reduction on acoustic information split at regular time intervals, a method of calculating a spectrum for each frame may first be included.
이에 산출된 각각의 스펙트럼 프레임 중에서 에너지가 가장 작은 진동수 스펙트럼(frequency spectrum)을 갖는 프레임을 특정할 수 있다.Among each spectrum frame calculated as a result, the frame with the frequency spectrum with the lowest energy can be specified.
각각의 스펙트럼 프레임 중에서 에너지가 가장 작은 진동수 스펙트럼을 갖는 프레임을 스태틱 노이즈(static noise)로 가정하고, 스태틱 노이즈로 가정한 진동수 스펙트럼 프레임이 갖는 주파수를 스펙트럼 프레임에서 감쇄하는 방법을 포함할 수 있다.A method may be included in which the frame having the frequency spectrum with the lowest energy among each spectrum frame is assumed to be static noise, and the frequency of the frequency spectrum frame assumed to be static noise is attenuated from the spectrum frame.
한편, 본 발명의 일 실시예에 따라, 복수의 데이터들에 대한 노이즈 리덕션 전처리를 수행하는 경우, 수면 음향 정보를 하나 이상의 음향 프레임으로 분류할 수 있다. 여기서, 하나 이상의 음향 프레임 각각의 에너지 레벨에 기초하여 최소 에너지 레벨을 갖는 최소 음향 프레임을 식별할 수 있다. 이에 따라, 최소 음향 프레임에 기초하여 음향 데이터에 대한 노이즈 제거 또는 리덕션을 수행할 수 있다.Meanwhile, according to an embodiment of the present invention, when noise reduction preprocessing is performed on a plurality of data, sleep sound information can be classified into one or more sound frames. Here, the minimum sound frame with the minimum energy level may be identified based on the energy level of each of the one or more sound frames. Accordingly, noise removal or reduction can be performed on the acoustic data based on the minimum acoustic frame.
구체적인 예를 들어, 프로세서(130)는 30초의 수면 음향 정보(예컨대, 타겟 데이터)를 매우 짧은 40ms 크기의 하나 이상의 음향 프레임으로 분류할 수 있다. 또한, 프로세서(130)는 40ms 크기에 관련한 복수의 음향 프레임 각각의 크기를 비교하여 최소 에너지 레벨을 갖는 최소 음향 프레임을 식별할 수 있다.As a specific example, the processor 130 may classify 30 seconds of sleep sound information (eg, target data) into one or more very short sound frames of 40 ms in size. Additionally, the processor 130 may identify the minimum sound frame with the minimum energy level by comparing the sizes of each of the plurality of sound frames with respect to the size of 40 ms.
프로세서(130)는 전체 수면 음향 정보(즉, 30초의 수면 음향 정보)에서 식별된 최소 음향 프레임 성분을 제거할 수 있다. 예컨대, 도 14를 참조하면, 수면 음향 정보에서 최소 음향 프레임 성분이 제거됨에 따라, 전처리된 수면 음향 정보가 획득될 수 있다. 즉, 프로세서(130)는 최소 음향 프레임을 백그라운드 노이즈 프레임으로써 식별하여 원본 신호(즉, 수면 음향 정보)에서 노이즈 제거 또는 리덕션을 수행할 수 있다. 상술한 시간 간격에 대한 구체적인 수치 기재는 단순한 예시일 뿐, 이에 한정되는 것은 아니다.The processor 130 may remove the identified minimum sound frame component from the entire sleep sound information (i.e., 30 seconds of sleep sound information). For example, referring to FIG. 14, as the minimum sound frame component is removed from the sleep sound information, preprocessed sleep sound information can be obtained. That is, the processor 130 may identify the minimum sound frame as the background noise frame and perform noise removal or reduction from the original signal (i.e., sleep sound information). The specific numerical description of the above-mentioned time interval is merely an example and is not limited thereto.
딥러닝 기반 노이즈 리덕션Deep learning-based noise reduction
한편, 본 발명의 일 실시예에 따른 노이즈 리덕션 전처리를 수행하기 위하여, 주파수 도메인이 아닌 시간 도메인상의 로우(raw) 음향 정보에 대하여 수행되는 딥러닝 기반 노이즈 리덕션 방법을 이용할 수도 있다. 딥러닝 기반 노이즈 리덕션을 위하여, 수면 분석 모델의 입력으로 하기 위하여 필요한 정보인 수면 음향 정보 등의 정보는 유지하고, 그 이외의 음향은 감쇄하는 방식이 이용될 수 있다. Meanwhile, in order to perform noise reduction preprocessing according to an embodiment of the present invention, a deep learning-based noise reduction method performed on raw acoustic information in the time domain rather than the frequency domain may be used. For deep learning-based noise reduction, a method may be used in which information such as sleep sound information, which is necessary information to be used as input to a sleep analysis model, is maintained, and other sounds are attenuated.
PSG 검사 결과를 통해 획득한 음향 정보뿐만 아니라, 스마트폰 등 사용자 단말에 내장된 마이크로폰을 통해 획득한 음향 정보에 대하여도 노이즈 리덕션을 수행할 수도 있다.Noise reduction can be performed not only on sound information obtained through PSG test results, but also on sound information acquired through a microphone built into a user terminal such as a smartphone.
로우(raw)음향 정보를 주파수 도메인상의 정보로 변환Convert raw acoustic information to information in the frequency domain
도 5는 본 발명에 따른 수면 분석 방법에 있어서 사용자로부터 추출된 수면 음향 정보에 대한 멜 스펙트로그램 변환을 이용한 프라이버시 보호 방법을 설명하기 위한 개념도이다.Figure 5 is a conceptual diagram illustrating a privacy protection method using Mel spectrogram transformation for sleep sound information extracted from a user in the sleep analysis method according to the present invention.
본 발명에 따른 수면 분석 방법은 음향 정보의 심층학습을 통해 추론모델을 생성하며, 추론모델은 사용자의 수면 상태 및 수면단계를 추출한다. 다시 간략히 설명하면, 수면 음향 정보 등을 포함하는 환경 센싱 정보(음향 정보)는 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보 또는, 주파수 도메인상의 정보로 변환되며, 변환된 정보에 기초하여 추론 모델이 생성될 수 있다.The sleep analysis method according to the present invention creates an inference model through deep learning of acoustic information, and the inference model extracts the user's sleep state and sleep stage. To briefly explain again, environmental sensing information (sound information), including sleep sound information, is converted into information including changes in the frequency components of the sound information along the time axis, or information in the frequency domain, and is based on the converted information. Thus, an inference model can be created.
또는 본 발명의 일 실시예에 따르면, 수면 음향 정보 등을 포함하는 환경 센싱 정보는 주파수 도메인상의 정보 또는 스펙트로그램으로 변환되며, 변환된 주파수 도메인상의 정보 또는 스펙트로그램에 기초하여 추론 모델이 생성된다. 여기서 주파수 도메인상의 정보란, 로우(raw) 수면 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보일 수 있다. Alternatively, according to one embodiment of the present invention, environmental sensing information including sleep sound information is converted into frequency domain information or a spectrogram, and an inference model is created based on the converted frequency domain information or spectrogram. Here, the information in the frequency domain may be information including changes along the time axis in the frequency components of raw sleep sound information.
음향 정보를 이용하는 수면 분석에 있어서 사용자의 프라이버시 보호를 간과할 수 없고, 본 발명은 사용자의 프라이버시 보호를 위하여 음향 정보를 전처리하는 과정을 이용한다. Protection of user privacy cannot be overlooked in sleep analysis using acoustic information, and the present invention uses a process of preprocessing acoustic information to protect user privacy.
이때, 로우 음향 정보에서 페이즈를 제외한 앰플리튜드만에 기초하여 주파수 도메인상의 정보 또는 스펙트로그램으로 변환하는 방식을 이용할 수 있고, 이러한 방식을 통하여 프라이버시를 보호할 뿐만 아니라, 데이터 용량을 낮추어 처리 속도를 향상시킬 수 있다. 다만, 다른 실시예에서는 페이즈와 앰플리튜드 모두를 이용하여 스펙트로그램을 생성하는 것도 가능하다.At this time, a method of converting raw acoustic information into information or a spectrogram in the frequency domain based only on the amplitude excluding the phase can be used. Through this method, privacy is not only protected, but the processing speed is improved by lowering the data capacity. You can do it. However, in another embodiment, it is also possible to generate a spectrogram using both phase and amplitude.
본 발명의 일실시예는 수면 음향 정보(SS)에 기초하여 변환된 스펙트로그램(SP)을 이용하여 수면 분석 모델을 생성할 수 있다.One embodiment of the present invention can generate a sleep analysis model using a spectrogram (SP) converted based on sleep sound information (SS).
오디오 데이터로 표현되는 수면 음향 정보를 그대로 이용하게 되면 정보량이 매우 많기 때문에 연산량, 연산시간이 큰 폭으로 증가하게 되며, 원치 않는 신호까지 포함되어 있기 때문에 연산 정밀도가 저하될 뿐만 아니라, 사용자의 모든 오디오 신호가 서버로 전송되는 경우 프라이버시 침해의 우려가 있다. If the sleeping sound information expressed as audio data is used as is, the amount of information is very large, so the amount of calculation and calculation time will increase significantly, and not only will the calculation precision be lowered because it includes unwanted signals, but also all of the user's audio. If the signal is transmitted to the server, there is a risk of privacy infringement.
따라서 본 발명의 일 실시예는 상술한 방법으로 수면 음향 정보의 노이즈를 제거한 뒤, 이를 주파수 도메인상의 정보 또는 스펙트로그램(Spectrogram)으로 변환하고, 스펙트로그램을 학습시켜 수면 분석 모델을 생성하기 때문에, 연산량, 연산 시간을 줄일 수 있고, 개인의 프라이버시 보호까지 도모할 수 있게 된다.Therefore, an embodiment of the present invention removes noise from sleep sound information using the above-described method, converts it into information or a spectrogram in the frequency domain, and learns the spectrogram to create a sleep analysis model, so the amount of computation is reduced. , computation time can be reduced and individual privacy can be protected.
예를 들어, 마이크로폰 등을 통해 획득한 음향 정보에는 수면단계분석에 필요한 수면 음향 정보(예컨대, 사용자의 숨소리 등)이 다른 노이즈보다 상대적으로 작을 수 있으나, 스펙트로그램으로 변환하면 주변의 다른 노이즈에 비하여 상대적으로 수면 음향 정보의 식별이 우수해질 수 있다.For example, in acoustic information acquired through a microphone, etc., the sleep acoustic information (e.g., the user's breathing sound, etc.) required for sleep stage analysis may be relatively smaller than other noise, but when converted to a spectrogram, it can be compared to other noise around it. Identification of sleep acoustic information can be relatively excellent.
한편, 본 발명의 실시예에 따른 스펙트로그램으로 변환을 하는 경우, 주파수 도메인의 해상도를 낮게 변환함으로써 개인정보를 식별하지 못하게 되는데, 일정 개수(예컨대, 20개) 이하의 주파수 해상도(frequency bins)로 구성한 경우 복원 신호로부터 개인정보를 식별할 수 없게 된다.On the other hand, when converting to a spectrogram according to an embodiment of the present invention, personal information cannot be identified by converting the resolution of the frequency domain to low, with frequency resolution (frequency bins) below a certain number (e.g., 20). If configured, personal information cannot be identified from the recovery signal.
또한, 본 발명의 실시예에 따르면 획득한 음향 정보를 실시간으로 스펙트로그램으로 변환하는 방법을 포함할 수 있다.Additionally, according to an embodiment of the present invention, a method may be included to convert acquired acoustic information into a spectrogram in real time.
또한, 스펙트로그램의 주파수 해상도의 압축을 서버나 클라우드가 아닌 유저의 스마트폰에서 수행할 수 있게 됨에 따라 개인정보의 유출을 방지할 수도 있다.In addition, as compression of the frequency resolution of the spectrogram can be performed on the user's smartphone rather than on a server or cloud, leakage of personal information can be prevented.
이때, 사운드 데이터의 비식별화는 자연어 및 호흡음에 대하여 이루어질 수 있고, 이는 각각 자연어 변환 스펙트로그램, 호흡음 변환 스펙트로그램 등으로 변환될 수 있다. 본 발명에 따른 수면 분석에서는 분석모델에 필요한 정보만을 활용하여 연산속도를 향상시키고, 연산부하를 감소시킬 수 있다. 한편, 본 발명의 실시예에 따른 스펙트로그램은 멜 스케일이 적용된 멜 스펙트로그램일 수 있다.At this time, de-identification of sound data can be done for natural language and breathing sounds, which can be converted into natural language conversion spectrogram, breathing sound conversion spectrogram, etc., respectively. In sleep analysis according to the present invention, calculation speed can be improved and calculation load can be reduced by using only the information necessary for the analysis model. Meanwhile, the spectrogram according to an embodiment of the present invention may be a Mel spectrogram to which the Mel scale is applied.
로우(raw) 수면 음향 정보의 변환 방법Method for converting raw sleep acoustic information
도 6은 본 발명에 따른 수면 분석 방법에 있어서 수면 음향 정보에 대응하는 스펙트로그램을 획득하는 방법을 설명하기 위한 도면이다.Figure 6 is a diagram for explaining a method of obtaining a spectrogram corresponding to sleep sound information in the sleep analysis method according to the present invention.
프로세서(130)는, 도 6에 도시된 바와 같이, 수면 음향 정보(SS)에 대응하여 스펙트로그램(SP)을 생성할 수 있다. 스펙트로그램(SP) 생성의 기초가 되는 로우 데이터(시간 도메인상의 로우 음향 정보)를 입력받을 수 있는데, 본 발명에 따른 로우 데이터는 병원 환경에서의 수면다원검사(PSG,polysomnography)를 통해 수집될 수도 있고, 가정환경 등에서의 사용자가 웨어러블 디바이스 또는 스마트폰 등 사용자 단말에 내장된 마이크로폰을 통해 수집될 수도 있다.As shown in FIG. 6, the processor 130 may generate a spectrogram (SP) in response to the sleep sound information (SS). Raw data (raw acoustic information in the time domain) that is the basis for generating a spectrogram (SP) can be input, and raw data according to the present invention can also be collected through polysomnography (PSG) in a hospital environment. Additionally, user information in a home environment may be collected through a microphone built into a user terminal such as a wearable device or smartphone.
또한, 로우 데이터는 사용자가 입력한 시작시점부터 종료시점까지 웨어러블 디바이스 또는 스마트폰 등 사용자 단말(10)을 통해 획득되거나, 사용자의 디바이스 조작(예: 알람 설정)이 이루어진 시점부터 디바이스 조작(예: 알람 설정 시간)에 대응되는 시점까지 획득되거나, 사용자의 수면 패턴에 기초하여 자동적으로 시점이 선택되어 획득될 수도 있고, 사용자의 수면의도시점을 사운드(사용자 말소리, 호흡소리, 주변기기(TV, 세탁기) 소리 등)나 조도 변화 등에 기초하여 자동적으로 시점을 결정하여 획득될 수도 있다.In addition, raw data is acquired through the user terminal 10, such as a wearable device or smartphone, from the start point input by the user to the end point, or is obtained through device manipulation (e.g., device operation) from the time the user operates the device (e.g., setting an alarm). Alarm setting time), or the time point may be automatically selected and acquired based on the user's sleep pattern. ) It can also be obtained by automatically determining the viewpoint based on sound, etc.) or changes in illumination.
프로세서(130)는 수면 음향 정보(SS)에 대한 고속 푸리에 변환을 수행하여, 수면 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보로 변환할 수 있다. 구체적으로, 이러한 정보는 주파수 도메인상의 정보일 수 있으며, 스펙트로그램 또는 멜 스케일이 적용된 멜 스펙트로그램일 수 있다. 이러한 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보, 주파수 도메인상의 정보 또는 스펙트로그램(SP)은 소리나 파동을 시각화하여 파악하기 위한 것으로, 파형(waveform)과 스펙트럼(spectrum)의 특징이 조합된 것일 수 있다. The processor 130 may perform fast Fourier transform on the sleep sound information (SS) and convert it into information including changes in the frequency components of the sleep sound information (SS) along the time axis. Specifically, this information may be information in the frequency domain, and may be a spectrogram or a Mel spectrogram to which a Mel scale is applied. Information that includes changes along the time axis of these frequency components, information in the frequency domain, or spectrogram (SP) is used to visualize and understand sound or waves, and is a combination of waveform and spectrum characteristics. It could be.
또한, 이러한 정보들은 음향 정보의 주파수 성분들의 시간 축에 따른 정보들을, 시간 축과 주파수 축의 변화에 따라 진폭의 차이를 인쇄 농도 또는, 표시 색상의 차이로 나타냄으로써 시각화한 것일 수 있다. 이렇게 시각화하는 경우, 이미지 처리 기반의 인공지능 모델의 입력으로 하여 수면 상태 정보를 획득할 수 있게 된다. 이러한 방법을 통하여, 소리 신호를 이미지 신호로 변환함으로써 상대적으로 긴 시간 동안의 데이터를 활용하여 시계열적인 수면 분석이 가능하고, 로우(raw) 수면 음향 정보를 기초로 분석하는 것보다 수면 분석의 정확성이 더 높아질 수 있다는 장점이 있다.Additionally, this information may be visualized by representing the information along the time axis of the frequency components of the sound information as a difference in amplitude according to changes in the time axis and frequency axis as a difference in print density or display color. When visualized in this way, sleep state information can be obtained as input to an image processing-based artificial intelligence model. Through this method, by converting sound signals into image signals, time-series sleep analysis is possible using data over a relatively long period of time, and the accuracy of sleep analysis is more accurate than analysis based on raw sleep sound information. It has the advantage of being able to go higher.
전처리된 음향 관련 로우 데이터는 30초 단위로 잘려 스펙트로그램으로 변환될 수 있다. 이에 따라, 30초의 스펙트로그램은 20 frequency bin x 1201 time step의 차원을 갖게 된다. 본 발명에서는 직사각형의 스펙트로그램을 정방형에 가까운 형태로 바꾸기 위하여 리세이핑(Reshaping), 리사이즈(Resize), 스플릿-캣(split-cat) 등 다양한 방식을 이용함으로써 정방형에 가까운 형태로 변환할 수 있다. 또는 이러한 방식을 이용함으로써 정보량을 보존할 수 있게 된다.Preprocessed acoustic-related raw data can be cut into 30-second increments and converted into a spectrogram. Accordingly, a 30-second spectrogram has dimensions of 20 frequency bins x 1201 time steps. In the present invention, a rectangular spectrogram can be converted into a shape close to a square by using various methods such as reshaping, resizing, and split-cat to change it into a shape close to a square. Alternatively, by using this method, the amount of information can be preserved.
한편, 본 발명은 클린한 숨소리에 가정환경에서 발생하는 다양한 노이즈를 더해 다양한 가정환경에서 측정된 숨소리를 시뮬레이션하는 방법을 이용할 수 있다. 소리는 애디티브(additive)한 성질을 가지고 있기 때문에 서로 더해지는 것이 가능하다. 하지만, mp3나 pcm 등의 원본 음향 신호를 더하고 스펙트로그램으로 변환하면 컴퓨팅 자원의 소모가 매우 커지게 된다. 따라서, 본 발명은 숨소리, 노이즈를 각각 스펙트로그램으로 변환하여 더하는 방법을 제시한다. 이를 통해, 다양한 가정환경에서 측정된 숨소리를 시뮬레이션하여 딥러닝 모델 학습에 활용함으로써 다양한 가정환경에서의 수면 분석의 강건성(robustness)을 확보할 수 있게 된다.Meanwhile, the present invention can use a method of simulating breathing sounds measured in various home environments by adding various noises occurring in the home environment to clean breathing sounds. Because sounds have additive properties, they can be added to each other. However, adding original sound signals such as mp3 or pcm and converting them to a spectrogram results in very large consumption of computing resources. Therefore, the present invention proposes a method of converting breathing sounds and noise into spectrograms and adding them, respectively. Through this, it is possible to secure the robustness of sleep analysis in various home environments by simulating breathing sounds measured in various home environments and using them to learn deep learning models.
변환된 정보의 전처리Preprocessing of converted information
본 발명의 일실시예에 따른 데이터를 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보, 또는 주파수 도메인상의 정보 또는, 스펙트로그램으로 변환하기 위한 목적은, 수면 분석 모델의 입력으로 하여 해당 변환된 정보에서의 패턴이 어떤 수면 상태 또는 어떤 수면 단계와 대응되는지 학습된 모델을 통해 추론하기 위한 것인데, 이렇게 수면 분석 모델의 입력으로 하기 전에 몇몇 전처리 과정들이 필요할 수 있다. The purpose of converting data according to an embodiment of the present invention into information including changes in frequency components along the time axis, information in the frequency domain, or a spectrogram is to use the converted information as an input to a sleep analysis model. The purpose is to infer through the learned model which sleep state or sleep stage the pattern corresponds to, and several preprocessing processes may be required before using it as input to the sleep analysis model.
또한, 본 발명의 일 실시예에 따르면, 변환된 정보는 음향 정보가 이미지 처리 기반의 인공지능 모델의 입력으로 되도록 변환된 것이므로, 입력으로 하기 전에 이러한 전처리 과정을 통해 음향 정보가 시각화될 수도 있다.In addition, according to an embodiment of the present invention, the converted information is converted so that the acoustic information becomes the input of an image processing-based artificial intelligence model, so the acoustic information may be visualized through this preprocessing process before being input.
이러한 전처리 과정들은 학습 과정에서만 이루어질 수도 있고, 학습 과정뿐만 아니라 추론 과정에서도 이루어질 수도 있다. 혹은 추론 과정에서만 이루어질 수도 있다.These preprocessing processes may be performed only during the learning process, or may be performed not only during the learning process but also during the inference process. Or, it may only occur during the reasoning process.
데이터 어그멘테이션 전처리Data augmentation preprocessing
도 15는 본 발명의 일실시예에 따른 피치 시프팅(Pitch Shifting)을 설명하기 위한 도면이다.Figure 15 is a diagram for explaining pitch shifting according to an embodiment of the present invention.
본 발명의 실시예에 따르면, 스펙트로그램에 대하여 데이터 어그멘테이션(Data augmentation)을 수행하는 전처리 방법이 포함될 수 있다.According to an embodiment of the present invention, a preprocessing method that performs data augmentation on the spectrogram may be included.
데이터 어그멘테이션은 충분한 학습 데이터 셋의 양을 확보하거나, 또는 다양하고 변칙적인 환경을 가정하여 충분한 학습을 진행하기 위함이다. Data augmentation is intended to secure a sufficient amount of learning data set or to conduct sufficient learning assuming a diverse and anomalous environment.
본 발명의 실시예에 따른 데이터 어그멘테이션 전처리 방법에는 스펙트로그램에 가우시안 노이즈를 부가하여 데이터의 양을 부풀리거나, 전체적인 음향 정보의 피치(pitch)를 조금씩 올리거나 내리는 피치 시프팅(pitch shifting) 방법, 스펙트로그램 또는 멜 스펙트로그램이 학습과정에서 벡터로 변환되고, 변환된 벡터를 하나의 노드(뉴런)의 입력 단계에서 무작위(random)하게 자르고(Tile) 노드(뉴런)의 출력 후 다시 결합하는(Untile) TUT(Tile UnTile) 어그멘테이션 방법이 포함될 수도 있다.The data augmentation preprocessing method according to an embodiment of the present invention includes adding Gaussian noise to the spectrogram to inflate the amount of data, or a pitch shifting method of gradually raising or lowering the pitch of the overall acoustic information. , the spectrogram or mel spectrogram is converted to a vector during the learning process, and the converted vector is randomly cut (tiled) at the input stage of one node (neuron) and recombined after the output of the node (neuron) ( Untile) TUT (Tile UnTile) augmentation method may be included.
또한, 본 발명의 실시예에 따른 데이터 어그멘테이션 전처리 방법에는 가우시안 노이즈가 아닌 다양한 환경에서 발생하는 노이즈(예컨대, 외부의 소리, 자연의 소리, fan이 돌아가는 소리, 문이 열리거나 닫히는 소리, 동물이 내는 소리, 사람이 대화하는 소리, 움직임 소리 등)를 부가하는 노이즈 부가 어그멘테이션(noise addition augmentation) 방법이 포함될 수도 있다.In addition, the data augmentation preprocessing method according to an embodiment of the present invention includes noise occurring in various environments other than Gaussian noise (e.g., external sounds, sounds of nature, sounds of a fan running, sounds of doors opening or closing, animals A noise addition augmentation method that adds sounds (sounds made by people, people talking, movement sounds, etc.) may also be included.
본 발명의 실시예에 따른 노이즈 부가 어그멘테이션은 스펙트로그램을 학습 모델의 입력으로 할 때 학습 시간을 단축하기 위하여, 노이즈 정보를 스펙트로그램으로 변환한 뒤, 수면 음향 정보와 스펙트로그램 상에서 인위적으로 부가하는 방법을 포함할 수 있다. 이 경우 원래의 음향 정보 도메인 상에서 수면 음향 정보에 노이즈 정보를 부가한 전체를 변환한 스펙트로그램과, 수면 음향 정보와 노이즈 정보 각각을 스펙트로그램으로 변환한 도메인 상에서 부가한 경우의 스펙트로그램에 큰 차이가 없을 수 있다.In order to shorten the learning time when using a spectrogram as an input to a learning model, noise addition augmentation according to an embodiment of the present invention converts noise information into a spectrogram and then artificially adds it to the sleep sound information and the spectrogram. It may include how to do it. In this case, there is a significant difference between the spectrogram obtained by adding noise information to the sleep sound information in the original sound information domain and the spectrogram obtained by adding sleep sound information and noise information to the spectrogram converted domain. There may not be.
또한, 본 발명의 실시예에 따른 노이즈 부가 어그멘테이션은 스펙트로그램으로부터 원 신호로 다시 변환이 어렵게끔 하여 사용자의 프라이버시를 보호하기 위하여, 수면 음향 정보와 노이즈 정보 각각의 스펙트로그램에서 진폭과 위상 중 진폭만을 유지하고, 위상은 임의의 위상으로 만들어서 부가함으로써, 스펙트로그램으로부터 원 신호로 다시 변환이 어렵게끔 할 수 있다.In addition, the noise-added augmentation according to the embodiment of the present invention makes it difficult to convert the spectrogram back to the original signal, so that in order to protect the user's privacy, the amplitude and phase are changed from the spectrogram of each sleep sound information and noise information. By maintaining only the amplitude and adding a random phase, it is possible to make it difficult to convert back to the original signal from the spectrogram.
또는, 본 발명의 실시예에 따른 노이즈 부가 어그멘테이션은 음향 정보를 스펙트로그램으로 변환한 도메인 상에서 부가하는 방법뿐만 아니라, 멜 스케일이 적용된 멜 스펙트로그램으로 변환한 도메인 상에서 부가하는 방법을 포함할 수도 있다. Alternatively, noise addition augmentation according to an embodiment of the present invention may include not only a method of adding sound information on a domain converted into a spectrogram, but also a method of adding noise on a domain converted into a Mel spectrogram to which a Mel scale is applied. there is.
또한, 본 발명의 실시예에 따라 멜 스케일에서 부가하는 방법에 의하면 하드웨어가 데이터를 처리하는 데에 소요되는 시간이 단축될 수 있다.Additionally, the time required for hardware to process data can be shortened by the method added by Mel Scale according to an embodiment of the present invention.
한편, 전술한 노이즈의 종류에 관한 구체적인 기재는 본 발명의 노이즈 부가 어그멘테이션을 설명하기 위한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.Meanwhile, the detailed description of the types of noise described above is merely an example for explaining the noise addition augmentation of the present invention, and the present invention is not limited thereto.
도 23은 본 발명의 일실시예에 따른 TUT(Tile UnTile) 어그멘테이션 방법을 설명하기 위한 도면이다.Figure 23 is a diagram for explaining the TUT (Tile UnTile) augmentation method according to an embodiment of the present invention.
본 발명의 실시예에 따른 TUT(Tile UnTile) 어그멘테이션은 스펙트로그램을 학습 모델의 입력으로 할 때 다양한 패턴의 학습 데이터 양을 늘리기 위해서 노드(뉴런)의 입력과 출력단계에서 스펙트로그램 또는 벡터를 무작위로 자르고, 결합하는 단계를 포함할 수 있다. 노드(뉴런)의 입력 단계에서 무작위로 잘라진 스펙트로그램 또는 벡터는 잘라지지 않은 해당 신경망(Neural Network)의 레이어(layer)에 입력되는 스펙트로그램 또는 벡터의 정보보다 데이터의 누락이 있거나 또는 정보의 양에 손실이 있을 수 있다. 이 경우, 제한적인 정보가 노드(뉴런)에 입력되어 학습될 수 있다. 잘라진 스펙트로그램 또는 벡터를 입력으로 하는 노드(뉴런)는 연산 후 벡터를 출력으로 할 수 있다. 이 때, 다음 신경망 레이어(Neural Network Layer)의 노드(뉴런)의 입력으로 하기 전 다시 잘랐던 방식과 동일하게 결합(Untile)할 수도 있다.TUT (Tile UnTile) augmentation according to an embodiment of the present invention uses a spectrogram or vector at the input and output stages of a node (neuron) to increase the amount of learning data of various patterns when using a spectrogram as an input to a learning model. It may include randomly cutting and combining steps. Spectrograms or vectors that are randomly cut at the input stage of a node (neuron) have missing data or have less information than the information of the spectrogram or vector input to the layer of the corresponding neural network that has not been cut. There may be losses. In this case, limited information can be input to the node (neuron) and learned. A node (neuron) that takes a cut spectrogram or vector as input can output the vector after calculation. At this time, it can be combined (untiled) in the same way as it was cut again before being used as the input of the node (neuron) of the next neural network layer.
또한, 본 발명의 실시예에 따른 TUT 어그멘테이션은 스펙트로그램 또는 벡터를 노드(뉴런)의 입력과 출력단계에서 무작위로 자르고, 동일한 방식으로 합침으로써 정보의 누락이 있는 데이터의 학습을 유도하여, 학습모델의 정확도 또는 신뢰도를 높이는데 기여할 수 있다.In addition, TUT augmentation according to an embodiment of the present invention randomly cuts spectrograms or vectors at the input and output stages of nodes (neurons) and combines them in the same way to induce learning of data with missing information, It can contribute to increasing the accuracy or reliability of the learning model.
정방형에 가까운 형태로 변환하는 전처리Preprocessing to convert to a shape close to square
도 16은 본 발명의 일실시예에 따라 주파수 도메인상의 정보 또는 스펙트로그램을 정방형에 가까운 형태로 변환하는 전처리 방법을 설명하기 위한 도면이다.FIG. 16 is a diagram illustrating a preprocessing method for converting information or a spectrogram in the frequency domain into a nearly square form according to an embodiment of the present invention.
본 발명의 실시예에 따르면, 상술한 피치 시프팅(Pitch shifting), 노이즈 부가 어그멘테이션, 또는 TUT 어그멘테이션 등, 주파수 도메인상의 정보 또는 스펙트로그램의 데이터 어그멘테이션 전처리 과정을 거친 후에 주파수 도메인상의 정보 또는 스펙트로그램을 정방형에 가까운 형태로 변환하는 전처리 방법을 수행할 수도 있다. According to an embodiment of the present invention, after going through the data augmentation process of the information or spectrogram in the frequency domain, such as the above-described pitch shifting, noise-added augmentation, or TUT augmentation, the frequency domain A preprocessing method may be performed to convert the image information or spectrogram into a nearly square form.
본 발명의 일실시예에 따르면, 데이터 어그멘테이션이 수행된 주파수 도메인상의 정보 또는 스펙트로그램을 딥러닝 모델인 CNN, Transformer, Vision Transformer(ViT), Mobile Vision Transformer(MobileViT)의 입력으로 하기 전에, 정방형에 가까운 형태로 변환한 뒤에 그러한 정방형에 가까운 형태로 변환된 주파수 도메인상의 정보 또는 스펙트로그램을 딥러닝 모델인 AI의 입력으로 할 수 있다.According to an embodiment of the present invention, before using the information or spectrogram on the frequency domain on which data augmentation was performed as input to deep learning models CNN, Transformer, Vision Transformer (ViT), and Mobile Vision Transformer (MobileViT), After conversion to a form close to a square, the information or spectrogram in the frequency domain converted to a form close to a square can be used as input to AI, a deep learning model.
본 발명의 실시예에 따라 주파수 도메인상의 정보 또는 스펙트로그램을 정방형에 가까운 형태로 변환하는 전처리를 수행함에 있어서, 리세이핑(Reshaping), 리사이즈(Resize), 스플릿-캣(Split-cat) 등 다양한 방식으로 정방형에 가까운 형태로 변환할 수 있다.In performing preprocessing to convert information or spectrogram in the frequency domain into a nearly square form according to an embodiment of the present invention, various methods such as reshaping, resize, and split-cat are used. It can be converted to a shape close to a square.
본 발명의 실시예에 따라 리사이즈 방식으로 정방형에 가까운 형태로 변환하는 전처리를 수행하는 경우, x축은 해상도를 낮추고, y축은 값을 복사하여 해상도를 늘리는 방법이 수행될 수 있다. According to an embodiment of the present invention, when preprocessing is performed to convert a shape close to a square by resizing, a method of lowering the resolution on the x-axis and increasing the resolution on the y-axis by copying values can be performed.
또한, 본 발명의 실시예에 따라 20 frequency bin Х 1201 time step의 차원을 갖는 30초의 스펙트로그램 전체에 대하여 리사이즈 방식으로 한 번에 정방형에 가까운 형태로 변환하는 전처리 방법을 수행하면서, 누락된 정보를 보간법을 활용하여 보충할 수 있다.In addition, according to an embodiment of the present invention, a preprocessing method is performed to convert the entire 30-second spectrogram with a dimension of 20 frequency bin Х 1201 time step into a form close to a square at once by resizing, while removing missing information. It can be supplemented by using interpolation.
본 발명의 실시예에 따른 스플릿-캣(Split-cat) 전처리 방식은, 스펙트로그램을 일정한 크기로 스플릿(Split) 한 뒤에 concatenation 함수를 이용하여 데이터를 정방형에 가까운 형태로 합치는(cat) 방법을 포함할 수 있다. 다시 말해, 스플릿-캣 방법은, Vit(Vision Transformer) 또는 Mobile Vit(Mobile Vision Transformer) 기반의 딥러닝 모델에서 patch 단위로 학습을 수행하기 위해서, 하나의 스펙트로그램을 patch에 대응될 수 있도록 스플릿한 뒤, patch 단위로 정방형에 가까운 형태로 합치는 방법을 의미한다.The split-cat preprocessing method according to an embodiment of the present invention is a method of splitting the spectrogram to a certain size and then concatenating the data into a nearly square shape using the concatenation function. It can be included. In other words, the split-cat method splits one spectrogram so that it can correspond to a patch in order to perform learning on a patch-by-patch basis in a deep learning model based on Vit (Vision Transformer) or Mobile Vit (Mobile Vision Transformer). Second, it refers to a method of merging each patch into a shape close to a square.
예를 들어, 본 발명의 일실시예에 따르면, 20 frequency bin Х 1201 time step의 차원을 갖는 30초의 스펙트로그램을 150 frequency bin Х 160 time step의 차원으로 변환할 수 있다. 그 후, 150 frequency bin Х 160 time step의 차원을 갖는 30초의 스펙트로그램에 리사이즈 기법을 이용하여 160 frequency bin Х 160 time step에 가까운 차원으로 변환할 수 있다. 이러한 과정에 따라, 매 30초 간격에 해당하는 스펙트로그램을 정방형에 가까운 형태로 변환할 수 있게 된다.For example, according to one embodiment of the present invention, a 30-second spectrogram with dimensions of 20 frequency bins Х 1201 time steps can be converted to dimensions of 150 frequency bins Х 160 time steps. Afterwards, a 30-second spectrogram with a dimension of 150 frequency bin Х 160 time step can be converted to a dimension close to 160 frequency bin Х 160 time step using a resizing technique. According to this process, the spectrogram corresponding to every 30 second interval can be converted into a form close to a square.
정방형에 가까운 형태로 변환한 스펙트로그램을 입력으로 하여 학습을 수행하는 경우, Transformer 학습 모델 기반의 딥러닝 모델에서 더욱 향상된 학습 성능을 보일 수 있다. 전술한 스펙트로그램의 빈(bin), 분할 시간 단위 및 분할 개수 등에 대한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.When learning is performed using a spectrogram converted to a nearly square form as input, a deep learning model based on the Transformer learning model can show further improved learning performance. The detailed numerical description of the bins, division time units, and number of divisions of the above-described spectrogram is only an example, and the present invention is not limited thereto.
스케일 변환 및 정규화 전처리Scale conversion and normalization preprocessing
본 발명의 실시예에 따른 주파수 도메인상의 정보 또는 스펙트로그램은, 그 값이 매우 작아서 다른 스케일로 변환하지 않으면 값이 일정 수준보다 큰 부분에서는 매우 밝게 표현되는 반면, 나머지 부분에서는 매우 어둡게 표현되므로 딥러닝 모델의 입력으로 하기에 부적절할 수 있다. 이에 따라 본 발명의 실시예에 따른 주파수 도메인상의 정보 또는 스펙트로그램을 딥러닝 모델의 입력으로 하기 전에 dB 스케일(로그스케일)로 변환하는 전처리 과정을 수행할 수 있다.The information or spectrogram in the frequency domain according to an embodiment of the present invention has a very small value, so if it is not converted to another scale, it is expressed very brightly in the part where the value is greater than a certain level, while it is expressed very dark in the remaining part, so deep learning It may be inappropriate to use as model input. Accordingly, a preprocessing process can be performed to convert the information or spectrogram in the frequency domain according to an embodiment of the present invention to dB scale (log scale) before using it as input to the deep learning model.
본 발명의 실시예에 따른 로그스케일 변환 전처리를 수행함에 있어서, 로그값의 최대치를 0으로 설정하여 기본 베이스값으로 설정하고, 나머지 값들에 대해 로그값으로 변환할 수 있다.When performing log scale conversion preprocessing according to an embodiment of the present invention, the maximum value of the logarithmic value can be set to 0 as the default base value, and the remaining values can be converted to logarithmic values.
본 발명의 실시예에 따라 로그값으로 변환된 스펙트로그램에 대하여, 전체 값의 평균이 0이 되고, 표준 편차가 1이 되도록 하는 정규화(Normalization) 전처리를 추가적으로 수행한 뒤에 딥러닝 모델의 입력으로 할 수도 있다.For the spectrogram converted to logarithmic values according to an embodiment of the present invention, normalization preprocessing is additionally performed so that the average of all values is 0 and the standard deviation is 1, and then used as the input of the deep learning model. It may be possible.
이렇게 전처리된 데이터를 이미지 처리 딥러닝 모델의 입력으로 하여, 스펙트로그램에 대한 이미지 분석을 통해 수면 상태 정보 등의 정보를 학습 또는 추론할 수 있게 된다. 전술한 스펙트로그램의 로그값 최대치 등에 대한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.By using this preprocessed data as input to the image processing deep learning model, information such as sleep state information can be learned or inferred through image analysis of the spectrogram. The detailed numerical description of the maximum log value of the spectrogram described above is only an example, and the present invention is not limited thereto.
수면 분석 모델sleep analysis model
도 25는 본 발명의 일 실시예에 따른 음향 정보를 통해 사용자의 수면 상태를 분석하기 위한 방법을 예시적으로 나타낸 순서도를 도시한다.Figure 25 shows a flowchart illustrating a method for analyzing a user's sleep state through sound information according to an embodiment of the present invention.
본 발명의 일 실시예에 따르면, 상기 방법은, 사용자의 수면과 관련한 수면 음향 정보를 획득하는 단계(S10)를 포함할 수 있다.According to one embodiment of the present invention, the method may include a step (S10) of acquiring sleep sound information related to the user's sleep.
본 발명의 일 실시예에 따르면, 상기 방법은, 수면 음향 정보에 대한 전처리를 수행하는 단계(S20)를 포함할 수 있다. According to an embodiment of the present invention, the method may include performing preprocessing on sleep sound information (S20).
본 발명의 일 실시예에 따르면, 상기 방법은, 전처리된 수면 음향 정보에 대한 분석을 수행하여 수면 상태 정보를 획득하는 단계(S30)를 포함할 수 있다.According to an embodiment of the present invention, the method may include a step (S30) of obtaining sleep state information by performing analysis on preprocessed sleep sound information.
전술한 도 25에 도시된 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 전술한 단계는 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.The order of the steps shown in FIG. 25 described above may be changed as needed, and at least one step may be omitted or added. That is, the above-described steps are only one embodiment of the present invention, and the scope of the present invention is not limited thereto.
도 17a 및 도 17b는 본 발명의 일실시예에 따른 수면 분석 모델의 전체적인 구조를 설명하기 위한 도면이다.Figures 17a and 17b are diagrams for explaining the overall structure of a sleep analysis model according to an embodiment of the present invention.
본 발명에 있어서, 수면 상태 정보는 음향 정보(수면 음향 정보)에 기초하여 사용자의 수면단계를 분석하는 수면 분석 모델을 통해 획득될 수 있다.In the present invention, sleep state information can be obtained through a sleep analysis model that analyzes the user's sleep stage based on sound information (sleep sound information).
본 발명에서 수면 음향 정보(SS)는, 사용자의 수면 시간 동안 획득되는 호흡 및 몸 움직임에 관련한 음향이기 때문에 매우 작은 소리일 수 있고, 이에 따라 본 발명은 상술한 바와 같이 수면 음향 정보(SS)를 스펙트로그램(SP)으로 변환하여 음향에 대한 분석을 수행할 수 있다. 이 경우, 스펙트로그램(SP)은 소리의 주파수 스펙트럼이 시간에 따라 어떻게 변화하는지 보여주는 정보를 포함하고 있으므로, 비교적 작은 음향에 관련한 호흡 또는 움직임 패턴을 용이하게 식별할 수 있어 분석의 효율이 향상될 수 있다. 구체적으로, 수면 음향 정보의 에너지 레벨의 변화만으로는, 깨어있는 상태, REM 수면 상태, 얕은 수면 상태 및 깊은 수면 상태 중 적어도 하나인지를 예측하기 어려울 수 있으나, 수면 음향 정보를 스펙트로그램으로 변환함으로써, 각 주파수의 스펙트럼의 변화를 용이하게 감지할 수 있으므로, 작은 소리(예컨대, 호흡 및 몸 움직임)에 대응한 분석이 가능해질 수 있다.In the present invention, the sleep sound information (SS) may be a very small sound because it is a sound related to breathing and body movement acquired during the user's sleeping time. Accordingly, the present invention uses the sleep sound information (SS) as described above. Analysis of sound can be performed by converting it into a spectrogram (SP). In this case, the spectrogram (SP) contains information that shows how the frequency spectrum of the sound changes over time, so breathing or movement patterns related to relatively small sounds can be easily identified, improving the efficiency of analysis. there is. Specifically, it may be difficult to predict whether the sleep sound information is at least one of the awake state, REM sleep state, light sleep state, and deep sleep state based solely on changes in the energy level of the sleep sound information, but by converting the sleep sound information into a spectrogram, each sleep sound information is converted into a spectrogram. Since changes in the frequency spectrum can be easily detected, analysis corresponding to small sounds (eg, breathing and body movements) may be possible.
프로세서(130)는 본 발명의 실시예에 따라 변환된 주파수 도메인상의 정보 또는 스펙트로그램(SP)을 수면 분석 모델의 입력으로 처리하여 수면 상태 정보를 획득할 수 있다. 여기서 수면 분석 모델은, 사용자의 수면단계 변화에 관련한 수면 상태 정보를 획득하기 위한 모델로, 사용자의 수면 동안 획득된 수면 음향 정보를 입력으로 하여 수면 상태 정보를 출력할 수 있다. 실시예에서, 수면 분석 모델은, 하나 이상의 네트워크 함수를 통해 구성되는 신경망 모델을 포함할 수 있다.The processor 130 may obtain sleep state information by processing information on the frequency domain or a spectrogram (SP) converted according to an embodiment of the present invention as an input to a sleep analysis model. Here, the sleep analysis model is a model for obtaining sleep state information related to changes in the user's sleep stage, and can output sleep state information by inputting sleep sound information acquired during the user's sleep. In embodiments, the sleep analysis model may include a neural network model constructed through one or more network functions.
네트워크 함수network function
수면 분석 모델은 하나 이상의 네트워크 함수로 구성되며, 하나 이상의 네트워크 함수는 일반적으로 '노드'라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 '노드'들은 '뉴런(neuron)'들로 지칭될 수도 있다. 하나 이상의 네트워크 함수는 적어도 하나 이상의 노드들을 포함하여 구성된다. 하나 이상의 네트워크 함수를 구성하는 노드(또는 뉴런)들은 하나 이상의 '링크'에 의해 상호 연결될 수 있다.A sleep analysis model is comprised of one or more network functions, and one or more network functions may be comprised of a set of interconnected computational units, which may generally be referred to as 'nodes'. These 'nodes' may also be referred to as 'neurons'. One or more network functions are composed of at least one or more nodes. Nodes (or neurons) that make up one or more network functions may be interconnected by one or more 'links'.
도 7은 본 발명에 따른 수면 분석 방법을 수행하기 위한 하나 이상의 네트워크 함수를 나타낸 개략도이다. 딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨벌루셔널 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크, Transformer, ViT(Vision Transformer), Mobile ViT(Mobile Vision Transformer) 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다.Figure 7 is a schematic diagram showing one or more network functions for performing the sleep analysis method according to the present invention. A deep neural network (DNN) may refer to a neural network that includes multiple hidden layers in addition to the input layer and output layer. Deep neural networks allow you to identify latent structures in data. In other words, it is possible to identify the potential structure of a photo, text, video, voice, or music (e.g., what object is in the photo, what the content and emotion of the text are, what the content and emotion of the voice are, etc.) . Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBMs). boltzmann machine), deep belief network (DBN), Q network, U network, Siamese network, Transformer, Vision Transformer (ViT), Mobile Vision Transformer (ViT), etc. The description of the deep neural network described above is only an example and the present invention is not limited thereto.
본 발명에서 네트워크 함수는 오토 인코더를 포함할 수도 있다. 오토 인코더는 입력 데이터와 유사한 출력 데이터를 출력하기 위한 인공신경망의 일종일 수 있다. 오토 인코더는 적어도 하나의 히든 레이어를 포함할 수 있으며, 홀수 개의 히든 레이어가 입출력 레이어 사이에 배치될 수 있다. 각각의 레이어의 노드의 수는 입력 레이어의 노드의 수에서 병목 레이어(인코딩)라는 중간 레이어로 축소되었다가, 병목 레이어에서 출력 레이어(입력 레이어와 대칭)로 축소와 대칭되어 확장될 수도 있다. 차원 감소 레이어와 차원 복원 레이어의 노드는 대칭일 수도 있고 아닐 수도 있다. 오토 인코더는 비선형 차원 감소를 수행할 수 있다. 입력 레이어 및 출력 레이어의 수는 입력 데이터의 전처리 이후에 남은 센서들의 수와 대응될 수 있다. 오토 인코더 구조에서 인코더에 포함된 히든 레이어의 노드의 수는 입력 레이어에서 멀어질수록 감소하는 구조를 가질 수 있다. 병목 레이어(인코더와 디코더 사이에 위치하는 가장 적은 노드를 가진 레이어)의 노드의 수는 너무 작은 경우 충분한 양의 정보가 전달되지 않을 수 있으므로, 특정 수 이상(예를 들어, 입력 레이어의 절반 이상 등)으로 유지될 수도 있다.In the present invention, the network function may include an auto encoder. An autoencoder may be a type of artificial neural network to output output data similar to input data. The autoencoder may include at least one hidden layer, and an odd number of hidden layers may be placed between input and output layers. The number of nodes in each layer may be reduced from the number of nodes in the input layer to an intermediate layer called the bottleneck layer (encoding), and then expanded symmetrically and reduced from the bottleneck layer to the output layer (symmetrical to the input layer). The nodes of the dimensionality reduction layer and dimensionality restoration layer may or may not be symmetric. Autoencoders can perform nonlinear dimensionality reduction. The number of input layers and output layers may correspond to the number of sensors remaining after preprocessing of the input data. In an auto-encoder structure, the number of nodes in the hidden layer included in the encoder may have a structure that decreases as the distance from the input layer increases. If the number of nodes in the bottleneck layer (the layer with the fewest nodes located between the encoder and decoder) is too small, not enough information may be conveyed, so if it is higher than a certain number (e.g., more than half of the input layers, etc.) ) may be maintained.
뉴럴 네트워크는 지도 학습(supervised learning), 비지도 학습(unsupervised learning), 및 반지도학습(semi supervised learning) 중 적어도 하나의 방식으로 학습될 수 있다. 뉴럴 네트워크의 학습은 출력의 오류를 최소화하기 위한 것이다. 뉴럴 네트워크의 학습에서 반복적으로 학습 데이터를 뉴럴 네트워크에 입력시키고 학습 데이터에 대한 뉴럴 네트워크의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 뉴럴 네트워크의 에러를 뉴럴 네트워크의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 뉴럴 네트워크의 각 노드의 가중치를 업데이트 하는 과정이다. 지도 학습의 경우 각각의 학습 데이터에 정답이 라벨링되어 있는 학습 데이터를 사용하며(즉, 라벨링된 학습 데이터), 비지도 학습의 경우는 각각의 학습 데이터에 정답이 라벨링되어 있지 않을 수 있다. 즉, 예를 들어 데이터 분류에 관한 지도 학습의 경우의 학습 데이터는 학습데이터 각각에 카테고리가 라벨링 된 데이터 일 수 있다. 라벨링된 학습 데이터가 뉴럴 네트워크에 입력되고, 뉴럴 네트워크의 출력(카테고리)과 학습 데이터의 라벨을 비교함으로써 오류(error)가 계산될 수 있다. 다른 예로, 데이터 분류에 관한 비지도 학습의 경우 입력인 학습 데이터가 뉴럴 네트워크 출력과 비교됨으로써 오류가 계산될 수 있다. 계산된 오류는 뉴럴 네트워크에서 역방향(즉, 출력 레이어에서 입력 레이어 방향)으로 역전파 되며, 역전파에 따라 뉴럴 네트워크의 각 레이어의 각 노드들의 연결 가중치가 업데이트 될 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learning rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 뉴럴 네트워크의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 뉴럴 네트워크의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 예를 들어, 뉴럴 네트워크의 학습 초기에는 높은 학습률을 사용하여 뉴럴 네트워크가 빠르게 일정 수준의 성능을 확보하도록 하여 효율성을 높이고, 학습 후기에는 낮은 학습률을 사용하여 정확도를 높일 수 있다.A neural network may be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. Learning of a neural network is intended to minimize errors in output. In neural network learning, learning data is repeatedly input into the neural network, the output of the neural network and the error of the target for the learning data are calculated, and the error of the neural network is transferred from the output layer of the neural network to the input layer in the direction of reducing the error. This is the process of updating the weight of each node in the neural network through backpropagation. In the case of supervised learning, learning data in which the correct answer is labeled for each learning data is used (i.e., labeled learning data), and in the case of unsupervised learning, the correct answer may not be labeled in each learning data. That is, for example, in the case of supervised learning on data classification, the learning data may be data in which each training data is labeled with a category. Labeled training data is input to the neural network, and the error can be calculated by comparing the output (category) of the neural network with the label of the training data. As another example, in the case of unsupervised learning on data classification, the error can be calculated by comparing the input training data with the neural network output. The calculated error is backpropagated in the reverse direction (i.e., from the output layer to the input layer) in the neural network, and the connection weight of each node in each layer of the neural network can be updated according to backpropagation. The amount of change in the connection weight of each updated node may be determined according to the learning rate. The neural network's calculation of input data and backpropagation of errors can constitute a learning cycle (epoch). The learning rate may be applied differently depending on the number of repetitions of the learning cycle of the neural network. For example, in the early stages of neural network training, a high learning rate can be used to increase efficiency by allowing the neural network to quickly achieve a certain level of performance, and in the later stages of training, a low learning rate can be used to increase accuracy.
뉴럴 네트워크의 학습에서 일반적으로 학습 데이터는 실제 데이터(즉, 학습된 뉴럴 네트워크를 이용하여 처리하고자 하는 데이터)의 부분집합일 수 있으며, 따라서, 학습 데이터에 대한 오류는 감소하나 실제 데이터에 대해서는 오류가 증가하는 학습 사이클이 존재할 수 있다. 과적합(overfitting)은 이와 같이 학습 데이터에 과하게 학습하여 실제 데이터에 대한 오류가 증가하는 현상이다. 예를 들어, 노란색 고양이를 보여 고양이를 학습한 뉴럴 네트워크가 노란색 이외의 고양이를 보고는 고양이임을 인식하지 못하는 현상이 과적합의 일종일 수 있다. 과적합은 AI 알고리즘의 오류를 증가시키는 원인으로 작용할 수 있다. 이러한 과적합을 막기 위하여 다양한 최적화 방법이 사용될 수 있다. 과적합을 막기 위해서는 학습 데이터를 증가시키거나, 정칙화 또는 정규화(regularization), 학습의 과정에서 네트워크의 노드 일부를 생략하는 드롭아웃(dropout) 등의 방법이 적용될 수 있다.In the learning of neural networks, the training data can generally be a subset of real data (i.e., the data to be processed using the learned neural network), and thus the error for the training data is reduced, but the error for the real data is reduced. There may be an incremental learning cycle. Overfitting is a phenomenon in which errors in actual data increase due to excessive learning on training data. For example, a phenomenon in which a neural network that learned a cat by showing a yellow cat fails to recognize that it is a cat when it sees a non-yellow cat may be a type of overfitting. Overfitting can cause errors in AI algorithms to increase. To prevent such overfitting, various optimization methods can be used. To prevent overfitting, methods such as increasing the learning data, regularization or regularization, and dropout, which omits some of the network nodes during the learning process, can be applied.
본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. (이하에서는 신경망으로 통일하여 기술한다.) 데이터 구조는 신경망을 포함할 수 있다. 그리고 신경망을 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망을 포함한 데이터 구조는 또한 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 학습을 위한 손실 함수를 포함할 수 있다. 신경망을 포함한 데이터 구조는 상기 개시된 구성들 중 임의의 구성 요소들을 포함할 수 있다. 즉, 신경망을 포함한 데이터 구조는 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 트레이닝을 위한 손실 함수 등 전부 또는 이들의 임의의 조합을 포함하여 구성될 수 있다. 전술한 구성들 이외에도, 신경망을 포함한 데이터 구조는 신경망의 특성을 결정하는 임의의 다른 정보를 포함할 수 있다. 또한, 데이터 구조는 신경망의 연산 과정에 사용되거나 발생되는 모든 형태의 데이터를 포함할 수 있으며 전술한 사항에 제한되는 것은 아니다. 컴퓨터 판독 가능 매체는 컴퓨터 판독가능 기록 매체 및/또는 컴퓨터 판독가능 전송 매체를 포함할 수 있다. 신경망은 일반적으로 노드라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 노드들은 뉴런(neuron)들로 지칭될 수도 있다. 신경망은 적어도 하나 이상의 노드들을 포함하여 구성된다.Throughout this specification, computational model, neural network, network function, and neural network may be used interchangeably. (Hereinafter, it is described collectively as a neural network.) The data structure may include a neural network. And the data structure including the neural network may be stored in a computer-readable medium. Data structures including neural networks may also include data input to the neural network, weights of the neural network, hyperparameters of the neural network, data obtained from the neural network, activation functions associated with each node or layer of the neural network, and loss functions for learning the neural network. there is. A data structure containing a neural network may include any of the components disclosed above. In other words, the data structure including the neural network is all or It may be configured to include any combination of these. In addition to the configurations described above, a data structure containing a neural network may include any other information that determines the characteristics of the neural network. Additionally, the data structure may include all types of data used or generated in the computational process of a neural network and is not limited to the above. Computer-readable media may include computer-readable recording media and/or computer-readable transmission media. A neural network can generally consist of a set of interconnected computational units, which can be referred to as nodes. These nodes may also be referred to as neurons. A neural network consists of at least one node.
신경망 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 전술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.Within a neural network, one or more nodes connected through a link may form a relative input node and output node relationship. The concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa. As described above, input node to output node relationships can be created around links. One or more output nodes can be connected to one input node through a link, and vice versa.
하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호연결하는 노드는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 신경망이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.In a relationship between an input node and an output node connected through one link, the value of the output node may be determined based on data input to the input node. Here, the nodes connecting the input node and the output node may have a weight. Weights may be variable and may be varied by the user or algorithm in order for the neural network to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.
전술한 바와 같이, 신경망은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호연결 되어 신경망 내에서 입력 노드 및 출력 노드 관계를 형성한다. 신경망 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 신경망의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 신경망이 존재하는 경우, 두 개의 신경망들은 서로 상이한 것으로 인식될 수 있다.As described above, in a neural network, one or more nodes are interconnected through one or more links to form an input node and output node relationship within the neural network. The characteristics of the neural network can be determined according to the number of nodes and links within the neural network, the correlation between the nodes and links, and the value of the weight assigned to each link. For example, if there are two neural networks with the same number of nodes and links and different weight values between the links, the two neural networks may be recognized as different from each other.
신경망을 구성하는 노드들 중 일부는, 최초 입력 노드로부터의 거리들에 기초하여, 하나의 레이어(layer)를 구성할 수 있다. 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은, n레이어를 구성할 수 있다. 최초 입력 노드로부터 거리는, 최초 입력 노드로부터 해당 노드까지 도달하기 위해 거쳐야 하는 링크들의 최소 개수에 의해 정의될 수 있다. 그러나, 이러한 레이어의 정의는 설명을 위한 임의적인 것으로서, 신경망 내에서 레이어의 차수는 전술한 것과 상이한 방법으로 정의될 수 있다. 예를 들어, 노드들의 레이어는 최종 출력 노드로부터 거리에 의해 정의될 수도 있다.Some of the nodes constituting the neural network may form one layer based on the distances from the first input node. For example, a set of nodes with a distance n from the initial input node may constitute n layers. The distance from the initial input node can be defined by the minimum number of links that must be passed to reach the node from the initial input node. However, this definition of a layer is arbitrary for explanation purposes, and the order of a layer within a neural network may be defined in a different way than described above. For example, a layer of nodes may be defined by distance from the final output node.
최초 입력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서 링크를 거치지 않고 데이터가 직접 입력되는 하나 이상의 노드들을 의미할 수 있다. 또는, 신경망 네트워크 내에서, 링크를 기준으로 한 노드 간의 관계에 있어서, 링크로 연결된 다른 입력 노드들 가지지 않는 노드들을 의미할 수 있다. 이와 유사하게, 최종 출력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서, 출력 노드를 가지지 않는 하나 이상의 노드들을 의미할 수 있다. 또한, 히든 노드는 최초 입력 노드 및 최후 출력 노드가 아닌 신경망을 구성하는 노드들을 의미할 수 있다. 본 발명의 일실시예에 따른 신경망은 입력 레이어의 노드가 출력 레이어에 가까운 히든 레이어의 노드보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 신경망일 수 있다.The initial input node may refer to one or more nodes in the neural network through which data is directly input without going through links in relationships with other nodes. Alternatively, in a neural network network, in the relationship between nodes based on links, it may mean nodes that do not have other input nodes connected by links. Similarly, the final output node may refer to one or more nodes that do not have an output node in their relationship with other nodes among the nodes in the neural network. Additionally, hidden nodes may refer to nodes constituting a neural network other than the first input node and the last output node. The neural network according to an embodiment of the present invention may have more nodes in the input layer than the nodes in the hidden layer close to the output layer, and may be a neural network in which the number of nodes decreases as it progresses from the input layer to the hidden layer.
신경망은 하나 이상의 히든 레이어를 포함할 수 있다. 히든 레이어의 히든 노드는 이전의 레이어의 출력과 주변 히든 노드의 출력을 입력으로 할 수 있다. 각 히든 레이어 별 히든 노드의 수는 동일할 수도 있고 상이할 수도 있다. 입력 레이어의 노드의 수는 입력 데이터의 데이터 필드의 수에 기초하여 결정될 수 있으며 히든 노드의 수와 동일할 수도 있고 상이할 수도 있다. 입력 레이어에 입력된 입력 데이터는 히든 레이어의 히든 노드에 의하여 연산될 수 있고 출력 레이어인 풀리 커넥티드 레이어(FCL: fully connected layer)에 의해 출력될 수 있다.A neural network may contain one or more hidden layers. The hidden node of the hidden layer can take the output of the previous layer and the output of surrounding hidden nodes as input. The number of hidden nodes for each hidden layer may be the same or different. The number of nodes in the input layer may be determined based on the number of data fields of the input data and may be the same as or different from the number of hidden nodes. Input data input to the input layer can be operated by the hidden node of the hidden layer and output by the fully connected layer (FCL), which is the output layer.
피처 추출 모델 및 피처 분류 모델Feature extraction model and feature classification model
도 18은 본 발명의 일실시예에 따른 피처 추출 모델과 피처 분류 모델을 설명하기 위한 도면이다.Figure 18 is a diagram for explaining a feature extraction model and a feature classification model according to an embodiment of the present invention.
도 19는 본 발명의 일실시예에 따른 수면 분석 모델의 동작을 자세히 설명하기 위한 도면이다.Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
본 발명에 이용되는 수면 분석 모델은 미리 정해진 에폭 별 하나 이상의 피처를 추출하는 피처 추출 모델 및 피처 추출 모델을 통해 추출된 피처들 각각을 하나 이상의 수면단계로 분류하여 수면 상태 정보를 생성하는 피처 분류 모델을 포함할 수 있다. 피처 추출 모델은, 스펙트로그램(SP)의 시계열적 주파수 패턴을 분석하여 호흡음, 호흡패턴, 움직임 패턴에 관련한 피처들을 추출할 수 있다. 일실시예에서, 피처 추출 모델은 학습 데이터 세트를 통해 사전 학습된 신경망 모델의 일부를 통해 구성될 수 있다. The sleep analysis model used in the present invention is a feature extraction model that extracts one or more features for each predetermined epoch and a feature classification model that generates sleep state information by classifying each of the features extracted through the feature extraction model into one or more sleep stages. may include. The feature extraction model can extract features related to breathing sounds, breathing patterns, and movement patterns by analyzing the time-series frequency pattern of the spectrogram (SP). In one embodiment, the feature extraction model may be constructed from part of a neural network model that has been pre-trained using a training data set.
본 발명에 이용되는 수면 분석 모델은 피처 추출 모델 및 피처 분류 모델을 포함할 수 있다. 피처 추출 모델은 주어진 데이터의 시계열적 연관성을 학습할 수 있는 자연어처리 모델 기반의 딥러닝 학습 모델일 수 있다. 피처 분류 모델은 주어진 데이터의 시계열적 연관성을 학습할 수 있는 자연어처리 모델 기반의 학습 모델일 수 있다. 여기서, 시계열적 연관성을 학습할 수 있는 자연어처리 모델 기반의 딥러닝 학습 모델은 Tarnsformer, ViT, MobileViT, MobileViT2을 포함할 수 있으나, 이에 한정되지 않는다. The sleep analysis model used in the present invention may include a feature extraction model and a feature classification model. The feature extraction model may be a deep learning learning model based on a natural language processing model that can learn the time-series correlation of given data. The feature classification model may be a learning model based on a natural language processing model that can learn the time-series correlation of given data. Here, deep learning learning models based on natural language processing models that can learn time-series correlations may include Tarnsformer, ViT, MobileViT, and MobileViT2, but are not limited thereto.
본 발명의 일실시예에 따른 학습 데이터 세트는, 주파수 도메인상의 데이터 및 각 데이터에 대응하는 복수의 수면 상태 정보로 구성될 수 있다. The learning data set according to an embodiment of the present invention may be composed of data in the frequency domain and a plurality of sleep state information corresponding to each data.
또는, 본 발명의 일실시예에 따른 학습 데이터 세트는 복수의 스펙트로그램 및 각 스펙트로그램에 대응하는 복수의 수면 상태 정보로 구성될 수 있다. Alternatively, the learning data set according to an embodiment of the present invention may be composed of a plurality of spectrograms and a plurality of sleep state information corresponding to each spectrogram.
또는, 본 발명의 일실시예에 따른 학습 데이터 세트는 복수의 멜 스펙트로그램 및 각 멜 스펙트로그램에 대응하는 복수의 수면 상태 정보로 구성될 수 있다.Alternatively, the learning data set according to an embodiment of the present invention may be composed of a plurality of Mel spectrograms and a plurality of sleep state information corresponding to each Mel spectrogram.
이하 설명의 편의를 위하여 본 발명의 일실시예에 따른 수면 분석 모델의 구성 및 수행에 대하여 스펙트로그램의 데이터 세트를 기반으로 자세히 설명하나, 본 발명의 수면 분석 모델에 활용되는 학습 데이터는 스펙트로그램에 제한되는 것은 아니고, 주파수 도메인상의 정보, 스펙트로그램 또는 멜 스펙트로그램이 학습 데이터로서 활용될 수 있다.Below, for convenience of explanation, the configuration and performance of the sleep analysis model according to an embodiment of the present invention will be described in detail based on the data set of the spectrogram. However, the learning data used in the sleep analysis model of the present invention is included in the spectrogram. It is not limited, and information in the frequency domain, a spectrogram, or a mel spectrogram can be used as learning data.
본 발명의 실시예에 따른 수면 분석 모델 중 피처 추출 모델은, 하나의 스펙트로그램이 입력되어, 하나의 스펙트로그램에 해당하는 수면 상태 정보를 예측하도록 학습되는 One-to-one 프록시 태스크(Proxy task)에 의해서 사전 학습(Pre training)될 수 있다. 본 발명의 실시예에 따른 피처 추출 모델에 CNN 딥러닝 모델을 채용하는 경우에, FC(Fully Connected Layer) 또는 FCN(Fully Connected Neural Network)의 구조를 채택하여 학습을 수행할 수도 있다. 본 발명의 실시예에 따른 피처 추출 모델에 MobileViTV2 딥러닝 모델을 채용하는 경우에는, 중간층(Intermediate Layer)의 구조를 채택하여 학습을 수행할 수도 있다.Among the sleep analysis models according to an embodiment of the present invention, the feature extraction model is a one-to-one proxy task in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by . When adopting a CNN deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network). When using the MobileViTV2 deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of the intermediate layer.
본 발명의 일 실시예에 따른 수면 분석 모델 중 피처 분류 모델은, 복수의 연속된 스펙트로그램이 입력되어, 각각의 스펙트로그램의 수면 상태 정보를 예측하고, 복수의 연속된 스펙트로그램의 시퀀스를 분석하여 전체적인 수면 상태 정보를 예측 또는 분류하도록 학습될 수 있다. Among the sleep analysis models according to an embodiment of the present invention, the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. It can be learned to predict or classify overall sleep state information.
또한, 본 발명의 실시예에 따라 피처 추출 모델에 대한 One-to-one 프록시 태스크를 통해 사전 학습을 수행한 뒤, 사전 학습된 피처 추출 모델과 피처 분류 모델에 대한 Many-to-many 태스크를 통하여 파인 튜닝(Fine tuning)을 수행할 수 있다. 예컨대, 40개의 연속된 스펙트로그램의 시퀀스를, One-to-one 프록시 태스크로 학습한 복수 개의 피처 추출 모델에 입력하여 20개의 수면 상태 정보를 출력함으로써 수면 단계를 추론할 수도 있다. 전술한 스펙트로그램의 개수와 피처 추출 모델의 개수 및 수면 상태 정보의 개수와 관련한 구체적 수치적 기재는 단순한 예시일 뿐, 본 발명은 이에 제한되지는 않는다.In addition, according to an embodiment of the present invention, pre-learning is performed through a one-to-one proxy task for the feature extraction model, and then through many-to-many tasks for the pre-trained feature extraction model and feature classification model. Fine tuning can be performed. For example, the sleep stage may be inferred by inputting a sequence of 40 consecutive spectrograms into a plurality of feature extraction models learned through a one-to-one proxy task and outputting 20 sleep state information. The above-described specific numerical descriptions regarding the number of spectrograms, the number of feature extraction models, and the number of sleep state information are merely examples, and the present invention is not limited thereto.
이하, 본 발명의 일 실시예에 따라 변환된 스펙트로그램에 기초하여 생성 또는 학습되는 피처 추출 모델 및 피처 분류 모델에 대하여 자세히 설명하기로 한다. 한편, 본 발명의 수면 분석 모델은 스펙트로그램에 기초하여 생성 또는 학습되는 것만으로 한정되는 것은 아니며, 앞서 서술했듯이, 로우(raw) 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보 또는, 주파수 도메인상의 정보에 기초하여 생성 또는 학습되는 것일 수 있다. 또한, 수면 분석 모델을 통한 수면 상태 정보의 추론도 마찬가지로 로우(raw) 음향 정보의 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보 또는, 주파수 도메인상의 정보로 변환된 것에 기초하여 수행될 수 있다.Hereinafter, a feature extraction model and a feature classification model generated or learned based on the converted spectrogram according to an embodiment of the present invention will be described in detail. Meanwhile, the sleep analysis model of the present invention is not limited to being generated or learned based on a spectrogram, and as described above, information including changes along the time axis of the frequency components of raw acoustic information, or, It may be generated or learned based on information in the frequency domain. Additionally, inference of sleep state information through a sleep analysis model can also be performed based on information including changes in the frequency components of raw acoustic information along the time axis or converted to information in the frequency domain.
도 29a 및 도 29b는 본 발명에 따른 수면 분석 방법에 있어서 스펙트로그램을 이용하여 수면 장애 판단과 노이즈 부가의 성능을 설명하기 위한 도면이다.Figures 29a and 29b are diagrams for explaining the performance of determining sleep disorder and adding noise using a spectrogram in the sleep analysis method according to the present invention.
도 29a 및 도 29b에 도시된 바와 같이, 본 발명의 일 실시예에 따른 수면 분석 모델에 의하면, 소음에 의해서 스펙트로그램이 손상된 경우에도 무호흡을 높은 신뢰도로 감지할 수 있다.As shown in FIGS. 29A and 29B, according to the sleep analysis model according to an embodiment of the present invention, apnea can be detected with high reliability even when the spectrogram is damaged by noise.
피처 추출 모델Feature extraction model
피처 추출 모델은, 학습 데이터 세트를 통해 학습된 독자적인 딥러닝 모델로 구성될 수 있다. 피처 추출 모델은 지도 학습 또는 비지도 학습 방식을 통해 학습될 수 있다. 피처 추출 모델은 학습 데이터 세트를 통해 입력 데이터와 유사한 출력 데이터를 출력하도록 학습될 수 있다. 자세히 설명하면, 입력된 스펙트로그램의 핵심 특징 데이터(또는 피처)만을 히든 레이어를 통해 학습할 수 있다. 이 경우, 디코더를 통한 디코딩 과정에서 히든 레이어의 출력 데이터는 완벽한 복사 값이 아닌 입력 데이터(즉, 스펙트로그램)의 근사치일 수 있다. The feature extraction model may be composed of an independent deep learning model learned through a training data set. The feature extraction model can be learned through supervised learning or unsupervised learning methods. A feature extraction model can be trained to output output data similar to input data through a learning data set. To explain in detail, only the core feature data (or features) of the input spectrogram can be learned through the hidden layer. In this case, during the decoding process through the decoder, the output data of the hidden layer may be an approximation of the input data (i.e., spectrogram) rather than a perfect copy value.
학습 데이터 세트에 포함된 복수의 스펙트로그램 각각에는, 수면 상태 정보가 태깅될 수 있다. 복수의 스펙트로그램 각각을 피처 추출 모델에 입력될 수 있으며, 각 스펙트로그램에 대응하는 출력은 태깅된 수면 상태 정보와 매칭하여 저장될 수 있다. 구체적으로 제1수면 상태 정보(예컨대, 얕은 수면)가 태깅된 제1학습 데이터 세트들(즉, 복수의 스펙트로그램)을 입력으로 하는 경우, 해당 입력에 대한 출력에 관련한 피처들은 제1수면 상태 정보와 매칭하여 저장될 수 있다. 실시예에서, 출력에 관련한 하나 이상의 피처는 벡터 공간 상에 표시될 수 있다. 이 경우, 제1학습 데이터 세트들을 각각에 대응하여 출력된 특징 데이터들은 제1수면단계에 관련한 스펙트로그램을 통한 출력이므로, 벡터 공간 상에서 비교적 가까운 거리에 위치할 수 있다. 즉, 각 수면단계에 대응하여 복수의 스펙트로그램들이 유사한 피처를 출력하도록 학습이 수행될 수 있다. Each of the plurality of spectrograms included in the learning data set may be tagged with sleep state information. Each of the plurality of spectrograms may be input to a feature extraction model, and the output corresponding to each spectrogram may be stored by matching the tagged sleep state information. Specifically, when first learning data sets (i.e., multiple spectrograms) tagged with first sleep state information (e.g., light sleep) are used as input, features related to the output for the input are first sleep state information. It can be saved by matching. In embodiments, one or more features relevant to the output may be represented in a vector space. In this case, since the feature data output corresponding to each of the first learning data sets is output through a spectrogram related to the first sleep stage, they may be located at a relatively close distance in the vector space. That is, learning can be performed so that a plurality of spectrograms output similar features corresponding to each sleep stage.
전술한 학습 과정을 통한 피처 추출 모델은 스펙트로그램(예컨대, 수면 음향 정보에 대응하여 변환된 스펙트로그램)을 입력으로 하는 경우, 해당 스펙트로그램에 대응하는 피처를 추출할 수 있다.When the feature extraction model through the above-described learning process receives a spectrogram (eg, a spectrogram converted in response to sleep sound information) as input, features corresponding to the spectrogram can be extracted.
실시예에서, 프로세서(130)는 수면 음향 정보(SS)에 대응하여 생성된 스펙트로그램(SP)을 피처 추출 모델의 입력으로 처리하여 피처를 추출할 수 있다. 여기서, 수면 음향 정보(SS)는 사용자의 수면 동안 시계열적으로 획득되는 시계열 데이터이므로, 프로세서(130)는 스펙트로그램(SP)을 미리 정해진 에폭으로 분할할 수 있다. 예컨대, 프로세서(130)는 수면 음향 정보(SS)에 대응하는 스펙트로그램(SP)을 30초 단위로 분할하여 복수 개의 스펙트로그램들을 획득할 수 있다. 예를 들어, 사용자의 7시간(즉, 420분) 수면 동안 수면 음향 정보가 획득된 경우, 프로세서(130)는 30초 단위로 스펙트로그램을 분할하여 840개의 스펙트로그램을 획득할 수 있다. 전술한 수면 시간, 스펙트로그램의 분할 시간 단위 및 분할 개수에 대한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.In an embodiment, the processor 130 may extract features by processing the spectrogram (SP) generated in response to the sleep sound information (SS) as an input to a feature extraction model. Here, since the sleep sound information (SS) is time series data obtained sequentially during the user's sleep, the processor 130 may divide the spectrogram (SP) into predetermined epochs. For example, the processor 130 may obtain a plurality of spectrograms by dividing the spectrogram (SP) corresponding to the sleep sound information (SS) into 30-second increments. For example, if sleep sound information is acquired during the user's 7-hour (i.e., 420-minute) sleep, the processor 130 may obtain 840 spectrograms by dividing the spectrogram in 30-second increments. The detailed numerical description of the above-described sleep time, division time unit of the spectrogram, and number of divisions is only an example, and the present invention is not limited thereto.
프로세서(130)는 분할된 복수 개의 스펙트로그램들 각각을 피처 추출 모델의 입력으로 처리하여 복수 개의 스펙트로그램들 각각에 대응하는 복수의 피처를 추출할 수 있다. 예컨대, 복수 개의 스펙트로그램들의 개수가 840개인 경우, 이에 대응하여 피처 추출 모델이 추출하는 복수의 피처의 개수 또한 840개일 수 있다. 전술한 스펙트로그램 및 복수의 피처의 개수에 관련한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.The processor 130 may process each of the plurality of segmented spectrograms as input to a feature extraction model to extract a plurality of features corresponding to each of the plurality of spectrograms. For example, if the number of spectrograms is 840, the number of features extracted by the feature extraction model may also be 840. The above-described specific numerical description regarding the spectrogram and number of features is only an example, and the present invention is not limited thereto.
한편, 본 발명의 실시예에 따른 피처 추출 모델은 One-to-one 프록시 태스크에 의해 학습을 수행할 수도 있다. 또한, 하나의 스펙트로그램에 대한 수면 상태 정보를 추출하도록 학습하는 과정에 있어서, 피처 추출 모델과 또 다른 NN(Neural Network)을 결합하여 수면 상태 정보를 추출하도록 학습될 수도 있다. Meanwhile, the feature extraction model according to an embodiment of the present invention may be trained using a one-to-one proxy task. Additionally, in the process of learning to extract sleep state information for one spectrogram, it may be learned to extract sleep state information by combining a feature extraction model and another NN (Neural Network).
본 발명의 실시예에 따라, 사전 학습된 간단한 Neural Network를 거쳐서 거쳐서 학습을 수행한다면, 피처 추출 모델의 학습 시간을 단축하거나 또는 학습의 효율을 높일 수 있다.According to an embodiment of the present invention, if learning is performed through a simple pre-trained Neural Network, the learning time of the feature extraction model can be shortened or the learning efficiency can be increased.
예를 들어, 본 발명의 일실시예에 따라 30초 단위로 분할된 하나의 스펙트로그램이 피처 추출 모델의 입력으로 하여 출력된 벡터가 다른 NN의 입력으로 하여 수면 상태 정보를 출력하도록 학습될 수도 있다.For example, according to one embodiment of the present invention, one spectrogram divided in 30-second increments may be used as an input to a feature extraction model, and the output vector may be learned to output sleep state information by using it as an input to another NN. .
한편, 본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 소스 데이터를 활용하여 피처 추출 모델을 생성할 수 있다. 또한, 피처 추출 모델은 차원 감소 네트워크 함수(예컨대, 인코더(Encoder))를 포함할 수도 있다.Meanwhile, according to an embodiment of the present invention, the processor 130 may generate a feature extraction model using a plurality of source data. Additionally, the feature extraction model may include a dimensionality reduction network function (eg, Encoder).
실시예에서, 학습 데이터로 활용되는 복수의 주파수 도메인상의 정보 또는 스펙트로그램(즉, 복수의 소스 데이터에 대응하는 복수의 변환된 정보) 각각에는, 수면 단계 정보가 라벨링될 수 있다. 예컨대, 복수의 소스 데이터는 특정 공간(예컨대, 병원)에서 획득되는 수면 음향에 관한 정보이며, 복수의 수면 상태(즉, 수면 단계)에 관한 정보가 사전 라벨링되어 있을 수 있다.In an embodiment, each of a plurality of frequency domain information or spectrograms (i.e., a plurality of converted information corresponding to a plurality of source data) used as learning data may be labeled with sleep stage information. For example, the plurality of source data is information about sleeping sounds acquired in a specific space (eg, hospital), and information about a plurality of sleep states (ie, sleep stages) may be pre-labeled.
변환된 복수의 정보들 각각은 차원 감소 네트워크 함수에 입력될 수 있으며, 각 변환된 정보에 대응하는 출력은 라벨링된 수면 단계 정보와 매칭될 수 있다. 구체적으로 제1수면 단계 정보(예컨대, 얕은 수면)가 라벨링된 제1학습 데이터 세트들(예컨대, 소스 데이터에 관련한 복수의 스펙트로그램)을 차원 감소 네트워크 함수의 입력으로 하는 경우, 해당 입력에 대한 차원 감소 네트워크 함수의 출력에 관련한 피처들은 제1수면 단계 정보와 매칭될 수 있다. Each of the plurality of pieces of converted information may be input to a dimensionality reduction network function, and the output corresponding to each piece of converted information may be matched with labeled sleep stage information. Specifically, when first learning data sets (e.g., a plurality of spectrograms related to source data) labeled with first sleep stage information (e.g., light sleep) are used as input to the dimensionality reduction network function, the dimensionality for the input Features related to the output of the reduction network function may be matched with first sleep stage information.
실시예에서, 차원 감소 네트워크 함수의 출력에 관련한 하나 이상의 피처는 벡터 공간 상에 표시될 수 있다. 이 경우, 제1학습 데이터 세트들 각각에 대응하여 출력된 특징 데이터들은 제1수면 단계에 관련한 스펙트로그램을 통한 출력(예컨대, 동일한 클래스에 해당하는 스펙트로그램을 통한 출력)이므로, 벡터 공간 상에서 비교적 가까운 거리에 위치할 수 있다. In embodiments, one or more features associated with the output of a dimensionality reduction network function may be represented on a vector space. In this case, the feature data output corresponding to each of the first learning data sets are output through a spectrogram related to the first sleep stage (e.g., output through a spectrogram corresponding to the same class), so they are relatively close in the vector space. It can be located on the street.
즉, 각 수면 단계에 대응하여 복수의 스펙트로그램들이 유사한 피처를 출력하도록 차원 감소 네트워크 함수의 학습이 수행될 수 있으나, 차원 감소 네트워크의 구체적인 학습 방법은 제한되지 않는다.In other words, learning of the dimensionality reduction network function may be performed so that a plurality of spectrograms output similar features corresponding to each sleep stage, but the specific learning method of the dimensionality reduction network is not limited.
전술한 학습 과정을 통해 피처 추출 모델은 수면 음향 정보에 대응하여 변환된 정보를 입력으로 하는 경우, 해당 변환된 정보에 대응하는 피처를 추출할 수 있다.Through the above-described learning process, when the feature extraction model inputs information converted to sleep sound information, it can extract features corresponding to the converted information.
피처 분류 모델Feature classification model
도 19는 본 발명의 일실시예에 따른 수면 분석 모델의 동작을 자세히 설명하기 위한 도면이다.Figure 19 is a diagram for explaining in detail the operation of a sleep analysis model according to an embodiment of the present invention.
본 발명의 일 실시예에 따라, 프로세서(130)는 피처 추출 모델을 통해 출력된 복수의 피처를 피처 분류 모델의 입력으로 처리하여 수면 상태 정보를 획득할 수 있다. 실시예에서, 피처 분류 모델은 피처에 대응하여 수면단계를 예측하도록 모델링된 신경망 모델일 수 있다. 예컨대, 피처 분류 모델은 fully connected layer를 포함하여 구성되며, 피처를 수면단계들 중 적어도 하나로 분류하는 모델일 수 있다. 예를 들어, 피처 분류 모델은 제1스펙트로그램에 대응하는 제1피처를 입력으로 하는 경우, 해당 제1피처를 얕은 수면으로 분류할 수 있다. 또는, 예를 들어, 피처 분류 모델은 제2스펙트로그램에 대응하는 제2피처를 입력으로 하는 경우, 해당 제2피처를 깊은 잠으로 분류할 수 있다. 또는, 피처 분류 모델은 제3스펙트로그램에 대응하는 제3피처를 입력으로 하는 경우, 해당 제3피처를 렘 수면으로 분류할 수 있다. 또는, 예를 들어, 피처 분류 모델은 제4스펙트로그램에 대응하는 제4피처를 입력으로 하는 경우, 해당 제4피처를 깸으로 분류할 수 있다.According to an embodiment of the present invention, the processor 130 may obtain sleep state information by processing a plurality of features output through a feature extraction model as input to a feature classification model. In an embodiment, the feature classification model may be a neural network model modeled to predict sleep stages in response to features. For example, the feature classification model includes a fully connected layer and may be a model that classifies features into at least one of the sleep stages. For example, when the feature classification model inputs the first feature corresponding to the first spectrogram, the first feature may be classified as shallow water. Or, for example, when the feature classification model inputs a second feature corresponding to the second spectrogram, the feature classification model may classify the second feature as deep sleep. Alternatively, when the feature classification model uses a third feature corresponding to the third spectrogram as input, the third feature may be classified as REM sleep. Or, for example, when the feature classification model inputs the fourth feature corresponding to the fourth spectrogram, the feature classification model may classify the fourth feature as fine.
또한, 본 발명의 일 실시예에서, 피처 분류 모델은 피처에 대응하여 수면에서 발생하는 사건(이벤트)을 예측하도록 모델링된 신경망 모델일 수 있다. 예컨대, 피처 분류 모델은 풀리 커넥티드 레이어(fully connected layer)를 포함하여 구성되며, 피처를 수면에서 발생하는 사건 중 적어도 하나로 분류하는 모델일 수 있다. 예를 들어, 피처 분류 모델은 제1스펙트로그램에 대응하는 제1피처를 입력으로 하는 경우, 해당 제1피처를 수면 무호흡증 사건 발생으로 분류할 수 있다. 예를 들어, 피처 분류 모델은 제2스펙트로그램에 대응하는 제2피처를 입력으로 하는 경우, 해당 제2피처를 수면 저호흡증 사건 발생으로 분류할 수 있다. 예를 들어, 피처 분류 모델은 제3스펙트로그램에 대응하는 제3피처를 입력으로 하는 경우, 해당 제3피처를 수면 상태 정상으로 분류할 수 있다. 예를 들어, 피처 분류 모델은 제4스펙트로그램에 대응하는 제4피처를 입력으로 하는 경우, 해당 제4피처를 수면 중 코골이 사건으로 분류할 수 있다. 예를 들어, 피처 분류 모델은 제5스펙트로그램에 대응하는 제5피처를 입력으로 하는 경우, 해당 제5피처를 수면 중 잠꼬대 사건으로 분류할 수 있다.Additionally, in one embodiment of the present invention, the feature classification model may be a neural network model modeled to predict events that occur in sleep corresponding to features. For example, the feature classification model includes a fully connected layer and may be a model that classifies a feature as at least one of the events that occur on the water surface. For example, when the feature classification model inputs the first feature corresponding to the first spectrogram, the first feature may be classified as a sleep apnea event. For example, when the feature classification model inputs a second feature corresponding to the second spectrogram, it can classify the second feature as an occurrence of a sleep hypopnea event. For example, when the feature classification model inputs the third feature corresponding to the third spectrogram, the feature classification model may classify the third feature as a normal sleep state. For example, when the feature classification model inputs the fourth feature corresponding to the fourth spectrogram, the fourth feature may be classified as a snoring event during sleep. For example, when the feature classification model inputs the fifth feature corresponding to the fifth spectrogram, it can classify the fifth feature as a sleep talking event during sleep.
본 발명의 일 실시예에 따라, 피처 분류 모델은 복수의 피처에 대한 분류를 수행할 수 있다. 피처 분류 모델은 복수의 피처 각각을 복수의 수면 단계 중 적어도 하나로 분류할 수 있다. 또한, 본 발명의 일 실시예에 따르면, 피처 추출 모델은 피처 분류 모델로 하여금 어떠한 수면 단계에 해당하는지 분류가 용이하도록 피처를 추출하고, 피처 분류 모델은 피처 추출 모델로부터 전달된 피처를 보다 잘 분류하도록(즉, 특정 수면 단계로 잘 분류하도록) 학습될 수 있다. 다시 말해, 적대적 학습을 통해 피처 분류 모델은 피처 추출 모델로부터 전달된 피처들을 보다 잘 분류할 수 있게 된다. 일 실시예에서, 피처 분류 모델은 피처에 대응하여 수면 단계 분류 또는 수면 이벤트 분류를 잘 수행하기 위해, 피처 간의 클래스 분류가 용이하도록 학습될 수 있다.According to an embodiment of the present invention, a feature classification model can perform classification for a plurality of features. The feature classification model may classify each of a plurality of features into at least one of a plurality of sleep stages. In addition, according to an embodiment of the present invention, the feature extraction model extracts features so that the feature classification model can easily classify which sleep stage it corresponds to, and the feature classification model better classifies the features delivered from the feature extraction model. It can be trained to do so (i.e., to classify well into specific sleep stages). In other words, through adversarial learning, the feature classification model can better classify the features delivered from the feature extraction model. In one embodiment, a feature classification model may be learned to facilitate class classification between features in order to perform sleep stage classification or sleep event classification well in response to features.
본 발명의 일 실시예에 따라, 프로세서(130)는 피처 추출 모델과 피처 분류 모델의 학습 수행 결과에 따라, 피처 추출 모델과 피처 분류 모델 간 제1 로스에 관련한 제1학습 정보를 통해 피처 추출 모델을 업데이트할 수 있다. 이에 따라, 업데이트된 피처 추출 모델은 피처 분류 모델이 클래스(즉, 수면 단계)를 잘 분류하도록 하는 피처를 추출할 수 있다. 다시 말해, 업데이트된 피처 추출 모델은 동일한 수면 단계에 관련한 피처들 각각이 군집화되도록 피처를 추출할 수 있다.According to an embodiment of the present invention, the processor 130 models the feature extraction model through first learning information related to the first loss between the feature extraction model and the feature classification model, according to the learning results of the feature extraction model and the feature classification model. can be updated. Accordingly, the updated feature extraction model can extract features that allow the feature classification model to well classify the class (i.e., sleep stage). In other words, the updated feature extraction model can extract features so that each of the features related to the same sleep stage is clustered.
일 실시예에 따르면, 판별자 모델은 피처 추출 모델로부터 전달된 복수의 피처 각각이 소스 데이터에 관련한 피처인지 또는 타겟 데이터에 관련한 피처인지 여부를 구별하는 신경망 모델일 수 있다. 예컨대, 판별자 모델은 입력에 관련한 피처가 병원에서 획득한 수면 음향 정보에 대응하는 피처인지 또는, 개별 사용자의 실생활에서 획득한 수면 음향 정보에 대응하는 피처인지 여부를 판별할 수 있다. 즉, 판별자 모델은 복수의 피처 중 적어도 하나를 입력으로 하여 입력에 관련한 피처가 소스 데이터에 관련한 피처인지 또는 타겟 데이터에 관련한 피처인지 여부를 구별할 수 있다. 판별자 모델을 활용한 수면 분석 모델의 학습은 이하 자세히 후술하도록 한다.According to one embodiment, the discriminator model may be a neural network model that distinguishes whether each of the plurality of features delivered from the feature extraction model is a feature related to source data or a feature related to target data. For example, the discriminator model can determine whether the feature related to the input is a feature corresponding to sleep sound information acquired in a hospital or a feature corresponding to sleep sound information acquired in the real life of an individual user. That is, the discriminator model can use at least one of a plurality of features as input to distinguish whether the feature related to the input is a feature related to source data or a feature related to target data. Learning of the sleep analysis model using the discriminator model will be described in detail below.
피처 분류 모델은 여러 에폭에 관련한 스펙트로그램을 입력으로 하여 여러 에폭의 수면단계를 예측하는 멀티 에폭 분류를 수행할 수 있다. 멀티 에폭 분류란, 단일 에폭의 스펙트로그램(즉, 30초에 해당하는 하나의 스펙트로그램)에 대응하여 하나의 수면단계분석 정보를 제공하는 것이 아닌, 복수의 에폭에 해당하는 스펙트로그램들(즉, 각각 30초에 해당하는 스펙트로그램들의 조합)을 입력으로 하여 여러 수면단계들(예컨대, 시간 변화에 따른 수면단계들의 변화)를 한 번에 추정하기 위한 것일 수 있다. 예컨대, 호흡 패턴 또는 움직임 패턴은 뇌파 신호 또는 다른 생체 신호에 비해 천천히 변화하기 때문에, 과거와 미래의 시점에서 패턴이 어떻게 변화하는지를 관찰해야 정확한 수면단계 추정이 가능할 수 있다. 구체적인 예를 들어, 피처 분류 모델은, 40개의 스펙트로그램(예컨대, 각각 30초에 해당하는 스펙트로그램이 40개)을 입력으로 하여, 가운데에 위치한 20개의 스펙트로그램에 대한 예측을 수행할 수 있다. 즉, 1 내지 40의 스펙트로그램을 모두를 살펴보나, 10 내지 20에 대응하는 스펙트로그램에 대응하는 분류를 통해 수면단계를 예측할 수 있다. 전술한 스펙트로그램의 개수에 대한 구체적인 수치적 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.The feature classification model can perform multi-epoch classification to predict sleep stages of multiple epochs by using spectrograms related to multiple epochs as input. Multi-epoch classification does not provide one sleep stage analysis information in response to the spectrogram of a single epoch (i.e., one spectrogram corresponding to 30 seconds), but spectrograms corresponding to multiple epochs (i.e. It may be used to estimate several sleep stages (e.g., changes in sleep stages according to time changes) at once by using a combination of spectrograms (each corresponding to 30 seconds) as input. For example, because breathing or movement patterns change more slowly than brain wave signals or other biological signals, accurate sleep stage estimation may be possible only by observing how the patterns change at past and future points in time. For a specific example, the feature classification model may receive 40 spectrograms (e.g., 40 spectrograms corresponding to 30 seconds each) as input and perform prediction for the 20 spectrograms located in the center. That is, all spectrograms from 1 to 40 are examined, but the sleep stage can be predicted through classification corresponding to the spectrograms corresponding to 10 to 20. The detailed numerical description of the number of spectrograms described above is only an example, and the present invention is not limited thereto.
즉, 수면 상태 정보를 추론하는 과정에서, 단일 스펙트로그램 각각에 대응하여 수면 상태 정보의 예측을 수행하는 것이 아닌, 과거와 미래에 관련한 정보를 모두 고려할 수 있도록 복수의 에폭에 해당하는 스펙트로그램들을 입력으로 활용하도록 함으로써, 출력의 정확도 향상을 도모할 수 있다. 한편, 스펙트로그램 뿐 아니라, 복수의 에폭에 해당하는 주파수 성분의 시간 축에 따른 변화를 포함하는 정보들 또는 주파수 도메인상의 정보들을 입력으로 하여 추론을 수행함으로써, 출력의 정확도 향상을 도모할 수 있다.That is, in the process of inferring sleep state information, rather than predicting sleep state information in response to each single spectrogram, spectrograms corresponding to multiple epochs are input so that both past and future information can be considered. By utilizing it, the accuracy of output can be improved. Meanwhile, the accuracy of the output can be improved by performing inference using not only the spectrogram but also information including changes along the time axis of frequency components corresponding to multiple epochs or information in the frequency domain as input.
도 8은 본 발명에 따른 수면 분석 방법에 있어서 스펙트로그램을 이용한 수면단계분석을 설명하기 위한 도면이다.Figure 8 is a diagram for explaining sleep stage analysis using a spectrogram in the sleep analysis method according to the present invention.
본 발명의 일실시예에 따르면, Actigraphy 및 HRV에 기초한 1차 수면 분석 이후, 수면 음향 정보에 기초한 2차 분석은 상술한 바와 같은 수면 분석 모델을 이용하게 되며, 도 8에 도시된 바와 같이, 사용자의 수면 음향 정보가 입력되면 그에 대응되는 수면단계(Wake, REM, Light, Deep)가 즉각적으로 추론될 수 있다. 이에 더하여, 수면 음향 정보에 기초한 2차 분석은 수면단계에 대응하는 멜 스펙트럼의 특이점을 통해 수면장애(수면무호흡, 과호흡)나 코골이 등이 발생한 시점을 추출할 수 있다. According to one embodiment of the present invention, after the first sleep analysis based on actigraphy and HRV, the second analysis based on sleep sound information uses the sleep analysis model described above, and as shown in FIG. 8, the user When sleep sound information is input, the corresponding sleep stage (Wake, REM, Light, Deep) can be immediately inferred. In addition, secondary analysis based on sleep sound information can extract the time when sleep disorders (sleep apnea, hyperventilation) or snoring occurred through the singularity of the Mel spectrum corresponding to the sleep stage.
도 9는 본 발명에 따른 수면 분석 방법에 있어서 스펙트로그램을 이용한 수면 이벤트 판단을 설명하기 위한 도면이다.Figure 9 is a diagram illustrating sleep event determination using a spectrogram in the sleep analysis method according to the present invention.
도 9에 도시된 바와 같이, 하나의 변환된 주파수 도메인상의 정보 또는 스펙트로그램 또는 멜 스펙트로그램에 있어서 호흡 패턴을 분석하고, 수면무호흡(apnea)이나 과호흡(hyperpnea) 이벤트에 대응하는 특성이 감지되면 해당 시점을 수면 이벤트가 발생한 시점으로 판단할 수 있다. 이때, 주파수 분석을 통해서 수면무호흡(apnea)이나 과호흡(hyperpnea)이 아닌 코골이로 분류하는 과정을 더 포함할 수도 있다.As shown in FIG. 9, the breathing pattern is analyzed in one converted frequency domain information or spectrogram or mel spectrogram, and when characteristics corresponding to sleep apnea or hyperpnea events are detected, The relevant point in time can be determined as the point in time when the sleep event occurred. At this time, a process of classifying snoring rather than sleep apnea or hyperpnea through frequency analysis may be further included.
도 10은 본 발명에 따른 수면 분석 방법의 성능을 검증하기 위한 실험과정을 나타내는 도면이다. Figure 10 is a diagram showing an experimental process for verifying the performance of the sleep analysis method according to the present invention.
도 10에 도시된 바와 같이, 사용자의 수면 영상과 수면음향이 실시간으로 획득되며, 획득된 수면 음향 정보는 스펙트로그램으로 즉각 변환된다. 이때, 수면 음향 정보의 전처리과정이 이루어질 수 있다. 스펙트로그램은 수면 분석 모델에 입력되어 즉각적으로 수면단계가 분석될 수 있다.As shown in Figure 10, the user's sleep image and sleep sound are acquired in real time, and the acquired sleep sound information is immediately converted into a spectrogram. At this time, a preprocessing process of sleep sound information may be performed. The spectrogram can be input into a sleep analysis model and sleep stages can be analyzed immediately.
또한, 본 발명의 일실시예에 따른 피처 분류 모델에 CNN 또는 트랜스포머(Transformer) 기반의 딥러닝 모델을 채용하는 경우의 동작은 다음과 같이 수행될 수도 있다.Additionally, when a CNN or Transformer-based deep learning model is adopted as a feature classification model according to an embodiment of the present invention, the operation may be performed as follows.
본 발명의 일실시예에 따라 시계열 정보가 포함되어 있는 스펙트로그램이 CNN 기반의 딥러닝 모델의 입력으로 하여, 차원이 낮아진 벡터를 출력할 수 있다. 이렇게 차원이 낮아진 벡터를 Transformer 기반의 딥러닝 모델의 입력으로 하여, 시계열 정보가 함축된 벡터가 출력될 수 있다.According to one embodiment of the present invention, a spectrogram containing time series information can be used as an input to a CNN-based deep learning model, and a vector with reduced dimension can be output. By using this reduced-dimensional vector as an input to a Transformer-based deep learning model, a vector containing implied time series information can be output.
본 발명의 실시예에 따라 Transformer 기반의 딥러닝 모델의 출력 벡터에 대하여 평균 풀링(Average pooling) 기법이 적용될 수 있도록 1D CNN(1D Convolutional Neural Network)에 입력하여, 시계열 정보에 대한 평균화 작업을 통해, 시계열 정보가 함축된 N차원의 벡터로 변환하는 과정을 수행할 수도 있다. 이 경우 시계열 정보가 함축된 N차원의 벡터는 입력 데이터와의 해상도 차이가 있을 뿐, 여전히 시계열 정보를 포함하고 있는 데이터에 해당한다. According to an embodiment of the present invention, the output vector of the Transformer-based deep learning model is input to a 1D Convolutional Neural Network (1D CNN) so that the average pooling technique can be applied, and through averaging work on time series information, The process of converting time series information into an implied N-dimensional vector can also be performed. In this case, the N-dimensional vector containing time series information corresponds to data that still contains time series information, although there is only a difference in resolution from the input data.
본 발명의 실시예에 따라 출력된 시계열 정보가 함축된 N차원의 벡터들의 조합에 대한 멀티 에폭 분류를 수행하여, 여러 수면단계들에 대한 예측을 수행할 수 있다. 이 경우 Transformer 기반의 딥러닝 모델들의 출력 벡터들을 복수 개의 FC(Fully Connected layer)의 입력으로 하여 연속적인 수면 상태 정보의 예측을 수행할 수도 있다.According to an embodiment of the present invention, prediction of various sleep stages can be performed by performing multi-epoch classification on a combination of N-dimensional vectors containing output time series information. In this case, continuous prediction of sleep state information can be performed by using the output vectors of Transformer-based deep learning models as input to a plurality of FC (Fully Connected layers).
또한, 본 발명의 일실시예에 따른 피처 분류 모델에 ViT 또는 Mobile ViT 기반의 딥러닝 모델을 채용하는 경우 동작은 다음과 같이 수행될 수 있다. 도 24는 본 발명의 일실시예에 따른 자연어 처리 모델을 활용한 수면 분석 모델의 구조를 설명하기 위한 도면이다.Additionally, when a deep learning model based on ViT or Mobile ViT is employed in the feature classification model according to an embodiment of the present invention, the operation can be performed as follows. Figure 24 is a diagram for explaining the structure of a sleep analysis model using a natural language processing model according to an embodiment of the present invention.
본 발명의 일실시예에 따라 시계열 정보가 포함되어 있는 스펙트로그램이 Mobile ViT기반의 딥러닝 모델의 입력으로 하여, 차원이 낮아진 벡터를 출력할 수 있다. According to one embodiment of the present invention, a spectrogram containing time series information can be used as an input to a Mobile ViT-based deep learning model, and a vector with reduced dimension can be output.
또한, 본 발명의 실시예에 따라 Mobile ViT기반의 딥러닝 모델의 출력으로 각각의 스펙트로그램에서 피처를 추출할 수 있다.Additionally, according to an embodiment of the present invention, features can be extracted from each spectrogram as the output of a Mobile ViT-based deep learning model.
본 발명의 실시예에 따라서 차원이 낮아진 벡터를 Intermediate Layer의 입력으로 하여, 시계열 정보가 함축된 벡터가 출력될 수 있다. Intermediate Layer 모델에서는 벡터의 정보를 함축하는 선형화 단계(Lnearization), 평균과 분산을 입력하기 위한 레이어 정규화(Layer Normalization)단계 또는 일부 노드를 비활성화하는 드롭아웃(dropout)단계 중 적어도 하나 이상의 단계가 포함될 수 있다.According to an embodiment of the present invention, a vector containing time series information can be output by using a vector with a reduced dimension as an input to the intermediate layer. The intermediate layer model may include at least one of the following steps: a linearization step to imply vector information, a layer normalization step to input the average and variance, or a dropout step to disable some nodes. there is.
본 발명의 실시예에 따라서 차원이 낮아진 벡터를 Intermediate Layer의 입력으로 하여 시계열 정보가 함축된 벡터를 출력하는 과정을 수행함으로써, 과적합(overfitting)을 방지할 수 있다.According to an embodiment of the present invention, overfitting can be prevented by performing a process of outputting a vector containing time series information by using a reduced-dimensional vector as an input to the intermediate layer.
본 발명의 실시예에 따라서 Intermediate Layer의 출력 벡터를 ViT기반의 딥러닝 모델의 입력으로 하여 수면 상태 정보를 출력할 수 있다. 이 경우 시계열 정보가 포함되어 있는 주파수 도메인상의 정보, 스펙트로그램, 또는 멜 스펙트로그램에 대응하는 수면 상태 정보를 출력할 수 있다.According to an embodiment of the present invention, sleep state information can be output by using the output vector of the intermediate layer as an input to a ViT-based deep learning model. In this case, sleep state information corresponding to information on the frequency domain containing time series information, a spectrogram, or a mel spectrogram can be output.
또한, 본 발명의 일실시예에 따라서 시계열 정보가 포함되어 있는 주파수 도메인상의 정보, 스펙트로그램, 또는 멜 스펙트로그램의 일련의 구성에 대응하는 수면 상태 정보를 출력할 수 있다.In addition, according to an embodiment of the present invention, sleep state information corresponding to a series of frequency domain information, spectrogram, or mel spectrogram containing time series information can be output.
한편, 본 발명의 실시예에 따른 피처 추출 모델 또는 피처 분류 모델에는 상기 언급된 AI 모델 외에도 다양한 인공지능 모델이 채용되어 학습 또는 추론을 수행할 수도 있으며, 전술한 인공지능 모델의 종류와 관련한 구체적 기재는 단순한 예시일 뿐, 본 발명은 이에 제한되는 것은 아니다.Meanwhile, in the feature extraction model or feature classification model according to an embodiment of the present invention, various artificial intelligence models in addition to the above-mentioned AI models may be employed to perform learning or inference, and specific descriptions related to the types of artificial intelligence models described above may be provided. is merely an example, and the present invention is not limited thereto.
본 발명의 실시예들에 따른 수면 분석 모델의 비지도 또는 반지도 학습방법Unsupervised or semi-supervised learning method of sleep analysis model according to embodiments of the present invention
도 20은 본 발명의 일실시예에 따른 비지도 또는 반지도 학습모델을 설명하기 위한 도면이다.Figure 20 is a diagram for explaining an unsupervised or semi-supervised learning model according to an embodiment of the present invention.
본 발명의 실시예에 따른 데이터 셋은 특정 환경(바람직하게는, 수면다원검사 환경)에서 획득한 레이블드 데이터(labeled data)로 구성된 것일 수도 있으나, 다른 환경(바람직하게는, 수면다원검사 이외의 환경 등)에서 획득한 언레이블드 데이터(unlabeled data)로 구성된 것일 수도 있다. 전술한 환경에 대한 구체적인 기재는 단순히 예시일 뿐, 본 발명은 이에 제한되지 않는다.The data set according to an embodiment of the present invention may be composed of labeled data acquired in a specific environment (preferably, a polysomnography environment), but may be composed of labeled data acquired in a different environment (preferably, a polysomnography environment). It may be composed of unlabeled data obtained from the environment, etc. The specific description of the environment described above is merely an example, and the present invention is not limited thereto.
정답이 라벨링 되어있는 라벨링 학습 데이터인 labeled data를 사용하여 학습하는 경우에 지도 학습이 가능하지만, 정답이 라벨링 되어있지 않은 unlabeled data를 사용하여 학습하는 경우에 비지도 학습이 필요한데, 이하 본 발명의 실시예에 따른 비지도 학습모델 등에 대하여 설명한다.Supervised learning is possible when learning using labeled data, which is labeled learning data in which the correct answer is labeled, but unsupervised learning is necessary when learning using unlabeled data in which the correct answer is not labeled. Hereinafter, the present invention will be implemented. Unsupervised learning models, etc. according to examples will be explained.
타겟 환경의 노이즈를 이용한 Consistency TrainingConsistency Training using noise in the target environment
도 21은 본 발명의 일실시예에 따른 컨시스턴시 트레이닝(Consistency Training)을 설명하기 위한 도면이다.Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention.
컨시스턴시 트레이닝(Consistency Training)은 반지도학습(Semi-Supervised learning)모델의 하나의 종류로서, 본 발명의 실시예에 따른 Consistency Training은 하나의 데이터에 대하여 노이즈를 의도적으로 부가한 것과, 노이즈를 의도적으로 부가하지 않은 데이터를 가지고 학습을 수행하는 방법일 수 있다.Consistency Training is a type of semi-supervised learning model. Consistency Training according to an embodiment of the present invention involves intentionally adding noise to one data, and intentionally adding noise to one data. This may be a method of performing learning with data that has not been added.
또한, 본 발명의 실시예에 따른 Consistency Training은 타겟 환경의 노이즈를 이용하여 가상의 수면 환경의 데이터를 생성하여 학습을 수행하는 방법일 수 있다.Additionally, Consistency Training according to an embodiment of the present invention may be a method of performing learning by generating data of a virtual sleep environment using noise of the target environment.
본 발명의 실시예에 따라 의도적으로 부가되는 노이즈는 타겟 환경의 노이즈일 수 있는데, 여기서 타겟 환경의 노이즈는 예컨대 수면다원검사 이외의 환경에서 획득된 노이즈일 수 있다.Noise intentionally added according to an embodiment of the present invention may be noise of the target environment, where the noise of the target environment may be noise obtained in an environment other than polysomnography, for example.
이하 편의상, 노이즈를 의도적으로 부가한 데이터를 Corrupted data로 지칭한다. Corrupted data는 바람직하게는 의도적으로 타겟 환경의 노이즈를 부가한 데이터를 의미할 수 있다.Hereinafter, for convenience, data to which noise is intentionally added is referred to as corrupted data. Corrupted data may preferably refer to data to which noise of the target environment has been intentionally added.
또한, 이하 편의상, 노이즈를 의도적으로 부가하지 않은 데이터를 Clean data로 지칭하기로 한다. 여기서 Clean data에는 의도적으로 노이즈를 부가하지 않았을 뿐, 실질적으로 노이즈가 포함될 수도 있다.In addition, for convenience hereinafter, data to which noise has not been intentionally added will be referred to as clean data. Here, no noise was intentionally added to the clean data, but noise may actually be included.
본 발명의 일실시예에 따른 Consistency Training에 이용되는 Clean data는, 특정 환경(바람직하게는, 수면다원검사 환경)에서 획득한 데이터일 수 있고, Corrupted data는 다른 환경 또는 타겟 환경(바람직하게는, 수면다원검사 이외의 환경)에서 획득한 데이터일 수 있다.Clean data used for Consistency Training according to an embodiment of the present invention may be data acquired in a specific environment (preferably, a polysomnographic environment), and corrupted data may be data obtained in a different environment or target environment (preferably, This may be data obtained in an environment other than polysomnography.
본 발명의 일실시예에 따른 Corrupted data는 다른 환경 또는 타겟 환경(바람직하게는, 수면다원검사 이외의 환경)에서 획득한 노이즈를 Clean data에 의도적으로 부가한 데이터일 수 있다.Corrupted data according to an embodiment of the present invention may be data in which noise acquired in another environment or a target environment (preferably, an environment other than polysomnography) is intentionally added to clean data.
Consistency Training에서, 동일한 딥러닝 모델에 Clean data와 Corrupted data를 각각 입력한 경우에 각각의 출력이 서로 같아지도록 손실 함수 또는 일관성 손실(consistency loss)을 정의하여, 일관된 예측(consistent prediction)을 도모하도록 학습이 수행될 수 있다.In Consistency Training, when clean data and corrupted data are input to the same deep learning model, a loss function or consistency loss is defined so that each output is the same, learning to achieve consistent prediction. This can be done.
본 발명의 실시예에 따라 Corrupted data를 획득하기 위해, 노이즈를 부가하는 과정에서, 획득한 노이즈마다 길이가 다르다는 문제가 발생할 수도 있는데, 이 경우 여러 스펙트로그램에 대한 학습을 수행함에 있어 노이즈 샘플링 방법에 대하여 서술한다.In the process of adding noise to acquire corrupted data according to an embodiment of the present invention, a problem may arise that the length of each acquired noise is different. In this case, when performing learning on multiple spectrograms, the noise sampling method may be used. Describe about it.
본 발명의 실시예에 따른 노이즈의 종류는 적어도 9종 이상일 수 있으며, 각 종류의 노이즈마다 수천개 이상의 음향 정보를 적용할 수도 있다. According to an embodiment of the present invention, there may be at least 9 types of noise, and thousands of pieces of sound information may be applied to each type of noise.
본 발명의 실시예에 따른 복수 개의 스펙트로그램이 입력될 때에, 각각의 스펙트로그램이 30초 단위로 분할되어 40개(총 20분의 시간 간격에 해당하는 데이터)가 딥러닝 모델의 입력으로 될 수도 있다. 이러한 입력 데이터와 시간 간격을 맞추기 위하여, 노이즈를 20분에 해당하는 시간 간격에 해당하도록 임의로 샘플링을 진행할 수 있다(예컨대, 5분, 9분, 4분, 7분... 등). 만약 샘플링한 노이즈들의 총 시간 간격이 20분이 넘어가는 경우에는, 20분을 넘어가는 부분을 제외할 수도 있다. When a plurality of spectrograms according to an embodiment of the present invention are input, each spectrogram may be divided into 30 second units and 40 (data corresponding to a total time interval of 20 minutes) may be input to the deep learning model. there is. In order to match the input data and time interval, noise can be randomly sampled to correspond to a time interval of 20 minutes (e.g., 5 minutes, 9 minutes, 4 minutes, 7 minutes, etc.). If the total time interval of the sampled noises exceeds 20 minutes, the portion exceeding 20 minutes may be excluded.
본 발명의 실시예에 따른 Clean data인 스펙트로그램의 시간 간격과 동일한 시간 간격(예컨대, 20분)에 해당하는 노이즈들에 대하여도 스펙트로그램으로 변환하는 과정을 수행하고, Clean data인 스펙트로그램에 임의적으로 부가함으로써, Corrupted data를 획득할 수 있다. A process of converting noises into a spectrogram is also performed on noises corresponding to the same time interval (e.g., 20 minutes) as the time interval of the clean data spectrogram according to an embodiment of the present invention, and a random change is performed on the clean data spectrogram. Corrupted data can be obtained by adding .
본 발명의 실시예에 따라 스펙트로그램에 임의적으로 노이즈를 부가하는 과정에 있어서, 스펙트로그램은 멜 스케일이 적용된 멜 스펙트로그램일 수 있다. 한편, 본 발명의 실시예에 따라 노이즈를 부가하는 과정에 있어서, 노이즈는 음향 정보와 동일한 도메인의 노이즈 또는 스펙트로그램 또는 멜 스케일을 적용한 멜 스펙트로그램과 동일한 도메인의 노이즈일 수 있다. 여기서 음향 정보의 도메인은 진폭, 위상, 주파수를 가지는 도메인일 수 있다. In the process of arbitrarily adding noise to a spectrogram according to an embodiment of the present invention, the spectrogram may be a Mel spectrogram to which a Mel scale is applied. Meanwhile, in the process of adding noise according to an embodiment of the present invention, the noise may be noise or spectrogram of the same domain as the acoustic information, or noise of the same domain as the Mel spectrogram to which the Mel scale is applied. Here, the domain of acoustic information may be a domain having amplitude, phase, and frequency.
또한, 본 발명의 실시예에 따른 스펙트로그램 또는 멜 스펙트로그램의 도메인은 진폭, 주파수를 가지는 도메인일 수 있다.Additionally, the domain of the spectrogram or mel spectrogram according to an embodiment of the present invention may be a domain having amplitude and frequency.
본 발명의 실시예에 따라 노이즈를 스펙트로그램 또는 멜 스펙트로그램과 동일한 도메인으로 변환하여 부가하는 경우에는, 노이즈에 임의의 Phase를 부여하여 부가과정을 진행할 수 있는데, 이를 통해 멜 상태의 데이터의 역산이 어려워짐을 통해서, 데이터의 비식별화를 유지하여 개인의 프라이버시를 보호할 수 있는 한 편, 학습의 연산량을 낮추어 학습시간을 단축할 수 있다.According to an embodiment of the present invention, when noise is converted to the same domain as the spectrogram or Mel spectrogram and added, the addition process can be performed by assigning a random phase to the noise, through which the inversion of the data in the Mel state can be performed. By making it more difficult, individual privacy can be protected by maintaining de-identification of data, while learning time can be shortened by lowering the computational amount of learning.
또한, 본 발명의 실시예에 따라 멜 스케일에서 부가하는 방법에 의하면 하드웨어가 데이터를 처리하는 데에 소요되는 시간이 단축될 수 있다.Additionally, the time required for hardware to process data can be shortened by the method added by Mel Scale according to an embodiment of the present invention.
획득한 Corrupted data와 Clean data를 동일한 딥러닝 모델의 입력으로 하였을 때, 출력이 서로 같아지도록 학습을 시키는 것이 Consistency Training 방법이라고 할 수 있다. 한편, 전술한 시간 간격 및 스펙트로그램의 개수 등과 관련한 구체적 기재는 본 발명의 이해를 돕기 위한 예시일 뿐, 본 발명은 이에 제한되는 것은 아니다.When the acquired corrupted data and clean data are used as inputs to the same deep learning model, training them so that the outputs are the same can be said to be a consistency training method. Meanwhile, the detailed description regarding the above-described time interval and number of spectrograms is only an example to aid understanding of the present invention, and the present invention is not limited thereto.
Unsupervised Domain Adaptation (UDA)Unsupervised Domain Adaptation (UDA)
도 22는 본 발명의 일실시예에 따른 UDA(Unsupervised Domain Adaptation)를 설명하기 위한 도면이다. 본 발명의 일 실시예에 따르면, 프로세서(130)는, 피처 추출 모델, 피처 분류 모델 및 판별자 모델을 포함하는 인공지능 모델에 대한 학습을 수행할 수 있다.Figure 22 is a diagram for explaining Unsupervised Domain Adaptation (UDA) according to an embodiment of the present invention. According to one embodiment of the present invention, the processor 130 may perform learning on an artificial intelligence model including a feature extraction model, a feature classification model, and a discriminator model.
본 발명의 실시예에 따른 UDA는 labeled data를 이용한 Supervised learning을 통해서 AI 모델을 충분히 학습시킨 뒤에, 추가적으로 주어지는 unlabeled data만으로 추가 학습을 시킬 수 있다.UDA according to an embodiment of the present invention can sufficiently learn an AI model through supervised learning using labeled data, and then conduct additional learning only with additional unlabeled data.
또는, 본 발명의 일실시예에 따른 UDA는 1차 학습과 2차 학습으로 구성 및 수행될 수 있다.Alternatively, UDA according to an embodiment of the present invention may be configured and performed through primary learning and secondary learning.
본 발명의 일실시예에 따른 UDA의 1차 학습에서는 unlabeled data와 labeled data를 활용할 수 있다.In the first learning of UDA according to an embodiment of the present invention, unlabeled data and labeled data can be used.
본 발명의 일실시예에 따른 UDA의 2차 학습에서는 unlabeled data를 활용할 수 있다.In the secondary learning of UDA according to an embodiment of the present invention, unlabeled data can be used.
본 발명의 일실시예에 따른 UDA의 1차 학습은, 서로 다른 환경에서 획득한 데이터를 하나의 수면 분석 모델의 입력으로 하여 데이터간의 공통점을 추출해낼 수 있도록 학습을 수행하는 것을 포함할 수 있다. 또한, 서로 다른 환경에서 획득한 데이터를 하나의 수면 분석 모델의 입력으로 하여 추출한 데이터간의 공통점을 딥러닝 모델의 입력으로 하여, 입력된 데이터간의 차이점을 구별하여 분류하도록 학습을 수행하는 것을 포함할 수 있다. 본 발명의 일실시예에 따른 UDA의 1차 학습은 labeled data와 unlabeled data 중 공통된 데이터(예컨대, 사람의 수면 음향 정보)를 피처 추출 모델을 이용하여 추출하도록 학습하는 것을 포함할 수 있다.The primary learning of UDA according to an embodiment of the present invention may include performing learning to extract commonalities between data by using data acquired in different environments as input to a sleep analysis model. In addition, it may include performing learning to distinguish and classify differences between the input data by using data acquired in different environments as input to one sleep analysis model and using commonalities between the extracted data as input to the deep learning model. there is. The primary learning of UDA according to an embodiment of the present invention may include learning to extract common data (eg, human sleep sound information) among labeled data and unlabeled data using a feature extraction model.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는, 특정 환경(바람직하게는, 수면다원검사 환경)에서 획득한 데이터일 수 있고, unlabeled data는 다른 환경 또는 타겟 환경 (바람직하게는, 수면다원검사 이외의 환경)에서 획득한 데이터일 수 있다. Labeled data used for primary learning of UDA according to an embodiment of the present invention may be data acquired in a specific environment (preferably, a polysomnographic environment), and unlabeled data may be data acquired in a different environment or target environment (preferably a polysomnography environment). In other words, it may be data obtained in an environment other than polysomnography.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는, 특정 인종(예컨대, 한국인)으로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 다른 인종(예컨대, 황인종, 흑인종, 백인종, 히스패닉 등)으로부터 획득한 수면 음향 정보일 수 있다.Labeled data used for primary learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a specific race (e.g., Korean), and unlabeled data may be sleep sound information obtained from a specific race (e.g., yellow race, black race, white race). , Hispanic, etc.), it may be sleep sound information obtained from people.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 특정 성별(예컨대, 남자)로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 다른 성별(예컨대, 여자)로부터 획득한 수면 음향 정보일 수 있다.Labeled data used for primary learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a specific gender (e.g., male), and unlabeled data may be sleep sound information obtained from a different gender (e.g., female). It may be acoustic information.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 특정 연령대(예컨대, 20대)로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 다른 연령대(예컨대, 10대, 30대, 40대 등)로부터 획득한 수면 음향 정보일 수 있다.Labeled data used for primary learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a specific age group (e.g., 20s), and unlabeled data may be sleep sound information obtained from a specific age group (e.g., 10s or 30s). It may be sleep sound information obtained from people in their 40s, etc.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 특정 신체구성지수집단(예컨대, 체질량지수 BMI 25이상인 집단)으로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 다른 신체구성지수집단(예컨대, 체질량지수 BMI 25미만인 집단)으로부터 획득한 수면 음향 정보일 수 있다. Labeled data used for primary learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a specific body composition index group (e.g., a group with a body mass index BMI of 25 or more), and unlabeled data may be sleep sound information obtained from a specific body composition index group (e.g., a group with a body mass index of 25 or more) It may be sleep sound information obtained from an index group (for example, a group with a body mass index of less than 25 BMI).
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 수면 질환이 있는 집단(예컨대, 수면무호흡증 질환자 집단)으로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 수면 질환이 없는 집단(예컨대, 수면무호흡증 질환이 없는 집단)으로부터 획득한 수면 음향 정보일 수 있다. Labeled data used for primary learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a group with sleep disease (e.g., a group of patients with sleep apnea), and unlabeled data may be sleep sound information obtained from a group without sleep disease. It may be sleep sound information obtained from (for example, a group without sleep apnea disease).
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 호흡기 질환이 있는 집단(예컨대, 천식 질환자 집단)으로부터 획득한 수면 음향 정보일 수 있고, unlabeled data는 호흡기 질환이 없는 집단(예컨대, 천식 질환이 없는 집단)으로부터 획득한 수면 음향 정보일 수 있다. Labeled data used in the first learning of UDA according to an embodiment of the present invention may be sleep sound information obtained from a group with respiratory disease (e.g., a group of asthma patients), and unlabeled data may be sleep sound information obtained from a group without respiratory disease (e.g., a group of asthma patients). For example, it may be sleep sound information obtained from a group without asthma disease.
본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 labeled data는 상술한 각각의 환경 또는 특성을 개별적으로 적용하는 것에 제한되지 않고, 하나 이상의 환경 또는 특성을 나타내는 대상집단의 조합으로부터 획득한 음향 정보일 수 있다. Labeled data used for primary learning of UDA according to an embodiment of the present invention is not limited to applying each environment or characteristic described above individually, but is obtained from a combination of target groups representing one or more environments or characteristics. It may be acoustic information.
또한, 본 발명의 일실시예에 따른 UDA의 1차 학습에 이용되는 unlabeled data는 상술한 각각의 환경 또는 특성을 개별적으로 적용하는 것에 제한되지 않고, 하나 이상의 환경 또는 특성을 나타내는 대상집단의 조합으로부터 획득한 음향 정보일 수 있다.In addition, the unlabeled data used for primary learning of UDA according to an embodiment of the present invention is not limited to applying each environment or characteristic described above individually, but is obtained from a combination of target groups representing one or more environments or characteristics. It may be acquired acoustic information.
또한, 본 발명의 일실시예에 따른 UDA의 1차 학습은, 특정 환경에서 획득한 데이터와 다른 환경 또는 타겟 환경 에서 획득한 데이터 각각을, 피처 추출 모델의 입력으로 하여 추출한 공통된 데이터를 판별자(Discriminator) 모델의 입력으로 하여, 입력된 데이터가 특정 환경으로부터 획득된 것인지, 다른 환경 또는 타겟 환경으로부터 획득된 것인지 여부를 분류하기 위해 학습하는 것을 포함할 수 있다.In addition, the primary learning of UDA according to an embodiment of the present invention uses data acquired in a specific environment and data acquired in a different environment or target environment as input to a feature extraction model, and uses common data extracted as a discriminator ( Discriminator) may include learning to classify whether the input data was obtained from a specific environment, another environment, or the target environment as input to the model.
이 경우, 본 발명의 일실시예에 따른 UDA의 1차 학습에서, 피처 추출 모델은 입력된 데이터간의 공통점만 출력하도록 학습되므로, 특정 환경으로부터 획득한 데이터와, 다른 환경 또는 타겟 환경으로부터 획득한 데이터간의 분류를 약화하는 역할을 수행할 수 있고, 판별자 모델은 데이터간의 분류를 강화하는 역할을 수행할 수 있으므로, 이를 위해 각각의 모델에 적용되는 loss를 반대로 설정할 수도 있다.In this case, in the first learning of UDA according to an embodiment of the present invention, the feature extraction model is learned to output only commonalities between input data, so data acquired from a specific environment and data acquired from a different environment or target environment It can play a role in weakening the classification between data, and the discriminator model can play a role in strengthening the classification between data, so for this purpose, the loss applied to each model can be set to the opposite way.
본 발명의 실시예에서, 특정 환경으로부터 획득한 데이터와는 달리 다른 환경 또는 타겟 환경으로부터 획득한 데이터에는 수면 상태 정보와 관련한 라벨링이 없을 수 있다. 따라서, 특정 환경(예컨대, 수면다원검사 환경)으로부터 획득한, 수면 상태 정보가 라벨링된 데이터를 피처 추출 모델 또는 피처 분류 모델을 통해 수면 상태 정보의 학습을 별도로 수행할 수도 있다. 여기서는 위 라벨링된 데이터가 입력되어 수면 상태 정보에 대한 학습을 수행하는 피처 추출 모델 또는 피처 분류 모델을 편의상 Classifier로 지칭하기로 한다. In an embodiment of the present invention, unlike data acquired from a specific environment, data acquired from another environment or target environment may not have labeling related to sleep state information. Accordingly, learning of sleep state information may be separately performed using data labeled with sleep state information obtained from a specific environment (eg, a polysomnography environment) through a feature extraction model or feature classification model. Here, the feature extraction model or feature classification model that performs learning on sleep state information by inputting the above labeled data will be referred to as a Classifier for convenience.
이와 같은 학습이 적절히 수행된다면, 피처 추출 모델은 특정 환경으로부터 획득한 데이터와, 다른 환경 또는 타겟 환경으로부터 획득한 데이터를 입력으로 하여, 입력된 데이터간의 공통점만 추출하도록 학습이 수행되기 때문에, 피처 추출 모델의 출력 데이터 중 다른 환경 또는 타겟 환경으로부터 획득한, 라벨링되지 않은 데이터의 출력값을 Classifier에 입력하더라도 수면 상태 정보가 출력될 수 있다.If such learning is properly performed, the feature extraction model uses data acquired from a specific environment and data acquired from another environment or target environment as input, and is trained to extract only the commonalities between the input data, so feature extraction Sleep state information can be output even if the output value of unlabeled data obtained from another environment or target environment among the model's output data is entered into the Classifier.
정리하면, 본 발명의 실시예에 따른 UDA의 1차 학습은, 피처 추출 모델을 통해서 특정 환경(예컨대, 수면다원검사 환경) 또는 다른 환경 또는 타켓 환경(예컨대, 수면다원검사 이외의 환경)으로부터 획득한 데이터의 공통된 피처를 추출 또는 출력하고, 출력된 공통된 피처를 판별자 모델에 입력하여 특정 환경으로부터 획득한 데이터와, 다른 환경 또는 타겟 환경으로부터 획득한 데이터의 차이점을 분류할 수 있도록 학습을 수행하는 한 편, 특정 환경으로부터 획득한 데이터로부터 수면 상태 정보를 획득하는 Classifier를 학습시킴으로써, 다른 환경 또는 타겟 환경으로부터 획득한 데이터를 상기 피처 추출 모델에 입력하여 추출된 정보를 Classifier에 입력하면, 비록 라벨링 되어있지 않은 데이터라 할지라도 수면 상태 정보를 출력하도록 학습이 수행될 수 있다.In summary, the primary learning of UDA according to an embodiment of the present invention is obtained from a specific environment (e.g., polysomnography environment) or another environment or target environment (e.g., environment other than polysomnography) through a feature extraction model. Extracting or outputting common features of one data and inputting the output common features into a discriminator model to perform learning to classify the differences between data obtained from a specific environment and data obtained from another environment or target environment. On the other hand, by learning a classifier that acquires sleep state information from data acquired from a specific environment, data acquired from another environment or target environment is input into the feature extraction model and the extracted information is input into the classifier, although it is labeled Even if there is no data, learning can be performed to output sleep state information.
또한, 본 발명의 실시예에 따른 판별자 모델의 출력 데이터는, UDA의 1차 학습에 재활용될 수도 있고, Classifier의 최종 출력에 대한 보정값으로 사용되는 등 다양한 방법으로 활용될 수도 있다.In addition, the output data of the discriminator model according to an embodiment of the present invention may be recycled in the primary learning of UDA and may be used in various ways, such as being used as a correction value for the final output of the classifier.
본 발명의 실시예에 따른 UDA의 1차 학습 중, Classifier가 특정 환경으로부터 획득한 데이터로부터 수면 상태 정보를 학습하는 과정에서는, 다른 환경 또는 타겟 환경(예컨대, 가정 환경 등)으로부터 획득한 데이터를 입력 받지 않으며, 또한 다른 환경 또는 타겟 환경으로부터 획득한 데이터에는 수면단계에 대한 label이 없기 때문에, 위 다른 환경 또는 타겟 환경으로부터 획득한 데이터를 이용한 학습이 이루어지지 않을 수 있다.During the primary learning of UDA according to an embodiment of the present invention, in the process of learning sleep state information from data obtained by the classifier from a specific environment, data acquired from another environment or target environment (e.g., home environment, etc.) is input. Also, since data acquired from other environments or target environments do not have labels for sleep stages, learning using data acquired from other environments or target environments may not be performed.
본 발명의 실시예에 따른 UDA의 1차 학습을 이상적으로 수행한 경우에는 피처 추출 모델이 데이터간의 공통점을 추출해낼 수 있으므로, 출력된 공통점을 입력으로 하는 Classifier가 수면 상태 정보를 출력함에 있어서 군집화(Clustering)를 통해, 입력으로 된 데이터에 해당하는 수면 단계가 REM 수면인지, Light 수면인지, Wake 상태인지, 또는 Deep 수면 단계인지 여부를 잘 구분해낼 수 있지만, 그러한 군집화를 더 잘 수행할 수 있도록 Conditional Entropy 등의 기법을 이용하여 2차 학습을 수행할 수도 있다.When the first learning of UDA according to an embodiment of the present invention is ideally performed, the feature extraction model can extract commonalities between data, so the classifier with the output commonalities as input performs clustering (clustering) when outputting sleep state information. Clustering), it is possible to distinguish well whether the sleep stage corresponding to the input data is REM sleep, light sleep, wake state, or deep sleep stage, but Conditionalization is used to better perform such clustering. Secondary learning can also be performed using techniques such as Entropy.
본 발명의 실시예에 따른 UDA의 2차 학습에서는, unlabeled data를 딥러닝 모델의 입력으로 하여 학습을 수행할 수 있다.In secondary learning of UDA according to an embodiment of the present invention, learning can be performed using unlabeled data as input to a deep learning model.
라벨링이 되어있지 않은 데이터를 딥러닝 모델에 입력하면 예측값(Prediction), 신뢰도(Confidence) 등의 정보가 출력될 수 있다. 여기서 신뢰도가 높을수록 예측값이 포함하고 있는 클래스 정보를 더 신뢰할 수 있는 것을 의미할 수 있다.When unlabeled data is input into a deep learning model, information such as prediction and confidence can be output. Here, a higher reliability may mean that the class information contained in the predicted value is more reliable.
본 발명의 실시예에 따른 UDA의 2차 학습에서는, loss를 이용해서 Classifier의 수면 상태 정보 또는 수면단계정보의 예측값이 포함하고 있는 클래스 정보를 더 신뢰할 수 있도록 학습을 하는 과정이 수행되며, 이 경우 라벨링이 되어있지 않은 출력 데이터를 이용하여 스스로 학습하는 방법을 포함할 수 있다.In the secondary learning of UDA according to an embodiment of the present invention, a process of learning is performed using loss to make the class information included in the predicted value of the sleep state information or sleep stage information of the classifier more reliable. In this case, It can include a method of self-learning using unlabeled output data.
상술한 다양한 환경 또는 특성에 대한 구체적 기재는 단순히 예시일 뿐이며, 본 발명은 이에 제한되지는 않는다.The specific description of the various environments or characteristics described above is merely an example, and the present invention is not limited thereto.
또한, 본 발명의 일 실시예에 따르면, 프로세서(130)는 피처 추출 모델을 활용하여 복수의 소스 데이터 및 복수의 타겟 데이터 각각에 대응하는 복수의 피처를 추출할 수 있다. 프로세서(130)는 복수의 소스 데이터에 대응하는 복수의 변환된 정보(예컨대, 주파수 도메인상의 정보 또는 스펙트로그램) 및 복수의 타겟 데이터에 대응하는 복수의 변환된 정보(예컨대, 주파수 도메인상의 정보 또는 스펙트로그램)을 피처 추출 모델의 입력으로 처리하여 복수의 피처를 추출할 수 있다. 즉, 피처 추출 모델의 출력에 관련한 복수의 피처는, 소스 데이터에 관련한 복수의 피처 및 타겟 데이터에 관련한 복수의 피처를 포함할 수 있다.Additionally, according to an embodiment of the present invention, the processor 130 may utilize a feature extraction model to extract a plurality of features corresponding to each of a plurality of source data and a plurality of target data. The processor 130 may generate a plurality of converted information (e.g., information on the frequency domain or a spectrogram) corresponding to a plurality of source data and a plurality of converted information (e.g., information on the frequency domain or a spectrogram) corresponding to a plurality of target data. Gram) can be processed as input to a feature extraction model to extract multiple features. That is, the plurality of features related to the output of the feature extraction model may include a plurality of features related to source data and a plurality of features related to target data.
일 실시예에서, 복수의 소스 데이터 및 복수의 타겟 데이터는 서로 상이한 도메인에 관련한 데이터임에 따라, 복수의 소스 데이터에 대응하는 변환된 정보(예컨대, 주파수 도메인상의 정보 또는 스펙트로그램)들은 각 에폭 별 추출된 피처들에 수면 단계에 대한 정보가 라벨링되어 있으나, 복수의 타겟 데이터에 대응하는 정보들에는 각 에폭 별 추출된 피처들에 수면 단계에 대한 정보가 라벨링되어 있지 않을 수 있다. 즉, 다양한 노이즈를 포함하는 타겟 데이터에 대응하는 피처들은 라벨링된 정보가 없기 때문에, 수면 단계 분류가 어려울 수 있다.In one embodiment, since the plurality of source data and the plurality of target data are data related to different domains, the converted information (e.g., information in the frequency domain or spectrogram) corresponding to the plurality of source data is generated for each epoch. Although the extracted features are labeled with information about the sleep stage, the information corresponding to the plurality of target data may not be labeled with the information about the sleep stage in the extracted features for each epoch. In other words, sleep stage classification may be difficult because features corresponding to target data containing various noises do not have labeled information.
이에 따라, 본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 소스 데이터에 대응하는 복수의 제1피처들 및 복수의 타겟 데이터에 대응하는 복수의 제2피처들 각각을 벡터 공간 상에서 인접 배치되게 하되, 복수의 제1피처들 및 복수의 제2피처들 각각이 클래스 별로 군집화하여 배치되도록 할 수 있다.Accordingly, according to an embodiment of the present invention, the processor 130 adjacent each of the plurality of first features corresponding to the plurality of source data and the plurality of second features corresponding to the plurality of target data in the vector space. However, each of the plurality of first features and the plurality of second features may be clustered and arranged by class.
본 발명의 일 실시예에 따르면, 복수의 소스 데이터에 대응하는 제1피처들과, 복수의 타겟 데이터에 대응하는 제2피처들은 각각 다양한 피처(예컨대, 얕은 수면, REM 수면등의 수면 단계의 피처)에 대한 정보를 포함할 수 있다. 여기서, 복수의 타겟 데이터에 대응하는 제2피처들은 라벨링된 정보가 없지만, 복수의 소스 데이터에 대응하는 제1피처들을 기준으로 잘 섞이는 경우, 제1피처들이 분류됨에 따라, 제2피처들에 대한 분류도 가능해질 수 있으므로, 다양한 노이즈를 포함하는 수면 음향 정보(즉, 복수의 타겟 데이터)에 대한 분석 또한 가능해질 수 있다. 즉, 제2피처들은, 라벨링된 정보가 존재하는 제1피처들을 기준으로, 해당 제1피처들과 잘 섞이되 클래스 간의 분류가 용이하도록 매핑되는 것이 중요할 수 있다.According to an embodiment of the present invention, the first features corresponding to a plurality of source data and the second features corresponding to a plurality of target data each include various features (e.g., features of sleep stages such as light sleep, REM sleep, etc. ) may include information about. Here, the second features corresponding to the plurality of target data do not have labeled information, but when they are well mixed based on the first features corresponding to the plurality of source data, as the first features are classified, the second features Since classification may become possible, analysis of sleep acoustic information (i.e., multiple target data) including various noises may also become possible. In other words, it may be important that the second features be mapped to blend well with the first features and facilitate classification between classes, based on the first features in which labeled information exists.
구체적으로, 제2피처들은 클래스 간 분류가 용이하게 맵핑될 수 있다. 예컨대, 제1피처들과 제2피처들이 벡터 공간 상에서 멀리 떨어져있는 경우, 제1피처들의 라벨링 정보를 기준으로 각 클래스를 분류할 때(예컨대, 가상의 선을 통해 제1피처들의 클래스를 분류하는 경우), 제2피처들의 상이한 클래스에 해당하는 피처들이 서로 동일한 클래스로 분류되거나, 동일한 클래스에 해당하는 피처들이 서로 상이한 클래스로 분류될 수 있다. 다시 말해, 본원 발명은 제1피처들과 제2피처들 각각이 벡터 공간 상에서 인접 배치되게 하되, 각 피처들이 클래스 별로 군집화하여 배치되도록 피처 추출 모델을 학습시킬 수 있다.Specifically, the second features can be easily mapped for classification between classes. For example, when the first features and the second features are far away in the vector space, when classifying each class based on the labeling information of the first features (e.g., classifying the class of the first features through an imaginary line) case), features corresponding to different classes of the second features may be classified into the same class, or features corresponding to the same class may be classified into different classes. In other words, the present invention allows each of the first and second features to be arranged adjacent to each other in a vector space, and a feature extraction model can be trained so that each feature is clustered and arranged by class.
이를 위해, 프로세서(130)는 복수의 피처를 피처 분류 모델 및 판별자 모델 각각으로 전달할 수 있다.To this end, the processor 130 may transfer a plurality of features to each of the feature classification model and the discriminator model.
일 실시예에 따르면, 피처 분류 모델은 복수의 피처를 하나 이상의 수면 단계 각각으로 분류하는 신경망 모델일 수 있다. 피처 분류 모델은 피처에 대응하여 수면 단계를 예측하도록 학습된 신경망 모델일 수 있다. 실시예에서, 프로세서(130)는 피처들 각각에 매칭된 라벨 정보를 활용하여 신경망에 대한 학습을 수행하여 피처 분류 모델을 생성할 수 있다. 예컨대, 피처 분류 모델은 풀리 커넥티드 레이어(fully connected layer)를 포함하여 구성될 수 있으며, 피처를 수면 단계들 중 적어도 하나로 분류하는 모델일 수 있다. 예를 들어, 피처 분류 모델은 제1스펙트로그램에 대응하는 피처를 입력으로 하는 경우, 해당 피처를 얕은 수면(예컨대, 제1수면 단계)으로 분류할 수 있다.According to one embodiment, the feature classification model may be a neural network model that classifies a plurality of features into each of one or more sleep stages. The feature classification model may be a neural network model learned to predict sleep stages in response to features. In an embodiment, the processor 130 may generate a feature classification model by performing learning on a neural network using label information matched to each feature. For example, the feature classification model may include a fully connected layer and may be a model that classifies features into at least one of the sleep stages. For example, when the feature classification model inputs a feature corresponding to the first spectrogram, the feature may be classified as shallow sleep (eg, first sleep stage).
한편, 본 발명의 일 실시예에 따라, 프로세서(130)는 피처 추출 모델과 피처 분류 모델의 학습 수행 결과에 따라, 피처 추출 모델과 피처 분류 모델 간 제1 로스에 관련한 제1학습 정보를 통해 피처 추출 모델을 업데이트할 수 있다. Meanwhile, according to an embodiment of the present invention, the processor 130 uses the first learning information related to the first loss between the feature extraction model and the feature classification model according to the learning results of the feature extraction model and the feature classification model. The extraction model can be updated.
일 실시예에 따르면, 프로세서(130)는 판별자 모델로부터 제2학습 정보를 획득할 수 있다. 제2학습 정보는, 피처 추출 모델 및 판별자 모델 간의 적대적 학습에 관련한 것일 수 있다.According to one embodiment, the processor 130 may obtain second learning information from the discriminator model. The second learning information may be related to adversarial learning between the feature extraction model and the discriminator model.
프로세서(130)는 피처 추출 모델과 판별자 모델의 제2 로스를 통한 학습을 수행할 수 있다. 제2 로스는, 피처 추출 모델과 판별자 모델 간의 적대적 학습에 관련한 로스를 의미할 수 있다.The processor 130 may perform learning through the second loss of the feature extraction model and the discriminator model. The second loss may refer to the loss related to adversarial learning between the feature extraction model and the discriminator model.
구체적인 예를 들어, 판별자 모델은 소스 데이터에 대응하는 제1피처를 입력으로 하는 경우, 1에 가까운 확률값을 출력하고, 타겟 데이터에 대응하는 제2피처를 입력으로 하는 경우, 0에 가까운 확률값을 출력하도록 학습될 수 있다. 제1피처를 입력했을 때의 출력값과 1의 차이, 그리고 제2피처를 입력했을 때의 출력값과 0과의 차이, 두 경우의 합이 판별자 모델의 로스(또는 손실 함수)일 수 있다. 피처 추출 모델의 목적은 판별자 모델을 속이는 것(즉, 제1피처와 제2피처 간 구분이 어렵도록)으로, 피처 추출 모델이 생성한 피처를 판별자 모델에 입력했을 때 1에 가깝게 나오도록 학습될 수 있다. 해당 출력값과 1의 오차가 피처 추출 모델의 로스일 수 있다. 즉, 프로세서(130)에 의해 각 모델은 로스가 최소화되는 방향으로 학습될 수 있다. 다시 말해, 프로세서(130)는 적대 로스가 최소화되는 방향으로 피처 추출 모델 및 판별자 모델의 파라미터를 업데이트하여 적대 신경망에 대한 학습을 수행할 수 있다.For a specific example, when the discriminator model inputs the first feature corresponding to source data, it outputs a probability value close to 1, and when it inputs the second feature corresponding to target data, it outputs a probability value close to 0. It can be learned to print. The sum of the difference between the output value when inputting the first feature and 1, and the difference between the output value when inputting the second feature and 0 may be the loss (or loss function) of the discriminator model. The purpose of the feature extraction model is to deceive the discriminator model (i.e., make it difficult to distinguish between the first and second features) so that when the features generated by the feature extraction model are input to the discriminator model, they come out close to 1. It can be learned. The error between the output value and 1 may be the loss of the feature extraction model. That is, each model can be learned by the processor 130 in a way that minimizes loss. In other words, the processor 130 may perform training on the adversarial neural network by updating the parameters of the feature extraction model and discriminator model in a direction that minimizes adversarial loss.
또한, 본 발명의 일 실시예에서, 프로세서(130)는 피처 추출 모델을 통해 최대한 제1피처에 가까운 제2피처를 생성하도록 하고, 판별자 모델을 통해 제2피처를 타겟 데이터에 관련한 피처로 판별될 확률이 높도록 각 모델의 파라미터를 업데이트할 수 있다. Additionally, in one embodiment of the present invention, the processor 130 generates a second feature as close to the first feature as possible through a feature extraction model, and determines the second feature as a feature related to target data through a discriminator model. You can update the parameters of each model to increase the probability of success.
즉, 프로세서(130)는 피처 추출 모델 및 판별자 모델 간의 제2적대 로스를 제2학습 정보로 활용하여 피처 추출 모델의 파라미터를 업데이트함으로써, 피처 추출 모델이 양 도메인에 관련한 스펙트로그램에 대응하여 유사한 피처(즉, 벡터 공간 상에 위치가 근접한 피처)를 출력하도록 할 수 있다. 다시 말해, 제2학습 정보를 통해 업데이트된 피처 추출 모델은, 도메인에 상관없이 소스 데이터에 관련한 제1피처들 및 타겟 데이터에 관련한 제2피처들을 구분 없이 잘 섞이도록 벡터 공간 상에 추출할 수 있다.That is, the processor 130 updates the parameters of the feature extraction model by using the second adversarial loss between the feature extraction model and the discriminator model as second learning information, so that the feature extraction model has similar spectrograms corresponding to the two domains. Features (i.e., features whose positions are close in the vector space) can be output. In other words, the feature extraction model updated through the second learning information can extract the first features related to the source data and the second features related to the target data in a vector space so that they are well mixed without distinction, regardless of the domain. .
전술한 바와 같이, 프로세서(130)는 제1학습 정보 및 제2학습 정보를 통해 업데이트된 피처 추출 모델은 소스 데이터 및 타겟 데이터에 관련한 스펙트로그램을 입력으로 하는 경우, 제1피처들과 제2피처들 각각이 벡터 공간 상에서 인접 배치되게 하되, 각 피처들이 클래스 별로 군집화하여 배치되도록 할 수 있다.As described above, when the feature extraction model updated through the first learning information and the second learning information inputs the spectrogram related to the source data and the target data, the processor 130 selects the first features and the second features. Each of these features can be arranged adjacent to each other in the vector space, but each feature can be clustered and arranged by class.
본 발명의 일 실시예에 따르면, 라벨링 정보가 있는 제1피처들을 기준으로 라벨링 정보가 없는 제2피처들이 적절히 배치되도록 함으로써, 제1피처들을 분류됨에 따라, 제2피처들에 대한 분류도 가능해질 수 있다. 이에 따라, 다양한 노이즈를 포함하는 수면 음향 정보(즉, 복수의 타겟 데이터)에 대한 분석 또한 가능해질 수 있다.According to an embodiment of the present invention, second features without labeling information are appropriately arranged based on first features with labeling information, so that as the first features are classified, classification of the second features becomes possible. You can. Accordingly, analysis of sleep sound information (i.e., multiple target data) including various noises may also be possible.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 소스 데이터 및 복수의 타겟 데이터 각각을 미리 정해진 샘플 단위로 분할하여 복수의 소스 서브 데이터 및 복수의 타겟 서브 데이터를 생성할 수 있다.According to an embodiment of the present invention, the processor 130 may generate a plurality of source sub-data and a plurality of target sub-data by dividing each of the plurality of source data and the plurality of target data into predetermined sample units.
또한, 본 발명의 일 실시예에서, 프로세서(130)는 복수의 소스 서브 데이터 및 복수의 타겟 서브 데이터 각각에 대응하는 주파수 도메인상의 정보 또는 스펙트로그램을 피처 추출 모델의 입력으로 처리하여 하나 이상의 샘플 피처를 생성할 수 있다.Additionally, in one embodiment of the present invention, the processor 130 processes information or spectrograms in the frequency domain corresponding to each of a plurality of source sub-data and a plurality of target sub-data as input to a feature extraction model to generate one or more sample features. can be created.
구체적으로, 프로세서(130)는 소스 데이터 및 타겟 데이터 각각에 대응하는 주파수 도메인상의 정보 또는 스펙트로그램을 피처 추출 모델의 입력으로 처리하는 것이 아닌, 각 데이터를 샘플 단위로 분할하고, 분할된 샘플 단위에 대응하는 복수의 주파수 도메인상의 정보 또는 스펙트로그램을 복수 개의 피처 추출 모델 각각의 입력으로 처리할 수 있다. 실시예에서, 복수 개의 피처 추출 모델 각각은 파라미터를 공유하는 것을 특징으로 할 수 있다. 즉, 복수 개의 피처 추출 모델은 동일한 성능을 갖도록 업데이트된 것일 수 있다. Specifically, rather than processing information or spectrograms in the frequency domain corresponding to each of the source data and target data as input to the feature extraction model, the processor 130 divides each data into samples and Information or spectrograms on the corresponding plurality of frequency domains can be processed as input to each of the plurality of feature extraction models. In an embodiment, each of the plurality of feature extraction models may be characterized by sharing parameters. That is, a plurality of feature extraction models may be updated to have the same performance.
각 샘플에 대응하는 스펙트로그램들은, 각 피처 추출 모델을 독립적으로 통과함에 따라 피처들이 생성될 수 있으며, 생성된 피처들 각각은 판별자 모델에 전달될 수 있다. 이 경우, 판별자 모델은 샘플 단위에 대응하는 피처들 각각을 전달받게 된다.Spectrograms corresponding to each sample may generate features as they independently pass through each feature extraction model, and each of the generated features may be passed to the discriminator model. In this case, the discriminator model receives each feature corresponding to the sample unit.
본 발명의 실시예들에 따른 로우(raw) 수면 음향 정보는, 시간에 따른 시퀀셜(또는 시계열) 데이터이며, 이는 큰 용량의 데이터일 수 있다. 시퀀셜 데이터에 기반하여 그 주파수 성분들의 시간 축에 따른 변화를 포함하는 정보 또는 주파수 도메인상의 정보(예컨대, 스펙트로그램)을 생성하고, 생성된 스펙트로그램을 판별자 모델로 전달하는 경우, 판별자 모델은 전달된 스펙트로그램을 에폭 단위로 분할하고, 각 에폭 단위에 대응하는 판단(예컨대, 소스 데이터에 관련한 피처인지, 타겟 데이터에 관련한 피처인지 판단)을 수행하여야 하므로 배우고자 하는 학습 정보(또는 학습량)가 가중될 수 있다. 다시 말해, 샘플 단위로 분할되지 않은 전체 스펙트로그램에 대응하여 피처를 추출하고, 이를 판별자 모델로 전달하는 경우, 판별자 모델의 학습의 효율이 저하될 수 있다.Raw sleep sound information according to embodiments of the present invention is sequential (or time series) data according to time, and may be large-capacity data. When generating information including changes along the time axis of the frequency components or information in the frequency domain (e.g., a spectrogram) based on sequential data, and passing the generated spectrogram to the discriminator model, the discriminator model Since the transmitted spectrogram must be divided into epoch units and a decision corresponding to each epoch unit (e.g., judgment whether it is a feature related to the source data or a feature related to the target data) must be performed, the learning information (or learning amount) to be learned is It can be aggravating. In other words, when features are extracted corresponding to the entire spectrogram that has not been divided into samples and transmitted to the discriminator model, the learning efficiency of the discriminator model may be reduced.
따라서, 프로세서(130)는 데이터(예컨대, 스펙트로그램)를 샘플 단위로 분할하고, 각 샘플에 대응하여 피처들이 추출되도록 하고, 각 샘플 별 피처가 판별자 모델로 입력되도록 할 수 있다. 이는, 샘플 투 샘플(Sample to sample)을 통해 더 적은 데이터로 판별자 모델의 학습을 가능하도록 하며, 효율적인 학습을 통해 전체적인 모델의 성능 향상을 야기시킬 수 있다.Accordingly, the processor 130 may divide data (eg, a spectrogram) into samples, extract features corresponding to each sample, and input features for each sample into a discriminator model. This makes it possible to learn the discriminator model with less data through sample to sample, and can improve the overall model performance through efficient learning.
본 발명의 일 실시예에 따르면, 프로세서(130)는 복수의 타겟 데이터를 활용한 의사결정 경계 반복 정제 학습을 통해 피처 분류 모델을 정제시킬 수 있다. 피처 분류 모델의 정제는, 피처들을 각 클래스로 분류 과정에서, 소스 데이터에 대응하는 피처들 보다 우선적으로 타겟 데이터에 대응하는 피처들을 분류 기준으로 활용하도록 하는 것을 의미할 수 있다. 다시 말해, 소스 데이터에 대응하는 피처들의 결정 경계(즉, 분류 경계)를 타겟 데이터에 대응하는 피처들을 기준으로 하는 경계로 변형하는 것을 의미할 수 있다. 프로세서(130)는 타겟 측 클러스터 가정 위반 손실을 최소화함으로써, 결정 경계를 데이터 밀도 영역에서 점차적으로 밀어낼 수 있다.According to one embodiment of the present invention, the processor 130 may refine the feature classification model through decision boundary iterative refinement learning using a plurality of target data. Refining the feature classification model may mean using features corresponding to target data as a classification standard rather than features corresponding to source data in the process of classifying features into each class. In other words, this may mean transforming the decision boundary (i.e., classification boundary) of features corresponding to source data into a boundary based on features corresponding to target data. Processor 130 may gradually push the decision boundary out of the data density region by minimizing the target-side cluster assumption violation loss.
구체적으로, 프로세서(130)는 교사 네트워크를 활용하여 의사결정 경계 반복 정제 학습을 수행할 수 있다. 의사결정 경계 반복 정제 학습은, 교사 네트워크 및 학생 네트워크 각각의 출력에 관련한 조건부 엔트로피를 최소화하는 것에 기초하여 결정 경계의 배치를 개선하도록 하는 학습일 수 있다. 구체적인 실시예에서, 프로세서(130)는 복수의 타겟 데이터에 대응하는 스펙트로그램을 학생 네트워크 및 교사 네트워크 각각에 입력할 수 있다. 이 경우, 학생 네트워크 및 교사 네트워크 각각은, 피처 추출 모델 및 피처 분류 모델을 포함하여 구성될 수 있다. 프로세서(130)는 학생 네트워크의 출력과 교사 네트워크의 출력에 관련한 조건부 엔트로피를 통해 결정 경계의 배치가 개선되도록 학습시킬 수 있다. Specifically, the processor 130 may perform decision boundary iterative refinement learning using a teacher network. Decision boundary iterative refinement learning may be learning to improve the placement of decision boundaries based on minimizing conditional entropy related to the output of each teacher network and student network. In a specific embodiment, the processor 130 may input spectrograms corresponding to a plurality of target data into each of the student network and the teacher network. In this case, each of the student network and teacher network may be configured to include a feature extraction model and a feature classification model. The processor 130 can learn to improve the arrangement of the decision boundary through conditional entropy related to the output of the student network and the output of the teacher network.
이에 따라, 피처 분류 모델은 소스 데이터에 대응하는 피처들의 결정 경계를 기반으로 수행하던 분류를 타겟 데이터에 대응하는 피처들의 기준으로 분류를 수행하도록 결정 경계를 변형하도록 정제될 수 있다. 본 발명의 수면 분석 모델은 일반 사용자들의 실생활에서 노이즈가 많이 포함된 음향에 대한 분석 정보를 제공하도록 구비되어야 하기 때문에, 전술한 바와 같이, 타겟 데이터에 대응하는 피처들이 결정 경계에 기반이 되는 경우, 수면 상태 정보 산출에 정확도가 향상될 수 있다. 다시 말해, 의사결정 경계 반복 정제 학습을 통해 피처 분류 모델은 다양한 노이즈를 포함하는 수면 음향 정보에 관련한 피처들에 대응하여 향상된 정확도의 수면 상태 정보를 출력할 수 있다.Accordingly, the feature classification model can be refined to transform the decision boundary so that classification, which was performed based on the decision boundary of features corresponding to the source data, is performed based on the features corresponding to the target data. Since the sleep analysis model of the present invention must be equipped to provide analysis information on sounds containing a lot of noise in the real lives of general users, as described above, when the features corresponding to the target data are based on the decision boundary, Accuracy in calculating sleep state information can be improved. In other words, through decision boundary iterative refinement learning, the feature classification model can output sleep state information with improved accuracy in response to features related to sleep acoustic information including various noises.
본 발명의 일 실시예에 따르면, 프로세서(130)는 학습 완료 시점에 대응하여 학습 모델을 통해 수면 분석 모델을 생성할 수 있다. 구체적으로, 피처 추출 모델과 피처 분류 모델 간의 적대 학습 및 피처 추출 모델과 판별자 모델 간의 적대 학습을 통해 업데이트된 학습 모델에 기반하여, 학습된 피처 추출 모델과 피처 분류 모델을 기초로 수면 분석 모델을 생성할 수 있다. 즉, 수면 분석 모델은 도 17a 또는 도 17b에 도시된 바와 같이, 업데이트된 학습 모델에서 피처 추출 모델 및 피처 분류 모델을 통해 구성될 수 있다.According to one embodiment of the present invention, the processor 130 may generate a sleep analysis model through a learning model in response to the time when learning is completed. Specifically, based on the updated learning model through adversarial learning between the feature extraction model and the feature classification model and adversarial learning between the feature extraction model and the discriminator model, a sleep analysis model was developed based on the learned feature extraction model and feature classification model. can be created. That is, the sleep analysis model can be constructed through a feature extraction model and a feature classification model in the updated learning model, as shown in FIG. 17A or 17B.
본 발명의 일 실시예에 따른 수면 분석 모델은 적응적 학습 과정 즉, 제1학습 정보 및 제2학습 정보를 통해 업데이트된 트레이닝 모델을 통해 생성됨에 따라, 다양한 노이즈를 포함하는 음향 데이터에도 향상된 정확도를 통해 수면 상태를 예측할 수 있다.The sleep analysis model according to an embodiment of the present invention is created through an adaptive learning process, that is, a training model updated through first learning information and second learning information, thereby providing improved accuracy even for acoustic data containing various noises. Through this, you can predict your sleep state.
본 발명의 일 실시예에 프로세서(130)는 사용자 단말(10)로부터 수면 음향 정보를 획득할 수 있으며, 획득된 수면 음향 정보에 대응하는 수면 상태 정보를 제공할 수 있다. 프로세서(130)는 수면 분석 모델을 활용하여 수면 음향 정보에 대응하는 수면 상태 정보를 생성할 수 있다.In one embodiment of the present invention, the processor 130 may obtain sleep sound information from the user terminal 10 and provide sleep state information corresponding to the acquired sleep sound information. The processor 130 may generate sleep state information corresponding to sleep sound information using a sleep analysis model.
이 경우, 수면 분석 모델은 전술한 적응적 학습을 통해 다양한 노이즈를 포함하는 다양한 노이즈를 포함하는 음향 데이터에도 견고한 예측을 수행할 수 있으므로, 사용자로 하여금 자신의 일상 환경에서 용이하게 자신의 수면 상태에 대한 분석 정보를 획득할 수 있게 한다는 장점이 있다. 다시 말해, 전문 의료 기관을 직접 방문하거나, 비용이 들지 않으며, 음향 획득이 가능한 장비를 제외한 별도의 특수 장비를 구비하거나, 특수한 수면 환경을 조성하지 않더라도, 일반적인 가정 환경에서 자신의 수면 상태에 관한 분석 정보를 제공받을 수 있다.In this case, the sleep analysis model can perform robust predictions even on acoustic data containing a variety of noises through the adaptive learning described above, allowing users to easily monitor their sleep status in their daily environment. It has the advantage of being able to obtain analysis information. In other words, analysis of one's sleep status in a general home environment, even without directly visiting a specialized medical institution, without cost, without having to have separate special equipment other than equipment capable of acquiring sound, or without creating a special sleep environment. Information can be provided.
슈도 라벨(pseudo label)을 이용한 Semi-Supervised learningSemi-supervised learning using pseudo labels
본 발명의 실시예에 따른 Semi-Supervised learning은 라벨링이 되어있지 않은 데이터를 입력한 딥러닝 모델이 출력한 데이터를 pseudo label로 활용함으로써 딥러닝 모델의 학습을 수행하는 것을 의미할 수 있다.Semi-supervised learning according to an embodiment of the present invention may mean performing learning of a deep learning model by using data output by a deep learning model inputting unlabeled data as a pseudo label.
라벨링이 되어있지 않은 데이터를 딥러닝 모델에 입력하여 예측값(Prediction), 신뢰도(Confidence) 등의 정보가 출력될 수 있다. 여기서 신뢰도가 높을수록 예측값이 포함하고 있는 클래스 정보를 더 신뢰할 수 있는 것을 의미할 수 있다.By inputting unlabeled data into a deep learning model, information such as prediction and confidence can be output. Here, a higher reliability may mean that the class information contained in the predicted value is more reliable.
본 발명의 실시예에 따른 Semi-Supervised learning은, 라벨링이 되어있지 않은 데이터를 딥러닝 모델에 입력하였을 때, 딥러닝 모델에서 출력되는 예측값(Prediction)을 새로운 label(pseudo label)로 취급하여 그것을 기초로 수면 상태 정보에 대한 학습을 수행할 수 있다.Semi-supervised learning according to an embodiment of the present invention treats the prediction value output from the deep learning model as a new label (pseudo label) when unlabeled data is input into a deep learning model and uses it as a basis. You can learn about sleep state information.
본 발명의 실시예에 따른 Semi-Supervised learning은, 학습을 수행하기 위해서 이미지에 대한 어그멘테이션 전처리를 할 수 있다. 어그멘테이션 전처리는 weakly-augmented 방식 또는 strongly-augmented 방식일 수 있다.Semi-supervised learning according to an embodiment of the present invention can perform augmentation preprocessing on images to perform learning. Augmentation preprocessing can be weakly-augmented or strongly-augmented.
본 발명의 실시예에 따르면, weakly-augmented 방식은 이미지를 상대적으로 적게 변조시키는 방법으로서, 하나 이상의 어그멘테이션 기법이 사용될 수 있다. Weakly-augmented 방식의 어그멘테이션 기법으로는 데이터 어그멘테이션 또는 Pitch shifting 어그멘테이션 기법(바람직하게는, 10% 내지 20%의 범위에서 pitch가 shifting 되는 기법)이 포함될 수 있다.According to an embodiment of the present invention, the weakly-augmented method is a method that modulates the image relatively little, and one or more augmentation techniques can be used. Weakly-augmented augmentation techniques may include data augmentation or pitch shifting augmentation techniques (preferably, a technique in which the pitch is shifted in the range of 10% to 20%).
본 발명의 실시예에 따르면, strongly-augmented 방식은 이미지를 상대적으로 많이 변조시키는 방법으로서, 하나 이상의 어그멘테이션 기법이 사용될 수 있다. Strongly-augmented 방식의 어그멘테이션 기법으로는 데이터 어그멘테이션, TUT 어그멘테이션 또는 노이즈 부가 어그멘테이션 기법 중 하나 이상이 포함될 수 있다.According to an embodiment of the present invention, the strongly-augmented method is a method of modulating an image relatively heavily, and one or more augmentation techniques may be used. The strongly-augmented augmentation technique may include one or more of data augmentation, TUT augmentation, or noise-added augmentation techniques.
본 발명의 실시예에 따른 학습 방법에는, 이미지에 대한 어그멘테이션 전처리 과정을 거친 뒤, 그것을 딥러닝 모델의 입력으로 하여 학습시키는 방법을 포함할 수 있다.weakly-augmentated된 이미지 정보를 딥러닝 모델의 입력으로 하여 출력된 예측값(Prediction)을 슈도 라벨(pseudo label)로 활용함으로써, 그것을 기반으로 다시 학습을 진행하는 방법을 포함할 수 있다. 본 발명의 실시예에 따른 Weakly-augmented 방식의 어그멘테이션 기법을 활용하여 학습이 진행되는 중, 중간단계의 학습 정보를 최종 학습모델에 반영하기 위해서 이동평균(Moving Average)기법, 가중평균(Weighted Average)기법, 가중이동평균(Weighted Moving Average)기법, 또는 지수가중이동평균(Exponential Weighted Moving Average)기법 등을 활용할 수 있다.The learning method according to an embodiment of the present invention may include a method of going through an augmentation preprocessing process for an image and then learning it by using it as an input to a deep learning model. Using weakly-augmentated image information as an input to a deep learning model By using the prediction output as an input as a pseudo label, a method of performing learning again based on it can be included. While learning is in progress using the weakly-augmented augmentation technique according to an embodiment of the present invention, moving average technique and weighted average are used to reflect intermediate learning information in the final learning model. Average) technique, Weighted Moving Average technique, or Exponential Weighted Moving Average technique can be used.
본 발명의 실시예에 따라, Weakly-augmented 방식의 어그멘테이션 기법을 활용한 데이터를 딥러닝 모델의 입력으로 하여 추론을 진행함으로써 생성될 수 있는 신뢰도 높은 슈도 라벨(pseudo label)을 얻을 수 있다.According to an embodiment of the present invention, a highly reliable pseudo label that can be generated by performing inference using data using a weakly-augmented augmentation technique as input to a deep learning model can be obtained.
본 발명의 실시예에 따른 학습 방법에는, weakly-augmented 방식의 데이터 어그멘테이션을 통해 비지도학습을 진행하여 얻어지는 슈도 라벨(pseudo label)을 데이터의 라벨로 활용하여 strongly-augmented 데이터 어그멘테이션을 통해 지도학습(supervised learning)을 진행할 수 있다. 슈도 라벨(pseudo label)을 이용한 지도학습(supervised learning)을 진행함으로써, 이미지가 상대적으로 많이 변조된 것을 입력으로 하여 더 많은 정보에 대해서 학습할 수 있다. 또한, 데이터의 라벨링 작업 없이도 지도학습을 진행하여 더 많은 데이터에 대한 학습을 수행할 수 있다.In the learning method according to an embodiment of the present invention, strongly-augmented data augmentation is performed by using pseudo labels obtained by performing unsupervised learning through weakly-augmented data augmentation as data labels. Through this, supervised learning can be performed. By performing supervised learning using pseudo labels, more information can be learned using relatively heavily modulated images as input. In addition, supervised learning can be performed without data labeling to learn more data.
또한, 본 발명의 실시예에 따른 학습 방법에는, 타겟 환경(예컨대, 수면다원검사 이외의 환경 등)또는 타겟 대상집단(예컨대, 수면 질환이 없는 대상집단 등)으로부터 획득한 데이터를 딥러닝 모델의 입력으로 하여 학습을 시킨 결과로 출력되는 수면상태의 예측값(예컨대, REM 수면단계의 예측값, Wake 상태의 예측값, light 수면단계의 예측값, deep 수면단계의 예측값 등)의 분포(distribution)가, 특정 환경(예컨대, 수면다원검사 환경 등)또는 비교대상집단(예컨대, 수면 질환자 대상 집단 등)으로부터 획득한 데이터를 딥러닝 모델의 입력으로 하여 학습을 시킨 결과로 출력되는 수면상태의 예측값의 분포와 일치하도록 형성되게끔 튜닝(tuning)을 수행하는 방법을 포함할 수 있다.In addition, the learning method according to an embodiment of the present invention involves using data acquired from a target environment (e.g., an environment other than polysomnography, etc.) or a target target group (e.g., a target group without sleep diseases, etc.) of a deep learning model. The distribution of the predicted values of the sleep state (e.g., predicted values of the REM sleep stage, predicted values of the wake state, predicted values of the light sleep stage, predicted values of the deep sleep stage, etc.) output as a result of learning as input is determined in a specific environment. Data acquired from (e.g., polysomnography environment, etc.) or comparison group (e.g., group of sleep disorder patients, etc.) as input to a deep learning model to match the distribution of predicted values of sleep state output as a result of learning. It may include a method of performing tuning so that it is formed.
이 경우, 특정 환경(예컨대, 수면다원검사 환경 등)에서 획득한 데이터를 딥러닝 모델의 입력으로 하여 출력된 수면상태의 예측값의 분포가 다른 환경 또는 타켓 환경(예컨대, 수면다원검사 이외의 환경 등)에서 획득한 예측값의 분포가 서로 완전히 일치하지는 않을 수도 있지만, 모델링 데이터가 서로 일치하는 방향으로 형성되게끔 tuning하는 방법을 포함할 수 있다.In this case, data acquired in a specific environment (e.g., polysomnography environment, etc.) is used as input to a deep learning model, and the distribution of the predicted value of the output sleep state is different in an environment or target environment (e.g., an environment other than polysomnography, etc.) ), the distributions of the predicted values obtained may not completely match each other, but may include a tuning method so that the modeling data is formed in a consistent direction.
Un/Self-Supervised learningUn/Self-Supervised learning
본 발명의 실시예에 따른 Un-Supervised learning 또는 Self-Supervised learning은 이미지 도메인에서 이미지 정보에 label이 없더라도 딥러닝으로 하여금 이미지 정보에 대한 예측값의 신뢰도가 높아질 수 있도록 사전 학습을 수행하는 방법을 의미할 수 있다. 이 경우 이미지 정보의 일부분을 훼손한 뒤, 훼손된 이미지 정보 부분을 예측할 수 있도록 학습을 수행하는 방법을 포함할 수 있다.Un-Supervised learning or Self-Supervised learning according to an embodiment of the present invention refers to a method of performing dictionary learning so that deep learning can increase the reliability of the prediction value for image information even if there is no label in the image information in the image domain. You can. In this case, it may include a method of damaging part of the image information and then performing learning to predict the damaged part of the image information.
본 발명의 실시예에 따른 학습 방법은 unlabeled data를 딥러닝 모델의 입력으로 하여 사전 학습을 먼저 수행한 뒤에, labeled data를 입력으로 하여 추가 학습을 수행하는 방법을 포함할 수 있다. The learning method according to an embodiment of the present invention may include first performing dictionary learning using unlabeled data as input to a deep learning model, and then performing additional learning using labeled data as input.
본 발명의 실시예에 따른 Un-Supervised learning 또는 Self-Supervised learning 방법에 따른 사전 학습을 수행한 딥러닝 모델에 더 적은 수의 labeled data를 입력하여 원래 목적했던 task를 수행하도록 학습을 시킨 결과, 사전 학습된 딥러닝 모델의 예측값에 대한 신뢰도가 더욱 높아질 수 있다.As a result of training a deep learning model that performed dictionary learning according to the Un-Supervised learning or Self-Supervised learning method according to an embodiment of the present invention to perform the originally intended task by inputting a smaller number of labeled data, the dictionary The reliability of the predicted values of the learned deep learning model can be further increased.
한편, 음향 정보를 기반으로 한 수면 상태 정보의 분석으로는, 호흡 및 신체 움직임 등, 수면 음향에 대한 패턴 식별 단계가 포함될 수 있다. 그러나, 수면 음향의 패턴의 특성은 시간의 흐름에 걸쳐 반영되는 것이기 때문에, 특정 시점의 짧은 음향 데이터 스냅샷(Snap-shot)만으로는 완전히 파악하기 어려울 수 있다. 따라서 음향 정보를 모델링하기 위해서는 음향 정보의 시계열 특성에 기초하여 분석이 수행되어야 하고, 이러한 시계열 데이터에 반지도 학습 방법을 적용하는 것에 대한 수요가 있어 왔다.Meanwhile, analysis of sleep state information based on sound information may include a step of identifying patterns for sleep sounds, such as breathing and body movements. However, because the characteristics of sleep sound patterns are reflected over time, it may be difficult to fully understand them with only a short snapshot of sound data at a specific point in time. Therefore, in order to model acoustic information, analysis must be performed based on the time series characteristics of acoustic information, and there has been a demand for applying semi-supervised learning methods to such time series data.
또한, 라벨(label)이 지정되지 않은 음향 정보에는 사용자가 사용자 단말(10)을 통하여 획득한 음향 정보인 환경 센싱 정보가 포함될 수 있는데, 이러한 환경 센싱 정보에는 라벨이 지정되지 않은 데이터(예컨대, 생활 소음, 여러 사람으로부터 야기되는 소리, 음악 소리, 자연의 소리 등)가 포함될 수 있고, 이렇게 품질 관리가 제대로 이루어지지 않을 우려가 있는 환경에서 획득한 데이터 모델링에 대한 새로운 접근 방식의 수요가 있어 왔다.In addition, unlabeled sound information may include environmental sensing information, which is sound information acquired by the user through the user terminal 10. This environmental sensing information includes unlabeled data (e.g., life There has been a demand for new approaches to modeling data acquired in environments where quality control may be lacking (noise, sounds from multiple people, music, sounds of nature, etc.).
이에, 본 발명의 일 실시예에 따르면, 수면 음향 정보의 시계열적인 특성을 고려하는 순차적 일관성 손실(sequential consistency loss)에 기초한 반지도 학습(Semi-supervised learning) 방법이 제공될 수 있다.Therefore, according to an embodiment of the present invention, a semi-supervised learning method based on sequential consistency loss that considers the time-series characteristics of sleep sound information can be provided.
또한, 실시예에서, 라벨(label)이 지정되지 않은 정보로부터 분포 외(OOD: Out-of-distribution) 데이터를 처리하는 반지도 대조 학습(SSCL: Semi- supervised contrastive learning) 방법이 제공될 수 있다.Additionally, in an embodiment, a semi-supervised contrastive learning (SSCL) method may be provided to process out-of-distribution (OOD) data from unlabeled information. .
본 발명의 실시예들에 따른 반지도 학습 및 반지도 대조 학습 방법을, 라벨(label)이 지정된 음향 데이터 세트 및 수면 다원 검사(PSG)의 음향 데이터 세트를 포함한 다양한 데이터 세트에 기초하여 평가한 결과, 수면 분석 모델의 성능이 실제 환경에서도 견고하다는 효과가 있고, 본 발명의 실시예에 따른 수면 분석 모델의 일반화 가능성이 있다는 것을 알 수 있었다. 이하 노이즈 특성과 시계열 특성을 모두 포함하는 실제 환경에서의 수면 음향 정보를 처리하기 위한 반지도 학습과, 반지도 대조 학습 방법에 대하여 도면 및 수식을 이용하여 자세히 설명한다.Results of evaluating the semi-supervised learning and semi-supervised contrastive learning methods according to embodiments of the present invention based on various data sets, including labeled acoustic data sets and acoustic data sets from polysomnography (PSG) , it was found that the performance of the sleep analysis model is robust even in real environments, and that there is a possibility of generalization of the sleep analysis model according to the embodiment of the present invention. Hereinafter, the semi-supervised learning and semi-supervised contrast learning methods for processing sleep acoustic information in a real environment, including both noise characteristics and time series characteristics, will be described in detail using drawings and formulas.
시간적 분석 또는 시계열적 정보에 대한 분석을 필요로 하는 음향 정보 기반의 수면 분석 방법은 시퀀스 예측 작업으로 구성될 수 있다. 여기서 로 표시되는 일련의 멜 스펙트로그램 샘플이 입력되어, 이에 대응되는 수면 단계 라벨의 시퀀스인 가 예측 또는 출력될 수 있다. 여기서 xi 및 yi는 각각 일련의 정보인 x 및 y의 i번째 샘플을 의미하고, Ns는 시퀀스 내의 샘플의 수를 의미한다. A sleep analysis method based on acoustic information that requires analysis of temporal or time-series information may consist of a sequence prediction task. here A series of Mel spectrogram samples, denoted by , are input, and the corresponding sequence of sleep stage labels is can be predicted or output. Here, x i and y i mean the ith sample of x and y, which are a series of information, respectively, and N s means the number of samples in the sequence.
수면 단계의 레이블인 yi는 깸(Wake) 단계, 렘(REM) 수면 단계, 라이트(Light) 수면 단계, 딥(Deep) 수면 단계의 네 가지 가능한 수면 단계 정보의 클래스로 나타날 수 있고, 원-핫 라벨(one-hot label)로 표현될 수 있다. 한편, 본 발명의 일 실시예에 따르면, 낮은 수준의 특징 추출을 위한 백본(backbone) 네트워크와 멜 스펙트로그램 간의 시계열적 상관관계를 학습하기 위한 헤드로 구성되는 시퀀스 투 시퀀스(sequence-to-sequence) 모델을 이용할 수 있다. y i , the label of the sleep stage, can appear as a class of four possible sleep stage information: wake stage, REM sleep stage, light sleep stage, and deep sleep stage. It can be expressed as a one-hot label. Meanwhile, according to an embodiment of the present invention, a sequence-to-sequence system consisting of a backbone network for low-level feature extraction and a head for learning the time-series correlation between Mel spectrograms model is available.
실시예에 따르면, 이를 기반으로 백본 네트워크와 헤드(head) 네트워크를 각각 도 17b에 도시된 바와 같이, MobileViTV2 및 ViT 등, 트랜스포머 기반의 인공지능 모델로 교체할 수 있다. 이러한 모델은 시퀀스 로 나타나는 수면 단계 로짓(logit)에 대한 예측을 생성하고, 지도 학습 기준선(Supervised baseline)은 교차 엔트로피 손실(LSUP: cross-entorpy loss)을 사용하여 독점적으로 훈련된다.According to the embodiment, based on this, the backbone network and the head network can be replaced with transformer-based artificial intelligence models such as MobileViTV2 and ViT, respectively, as shown in FIG. 17B. These models are sequenced It generates predictions for the logit of sleep stages expressed as , and the supervised baseline is trained exclusively using cross-entropy loss (L SUP ).
순차적 일관성 손실(Sequential Consistency Loss)에 기초한 학습 방법Learning method based on sequential consistency loss
실험실 또는 병원 환경이 아닌 실제 일상생활에서의 환경에서 고성능을 달성하기 위해서는, 라벨이 지정되지 않은 데이터()를 사용하는 것이 중요하다. 본 발명의 일 실시예에 따른 컨시스턴시 트레이닝을 위해서, ui로부터 두 개의 서로 다른 증강(augmented) 샘플인 를 생성하고, 수면 분석 모델은 각 샘플에 대응되는 수면 단계의 로짓인 를 출력할 수 있다. 여기에 아래 [수학식 1]과 같은 샘플별 일관성 손실(LC: consistency loss)이 사용될 수 있다. [수학식 1]에서 Jensen-Shannon 발산이 사용될 수 있고, Bu는 라벨이 지정되지 않은 언레이블드 시퀀스의 배치 크기를 의미한다.To achieve high performance in real-life environments rather than laboratory or hospital environments, unlabeled data ( ) is important to use. For consistency training according to an embodiment of the present invention, two different augmented samples from u i are , and the sleep analysis model is the logit of the sleep stage corresponding to each sample. can be output. Here, the consistency loss (L C ) for each sample as shown in [Equation 1] below can be used. In [Equation 1], Jensen-Shannon divergence can be used, and B u means the batch size of the unlabeled sequence.
[수학식 1][Equation 1]
한편, 일관성 손실(LC: consistency loss)은 샘플 별 수면 단계의 예측에 대하여 수면 분석 모델의 일반화가 더 가능하도록 할 수는 있지만, 수면 음향 정보 및 해당 라벨의 시간적 상관 관계 또는 시계열적 정보를 활용하기 어려울 수 있다. 따라서, 본 발명의 일 실시예에 따르면, 아래 [수학식 2]와 같이, 예측 시퀀스의 유사도를 매칭하는 순차적 일관성 손실(LSC: sequential consistency loss)를 이용할 수 있다. [수학식 2]에서 °는 아다마르 거듭제곱(Hadamard power)이고, ⊙는 값으로 평균화되는 두 행렬의 원소별 곱을 의미한다.On the other hand, consistency loss ( LC : consistency loss) can make the sleep analysis model more generalizable for predicting sleep stages for each sample, but it utilizes the temporal correlation or time-series information of sleep acoustic information and corresponding labels. This can be difficult to do. Therefore, according to an embodiment of the present invention, sequential consistency loss (L SC ) that matches the similarity of the prediction sequence can be used, as shown in Equation 2 below. In [Equation 2], ° is the Hadamard power, and ⊙ means the element-by-element product of the two matrices averaged by the value.
[수학식 2][Equation 2]
본 발명의 일 실시예에 따르면, 시간 경과에 따른 수면 단계 변동의 정도를 예측하기 위하여 순서대로 i번째 샘플과 j번째 샘플의 로짓 사이에 코사인 유사도(cosine similarity)가 채택될 수 있다. 코사인 유사도는 두 벡터의 내적값을 두 벡터의 크기의 곱으로 나누어 계산되는 것으로서, 내적공간의 두 벡터간 각도의 코사인값을 이용하여 측정된 벡터간의 유사한 정도 또는 관계성을 나타내는 정도일 수 있다.According to one embodiment of the present invention, cosine similarity may be adopted between the logit of the i-th sample and the j-th sample in order to predict the degree of sleep stage variation over time. Cosine similarity is calculated by dividing the dot product of two vectors by the product of the sizes of the two vectors, and may indicate the degree of similarity or relationship between vectors measured using the cosine value of the angle between the two vectors in the dot product space.
및 는 동일한 시퀀스인 us로부터 생성된 두개의 서로 다른 증강 시퀀스의 대칭 코사인 유사도 행렬을 의미한다. 또한, 아래 [수학식 3]과 같이 먼 샘플 쌍보다 가까운 샘플 쌍에 더 높은 가중치를 부여하는 가중 마스크 행렬 W를 정의할 수 있다. and is the representation of two different augmented sequences generated from the same sequence, u s . It refers to a symmetric cosine similarity matrix. Additionally, a weighting mask matrix W that assigns a higher weight to a pair of nearby samples than to a pair of distant samples can be defined as shown in [Equation 3] below.
[수학식 3][Equation 3]
[수학식 3]에서 wmin은 가장 먼 쌍의 최소 가중치 값을 의미한다. 따라서, 본 발명의 일 실시예에 따르면, 손실(loss)은 동일한 시퀀스에서 나온 두 가지 다른 증강(augmentation) 결과에 대한 예측이 유사한 시퀀스적 경향을 갖도록 강제될 수 있다.In [Equation 3], w min means the minimum weight value of the furthest pair. Therefore, according to one embodiment of the present invention, the loss can be forced so that predictions for two different augmentation results from the same sequence have similar sequential tendencies.
도 30은 본 발명의 일 실시예에 따라, 시퀀스 내의 샘플의 수가 6인 경우의 일관성 손실 또는 순차적 일관성 손실에 기초한 학습 방법의 예시를 나타내는 도면이다. 도 30에서, 두 일관성 손실에 대하여 용이하게 이해할 수 있도록 Ca와 W의 상삼각 행렬(Upper triangular matrices)이 표시되어 있다.Figure 30 is a diagram illustrating an example of a learning method based on consistency loss or sequential consistency loss when the number of samples in the sequence is 6, according to an embodiment of the present invention. In Figure 30, the upper triangular matrices of C a and W are displayed to facilitate understanding of the two consistency losses.
도 30의 상단 부분에 도시된 시퀀셜 에 포함된 내지 각각은 수면 분석 모델의 에폭 별 예측값이다. 마찬가지로, 도 30의 하단 부분에 도시된 시퀀셜 에 포함된 내지 각각은 수면 분석 모델의 에폭 별 예측값이다. 도 30에 도시된 및 는 동일한 언레이블드 시퀀셜에 대한 예측을 수행한 결과일 수 있다. Consistency Loss를 이용한 모델의 학습은, 이러한 두 결과값에 대한 일관성을 유지하도록 Loss를 설정하여 수면 분석 모델을 학습시키는 것이다. Sequential shown in the upper part of Figure 30 included in inside Each is the predicted value for each epoch of the sleep analysis model. Similarly, the sequential shown in the lower part of Figure 30 included in inside Each is the predicted value for each epoch of the sleep analysis model. Shown in Figure 30 and may be the result of performing prediction on the same unlabeled sequential. Learning a model using Consistency Loss involves training a sleep analysis model by setting the loss to maintain consistency for these two result values.
한편, 데이터가 시계열적인 시퀀스를 이루는 경우에는, 각 에폭 별 특징을 분석하는 경우 시퀀스 내에서의 관계성이 중요할 수 있다. 따라서, 하나의 시퀀스 내에서의 각 예측값 간 관계를 C로 나타낼 수 있다. 예를 들어, 는 및 간의 관계성을 나타낸 것이다. 이를 내지 각각에 모두 적용하면, 내지 까지의 상삼각 행렬이 구성될 수 있다(이를 라고 표현할 수 있다). 마찬가지로, 내지 각각으로부터 내지 까지의 상삼각 행렬이 구성될 수 있다(이를 라고 표현할 수 있다).On the other hand, when data forms a time series sequence, relationships within the sequence may be important when analyzing characteristics for each epoch. Therefore, the relationship between each predicted value within one sequence can be expressed as C. for example, Is and It shows the relationship between them. This inside If applied to each, inside An upper triangular matrix up to can be constructed (this It can be expressed as). Likewise, inside from each inside An upper triangular matrix up to can be constructed (this It can be expressed as).
예컨대, 1번 에폭과 2번 에폭의 예측값은 시퀀스 내에서도 관계성을 갖고 있을 수 있고, 시퀀스 내에서도 관계성을 갖고 있을 수 있는데, 그러한 관계성끼리의 일관성을 유지할 수 있도록 손실(Loss)를 설정하여 수면 분석 모델을 학습시키는 것이다.For example, the predicted values for epoch 1 and epoch 2 are There can be relationships even within a sequence, There may be relationships within the sequence, and the sleep analysis model is trained by setting a loss to maintain consistency among those relationships.
한편, 도 30의 W로 표현되는 상삼각 행렬은 중요도에 따른 가중치를 나타낸 것이다. 같은 시퀀스 내에서도 샘플의 순서가 멀면 멀수록 연관성은 떨어질 수 있기 때문에, 가중치를 작게 설정할 수 있다. 본 발명의 일 실시예에서는 W의 상삼각 행렬에 표현된 것과 같이, 0부터 1의 가중치 중에서, 0.5, 0.625, 0.75, 0.875, 1.0의 가중치를 설정하였지만, 이는 단순한 예시일 뿐, 본 발명은 이에 제한되는 것은 아니다. 예컨대, 시퀀셜 내에 포함된 샘플의 개수가 많을수록, 가중치 값들 간의 차이를 작게 설정할 수도 있다. 또한, 가중치의 최소값을 0.5가 아닌, 다른 값으로 설정할 수도 있으며, 가중치 값들 사이의 차이는 반드시 일정하지 않을 수도 있다.Meanwhile, the upper triangular matrix represented by W in FIG. 30 represents weights according to importance. Even within the same sequence, the farther apart the sample order, the lower the correlation, so the weight can be set small. In one embodiment of the present invention, weights of 0.5, 0.625, 0.75, 0.875, and 1.0 are set among weights from 0 to 1, as expressed in the upper triangular matrix of W, but this is only a simple example, and the present invention does not apply to this. It is not limited. For example, the larger the number of samples included in the sequence, the smaller the difference between weight values can be set. Additionally, the minimum value of the weight may be set to a value other than 0.5, and the difference between the weight values may not necessarily be constant.
또한, 도 30에 표시된 시퀀셜 내의 샘플의 수는 단순한 예시일 뿐, 본 발명은 이에 한정되는 것은 아니다. 예컨대, 40개의 샘플로 구성될 수도 있고, 14개의 샘플로 구성될 수도 있다. 이는 수면 분석 모델이 어떤 수면 상태 정보에 대한 예측을 수행하는지 여부에 따라 달라질 수도 있으며, 절대적인 것은 아니다.Additionally, the number of samples in the sequence shown in FIG. 30 is merely an example, and the present invention is not limited thereto. For example, it may consist of 40 samples or 14 samples. This may vary depending on what sleep state information the sleep analysis model predicts, and is not absolute.
반지도 대조 손실(Semi-supervised Contrastive Loss)에 기초한 학습 방법Learning method based on semi-supervised contrastive loss
이하, 본 발명의 실시예에 따른 반지도 대조 학습 방법에 대하여 수학식 및 도면 등을 이용하여 자세히 설명한다. 본 발명의 일 실시예에 따르면, 분포 외(OOD) 샘플을 포함할 수 있는 라벨링되지 않은 언레이블드 데이터(Unlabeled data)를 완전히 활용하기 위해서, 클래스 인식 대조 반지도 학습(CCSSL: Class-aware Contrastive Semi-Supervised Learning) 방법이 채택될 수 있다.Hereinafter, the semi-supervised contrast learning method according to an embodiment of the present invention will be described in detail using mathematical equations and drawings. According to one embodiment of the present invention, in order to fully utilize unlabeled data that may contain out-of-distribution (OOD) samples, Class-aware Contrastive Learning (CCSSL) is used. Semi-Supervised Learning) method can be adopted.
한편, 본 발명의 일 실시예에 따르면, 라벨이 지정되지 않은 언레이블드 데이터(unlabeled data)끼리만 밀고당기기를 수행하는 것뿐만 아니라, 레이블된 데이터(labeled data)도 포함하여 밀고당기기를 수행할 수 있다. 이러한 CCSSL 방법을 수행하는 경우에는, 분포 외(OOD: out-of-distribution)라고 판단되는 데이터는 확실하게 밀어지도록 학습이 수행될 수 있다. 한편, 실시예에 따르면, 데이터 간 밀고당기기를 수행하는 과정에서 레이블된 데이터가 포함되어 있는 경우, 레이블된 데이터는 움직이지 않고 가만히 정지해있는 앵커의 역할을 수행할 수 있고, 언레이블드 데이터만이 움직일 수 있다. 이와 같이 레이블된 데이터를 활용하여 CCSSL 방법을 수행하는 경우에는, 분포 내(In-Distribution)에 속한다고 판단되는 데이터가 더욱 잘 당겨지고, 분포 외(OOD: Out-of-Distribution)라고 판단되는 데이터를 더욱 잘 밀어낼 수 있기 때문에 수면 분석 모델의 학습 수행 효과가 더욱 향상될 수 있다.Meanwhile, according to an embodiment of the present invention, not only can push and pull be performed between unlabeled data, but also push and pull can be performed including labeled data. there is. When performing this CCSSL method, learning can be performed so that data determined to be out-of-distribution (OOD) is reliably pushed out. Meanwhile, according to an embodiment, if labeled data is included in the process of pushing and pulling between data, the labeled data can serve as an anchor that remains stationary and does not move, and only the unlabeled data can be used. This can move. When the CCSSL method is performed using labeled data in this way, data judged to be within the distribution are better pulled out, and data judged to be out-of-distribution (OOD) are pulled out more easily. Since it can be pushed out better, the learning performance effect of the sleep analysis model can be further improved.
도 31은 본 발명의 일 실시예에 따른 반지도 대조 손실에 기초한 학습 방법의 작동 메커니즘을 설명하기 위한 예시 도면이다.Figure 31 is an example diagram for explaining the operating mechanism of a learning method based on semi-supervised contrast loss according to an embodiment of the present invention.
도 31을 참고하면, x1는 딥(Deep) 수면 단계라는 라벨이 부여된 정보로서, 앵커의 역할을 수행할 수 있다. 본 발명의 실시예에 따른 반지도 대조 학습 방법에서, u1가 명확하고 규칙적인 호흡 패턴으로 인하여 딥(Deep) 수면 단계의 클래스에 대한 충분히 높은 신뢰도를 갖기 때문에, u1를 앵커 x1로 당길 수 있다. 이 때, 일정 수준의 임계 값(threshold)을 슈도 라벨의 분포 내(In-Distribution)의 임계 값으로 보아, 신뢰도가 그 임계 값을 넘는 경우에는 당기는 것으로 판단할 수 있다.Referring to FIG. 31, x1 is information labeled as a deep sleep stage and can serve as an anchor. In the semi-supervised contrastive learning method according to an embodiment of the present invention, since u1 has sufficiently high confidence for the class of the deep sleep stage due to its clear and regular breathing pattern, u1 can be pulled as the anchor x1. At this time, a certain level of threshold can be viewed as the in-distribution threshold of the pseudo label, and if the reliability exceeds that threshold, it can be judged to be pulling.
반면, u3는 딥(Deep) 수면 단계 클래스로의 증거(evidence)가 없기 때문에, 다른 클래스 또는 분포 외(OOD: Out-of-Distribution) 데이터일 가능성이 있어서, u3를 앵커 x1로부터 밀어낼 수 있다. 이 때, 일정 수준의 임계 값(threshold)을 슈도 라벨의 분포 내(In-distribution)의 임계 값으로 보아, 그 임계 값을 넘지 못하는 경우에는 밀어내는 것으로 판단할 수 있다. 즉, 이러한 방식을 통하여 분포 외(OOD: Out-of-Distribution)에 속한다고 판단되는 데이터는 밀어낼 수 있는 것이다.On the other hand, since u3 has no evidence of being a Deep sleep stage class, it may be another class or Out-of-Distribution (OOD) data, pushing u3 away from anchor x1. . At this time, a certain level of threshold can be viewed as the in-distribution threshold of the pseudo label, and if it does not exceed the threshold, it can be judged to be pushed out. In other words, through this method, data that is judged to be out-of-distribution (OOD) can be pushed out.
한편, u2와 같이, 앵커와의 유사성이 높지도, 낮지도 않다고 판단되는 경우에는, 자칫 같은 클래스에 속하는 데이터를 밀거나, 다른 클래스에 속하는 데이터를 당길 우려가 있기 때문에, 밀고 당기기를 수행하지 않을 수도 있다. On the other hand, in cases where the similarity with the anchor is judged to be neither high nor low, such as u2, pushing and pulling will not be performed because there is a risk of pushing data belonging to the same class or pulling data belonging to a different class. It may be possible.
CCSSL 방법은 위와 같이 레이블드 데이터 또는 슈도 라벨(pseudo label)을 활용하여, 언레이블드 데이터(Unlabeled data) 샘플들 간의 지도 대조 손실(Supervised contrastive loss)를 계산하고, 클래스 내의 피처를 표현한 군집에서 OOD 샘플을 배제할 수 있다.The CCSSL method uses labeled data or pseudo labels as above to calculate supervised contrastive loss between unlabeled data samples, and calculates OOD in clusters representing features within the class. Samples can be excluded.
Bu개의 언레이블드 시퀀스에는 총 개의 샘플이 있으며, CCSSL은 각각의 언레이블드 샘플 ui에 대하여 두 가지 스트롱 어그멘테이션(Strong Augmentation) 방법을 적용할 수 있다. 본 발명의 일 실시예에 따르면, 임의의 어그멘테이션 샘플의 인덱스를 로 나타낸다면, CCSSL의 대조 손실은 로 정의될 수 있다. 여기서, 앵커 i의 손실은 아래 수학식 4와 같이 나타낼 수 있다.B u unlabeled sequences have a total of There are samples, and CCSSL can apply two strong augmentation methods to each unlabeled sample u i . According to one embodiment of the present invention, the index of any augmentation sample is If expressed as , the contrast loss of CCSSL is It can be defined as: Here, the loss of anchor i can be expressed as Equation 4 below.
[수학식 4][Equation 4]
여기서, 도 17b를 참조하면, zi는 트랜스포머 기반의 인공지능 모델(또는 ViT)를 통해 얻은 앵커 i의 임베딩이고, 은 동일한 언레이블드 샘플에서 유래된 다른 증강 샘플의 임베딩이다. 다시 말해, zi는 입력되는 데이터(예컨대, 이미지 정보) 하나에 해당되는 피처를 의미하는 것이고, 는 zi에 데이터 어그멘테이션을 수행한 것을 의미할 수 있다. Here, referring to FIG. 17b, z i is the embedding of anchor i obtained through a transformer-based artificial intelligence model (or ViT), is the embedding of another augmented sample derived from the same unlabeled sample. In other words, z i means a feature corresponding to one piece of input data (e.g., image information), may mean that data augmentation is performed on z i .
한편, ·은 내적을 나타내는 연소 기호이다. 또한, τ는 온도를 나타내며, 는 동일한 슈도 라벨과 연관된 증강 샘플의 인덱스를 나타낸다. 또한, 는 재가중 요소(re-weighting factor)이다.Meanwhile, · is a combustion symbol representing the inner product. Additionally, τ represents the temperature, represents the index of the augmented sample associated with the same pseudo label. also, is a re-weighting factor.
[수학식 4]에서 알 수 있듯이, 좌변의 손실값을 낮추도록 계산하면, 우변의 항에서의 log의 진수의 분자에 해당하는 부분은 서로 당기는 샘플을 표현한 것이고, log의 진수의 분모에 해당하는 부분은 서로 밀어내는 샘플을 표현한 것으로 해석할 수 있다. 즉, 위 항의 부분에서, 는 zi에 데이터 어그멘테이션을 수행한 것이기 때문에, zi와 서로 동일한 클래스의 데이터(예컨대, 이미지)에 기반한 것이라고 이해될 수 있는데, 이렇게 동일한 클래스의 데이터로부터 기반하여 출력된 샘플은 서로 당기도록 학습이 수행될 수 있다. 또한, 위 항의 부분에서, zi와 zj는 서로 다른 클래스의 데이터(예컨대, 이미지)로부터 기반한 것이라고 이해될 수 있는데, 이렇게 서로 다른 클래스의 데이터로부터 기반하여 출력된 샘플은 서로 밀도록 학습이 수행될 수 있는 것이다.As can be seen from [Equation 4], if calculated to lower the loss value on the left side, the loss value on the right side is Corresponds to the numerator of the base of log in the term The part represents samples pulling together, and corresponds to the denominator of the base of log. The parts can be interpreted as representing samples pushing each other. That is, the above claim In part, Since data augmentation is performed on z i , it can be understood as being based on data (e.g., images) of the same class as z i . Samples output based on data of the same class are pulled together. Learning can be performed. Additionally, the above protest In part, z i and z j can be understood as being based on data of different classes (e.g., images), and learning can be performed so that samples output based on data of different classes are pushed together. .
한편, [수학식 4]에서의 우변의 항에서 의 의미는 서로 같은 클래스라고 판단된다는 것인데, 이렇게 같은 클래스라고 판단되는 zi와 zk는 서로 당기도록 학습이 수행되기 때문에, 가 log의 진수의 분자 부분에 위치한다. 반면, 분모 부분에서는, 첫번째 항의 분모와 마찬가지로, 서로 다른 클래스의 데이터로부터 기반한 zi와 zj가 서로 밀어내도록 학습이 수행되게끔 기재된 것이라고 이해할 수 있다.Meanwhile, the right side of [Equation 4] In port The meaning of is that they are judged to be the same class. Since z i and z k , which are judged to be the same class, are trained to attract each other, is located in the numerator part of the base of log. On the other hand, the denominator In this part, like the denominator of the first term, it can be understood that learning is performed so that z i and z j based on data of different classes repel each other.
[수학식 4]에서 알 수 있듯이, 위와 같은 방식에 따라 라벨이 지정되지 않았지만 슈도 라벨이 지정된 샘플에 대해서는 당기도록 학습이 수행될 수 있는 것이다.As can be seen from [Equation 4], learning can be performed to pull for samples that are not labeled but pseudo-labeled according to the above method.
한편, 심하게 오염된 언레이블드 데이터가 존재하는 경우에, 언레이블드 데이터에서의 OOD 샘플이 높은 신뢰도로 샘플링되어, 클래스 클러스터링(clustering)에서 혼란을 야기할 수 있기 때문에, CCSSL은 신뢰할 수 없을 수 있다. 따라서, 본 발명의 일 실시예에 따르면, 이러한 문제를 해결하기 위해서, 신뢰할 수 있는 레이블된 데이터를 클래스 클러스터링의 앵커 포인트로 활용하는 반지도 대조 학습(SSCL: Semi-Supervised Contrastive Learning) 방법이 제공될 수 있다.On the other hand, in the presence of heavily contaminated unlabeled data, CCSSL may be unreliable because OOD samples in the unlabeled data are sampled with high confidence, which may cause confusion in class clustering. there is. Therefore, according to an embodiment of the present invention, in order to solve this problem, a semi-supervised contrast learning (SSCL) method that utilizes reliable labeled data as an anchor point for class clustering will be provided. You can.
본 발명의 일 실시예에 따른 반지도 대조 학습(SSCL)에서는, 레이블된 샘플을 앵커로 고려함으로써, 신뢰할 수 있는 양성(positive) 및 음성(negative) 샘플을 사용할 수 있다. 여기서 양성 샘플이란, 분포 내(In-Distribution) 데이터라는 임계 값(threshold)을 넘는 샘플을 의미하는 것으로서, 같은 클래스라고 판단되는 샘플에 해당한다. 양성 샘플은 레이블된 샘플에 당겨지도록 학습이 수행될 수 있다. 또한, 음성 샘플이란, 분포 내(In-Distribution) 데이터라는 임계 값(threshold)을 넘지 않는 샘플을 의미하는 것으로서, 레이블된 샘플과 서로 다른 클래스라고 판단되는 샘플에 해당한다. 음성 샘플은 레이블된 샘플로부터 밀어지도록 학습이 수행될 수 있다. 이에 따라, 본 발명의 일 실시예에 따른 SSCL 방법은 클래스 내의 임베딩 클러스터(군집)에서 OOD 샘플을 밀어내도록 학습이 수행될 수 있는 것이다. 한편, 샘플의 클래스가 앵커와의 관계에서 양성인지 또는 음성인지 여부가 명확하다고 판단되지 않는 경우에는, 밀고 당기는 학습이 수행되지 않을 수 있다.In semi-supervised contrast learning (SSCL) according to an embodiment of the present invention, reliable positive and negative samples can be used by considering labeled samples as anchors. Here, a positive sample refers to a sample that exceeds the threshold of in-distribution data, and corresponds to a sample that is judged to be of the same class. Learning can be performed such that positive samples are pulled to labeled samples. Additionally, a voice sample refers to a sample that does not exceed a threshold called in-distribution data, and corresponds to a sample that is determined to be of a different class from the labeled sample. Learning may be performed so that speech samples are pushed from labeled samples. Accordingly, in the SSCL method according to an embodiment of the present invention, learning can be performed to push out OOD samples from the embedding cluster (cluster) within the class. Meanwhile, if it is not determined clearly whether the class of the sample is positive or negative in relation to the anchor, push and pull learning may not be performed.
한편, 레이블된 앵커 m에 대한 대조 손실(contrastive loss)은 다음 [수학식 5]와 같이 정의될 수 있다. 여기에서, m은 Bl개의 레이블된 시퀀스 배치에서의 샘플의 인덱스를 나타내며, 는 i번째의 증강된 언레이블드 샘플 i와, m번째 앵커의 클래스 ym 사이의 유사도를 의미한다.Meanwhile, the contrastive loss for labeled anchor m can be defined as follows [Equation 5]. Here, m represents the index of a sample in a batch of B l labeled sequences, means the similarity between the ith augmented unlabeled sample i and the class y m of the mth anchor.
[수학식 5][Equation 5]
본 발명의 일 실시예에 따르면, 높은 신뢰도를 갖는 슈도 라벨만을 이용하여 양성 및 음성 샘플이 구성될 수 있다. 즉, 및 을 각각 양성 및 음성 증강된 언레이블드 샘플의 집합으로 정의할 수 있다. 여기서, 도 31을 참조하면, 및 은 각각 필터링 임계값을 의미한다. 결과적으로, SSCL의 대조 손실은 아래 [수학식 6]의 LSSCL로 얻을 수 있다. [수학식 6]에서, Bl은 레이블된 시퀀스의 배치 크기를 의미한다.According to one embodiment of the present invention, positive and negative samples can be constructed using only pseudo labels with high reliability. in other words, and can be defined as a set of unlabeled samples that are positively and negatively augmented, respectively. Here, referring to Figure 31, and represents the filtering threshold, respectively. As a result, the contrast loss of SSCL can be obtained as L SSCL in [Equation 6] below. In [Equation 6], B l means the batch size of the labeled sequence.
[수학식 6][Equation 6]
본 발명의 일 실시예에 따르면, SSCL에서는 레이블된 임베딩 zm 의 그래디언트(gradient)를 분리(detach)할 수 있다. 이는 SSCL의 목표가 레이블된 샘플의 특성을 훈련시키는 것이 아니라, 언레이블드 시퀀스에서의 OOD 샘플을 레이블된 샘플로부터 멀리 밀어내는 것이기 때문이다.According to an embodiment of the present invention, SSCL can detach the gradient of the labeled embedding z m . This is because the goal of SSCL is not to train the characteristics of labeled samples, but to push OOD samples in the unlabeled sequence away from labeled samples.
최종적으로, 본 발명의 일 실시예에 따른 전체적인 훈련 손실은 [수학식 7]과 같이 나타낼 수 있다. 여기에서, 는 대응되는 손실 LA에 적용되는 가중치 값을 의미한다.Finally, the overall training loss according to an embodiment of the present invention can be expressed as [Equation 7]. From here, means the weight value applied to the corresponding loss L A.
[수학식 7][Equation 7]
반지도 학습에 따른 수면 분석 모델의 성능Performance of sleep analysis model based on semi-supervised learning
본 발명의 일 실시예에 따른 수면 분석 모델은 약 3천개의 연구실 환경의 PSG 검사로부터 얻은 레이블된 데이터와, 약 3천개의 자가 수집된 가정에서의 언레이블드 데이터에 기초하여 학습 또는 훈련되었다. The sleep analysis model according to one embodiment of the present invention was learned or trained based on labeled data obtained from approximately 3,000 PSG tests in a laboratory environment and approximately 3,000 self-collected unlabeled data at home.
또한, 본 발명의 일 실시예에 따른 수면 분석 모델은 연구실 환경의 PSG, 가정 환경의 PSG, PSG 오디오 데이터에 기초하여 평가되었다. 여기서 수면 분석 모델의 일반화 능력은 주로 무호흡 환자 데이터로 구성된 오픈 데이터셋인 PSG 오디오 데이터(PSG-Auido)와 비교하였을 때의 성능을 평가함으로써 테스트되었다.Additionally, the sleep analysis model according to an embodiment of the present invention was evaluated based on PSG in a laboratory environment, PSG in a home environment, and PSG audio data. Here, the generalization ability of the sleep analysis model was tested by evaluating its performance when compared to PSG audio data (PSG-Auido), an open dataset mainly composed of apnea patient data.
구체적으로, 본 발명의 일 실시예에 따른 수면 분석 모델의 결과를 평가하기 위하여, 시퀀스 내의 샘플의 수인 NS 값을 40으로 설정하였으며, 병원 환경에서 이루어지는 PSG 검사에서 수면 분석 기술자가 30초 단위마다 레이블을 할당할 때 보통 ±10분 정도를 확인하는 것을 고려하여, 그와 동일한 방법으로 평가되었다. Specifically, in order to evaluate the results of the sleep analysis model according to an embodiment of the present invention, the N S value, which is the number of samples in the sequence, was set to 40, and in a PSG test performed in a hospital environment, a sleep analysis technician performs the analysis every 30 seconds. When assigning labels, it was evaluated in the same way, considering that it usually checks for about ±10 minutes.
또한, 레이블된 배치 크기(Bl)와 언레이블드 배치 크기(Bu)는 각각 4로 설정하였다. 각 비지도 학습 손실의 가중치 값인 , , 및 은 각각 1.5, 0.1, 0.1 및 0.1로 설정되었고, 비지도 훈련을 위해 와 의 필터링 임계값은 각각 0.9와 0.2로 설정되었다. 한편, 언급한 구체적인 수치의 기재는 단순한 예시일 뿐, 본 발명은 이에 제한되지 않는다.Additionally, the labeled batch size (B l ) and unlabeled batch size (B u ) were each set to 4. The weight value of each unsupervised learning loss is , , and were set to 1.5, 0.1, 0.1, and 0.1, respectively, for unsupervised training. and The filtering thresholds were set to 0.9 and 0.2, respectively. Meanwhile, the description of the specific numerical values mentioned above is merely an example, and the present invention is not limited thereto.
도 32는 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과와, 가정 환경에서의 PSG 테스트의 분석 결과를 비교한 표이다. 도 32의 SoundSleepNet 행은 본 발명의 일 실시예에 따라 낮은 수준의 특징 추출을 위한 백본(backbone) 네트워크와 멜 스펙트로그램 간의 시계열적 상관관계를 학습하기 위한 헤드로 구성되는 시퀀스 투 시퀀스(sequence-to-sequence) 수면 분석 모델을 가정 환경에서의 PSG 테스트에 적용한 결과를 의미한다. 또한, 도 32의 SleepFormer 행은 본 발명의 일 실시예에 따른 비지도학습 및/또는 반지도학습 방법을 반영한 수면 분석 모델을 의미한다. 한편, C, SC, CC, SS 및 WA는 각각 일관성(consistency), 순차적 일관성(sequential consistency), CCSSL, SSCL 및 가중 평균(weight average)을 나타낸다.Figure 32 is a table comparing the analysis results of a sleep analysis model according to an embodiment of the present invention and the analysis results of a PSG test in a home environment. The SoundSleepNet row in Figure 32 is a sequence-to-sequence consisting of a head for learning the time-series correlation between a backbone network for low-level feature extraction and a mel spectrogram according to an embodiment of the present invention. -sequence) This refers to the results of applying the sleep analysis model to a PSG test in a home environment. Additionally, the SleepFormer row in FIG. 32 represents a sleep analysis model reflecting the unsupervised learning and/or semi-supervised learning method according to an embodiment of the present invention. Meanwhile, C, SC, CC, SS, and WA represent consistency, sequential consistency, CCSSL, SSCL, and weight average, respectively.
또한, 도 33은 PSG 오디오 데이터에 기반한 수면 분석 결과와, 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과를 비교한 표이다. 도 33의 상단의 표는 PSG-Audio에 기반한 수면 분석 결과와 비교한 표이고, 도 33의 하단의 표는 실험실 환경에서의 PSG 데이터에 기반한 수면 분석 결과와 비교한 표이다.Additionally, Figure 33 is a table comparing sleep analysis results based on PSG audio data and analysis results of a sleep analysis model according to an embodiment of the present invention. The table at the top of Figure 33 is a table comparing sleep analysis results based on PSG-Audio, and the table at the bottom of Figure 33 is a table comparing sleep analysis results based on PSG data in a laboratory environment.
먼저, 도 32에 따른 분석 결과 비교 표에 도시된 바와 같이, 본 발명의 일 실시예에 따른 반지도 학습 방법을 하나씩 적용하여 성능의 변화를 평가하였다. 지도 기준선인 SleepFormer 모델은 트랜스포머 기반의 인공지능 모델을 활용하여 구성된 것인데, F1 점수(F1 Score)가 0.6332로서, SoundSleepNet와 비교하여 0.0614 만큼 더 향상된 것을 확인하였다. 또한, 일관성 손실(C: consistency loss)과 순차적 일관성 손실(SC: Sequential consistency loss)을 추가함으로써, F1 점수가 각각 0.6597 및 0.6751로 훨씬 더 많이 향상되는 것을 확인하였다.First, as shown in the analysis result comparison table shown in FIG. 32, changes in performance were evaluated by applying the semi-supervised learning methods according to an embodiment of the present invention one by one. The SleepFormer model, which is the guidance baseline, was constructed using a transformer-based artificial intelligence model, and the F1 score was 0.6332, which was confirmed to be improved by 0.0614 compared to SoundSleepNet. Additionally, by adding consistency loss (C: consistency loss) and sequential consistency loss (SC), it was confirmed that the F1 score improved significantly to 0.6597 and 0.6751, respectively.
또한, 본 발명의 일 실시예에 따른 SS(SSCL)을 도입함으로써, F1 점수가 0.6780으로 크게 향상되었고, 서로 다른 시드로 훈련된 세 개의 모델의 가중치를 평균화하여 비교하였을 때(WA)에는 총 최종적으로 0.1085만큼 개선된 0.6804의 점수를 달성한 것을 확인하였다.In addition, by introducing SS (SSCL) according to an embodiment of the present invention, the F1 score was greatly improved to 0.6780, and when the weights of three models trained with different seeds were averaged and compared (WA), the total final result was It was confirmed that a score of 0.6804 was achieved, which was improved by 0.1085.
한편, 도 33에 도시된 표와 같이, PSG 오디오 데이터에 기반한 수면 분석 결과와, 본 발명의 일 실시예에 따른 수면 분석 모델의 분석 결과를 비교하였다. 도 33의 각 표의 첫 번째 행인 Supervissed는 본 발명의 일 실시예에 따른 수면 분석 모델에 PSG 오디오 데이터를 입력하여 수면 상태 정보를 예측한 것의 결과이고, 두 번째 행인 Ours는 본 발명의 일 실시예에 따른 반지도 학습(Semi-supervised learning)에 기반한 수면 분석 모델에 PSG 오디오 데이터를 입력하여 수면 상태 정보를 예측한 것의 결과이다.Meanwhile, as shown in the table shown in FIG. 33, the sleep analysis results based on PSG audio data were compared with the analysis results of the sleep analysis model according to an embodiment of the present invention. Supervissed, the first row of each table in FIG. 33, is the result of predicting sleep state information by inputting PSG audio data into a sleep analysis model according to an embodiment of the present invention, and Ours, the second row, is the result of predicting sleep state information according to an embodiment of the present invention. This is the result of predicting sleep state information by inputting PSG audio data into a sleep analysis model based on semi-supervised learning.
여기서, 도 33의 상단에 도시된 표에서 수면 분석 모델의 입력으로 되는 PSG-Audio데이터셋은 훈련 중에 수면 분석 모델이 접하지 않은, 즉 노출되지 않았던 데이터 분포이고, 이러한 데이터 셋은 새로운 데이터와 노출되지 않은 데이터에 대한 수면 분석 모델의 일반화 성능을 평가하는 데 사용될 수 있다. 한편, PSG-Audio 데이터셋은 주로 중증 무호흡 환자로 구성되어 수면 단계 클래스 분포가 균형이 잡히지 않을 수 있다.Here, the PSG-Audio dataset that is the input to the sleep analysis model in the table shown at the top of Figure 33 is a data distribution that the sleep analysis model did not encounter, that is, was not exposed during training, and this dataset is exposed to new data. It can be used to evaluate the generalization performance of sleep analysis models on unresolved data. Meanwhile, the PSG-Audio dataset mainly consists of severe apnea patients, so the sleep stage class distribution may be unbalanced.
또한, 도 33의 하단에 도시된 표에서 수면 분석 모델의 입력으로 되는 실험실 환경에서의 PSG 데이터 셋은, 레이블된 소스의 분포를 대표하는 것일 수 있다.Additionally, in the table shown at the bottom of FIG. 33, the PSG data set in a laboratory environment that is input to the sleep analysis model may represent the distribution of labeled sources.
도 33에서 도시된 바와 같이, PSG-Audio 데이터셋을 Supervised 모델과 Semi-supervised 모델에 입력하여 예측한 결과의 정확성을 비교해보았을 때, Semi-supervised 모델의 경우 정확성이 0.0437 향상된 것을 확인하였다. 한편, 실험실 환경에서의 PSG 데이터셋에서의 정확성 향상 정도는 상대적으로 작았는데, 이는 본 발명의 실시예에 따른 지도 기준선(Supervised baseline)이 이미 레이블된 소스 분포 데이터에서 0.7000점으로 좋은 성능을 달성했기 때문이다.As shown in Figure 33, when comparing the accuracy of the predicted results by inputting the PSG-Audio dataset into the supervised model and the semi-supervised model, it was confirmed that the accuracy of the semi-supervised model was improved by 0.0437. Meanwhile, the degree of accuracy improvement in the PSG dataset in a laboratory environment was relatively small, because the supervised baseline according to an embodiment of the present invention achieved good performance with a score of 0.7000 on already labeled source distribution data. Because.
이러한 반지도 학습 방법에 의하여, 실제 수면 환경에서의 시계열적인 수면 음향 정보의 처리를 통해, 수면 분석 모델이 더욱 개선될 수 있다. 간략하게 정리하자면, 순차적 일관성 손실(Sequential consistency loss)에 의하여 수면 분석 모델의 시간적 상관관계가 향상되고, 반지도 대조 손실(semi-supervised contrastive loss)은 레이블된 샘플이 있는 피처 표현 군집을 개선함으로써 분포 외 데이터인 OOD(Out-of-Distribution) 샘플을 효과적으로 걸러냄으로써 정확성이 향상될 수 있다. 또한, 본 발명의 실시예에 따른 수면 분석 모델은 가정 환경에서의 데이터, 노출되지 않은 데이터, 레이블된 데이터 셋 모두에서 상당하고 일관된 개선 효과를 보일 수 있는 것을 확인하였다.Using this semi-supervised learning method, the sleep analysis model can be further improved through processing of time-series sleep sound information in an actual sleep environment. To briefly summarize, sequential consistency loss improves the temporal correlation of sleep analysis models, and semi-supervised contrastive loss improves the feature representation clustering with labeled samples, thereby improving the distribution. Accuracy can be improved by effectively filtering out-of-distribution (OOD) samples. In addition, it was confirmed that the sleep analysis model according to the embodiment of the present invention can show significant and consistent improvement effects in all data sets in the home environment, unexposed data, and labeled data sets.
수면 정보들을 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법Method for analyzing sleep state information using multimodal sleep information
멀티모달로 한 수면 상태 정보 분석 방법의 일 실시예 (CONCEPT-A)One embodiment of a multimodal sleep state information analysis method (CONCEPT-A)
도 26은 본 발명의 일실시예에 따른 수면 음향 정보와 수면 환경 정보를 멀티모달 데이터로 결합하는 과정을 포함하는 한 수면 상태 정보를 분석하기 위한 방법을 설명하기 위한 흐름도이다.FIG. 26 is a flowchart illustrating a method for analyzing sleep state information including a process of combining sleep sound information and sleep environment information into multimodal data according to an embodiment of the present invention.
본 발명의 목적을 달성하기 위하여 일 실시예에 따르면, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법은 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득하는 제1 정보 획득 단계(S100), 제1 정보의 전처리를 수행하는 단계(S102), 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S110), 제2 정보의 전처리를 수행하는 단계(S112), 멀티모달로 데이터를 결합하는 결합단계(S120), 멀티모달 데이터를 딥러닝 모델의 입력하는 단계(S130), 딥러닝 모델의 출력으로 수면 상태 정보를 획득하는 단계(S140)을 포함할 수 있다.In order to achieve the purpose of the present invention, according to one embodiment, a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep. An information acquisition step (S100), a step of preprocessing the first information (S102), a second information acquisition step of acquiring user sleep environment information related to the user's sleep (S110), a step of performing preprocessing of the second information (S112), a combining step of combining multi-modal data (S120), a step of inputting multi-modal data into a deep learning model (S130), and a step of obtaining sleep state information as the output of the deep learning model (S140). can do.
본 발명의 실시예에 따라서, 제1 정보 획득 단계(S100)은 사용자 단말(10)에서 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득할 수 있다. 사용자의 수면과 관련한 시간 도메인 상의 음향 정보는 사용자 단말(10)의 음원 탐지부에서 얻어지는 음원 정보를 포함할 수 있다.According to an embodiment of the present invention, the first information acquisition step (S100) may acquire sound information in the time domain related to the user's sleep from the user terminal 10. Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S102)에서는 시간 도메인 상의 수면 음향 정보를, 주파수 성분의 시간 축에 따른 변화를 포함하는 정보 또는, 주파수 도메인 상의 정보로 변환할 수 있다. 또한, 주파수 도메인 상의 정보는 스펙트로그램으로 표현될 수 있으며, 멜 스케일이 적용된 멜 스펙트로그램일 수 있다. 스펙트로그램으로 변환함으로써, 사용자의 프라이버시 보호 및 데이터 가공량을 줄일 수 있다. 또한, 시간 도메인 상의 수면 음향 정보를 변환한 정보는 시각화한 것으로서, 이러한 경우 이미지 처리 기반의 인공지능 모델의 입력으로 함으로써 이미지 분석을 통해 수면 상태 정보를 획득할 수 있다.According to an embodiment of the present invention, in the step of performing data preprocessing of the first information (S102), sleep sound information in the time domain is converted into information including changes in the frequency component along the time axis or information in the frequency domain. can do. Additionally, information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied. By converting to a spectrogram, user privacy can be protected and the amount of data processing can be reduced. In addition, information converted from sleep sound information in the time domain is visualized, and in this case, sleep state information can be obtained through image analysis by using it as input to an image processing-based artificial intelligence model.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S102)에서는 음향 정보에 기초하여 특징을 추출하는 단계를 더 포함할 수 있다. 예를 들어, 획득된 시간 도메인 상의 음향 정보에 기초하여 사용자의 수면 호흡 패턴을 추출할 수 있다. 예를 들어, 획득된 시간 도메인 상의 음향 정보를, 주파수 성분의 시간 축에 따른 변화를 포함하는 정보로 변환하고, 변환된 정보에 기초하여 사용자의 호흡 패턴을 추출할 수 있다. 또는, 시간 도메인상의 음향 정보를 주파수 도메인 상의 정보로 변환하고, 주파수 도메인 상의 음향 정보에 기초하여 사용자의 수면 호흡 패턴을 추출할 수 있다.According to an embodiment of the present invention, the step of performing data preprocessing of the first information (S102) may further include extracting features based on the acoustic information. For example, the user's sleep breathing pattern can be extracted based on the acquired acoustic information in the time domain. For example, the acquired acoustic information in the time domain can be converted into information including changes in frequency components along the time axis, and the user's breathing pattern can be extracted based on the converted information. Alternatively, acoustic information on the time domain may be converted into information on the frequency domain, and the user's sleep breathing pattern may be extracted based on the acoustic information on the frequency domain.
이 경우 변환된 정보들은 시각화된 것으로서, 이미지 처리 기반의 인공지능 모델의 입력으로 하여 사용자의 호흡 패턴 등의 정보를 출력하도록 할 수 있다. In this case, the converted information is visualized and can be used as input to an image processing-based artificial intelligence model to output information such as the user's breathing pattern.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S102)에서는 수면 음향 정보를 딥러닝 모델에 입력 시키기 위한 충분한 양의 유의미한 데이터를 얻기 위한 데이터 어그멘테이션 과정을 포함할 수 있다. 데이터 어그멘테이션 기법에는 피치 시프팅(Pitch Shifting) 어그멘테이션, TUT(Tile UnTile) 어그멘테이션 어그멘테이션 및 노이즈 부가 어그멘테이션을 포함할 수 있다. 전술한 어그멘테이션 기법은 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.According to an embodiment of the present invention, the step of performing data preprocessing of the first information (S102) may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model. there is. Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation. The above-described augmentation technique is merely an example, and the present invention is not limited thereto.
본 발명의 실시예에 따라 멜 스케일에서 부가하는 방법에 의하면 하드웨어가 데이터를 처리하는 데에 소요되는 시간이 단축될 수 있다.According to an embodiment of the present invention, the time required for hardware to process data can be shortened by the method added by Mel Scale.
한편, 전술한 노이즈의 종류에 관한 구체적인 기재는 본 발명의 노이즈 부가 어그멘테이션을 설명하기 위한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.Meanwhile, the detailed description of the types of noise described above is merely an example for explaining the noise addition augmentation of the present invention, and the present invention is not limited thereto.
본 발명의 실시예에 따라서, 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S110)는 사용자 단말(10), 외부서버 또는 네트워크를 통해서 사용자 수면 환경 정보를 획득할 수 있다. 사용자의 수면 환경 정보는 사용자가 위치한 공간에서 획득되는 수면과 관련한 정보를 의미할 수 있다. 수면 환경 정보는, 비접촉식 방법으로 사용자가 위치한 공간에서 획득되는 센싱 정보일 수 있다. 수면 환경 정보는, 레이더를 통해 측정되는 호흡 운동 및 신체 움직임 정보일 수 있다. 수면 환경 정보는, 스마트 워치, 스마트 가전 등에서 획득되는 사용자의 수면에 관련한 정보일 수 있다. 수면 환경 정보는, 광혈류 측정 신호(PhotoPlethysmoGraphy)일 수 있다. 수면 환경 정보는 광혈류 측정 신호(PhotoPlethysmoGraphy, PPG)를 통해 얻어지는 심박 변이도(Heart Rate Variability, HRV), 심박수(Heart Rate)일 수 있으며, 광혈류 측정 신호는 스마트 워치 및 스마트 링에 의해서 측정될 수 있다. 수면 환경 정보는, 뇌파 신호(Electro Encephalo Graphy, EEG)일 수 있다. 수면 환경 정보는 수면 중 측정되는 Actigraphy 신호 일 수 있다.According to an embodiment of the present invention, the second information acquisition step (S110) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network. . The user's sleep environment information may refer to information related to sleep obtained in the space where the user is located. Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method. Sleep environment information may be breathing movement and body movement information measured through radar. Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc. Sleep environment information may be a photoplethysmography signal (PhotoPlethysmoGraphy). Sleep environment information can be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. there is. Sleep environment information may be an electroencephalography (EEG) signal. Sleep environment information may be an Actigraphy signal measured during sleep.
본 발명의 실시예에 따라서, 제2 정보의 전처리를 진행하는 단계(S112)는 사용자의 수면 환경 정보의 데이터를 딥러닝 모델에 입력시키기 위한 충분한 양의 유의미한 데이터를 얻기 위한 데이터 어그멘테이션 과정을 포함할 수 있다.According to an embodiment of the present invention, the step of preprocessing the second information (S112) is a data augmentation process to obtain a sufficient amount of meaningful data to input the data of the user's sleep environment information into a deep learning model. It can be included.
본 발명의 일 실시예에 따라서, 제2 정보의 전처리를 진행하는 단계(S112)는 사용자의 수면 환경 정보의 데이터를 가공하여 특징을 추출하는 단계를 포함할 수 있다. 예를 들어, 제2 정보가 광혈류 측정 신호(PPG)인 경우, 광혈류 측정 신호에서 심박변이도(HRV)와 심박수(Heart Rate)를 추출할 수 있다. According to an embodiment of the present invention, the preprocessing of the second information (S112) may include processing data of the user's sleep environment information to extract features. For example, when the second information is a photoplethysmography signal (PPG), heart rate variability (HRV) and heart rate can be extracted from the photoplethysmography signal.
본 발명의 일 실시예에 따라서, 제2 정보의 전처리를 진행하는 단계(S112)는 사용자의 수면 환경 정보의 데이터가 이미지 정보로 얻어지는 경우, 이미지 정보를 TUT(Tile UnTile) 어그멘테이션및 노이즈 부가 어그멘테이션을 포함할 수 있다. 전술한 어그멘테이션 기법은 이미지 정보의 어그멘테이션 기법에 관한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다. 사용자의 수면 환경 정보는 다양한 저장 형태의 방식의 정보일 수 있다. 사용자의 수면 환경 정보의 어그멘테이션 방법은 다양한 방식이 채용될 수 있다.According to an embodiment of the present invention, in the step of pre-processing the second information (S112), when the data of the user's sleep environment information is obtained as image information, the image information is subjected to TUT (Tile UnTile) augmentation and noise addition. May include augmentation. The above-described augmentation technique is merely an example of an augmentation technique for image information, and the present invention is not limited thereto. The user's sleep environment information may be information in various storage formats. Various methods may be employed to augment the user's sleep environment information.
본 발명의 실시예에 따라서, 데이터 전처리 과정을 거친 제1 정보와 제2 정보를 멀티모달 데이터로 결합하는 단계(S120)은 딥 러닝 모델에 멀티모달 데이터를 입력하기 위하여 데이터를 결합한다.According to an embodiment of the present invention, the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data (S120) combines the data to input the multimodal data to the deep learning model.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 방법은 전처리된 제1 정보와 전처리된 제2 정보를 동일한 형식의 데이터로 결합하는 것일 수 있다. 구체적으로, 제1 정보는 주파수 도메인 상에서의 음향 이미지 정보이고, 제2 정보는 스마트 워치에서 얻어지는 시간 도메인 상에서의 심박 이미지 정보일 수 있다. 이 때, 제1 정보와 제2 정보는 도메인이 동일하지 않기 때문에, 동일한 도메인으로 변환하여 결합할 수 있다.According to an embodiment of the present invention, a method of combining multimodal data may be combining preprocessed first information and preprocessed second information into data of the same format. Specifically, the first information may be acoustic image information in the frequency domain, and the second information may be heart rate image information in the time domain obtained from a smart watch. At this time, since the domains of the first information and the second information are not the same, they can be converted to the same domain and combined.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 방법은 전처리된 제1 정보와 전처리된 제2 정보를 동일한 형식의 데이터로 결합하는 것일 수 있다. 구체적으로, 제1 정보는 주파수 도메인 상에서의 음향 이미지 정보이고, 제2 정보는 스마트 워치에서 얻어지는 시간 도메인 상에서의 심박 이미지 정보일 수 있다. 이 때, 딥러닝 모델의 입력으로 사용하기 위해 제1 정보와 제2 정보는 도메인이 동일하지 않기 때문에, 각각의 데이터를 제1 정보와 제2 정보에 관한 것이라고 라벨링 할 수 있다.According to an embodiment of the present invention, a method of combining multimodal data may be combining preprocessed first information and preprocessed second information into data of the same format. Specifically, the first information may be acoustic image information in the frequency domain, and the second information may be heart rate image information in the time domain obtained from a smart watch. At this time, because the domains of the first information and the second information are not the same in order to be used as input to a deep learning model, each data can be labeled as being related to the first information and the second information.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 단계(S120)은 제1 정보 어그멘테이션을 진행하고, 제2 정보 어그멘테이션을 진행한 후 결합할 수 있다. 예를 들어, 제1 정보는 사용자의 시간 도메인 상의 음향 정보일 수 있고, 제2 정보는 광혈류 측정 신호(PPG)일 수 있고, 이를 멀티모달 데이터로 결합할 수 있다. 예를 들어, 제1 정보는 사용자의 시간 도메인 상의 음향 정보 또는 시간 도메인 상의 음향 정보를 주파수 도메인 상의 음향 정보로 변환한 스펙트로그램일 수 있고, 제2 정보는 광혈류 측정 신호(PPG)일 수 있고, 이를 멀티모달 데이터로 결합할 수 있다.According to an embodiment of the present invention, the step of combining multimodal data (S120) may be performed by performing first information augmentation, performing second information augmentation, and then combining. For example, the first information may be acoustic information in the user's time domain, and the second information may be a photoplethysmography signal (PPG), which may be combined into multimodal data. For example, the first information may be sound information on the user's time domain or a spectrogram converted from sound information on the time domain into sound information on the frequency domain, and the second information may be a photoplethysmography signal (PPG), , this can be combined into multimodal data.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 단계(S120)은 제1 정보 어그멘테이션을 진행하고, 제2 정보 어그멘테이션 및 특징을 추출을 진행하여 결합할 수 있다. 예를 들어, 제1 정보는 사용자의 시간 도메인 상의 음향 정보 또는 시간 도메인 상의 음향 정보를 주파수 도메인 상의 음향 정보로 변환한 스펙트로그램일 수 있고, 제2 정보는 광혈류 측정 신호(PPG)에서 얻어지는 심박변이도(HRV) 또는 심박수(Heart Rate)일 수 있고, 이를 멀티모달 데이터로 결합할 수 있다. 본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 단계(S120)은 제1 정보 어그멘테이션 및 특징 추출을 진행하고, 제2 정보 어그멘테이션을 진행하여 결합할 수 있다. 예를 들어, 예를 들어, 제1 정보는 사용자의 음향 정보에 기초하여 추출된 사용자 호흡 패턴 일 수 있고, 제2 정보는 광혈류 측정 신호(PPG)에서 얻어지는 심박변이도(HRV) 또는 심박수(Heart Rate)일 수 있고, 이를 멀티모달 데이터로 결합할 수 있다.According to an embodiment of the present invention, the step of combining multimodal data (S120) may be performed by performing first information augmentation and extracting and combining second information augmentation and features. For example, the first information may be the user's sound information in the time domain or a spectrogram converted from the sound information in the time domain to sound information in the frequency domain, and the second information may be the heart rate obtained from the photoplethysmography signal (PPG). This can be HRV or heart rate, and can be combined into multimodal data. According to an embodiment of the present invention, the step of combining multimodal data (S120) may be performed by performing first information augmentation and feature extraction, and performing second information augmentation. For example, the first information may be the user's breathing pattern extracted based on the user's acoustic information, and the second information may be heart rate variability (HRV) or heart rate obtained from the photoplethysmography signal (PPG). Rate), and this can be combined into multimodal data.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 단계(S120)은 제1 정보 어그멘테이션 및 특징 추출을 진행하고, 제2 정보 어그멘테이션 및 특징을 추출을 진행하여 결합할 수 있다. 예를 들어, 제1 정보는 사용자의 음향 정보에 기초하여 추출된 사용자 호흡 패턴 일 수 있고, 제2 정보는 광혈류 측정 신호(PPG)에서 얻어지는 심박변이도(HRV) 또는 심박수(Heart Rate)일 수 있고, 이를 멀티모달 데이터로 결합할 수 있다.According to an embodiment of the present invention, in the step of combining multimodal data (S120), first information augmentation and feature extraction may be performed, and second information augmentation and feature extraction may be performed and combined. . For example, the first information may be a user's breathing pattern extracted based on the user's acoustic information, and the second information may be heart rate variability (HRV) or heart rate obtained from a photoplethysmography signal (PPG). and can be combined into multimodal data.
본 발명의 실시예에 따라서, 딥러닝 모델에 멀티모달 결합 데이터를 입력하는 단계(S130)은 멀티모달 결합 데이터를 입력하기 위해 딥러닝 모델의 입력하기 위해 요구되는 정합하는 형태로 데이터를 가공할 수 있다.According to an embodiment of the present invention, the step of inputting multimodal combined data into a deep learning model (S130) can process the data into a matching form required for inputting the deep learning model to input multimodal combined data. there is.
본 발명의 실시예에 따라서, 딥러닝 모델의 출력으로 수면 상태 정보를 획득하는 단계(S140)은 멀티모달 결합 데이터를 수면 상태 정보를 추론하기 위한 딥러닝 모델의 입력으로 하여, 수면 상태 정보를 추론할 수 있다. 수면 상태 정보는 사용자의 수면의 상태에 관한 정보일 수 있다.According to an embodiment of the present invention, the step of acquiring sleep state information as an output of a deep learning model (S140) is to infer sleep state information by using multimodal combined data as an input to a deep learning model for inferring sleep state information. can do. Sleep state information may be information about the user's sleep state.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면을 단계로서 표현하는 수면 단계 정보를 포함할 수 있다. 수면의 단계는 NREM(non-REM) 수면, REM(Rapid eye movement) 수면으로 구분될 수 있고, NREM 수면은 다시 복수(예: Light, Deep의 2단계, N1 내지 N4의 4단계)로 구분될 수 있다. 수면 단계의 설정은 일반적인 수면 단계로 정의될 수도 있지만, 설계자에 따라 다양한 수면 단계로 임의 설정될 수도 있다.According to an embodiment of the present invention, the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can. The sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면에서 발생하는 수면과 관련한 질환이나 수면 중 행동을 표현하는 수면 이벤트 정보를 포함할 수 있다. 구체적으로, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 수면 질환에 의한 수면 무호흡증 및 저호흡증 정보를 포함할 수 있다. 또한, 구체적으로는, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 코골이 여부, 코골이 지속 시간, 잠꼬대 여부, 잠꼬대 지속 시간, 뒤척임 여부 및 뒤척임 지속 시간을 포함할 수 있다. 서술된 사용자의 수면 이벤트 정보는 사용자의 수면 중에 발생하는 사건을 표현하기 위한 예시에 불과하며, 이에 한정되지 않는다.According to an embodiment of the present invention, the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep. Specifically, sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease. Additionally, specifically, sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talk, whether he tosses and turns, and the duration of the tossing and turning. The user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
멀티모달로 한 수면 상태 정보 분석 방법의 일 실시예 (CONCEPT-B)An embodiment of a multimodal sleep state information analysis method (CONCEPT-B)
도 27은 본 발명의 일실시예에 따른 수면 음향 정보와 수면 환경 정보 각각을 추론 한 것을 멀티모달 데이터로 결합하는 단계를 포함하는 수면 상태 정보를 분석하기 위한 방법을 설명하기 위한 흐름도이다.Figure 27 is a flowchart illustrating a method for analyzing sleep state information including the step of combining the inferred sleep sound information and sleep environment information into multimodal data according to an embodiment of the present invention.
본 발명의 목적을 달성하기 위하여 일 실시예에 따르면, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법은 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득하는 제1 정보 획득 단계(S200), 제1 정보의 전처리를 수행하는 단계(S202), 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S204), 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S210), 제2 정보의 전처리를 수행하는 단계(S212), 제2 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S214), 멀티모달로 데이터를 결합하는 결합단계(S220) 및 멀티모달 데이터의 결합으로 수면 상태 정보를 획득하는 단계(S230)을 포함할 수 있다.In order to achieve the purpose of the present invention, according to one embodiment, a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep. Information acquisition step (S200), performing preprocessing of the first information (S202), inferring information about sleep by using the first information as input to the deep learning model (S204), user sleep related to the user's sleep A second information acquisition step of acquiring environmental information (S210), a step of preprocessing the second information (S212), a step of inferring information about sleep by using the second information as input to the deep learning model (S214), It may include a combining step of combining multi-modal data (S220) and a step of obtaining sleep state information by combining multi-modal data (S230).
본 발명의 실시예에 따라서, 제1 정보 획득 단계(S200)은 사용자 단말(10)에서 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득할 수 있다. 사용자의 수면과 관련한 시간 도메인 상의 음향 정보는 사용자 단말(10)의 음원 탐지부에서 얻어지는 음원 정보를 포함할 수 있다.According to an embodiment of the present invention, in the first information acquisition step (S200), sound information in the time domain related to the user's sleep may be acquired from the user terminal 10. Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S202)에서는 시간 도메인 상의 시간 음향 정보를, 주파수 성분의 시간 축에 따른 변화를 포함하는 정보 또는, 주파수 도메인 상의 정보로 변환할 수 있다. 또한, 주파수 도메인 상의 정보는 스펙트로그램으로 표현될 수 있으며, 멜 스케일이 적용된 멜 스펙트로그램일 수 있다. 스펙트로그램으로 변환함으로써, 사용자의 프라이버시 보호 및 데이터 가공량을 줄일 수 있다.According to an embodiment of the present invention, in the step of performing data preprocessing of the first information (S202), temporal acoustic information on the time domain is converted into information including changes in the frequency component along the time axis or information on the frequency domain. can do. Additionally, information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied. By converting to a spectrogram, user privacy can be protected and the amount of data processing can be reduced.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S202)에서는 수면 음향 정보를 딥러닝 모델에 입력시키기 위한 충분한 양의 유의미한 데이터를 얻기 위한 데이터 어그멘테이션 과정을 포함할 수 있다. 데이터 어그멘테이션 기법에는 피치 시프팅(Pitch Shifting) 어그멘테이션, TUT(Tile UnTile) 어그멘테이션 어그멘테이션 및 노이즈 부가 어그멘테이션을 포함할 수 있다. 전술한 어그멘테이션 기법은 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.According to an embodiment of the present invention, the step of performing data preprocessing of the first information (S202) may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model. there is. Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation. The above-described augmentation technique is merely an example, and the present invention is not limited thereto.
본 발명의 실시예에 따라 멜 스케일에서 부가하는 방법에 의하면 하드웨어가 데이터를 처리하는 데에 소요되는 시간이 단축될 수 있다.According to an embodiment of the present invention, the time required for hardware to process data can be shortened by the method added by Mel Scale.
한편, 전술한 노이즈의 종류에 관한 구체적인 기재는 본 발명의 노이즈 부가 어그멘테이션을 설명하기 위한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.Meanwhile, the detailed description of the types of noise described above is merely an example for explaining the noise addition augmentation of the present invention, and the present invention is not limited thereto.
본 발명의 실시예에 따라서, 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S210)는 사용자 단말(10), 외부서버 또는 네트워크를 통해서 사용자 수면 환경 정보를 획득할 수 있다. 사용자의 수면 환경 정보는 사용자가 위치한 공간에서 획득되는 수면과 관련한 정보를 의미할 수 있다. 수면 환경 정보는, 비접촉식 방법으로 사용자가 위치한 공간에서 획득되는 센싱 정보일 수 있다. 수면 환경 정보는, 레이더를 통해 측정되는 호흡 운동 및 신체 움직임 정보일 수 있다. 수면 환경 정보는, 스마트 워치, 스마트 가전 등에서 획득되는 사용자의 수면에 관련한 정보일 수 있다. 수면 환경 정보는, 광혈류 측정 신호(PhotoPlethysmoGraphy, PPG)를 통해 얻어지는 심박 변이도(Heart Rate Variability, HRV), 심박수(Heart Rate)일 수 있으며, 광혈류 측정 신호는 스마트 워치 및 스마트 링에 의해서 측정될 수 있다. 수면 환경 정보는, 뇌파 신호(Electro Encephalo Graphy, EEG)일 수 있다. 수면 환경 정보는 수면 중 측정되는 Actigraphy 신호 일 수 있다.According to an embodiment of the present invention, the second information acquisition step (S210) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network. . The user's sleep environment information may refer to information related to sleep obtained in the space where the user is located. Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method. Sleep environment information may be breathing movement and body movement information measured through radar. Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc. Sleep environment information may be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. You can. Sleep environment information may be an electroencephalography (EEG) signal. Sleep environment information may be an Actigraphy signal measured during sleep.
본 발명의 실시예에 따라서, 제2 정보의 전처리를 진행하는 단계(S212)는 사용자의 수면 환경 정보의 데이터를 딥러닝 모델에 입력 시키기 위한 충분한 양의 유의미한 데이터를 얻기 위한 데이터 어그멘테이션 과정을 포함할 수 있다.According to an embodiment of the present invention, the preprocessing of the second information (S212) involves a data augmentation process to obtain a sufficient amount of meaningful data to input the data of the user's sleep environment information into a deep learning model. It can be included.
본 발명의 일 실시예에 따라서, 제2 정보의 전처리를 진행하는 단계(S212)는 사용자의 수면 환경 정보의 데이터가 이미지 정보로 얻어지는 경우, 이미지 정보를 TUT(Tile UnTile) 어그멘테이션 어그멘테이션 및 노이즈 부가 어그멘테이션을 포함할 수 있다. 전술한 어그멘테이션 기법은 이미지 정보의 어그멘테이션 기법에 관한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다. 사용자의 수면 환경 정보는 다양한 저장 형태의 방식의 정보일 수 있다. 사용자의 수면 환경 정보의 어그멘테이션 방법은 다양한 방식이 채용될 수 있다.According to an embodiment of the present invention, in the step of pre-processing the second information (S212), when the data of the user's sleep environment information is obtained as image information, the image information is converted to TUT (Tile UnTile) augmentation. and noise-added augmentation. The above-described augmentation technique is merely an example of an augmentation technique for image information, and the present invention is not limited thereto. The user's sleep environment information may be information in various storage formats. Various methods may be employed to augment the user's sleep environment information.
본 발명의 실시예에 따라서, 전처리 된 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S204)는 기 학습된 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론할 수 있다.According to an embodiment of the present invention, the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204) involves inferring information about sleep by using the preprocessed first information as an input to a deep learning model. You can.
본 발명의 실시예에 따라서, 기 학습된 딥러닝 모델은 추론되는 데이터를 통한 자가 학습을 위하여 추론되는 데이터를 입력으로 사용할 수 있다.According to an embodiment of the present invention, a previously learned deep learning model can use inferred data as input for self-learning through inferred data.
본 발명의 실시예에 따라서, 수면 음향에 관한 제1정보를 입력으로 하여 수면에 관한 정보를 추론하는 딥러닝 수면 분석 모델은 피처 추출 모델과 피처 분류 모델을 포함할 수 있다.According to an embodiment of the present invention, a deep learning sleep analysis model that infers information about sleep by using first information about sleep sounds as input may include a feature extraction model and a feature classification model.
본 발명의 실시예에 따른 딥러닝 수면 분석 모델 중 피처 추출 모델은, 하나의 스펙트로그램이 입력되어, 하나의 스펙트로그램에 해당하는 수면 상태 정보를 예측하도록 학습되는 One-to-one 프록시 태스크(Proxy task)에 의해서 사전 학습(Pre training)될 수 있다. 본 발명의 실시예에 따른 피처 추출 모델에 CNN 딥러닝 모델을 채용하는 경우에, FC(Fully Connected Layer) 또는 FCN(Fully Connected Neural Network)의 구조를 채택하여 학습을 수행할 수도 있다. 본 발명의 실시예에 따른 피처 추출 모델에 MobileViTV2 딥러닝 모델을 채용하는 경우에는, 중간층(Intermediate Layer)의 구조를 채택하여 학습을 수행할 수도 있다.Among the deep learning sleep analysis models according to an embodiment of the present invention, the feature extraction model is a one-to-one proxy task (Proxy) in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by task. When adopting a CNN deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network). When using the MobileViTV2 deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of the intermediate layer.
본 발명의 실시예에 따른 딥러닝 수면 분석 모델 중 피처 분류 모델은, 복수의 연속된 스펙트로그램이 입력되어, 각각의 스펙트로그램의 수면 상태 정보를 예측하고, 복수의 연속된 스펙트로그램의 시퀀스를 분석하여 전체적인 수면 상태 정보를 예측 또는 분류하도록 학습될 수 있다. Among the deep learning sleep analysis models according to an embodiment of the present invention, the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. Thus, it can be learned to predict or classify overall sleep state information.
본 발명의 실시예에 따라서, 전처리된 제2 정보를 추론 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S214)는 기 학습된 추론 모델의 입력으로 하여, 수면에 관한 정보를 추론할 수 있다. 기 학습된 추론 모델은, 상술한 수면 딥러닝 수면 분석 모델일 수 있으나 이에 한정되지 아니하고, 기 학습된 추론 모델은 목적을 달성하기 위한 다양한 형태의 방식의 추론 모델 일 수 있다. 기 학습된 추론 모델은 다양한 방식이 채용될 수 있다.According to an embodiment of the present invention, in the step (S214) of inferring information about sleep by using the preprocessed second information as an input to the inference model, information about sleep can be inferred by using the preprocessed second information as an input to the inference model. there is. The previously learned inference model may be the sleep deep learning sleep analysis model described above, but is not limited thereto, and the previously learned inference model may be an inference model of various types to achieve the purpose. A variety of methods can be used for the previously learned inference model.
본 발명의 실시예에 따라서, 데이터 전처리 과정을 거친 제1 정보와 제2 정보를 멀티모달 데이터로 결합하는 단계(S220)은 정보를 결합하여 수면 상태 정보를 결정하기 위하여 데이터를 결합한다.According to an embodiment of the present invention, the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data (S220) combines the information to determine sleep state information.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 방법은 전처리된 제1 정보를 통해 추론된 수면 정보와 전처리된 제2 정보를 통해 추론된 정보를 동일한 형식의 데이터로 결합하는 것일 수 있다. According to an embodiment of the present invention, a method of combining multimodal data may be to combine sleep information inferred through preprocessed first information and information inferred through preprocessed second information into data of the same format. .
본 발명의 실시예에 따라서, 멀티모달 데이터 결합으로 수면 상태 정보를 획득하는 단계(S230)는 멀티모달로 얻은 데이터를 결합하여 이를 통해서 사용자의 수면 상태 정보를 결정할 수 있다. 수면 상태 정보는 사용자의 수면의 상태에 관한 정보일 수 있다.According to an embodiment of the present invention, in the step of acquiring sleep state information by combining multimodal data (S230), the user's sleep state information can be determined by combining data obtained through multimodality. Sleep state information may be information about the user's sleep state.
본 발명의 일 실시예에 따라서, 멀티모달 데이터 결합으로 수면 상태 정보를 획득하는 단계(S230)은 전처리 된 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S204)에서 추론된 사용자의 수면에 관한 힙노그램(hypnogram)과 전처리된 제2 정보를 추론 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S214)에서 추론된 사용자의 수면에 관한 힙노그램(hypnogram)를 결합할 수 있다. 예를 들어, 각 힙노그램(hypnogram)을 중첩시켜 일치하는 부분에 대한 수면단계에 대한 정보를 채용하고, 일치하지 않는 부분에 대한 수면단계에 대한 정보는 가중치를 부여하여 채용여부를 결정함으로써 수면 상태 정보를 획득할 수 있다.According to an embodiment of the present invention, the step of acquiring sleep state information by combining multimodal data (S230) includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204). In the step (S214) of inferring information about sleep using the inferred hypnogram about the user's sleep and the preprocessed second information as input to the inference model, the hypnogram about the inferred user's sleep is generated. Can be combined. For example, by overlapping each hypnogram, information about the sleep stage for the matching part is adopted, and information about the sleep stage for the non-matching part is weighted to determine whether or not to adopt the sleep state. Information can be obtained.
본 발명의 일 실시예에 따라서, 멀티모달 데이터 결합으로 수면 상태 정보를 획득하는 단계(S230)은 전처리 된 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S204)에서 추론된 사용자의 수면에 관한 힙노덴시티 그래프(hypnodensity graph)와 전처리된 제2 정보를 추론 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S214)에서 추론된 사용자의 수면에 관한 힙노덴시티 그래프(hypnodensity graph)를 결합할 수 있다. 예를 들어, 각 힙노덴시티 그래프(hypnodensity graph)의 확률을 수식에 대입하여, 각 시각마다 가장 높은 신뢰도를 가지는 수면 단계를 사용자의 수면 단계 정보로 얻을 수 있다. 예를 들어, 각 힙노덴시티 그래프(hypnodensity graph)에서 시간에 따른 신뢰도가 기 설정된 신뢰도 임계치를 넘는 경우는 사용자의 수면 단계 정보로 채용하고, 시간에 따른 신뢰도가 기 설정된 신뢰도 임계치를 넘는 수면 단계 정보가 없는 경우 가중치를 통해 수면 단계 정보로 채용함으로써, 수면 상태 정보를 획득할 수 있다.According to an embodiment of the present invention, the step of acquiring sleep state information by combining multimodal data (S230) includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204). Hypnodensity about the user's sleep inferred in the step (S214) of inferring information about sleep using the inferred hypnodensity graph about the user's sleep and the preprocessed second information as input to the inference model. Graphs (hypnodensity graphs) can be combined. For example, by substituting the probability of each hypnodensity graph into a formula, the sleep stage with the highest reliability at each time can be obtained as the user's sleep stage information. For example, in each hypnodensity graph, if the reliability over time exceeds the preset reliability threshold, it is adopted as the user's sleep stage information, and the sleep stage information whose reliability over time exceeds the preset reliability threshold is adopted as the user's sleep stage information. If there is no, sleep state information can be obtained by adopting it as sleep stage information through weighting.
본 발명의 일 실시예에 따라서, 멀티모달 데이터 결합으로 수면 상태 정보를 획득하는 단계(S230)은 전처리 된 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S204)에서 추론된 사용자의 수면에 관한 힙노그램(hypnogram)과 전처리된 제2 정보를 추론 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S214)에서 추론된 사용자의 수면에 관한 힙노덴시티 그래프(hypnodensity graph)를 결합할 수 있다. 예를 들어, 힙노그램에 표시되는 수면 단계와 힙노덴시티 그래프의 신뢰도가 기 설정된 임계치를 넘는 경우에는, 사용자의 수면 단계로 채용함으로써, 사용자의 수면 상태 정보를 획득할 수 있다. 예를 들어, 힙노그램에 표시되는 수면 단계와 힙노덴시티 그래프의 신뢰도가 기 설정된 임계치를 넘지 않는 경우 가중치를 부과하여 계산하여 사용자의 수면 단계로 채용함으로써, 신뢰도 높은 사용자의 수면 상태 정보를 획득할 수 있다. According to an embodiment of the present invention, the step of acquiring sleep state information by combining multimodal data (S230) includes the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S204). A hypnodensity graph about the user's sleep inferred in the step (S214) of inferring information about sleep using the inferred hypnogram about the user's sleep and the preprocessed second information as input to the inference model. graph) can be combined. For example, if the reliability of the sleep stage displayed in the hypnogram and the hypnodensity graph exceeds a preset threshold, information on the user's sleep state can be obtained by adopting it as the user's sleep stage. For example, if the reliability of the sleep stage displayed in the hypnogram and the hypnodensity graph does not exceed a preset threshold, a weighted calculation is made and adopted as the user's sleep stage to obtain highly reliable user's sleep state information. You can.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면을 단계로서 표현하는 수면 단계 정보를 포함할 수 있다. 수면의 단계는 NREM(non-REM) 수면, REM(Rapid eye movement) 수면으로 구분될 수 있고, NREM 수면은 다시 복수(예: Light, Deep의 2단계, N1 내지 N4의 4단계)로 구분될 수 있다. 수면 단계의 설정은 일반적인 수면 단계로 정의될 수도 있지만, 설계자에 따라 다양한 수면 단계로 임의 설정될 수도 있다.According to an embodiment of the present invention, the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can. The sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면을 단계로서 표시하는 수면 단계 정보를 포함할 수 있다. 수면의 단계를 표시하는 방법은 수면 단계를 그래프에 표시하는 힙노그램(Hypnogram) 및 각 수면 단계의 확률을 그래프에 표시하는 힙노덴시티 그래프(Hypnodensity graph)를 포함할 수 있으나, 표시하는 방법은 이에 한정되지 않는다.According to an embodiment of the present invention, the user's sleep state information may include sleep stage information indicating the user's sleep as a stage. Methods for displaying sleep stages may include a Hypnogram, which displays sleep stages on a graph, and a Hypnodensity graph, which displays the probability of each sleep stage on a graph, but the display method is as follows. It is not limited.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면에서 발생하는 수면과 관련한 질환이나 수면 중 행동을 표현하는 수면 이벤트 정보를 포함할 수 있다. 구체적으로, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 수면 질환에 의한 수면 무호흡증 및 저호흡증 정보를 포함할 수 있다. 또한, 구체적으로는, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 코골이 여부, 코골이 지속 시간, 잠꼬대 여부, 잠꼬대 지속 시간, 뒤척임 여부 및 뒤척임 지속 시간을 포함할 수 있다. 서술된 사용자의 수면 이벤트 정보는 사용자의 수면 중에 발생하는 사건을 표현하기 위한 예시에 불과하며, 이에 한정되지 않는다.According to an embodiment of the present invention, the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep. Specifically, sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease. Additionally, specifically, the sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talking, whether he tosses and turns, and the duration of the tossing and turning. The user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
멀티모달로 한 수면 상태 정보 분석 방법의 일 실시예 (CONCEPT-C)One embodiment of a multimodal sleep state information analysis method (CONCEPT-C)
도 28은 본 발명의 일실시예에 따른 수면 음향 정보를 추론한 것을 수면 환경 정보와 멀티모달 데이터로 결합하는 단계를 포함하는 수면 상태 정보를 분석하기 위한 방법을 설명하기 위한 흐름도이다.Figure 28 is a flowchart illustrating a method for analyzing sleep state information including the step of combining inferred sleep sound information into sleep environment information and multimodal data according to an embodiment of the present invention.
본 발명의 목적을 달성하기 위하여 일 실시예에 따르면, 수면 음향 정보와 수면 환경 정보를 멀티모달로 한 수면 상태 정보를 분석하기 위한 방법은 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득하는 제1 정보 획득 단계(S300), 제1 정보의 전처리를 수행하는 단계(S302), 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S304), 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S310), 멀티모달로 데이터를 결합하는 결합단계(S320) 및 멀티모달 데이터의 결합으로 수면 상태 정보를 획득하는 단계(S330)을 포함할 수 있다.In order to achieve the purpose of the present invention, according to one embodiment, a method for analyzing sleep state information using sleep sound information and sleep environment information in a multimodal manner includes a first method of acquiring sound information in the time domain related to the user's sleep. Information acquisition step (S300), performing preprocessing of the first information (S302), inferring information about sleep by using the first information as input to the deep learning model (S304), user sleep related to the user's sleep It may include a second information acquisition step of acquiring environmental information (S310), a combining step of combining multi-modal data (S320), and a step of acquiring sleep state information by combining multi-modal data (S330).
본 발명의 실시예에 따라서, 제1 정보 획득 단계(S300)은 사용자 단말(10)에서 사용자의 수면과 관련한 시간 도메인 상의 음향 정보를 획득할 수 있다. 사용자의 수면과 관련한 시간 도메인 상의 음향 정보는 사용자 단말(10)의 음원 탐지부에서 얻어지는 음원 정보를 포함할 수 있다.According to an embodiment of the present invention, the first information acquisition step (S300) may acquire sound information in the time domain related to the user's sleep from the user terminal 10. Sound information in the time domain related to the user's sleep may include sound source information obtained from the sound source detection unit of the user terminal 10.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S302)에서는 시간 도메인 상의 시간 음향 정보를 주파수 도메인 상의 정보로 변환할 수 있다. 또한, 주파수 도메인 상의 정보는 스펙트로그램으로 표현될 수 있으며, 멜 스케일이 적용된 멜 스펙트로그램일 수 있다. 스펙트로그램으로 변환함으로써, 사용자의 프라이버시 보호 및 데이터 가공량을 줄일 수 있다.According to an embodiment of the present invention, in step S302 of performing data preprocessing of the first information, temporal sound information on the time domain may be converted into information on the frequency domain. Additionally, information in the frequency domain may be expressed as a spectrogram, which may be a Mel spectrogram to which the Mel scale is applied. By converting to a spectrogram, user privacy can be protected and the amount of data processing can be reduced.
본 발명의 실시예에 따라서, 제1 정보의 데이터 전처리를 수행하는 단계(S302)에서는 수면 음향 정보를 딥러닝 모델에 입력시키기 위한 충분한 양의 유의미한 데이터를 얻기 위한 데이터 어그멘테이션 과정을 포함할 수 있다. 데이터 어그멘테이션 기법에는 피치 시프팅(Pitch Shifting) 어그멘테이션, TUT(Tile UnTile) 어그멘테이션 어그멘테이션 및 노이즈 부가 어그멘테이션을 포함할 수 있다. 전술한 어그멘테이션 기법은 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.According to an embodiment of the present invention, the step of performing data preprocessing of the first information (S302) may include a data augmentation process to obtain a sufficient amount of meaningful data to input sleep sound information into a deep learning model. there is. Data augmentation techniques may include pitch shifting (Pitch Shifting) augmentation, TUT (Tile UnTile) augmentation, and noise-added augmentation. The above-described augmentation technique is merely an example, and the present invention is not limited thereto.
본 발명의 실시예에 따라 멜 스케일에서 부가하는 방법에 의하면 하드웨어가 데이터를 처리하는 데에 소요되는 시간이 단축될 수 있다.According to an embodiment of the present invention, the time required for hardware to process data can be shortened by the method added by Mel Scale.
한편, 전술한 노이즈의 종류에 관한 구체적인 기재는 본 발명의 노이즈 부가 어그멘테이션을 설명하기 위한 단순한 예시일 뿐이며, 본 발명은 이에 제한되는 것은 아니다.Meanwhile, the detailed description of the types of noise described above is merely an example for explaining the noise addition augmentation of the present invention, and the present invention is not limited thereto.
본 발명의 실시예에 따라서, 사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계(S310)는 사용자 단말(10), 외부서버 또는 네트워크를 통해서 사용자 수면 환경 정보를 획득할 수 있다. 사용자의 수면 환경 정보는 사용자가 위치한 공간에서 획득되는 수면과 관련한 정보를 의미할 수 있다. 수면 환경 정보는, 비접촉식 방법으로 사용자가 위치한 공간에서 획득되는 센싱 정보일 수 있다. 수면 환경 정보는, 레이더를 통해 측정되는 호흡 운동 및 신체 움직임 정보일 수 있다. 수면 환경 정보는, 스마트 워치, 스마트 가전 등에서 획득되는 사용자의 수면에 관련한 정보일 수 있다. 수면 환경 정보는, 광혈류 측정 신호(PhotoPlethysmoGraphy, PPG)를 통해 얻어지는 심박 변이도(Heart Rate Variability, HRV), 심박수(Heart Rate)일 수 있으며, 광혈류 측정 신호는 스마트 워치 및 스마트링에 의해서 측정될 수 있다. 수면 환경 정보는, 뇌파 신호(Electro Encephalo Graphy, EEG)일 수 있다. 수면 환경 정보는 수면 중 측정되는 Actigraphy 신호 일 수 있다. 수면 환경 정보는, 사용자의 정보를 표상하는 라벨링 데이터일 수 있다. 구체적으로, 라벨링 데이터는 사용자의 나이, 질병여부, 신체조건, 인종, 키, 몸무게 및 체질량 지수를 포함할 수 있고, 이는 사용자의 정보를 표상하는 라벨링 데이터의 예시일 뿐 이에 한정되지 않는다. 상술한 수면 환경 정보는 사용자의 수면에 영향을 미칠 수 있는 정보의 예시에 불과하며 이에 한정되지 않는다.According to an embodiment of the present invention, the second information acquisition step (S310) of acquiring user sleep environment information related to the user's sleep may acquire user sleep environment information through the user terminal 10, an external server, or a network. . The user's sleep environment information may refer to information related to sleep obtained in the space where the user is located. Sleep environment information may be sensing information obtained in a space where the user is located using a non-contact method. Sleep environment information may be breathing movement and body movement information measured through radar. Sleep environment information may be information related to the user's sleep obtained from a smart watch, smart home appliance, etc. Sleep environment information may be Heart Rate Variability (HRV) and heart rate obtained through PhotoPlethysmoGraphy (PPG), and photoplethysmography signals can be measured by smart watches and smart rings. You can. Sleep environment information may be an electroencephalography (EEG) signal. Sleep environment information may be an Actigraphy signal measured during sleep. Sleep environment information may be labeling data representing user information. Specifically, the labeling data may include the user's age, disease status, physical condition, race, height, weight, and body mass index, and this is only an example of labeling data representing the user's information and is not limited thereto. The above-described sleep environment information is only an example of information that may affect the user's sleep, and is not limited thereto.
본 발명의 실시예에 따라서, 전처리 된 제1 정보를 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론하는 단계(S304)는 기 학습된 딥러닝 모델의 입력으로 하여 수면에 관한 정보를 추론할 수 있다.According to an embodiment of the present invention, the step of inferring information about sleep by using the preprocessed first information as an input to a deep learning model (S304) involves inferring information about sleep by using the preprocessed first information as an input to a deep learning model. You can.
본 발명의 실시예에 따라서, 수면 음향에 관한 제1정보를 입력으로 하여 수면에 관한 정보를 추론하는 딥러닝 수면 분석 모델은 피처 추출 모델과 피처 분류 모델을 포함할 수 있다.According to an embodiment of the present invention, a deep learning sleep analysis model that infers information about sleep by using first information about sleep sounds as input may include a feature extraction model and a feature classification model.
본 발명의 실시예에 따른 딥러닝 수면 분석 모델 중 피처 추출 모델은, 하나의 스펙트로그램이 입력되어, 하나의 스펙트로그램에 해당하는 수면 상태 정보를 예측하도록 학습되는 One-to-one 프록시 태스크(Proxy task)에 의해서 사전 학습(Pre training)될 수 있다. 본 발명의 실시예에 따른 피처 추출 모델에 CNN 딥러닝 모델을 채용하는 경우에, FC(Fully Connected Layer) 또는 FCN(Fully Connected Neural Network)의 구조를 채택하여 학습을 수행할 수도 있다. 본 발명의 실시예에 따른 피처 추출 모델에 MobileViTV2 딥러닝 모델을 채용하는 경우에는, 중간층(Intermediate Layer)의 구조를 채택하여 학습을 수행할 수도 있다.Among the deep learning sleep analysis models according to an embodiment of the present invention, the feature extraction model is a one-to-one proxy task (Proxy) in which one spectrogram is input and learned to predict sleep state information corresponding to one spectrogram. It can be pre-trained by task. When adopting a CNN deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of FC (Fully Connected Layer) or FCN (Fully Connected Neural Network). When using the MobileViTV2 deep learning model as a feature extraction model according to an embodiment of the present invention, learning may be performed by adopting the structure of the intermediate layer.
본 발명의 실시예에 따른 딥러닝 수면 분석 모델 중 피처 분류 모델은, 복수의 연속된 스펙트로그램이 입력되어, 각각의 스펙트로그램의 수면 상태 정보를 예측하고, 복수의 연속된 스펙트로그램의 시퀀스를 분석하여 시계열적인 수면 상태 정보를 예측 또는 분류하도록 학습될 수 있다. Among the deep learning sleep analysis models according to an embodiment of the present invention, the feature classification model inputs a plurality of consecutive spectrograms, predicts sleep state information of each spectrogram, and analyzes the sequence of the plurality of consecutive spectrograms. Thus, it can be learned to predict or classify time-series sleep state information.
본 발명의 실시예에 따라서, 데이터 전처리 과정을 거친 제1 정보와 제2 정보를 멀티모달 데이터로 결합하는 단계(S320)은 딥 러닝 모델에 멀티모달 데이터를 입력하기 위하여 데이터를 결합한다.According to an embodiment of the present invention, the step of combining the first information and the second information that have undergone a data preprocessing process into multimodal data (S320) combines the data to input the multimodal data to the deep learning model.
본 발명의 일 실시예에 따라서, 멀티모달 데이터로 결합하는 방법은 전처리된 제1 정보를 통해 추론된 수면 정보와 전처리된 제2 정보를 통해 추론된 정보를 동일한 형식의 데이터로 결합하는 것일 수 있다. According to an embodiment of the present invention, a method of combining multimodal data may be to combine sleep information inferred through preprocessed first information and information inferred through preprocessed second information into data of the same format. .
본 발명의 실시예에 따라서, 멀티모달 데이터 결합으로 수면 상태 정보를 획득하는 단계(S330)은 멀티모달로 얻은 데이터를 결합하여 이를 통해서 사용자의 수면 상태 정보를 결정할 수 있다. 수면 상태 정보는 사용자의 수면의 상태에 관한 정보일 수 있다.According to an embodiment of the present invention, the step of acquiring sleep state information by combining multi-modal data (S330) can determine the user's sleep state information by combining data obtained through multi-modality. Sleep state information may be information about the user's sleep state.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면을 단계로서 표현하는 수면 단계 정보를 포함할 수 있다. 수면의 단계는 NREM(non-REM) 수면, REM(Rapid eye movement) 수면으로 구분될 수 있고, NREM 수면은 다시 복수(예: Light, Deep의 2단계, N1 내지 N4의 4단계)로 구분될 수 있다. 수면 단계의 설정은 일반적인 수면 단계로 정의될 수도 있지만, 설계자에 따라 다양한 수면 단계로 임의 설정될 수도 있다.According to an embodiment of the present invention, the user's sleep state information may include sleep stage information expressing the user's sleep as a stage. Stages of sleep can be divided into NREM (non-REM) sleep and REM (rapid eye movement) sleep, and NREM sleep can be further divided into multiple stages (e.g., stages 2 of light and deep, and stages 4 of N1 to N4). You can. The sleep stage setting may be defined as a general sleep stage, but may also be arbitrarily set to various sleep stages depending on the designer.
본 발명의 일 실시예에 따라서, 사용자의 수면 상태 정보는 사용자의 수면에서 발생하는 수면과 관련한 질환이나 수면 중 행동을 표현하는 수면 이벤트 정보를 포함할 수 있다. 구체적으로, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 수면 질환에 의한 수면 무호흡증 및 저호흡증 정보를 포함할 수 있다. 또한, 구체적으로는, 사용자의 수면 중에서 발생하는 수면 이벤트 정보는 사용자의 코골이 여부, 코골이 지속 시간, 잠꼬대 여부, 잠꼬대 지속 시간, 뒤척임 여부 및 뒤척임 지속 시간을 포함할 수 있다. 서술된 사용자의 수면 이벤트 정보는 사용자의 수면 중에 발생하는 사건을 표현하기 위한 예시에 불과하며, 이에 한정되지 않는다.According to an embodiment of the present invention, the user's sleep state information may include sleep event information expressing sleep-related diseases that occur during the user's sleep or behavior during sleep. Specifically, sleep event information that occurs during the user's sleep may include sleep apnea and hypopnea information due to the user's sleep disease. Additionally, specifically, the sleep event information that occurs during the user's sleep may include whether the user snores, the duration of snoring, whether the user talks in his sleep, the duration of the sleep talking, whether he tosses and turns, and the duration of the tossing and turning. The user's sleep event information described is only an example for expressing events that occur during the user's sleep, and is not limited thereto.
본 발명의 실시예에 따른 실시간 수면 분석Real-time sleep analysis according to an embodiment of the present invention
본 발명의 실시예에 따른, 음향 정보를 기반으로 한 수면 상태 정보의 분석으로는 수면 이벤트(예컨대, 무호흡, 저호흡, 코골이, 잠꼬대 등)에 대한 탐지 단계가 포함될 수 있다. 그러나, 수면 음향 패턴의 특성은 시간의 흐름에 걸쳐 반영되는 것이기 때문에, 특정 시점의 짧은 음향 데이터만으로는 파악하기 어려울 수 있다. 따라서, 음향 정보를 모델링 하기 위해서는 음향 정보의 시계열 특성에 기초하여 분석이 수행되어야 한다.According to an embodiment of the present invention, analysis of sleep state information based on acoustic information may include a detection step for sleep events (eg, apnea, hypopnea, snoring, sleep talking, etc.). However, because the characteristics of sleep acoustic patterns are reflected over time, it may be difficult to determine them using only short acoustic data at a specific point in time. Therefore, in order to model acoustic information, analysis must be performed based on the time series characteristics of the acoustic information.
또한, 수면 중 발생하는 수면 이벤트(예컨대, 무호흡, 저호흡, 코골이, 잠꼬대 등)은 수면 이벤트와 관련된 다양한 특징들을 가지고 있다. 예를 들어, 무호흡 이벤트 동안에는 소리가 없지만, 무호흡 이벤트가 끝나면 공기가 다시 통과하면서 큰 소리가 발생할 수 있고, 무호흡 이벤트의 특징을 시계열적으로 학습하여 수면 이벤트를 탐지할 수 있다.Additionally, sleep events that occur during sleep (eg, apnea, hypopnea, snoring, sleep talking, etc.) have various characteristics related to sleep events. For example, there is no sound during an apnea event, but when the apnea event ends, a loud sound may be generated as air passes again, and sleep events can be detected by learning the characteristics of the apnea event in time series.
실시간 수면 이벤트 탐지를 위한 딥 Deep for real-time sleep event detection
뉴럴 네트워크의neural network
차이점 difference
본 발명의 실시예에 따른, 수면 중 발생하는 수면 이벤트를 탐지하기 위해서, 상술한 수면 단계를 분석하기 위한 딥 뉴럴 네트워크 구조를 변경하여 사용할 수 있다. 구체적으로, 수면 단계 분석은 수면 음향에 대한 시계열적인 학습이 필요하지만, 수면 이벤트 탐지는 평균적으로 10초에서 60초사이에 발생하므로, 30초를 단위로 하는 1 에폭(epoch) 또는 2 에폭(epoch)을 정확하게 탐지하는 것으로 충분하다. 따라서, 본 발명의 일 실시예에 따른 수면 단계를 분석하기 위한 딥 뉴럴 네트워크 구조는 수면 단계 분석을 위한 딥 뉴럴 네트워크 구조의 입력량과 출력량을 감소시킬 수 있다. 예를 들어, 수면 단계를 분석하기 위한 딥 뉴럴 네트워크 구조는 40개의 멜 스펙트로그램을 처리하여 20 에폭의 수면 단계를 출력한다면, 수면 이벤트를 탐지하기 위한 딥 뉴럴 네트워크 구조는 14개의 멜 스펙트로그램을 처리하여 10 에폭의 수면 이벤트 레이블을 출력할 수 있다. 여기에서, 수면 이벤트 레이블은 이벤트 없음, 무호흡, 저호흡, 코골이 있음, 뒤척임 등을 포함할 수 있으나, 여기에 한정되지 않는다.In order to detect sleep events that occur during sleep according to an embodiment of the present invention, the deep neural network structure for analyzing the above-described sleep stages can be modified and used. Specifically, sleep stage analysis requires time-series learning of sleep sounds, but sleep event detection occurs on average between 10 and 60 seconds, so 1 epoch or 2 epochs of 30 seconds are used. ) is sufficient to accurately detect. Therefore, the deep neural network structure for analyzing sleep stages according to an embodiment of the present invention can reduce the amount of input and output of the deep neural network structure for analyzing sleep stages. For example, if the deep neural network structure for analyzing sleep stages processes 40 Mel spectrograms and outputs sleep stages of 20 epochs, the deep neural network structure for detecting sleep events processes 14 Mel spectrograms. Thus, the sleep event label of 10 epochs can be output. Here, the sleep event label may include, but is not limited to, no event, apnea, hypopnea, snoring, tossing and turning, etc.
또한, 본 발명의 실시예에 따른, 수면 중 발생하는 수면 이벤트를 탐지하기 위한 딥 뉴럴 네트워크 구조는 피처 추출 모델과 피처 분류 모델을 포함할 수 있다. 구체적으로, 피처 추출 모델은 각 멜 스펙트로그램에서 발견되는 수면 이벤트의 특징을 추출하고, 피처 분류 모델은 복수의 에폭을 감지하여 수면 이벤트를 포함하는 에폭을 찾아 이웃하는 특징을 분석하여 시계열적으로 수면 이벤트의 유형을 예측하고 분류할 수 있다.Additionally, a deep neural network structure for detecting sleep events that occur during sleep according to an embodiment of the present invention may include a feature extraction model and a feature classification model. Specifically, the feature extraction model extracts the features of sleep events found in each mel spectrogram, and the feature classification model detects multiple epochs, finds epochs containing sleep events, and analyzes neighboring features to identify sleep events in time series. Types of events can be predicted and classified.
실시간 수면 이벤트 탐지를 위한 클래스 가중치(Class Weights)Class Weights for real-time sleep event detection
본 발명의 일 실시예에 따른, 수면 중 발생하는 수면 이벤트를 탐지하기 위한 방법은 각 수면 이벤트의 클래스 불균형 문제를 해결하기 위해서 클래스 가중치(Class weights)를 부여할 수 있다. 구체적으로, 수면 중 발생하는 수면 이벤트 중 “이벤트 없음”은 전체 수면 길이에 있어서 지배적인 영향을 미칠 수 있어서, 수면 이벤트 학습 효율 저하를 발생시킬 수 있다. 따라서, “이벤트 없음” 보다 높은 가중치를 다른 수면 이벤트에 부여하여, 학습 효율 및 정확성을 향상시킬 수 있다. 예를 들어, 수면 이벤트 클래스가 “이벤트 없음”, “무호흡”, “저호흡” 3가지로 분류되는 경우, “이벤트 없음”이 학습에 미치는 영향을 감소시키기 위해서, “이벤트 없음”에는 1.0, “무호흡”에는 1.3, “저호흡”에는 2.1의 가중치를 부여할 수 있다.According to an embodiment of the present invention, a method for detecting sleep events that occur during sleep may assign class weights to solve the class imbalance problem of each sleep event. Specifically, among sleep events that occur during sleep, “no event” may have a dominant effect on the overall sleep length, resulting in a decrease in sleep event learning efficiency. Therefore, by assigning a higher weight than “no event” to other sleep events, learning efficiency and accuracy can be improved. For example, if the sleep event class is classified into three categories: “No event,” “Apnea,” and “Hypopnea,” to reduce the impact of “No event” on learning, “No event” is assigned 1.0, “ A weight of 1.3 can be assigned to “apnea” and a weight of 2.1 to “hypopnea.”
실시간 수면 이벤트 탐지를 위한 컨시스턴시 트레이닝Consistency training for real-time sleep event detection
그리고, 도 21은 본 발명의 일실시예에 따른 컨시스턴시 트레이닝(Consistency Training)을 설명하기 위한 도면이다. 본 발명의 실시예에 따른, 수면 중 발생하는 수면 이벤트를 탐지하는 단계는 가정 환경 및 소음 환경에서의 수면 중 발생하는 수면 이벤트를 탐지하기 위해서, 상술한 바와 같이 도 21에 도시된 바와 같이 컨시스턴시 트레이닝(Consistency Training)을 활용할 수 있다. 컨시스턴시 트레이닝(Consistency Training)은 반지도학습(Semi-Supervised learning)모델의 하나의 종류로서, 본 발명의 실시예에 따른 Consistency Training은 하나의 데이터에 대하여 노이즈를 의도적으로 부가한 것과, 노이즈를 의도적으로 부가하지 않은 데이터를 가지고 학습을 수행하는 방법일 수 있다.And, Figure 21 is a diagram for explaining consistency training according to an embodiment of the present invention. According to an embodiment of the present invention, the step of detecting a sleep event that occurs during sleep is to detect a sleep event that occurs during sleep in a home environment and a noisy environment. As described above, consistency training is performed as shown in FIG. 21. (Consistency Training) can be used. Consistency Training is a type of semi-supervised learning model. Consistency Training according to an embodiment of the present invention involves intentionally adding noise to one data, and intentionally adding noise to one data. This may be a method of performing learning with data that has not been added.
또한, 본 발명의 실시예에 따른 Consistency Training은 타겟 환경의 노이즈를 이용하여 가상의 수면 환경의 데이터를 생성하여 학습을 수행하는 방법일 수 있다.Additionally, Consistency Training according to an embodiment of the present invention may be a method of performing learning by generating data of a virtual sleep environment using noise of the target environment.
본 발명의 실시예에 따라 의도적으로 부가되는 노이즈는 타겟 환경의 노이즈일 수 있는데, 여기서 타겟 환경의 노이즈는 예컨대 수면다원검사 이외의 환경에서 획득된 노이즈일 수 있다. 구체적으로, 수면 이벤트를 탐지하는 데 있어서, 실제 사용자의 환경과 유사하게 하기 위해서 SNR과 소음의 종류를 조절함을 통해서, 다양한 노이즈를 부가할 수 있다. 이를 통해서 다양한 실험실에서 얻어지는 노이즈의 종류와 실제 가정환경에서 발생하는 노이즈에 대해서 수집하고, 학습할 수 있다.Noise intentionally added according to an embodiment of the present invention may be noise of the target environment, where the noise of the target environment may be noise obtained in an environment other than polysomnography, for example. Specifically, when detecting a sleep event, various noises can be added by adjusting the SNR and type of noise to resemble the actual user's environment. Through this, you can collect and learn about the types of noise obtained in various laboratories and the noise that occurs in actual home environments.
본 발명의 실시예들에 따르면, 편의상, 노이즈를 의도적으로 부가한 데이터를 Corrupted data로 지칭한다. Corrupted data는 바람직하게는 의도적으로 타겟 환경의 노이즈를 부가한 데이터를 의미할 수 있다.According to embodiments of the present invention, for convenience, data to which noise is intentionally added is referred to as corrupted data. Corrupted data may preferably refer to data to which noise of the target environment has been intentionally added.
또한, 편의상, 노이즈를 의도적으로 부가하지 않은 데이터를 Clean data로 지칭하기로 한다. 여기서 Clean data에는 의도적으로 노이즈를 부가하지 않았을 뿐, 실질적으로 노이즈가 포함될 수도 있다.Additionally, for convenience, data to which no noise is intentionally added will be referred to as clean data. Here, no noise was intentionally added to the clean data, but noise may actually be included.
본 발명의 일실시예에 따른 Consistency Training에 이용되는 Clean data는, 특정 환경(바람직하게는, 수면다원검사 환경)에서 획득한 데이터일 수 있고, Corrupted data는 다른 환경 또는 타겟 환경(바람직하게는, 수면다원검사 이외의 환경)에서 획득한 데이터일 수 있다.Clean data used for Consistency Training according to an embodiment of the present invention may be data acquired in a specific environment (preferably, a polysomnographic environment), and corrupted data may be data obtained in a different environment or target environment (preferably, This may be data obtained in an environment other than polysomnography.
본 발명의 일실시예에 따른 Corrupted data는 다른 환경 또는 타겟 환경(바람직하게는, 수면다원검사 이외의 환경)에서 획득한 노이즈를 Clean data에 의도적으로 부가한 데이터일 수 있다.Corrupted data according to an embodiment of the present invention may be data in which noise acquired in another environment or a target environment (preferably, an environment other than polysomnography) is intentionally added to clean data.
Consistency Training에서, 동일한 딥러닝 모델에 Clean data와 Corrupted data를 각각 입력한 경우에 각각의 출력이 서로 같아지도록 손실 함수 또는 일관성 손실(consistency loss)을 정의하여, 일관된 예측(consistent prediction)을 도모하도록 학습이 수행될 수 있다.In Consistency Training, when clean data and corrupted data are input to the same deep learning model, a loss function or consistency loss is defined so that each output is the same, learning to achieve consistent prediction. This can be done.
홈 노이즈 컨시스턴시 트레이닝Home Noise Consistency Training
본 발명의 일 실시예에 따른, 수면 중 발생하는 수면 이벤트(예컨대, 무호흡, 저호흡, 코골기, 잠꼬대 등) 탐지는 가정환경에서의 일관성 학습(Home Noise Consistency Training)을 포함할 수 있다. 가정환경에서의 일관성 학습은 모델이 집에서의 소음에도 강건하게 동작하도록 만둘 수 있다. 가정환경에서의 일관성 학습은 모델이 소음이 있든 없든 비슷한 예측을 출력하도록 일관성 학습을 진행하여 소음에 강건해질 수 있다.According to an embodiment of the present invention, detection of sleep events (eg, apnea, hypopnea, snoring, sleep talking, etc.) that occur during sleep may include home noise consistency training. Consistency learning in the home environment can make the model perform robustly even against noise at home. Consistency learning in a home environment can be made robust to noise by performing consistency learning so that the model outputs similar predictions regardless of whether there is noise or not.
본 발명의 일 실시예에 따른, 수면 중 발생하는 수면 이벤트 탐지는 가정환경에서의 일관성 학습을 진행할 수 있다. 가정환경에서의 일관성 학습은 일관성 손실함수를 포함할 수 있다. 예를 들어, 일관성 손실(Consistency loss)은 깨끗한 수면 호흡 소리의 예측과 그 소리의 손상된 버전의 예측 사이의 평균 제곱 오차(MSE)로 정의될 수 있다.According to an embodiment of the present invention, sleep event detection that occurs during sleep can proceed with consistency learning in the home environment. Consistency learning in the home environment may involve a consistency loss function. For example, consistency loss can be defined as the mean square error (MSE) between the prediction of a clean sleep breathing sound and the prediction of a corrupted version of that sound.
본 발명의 일 실시예에 따른, 가정환경에서의 일관성 학습은 손상된 소리를 생성하기 위해, 훈련 소음에서 무작위로 데이터를 샘플링하고, -20에서 5 사이의 무작위 SNR로 깨끗한 수면 호흡 소리에 노이즈를 부가할 수 있다.According to one embodiment of the present invention, consistency learning in a home environment randomly samples data from the training noise to generate corrupted sounds, and adds noise to clean sleep breathing sounds with a random SNR between -20 and 5. can do.
본 발명의 일 실시예에 따른, 가정환경에서의 일관성 학습은 입력 시퀀스의 길이가 14 epochs, 총 샘플링된 소음의 길이가 7분 이상이 되도록 학습될 수 있다. 이를 통해, 본 발명에 따른 수면 이벤트를 탐지는 본 발명에 따른 수면 단계 분석에 비해 짧은 시간 내의 정보를 탐지하는 것으로, 수면 이벤트 탐지의 정확도가 상승될 수 있다.According to an embodiment of the present invention, consistency learning in a home environment can be done so that the length of the input sequence is 14 epochs and the total length of sampled noise is 7 minutes or more. Through this, detecting a sleep event according to the present invention detects information within a shorter period of time compared to sleep stage analysis according to the present invention, and the accuracy of sleep event detection can be increased.
이벤트 탐지로부터 From event detection
AHIAHI
값 추정을 위한 회귀분석 Regression analysis for value estimation
도 34는 본 발명의 일 실시예에 따른, 수면 중 발생하는 수면 이벤트를 통해 수면 무호흡증 발생 지수인 AHI 분석하기 위해 활용하는 선형회귀분석 함수를 설명하기 위한 도면이다. Figure 34 is a diagram illustrating a linear regression analysis function used to analyze AHI, a sleep apnea occurrence index, through sleep events that occur during sleep, according to an embodiment of the present invention.
본 발명의 일 실시예에 따른, 단위시간(예컨대, 1시간)당 발생하는 호흡 사건의 횟수를 의미하는 AHI 지수는 수면 단계 분석과는 별도로 하나의 수면 단계 분석을 위한 에폭(epoch)의 길이와 독립적으로 분석을 할 수 있다. 구체적으로, 하나의 에폭(epoch)동안 2개 또는 3개의 짧은 수면 이벤트가 포함될 수 있고, 복수의 에폭(epoch)동안 1개의 긴 수면 이벤트가 포함될 수 있다.본 발명의 일실시예에 따른, 수면 중 발생하는 수면 이벤트가 발생한 에폭(epoch)의 개수로부터 실제 이벤트가 발생한 횟수를 추정하기 위하여 회귀분석 함수를 사용할 수 있다. 예컨대, RANSAC(Random Sample Consensus) 회귀 분석 모델을 사용할 수 있다. RANSAC 회귀 분석 모델은 근사 모델(Fitting Model)의 파라미터를 추정하는 방법 중 하나이며, 무작위로 샘플 데이터를 뽑은 다음 최대로 일치하는 모델을 선택하는 방법이다.According to one embodiment of the present invention, the AHI index, which means the number of respiratory events that occur per unit time (e.g., 1 hour), is, separately from sleep stage analysis, the length of an epoch for one sleep stage analysis and Analysis can be done independently. Specifically, two or three short sleep events may be included during one epoch, and one long sleep event may be included during multiple epochs. According to one embodiment of the present invention, sleep A regression analysis function can be used to estimate the number of actual events that occur from the number of epochs in which sleep events occur. For example, a RANSAC (Random Sample Consensus) regression analysis model can be used. The RANSAC regression model is one of the methods for estimating the parameters of an approximate model (fitting model). It is a method of randomly selecting sample data and then selecting the model that matches the maximum.
멀티 헤드를 통한 멀티 태스크 분석Multi-task analysis through multi-head
본 발명의 일 실시예에 따른, 수면 상태를 분석하기 위한 방법은 딥 러닝 모델을 통한 분석을 포함할 수 있다. 본 발명의 일 실시예에 따른 딥 러닝 모델은 멀티 태스크 학습 및/또는 멀티 태스크 분석을 할 수 있다. 구체적으로, 멀티 태스크 학습 및 멀티 태스크 분석은 상술한 본 발명에 따른 실시예들(예컨대, 멀티모달 학습, 실시간 수면 이벤트 분석, 수면 단계 분석 등)에 따른 태스크를 동시에 학습할 수 있다.A method for analyzing a sleep state according to an embodiment of the present invention may include analysis through a deep learning model. The deep learning model according to an embodiment of the present invention is capable of multi-task learning and/or multi-task analysis. Specifically, multi-task learning and multi-task analysis can simultaneously learn tasks according to the above-described embodiments of the present invention (eg, multi-modal learning, real-time sleep event analysis, sleep stage analysis, etc.).
본 발명의 일 실시예에 따른, 수면 상태를 분석하기 위한 딥 러닝 모델은 멀티 태스크 학습 및 멀티 태스크 분석을 할 수 있다. 구체적으로, 멀티 태스크 학습 및 분석을 위해서, 딥 러닝 모델은 복수의 헤드를 갖는 구조를 채택할 수 있다. 복수의 헤드 각각은 특정 작업 또는 태스크(예컨대, 멀티모달 학습, 실시간 수면 이벤트 분석, 수면 단계 분석 등)를 각각 담당할 수 있다. 예를 들어, 딥 러닝 모델은 제1 헤드, 제2 헤드 및 제3 헤드로 총 3개의 헤드를 갖는 구조를 가질 수 있고, 제1 헤드는 수면 단계 정보에 대한 추론 및/또는 분류를 수행하고, 제2 헤드는 수면 이벤트 중 수면 무호흡과 저호흡에 대한 탐지 및/또는 분류를 수행하고, 제3 헤드는 수면 이벤트 중 코골이에 대한 탐지 및 분류를 수행할 수 있다. 상술한 헤드의 특정 작업 또는 태스크에 대한 구체적인 기재는 본 발명을 설명하기 위한 예시에 불과할 뿐, 이에 한정되지 않는다. 본 발명에 따른 딥 러닝 모델은 복수의 헤드를 갖는 구조를 통해서 멀티 태스크 학습 및 분석을 진행할 수 있고, 데이터 효율성을 높임으로써 복수의 태스크 또는 특정 작업을 최적화할 수 있다.A deep learning model for analyzing sleep states according to an embodiment of the present invention is capable of multi-task learning and multi-task analysis. Specifically, for multi-task learning and analysis, a deep learning model may adopt a structure with multiple heads. Each of the plurality of heads may be responsible for a specific task or task (eg, multimodal learning, real-time sleep event analysis, sleep stage analysis, etc.). For example, a deep learning model may have a structure with a total of three heads: a first head, a second head, and a third head, and the first head performs inference and/or classification on sleep stage information, The second head may perform detection and/or classification of sleep apnea and hypopnea during the sleep event, and the third head may perform detection and classification of snoring during the sleep event. The detailed description of the specific work or task of the head described above is only an example for explaining the present invention, and is not limited thereto. The deep learning model according to the present invention can perform multi-task learning and analysis through a structure with multiple heads, and can optimize multiple tasks or specific tasks by increasing data efficiency.
본 발명에 따른 수면 분석 방법의 효과Effect of the sleep analysis method according to the present invention
수면다원검사(polysomnography, PSG) 결과와 비교하면, 수면 음향 정보를 입력으로 하는 수면 분석 모델 결과값이 매우 정확하다는 것을 확인할 수 있었다.Comparing with the results of polysomnography (PSG), it was confirmed that the sleep analysis model results using sleep acoustic information as input were very accurate.
기존 수면 분석 모델은 ECG(Electrocardiogram)이나, HRV(Heart Rate Variability)를 입력으로 하여 수면단계를 예측하였으나, 본 발명은 수면 음향 정보를 주파수 도메인으로 변환한 정보, 스펙트로그램, 또는 멜 스펙트로그램으로 변환하여 입력으로 하여 수면단계 분석 및 추론을 진행할 수 있다. 따라서, 수면 음향 정보를 주파수 도메인으로 변환한 정보, 스펙트로그램, 또는 멜 스펙트로그램으로 변환하여 입력으로 하기 때문에 기존 수면 분석 모델과 달리 수면 패턴의 특이성 분석을 통해서 실시간으로 수면 단계를 센싱(sensing) 또는 획득할 수 있다.Existing sleep analysis models predict sleep stages using ECG (Electrocardiogram) or HRV (Heart Rate Variability) as input, but the present invention converts sleep sound information into the frequency domain, spectrogram, or mel spectrogram. By using this as input, you can proceed with sleep stage analysis and inference. Therefore, unlike existing sleep analysis models, because sleep sound information is converted into frequency domain information, spectrogram, or mel spectrogram as input, sleep stage can be sensed in real time through analysis of the specificity of sleep patterns. It can be obtained.
도 11은 본 발명에 따른 수면 분석 방법의 성능을 검증한 그래프로, 수면다원검사(polysomnography, PSG) 결과(PSG result)와 본 발명에 따른 AI 알고리즘을 이용한 분석 결과(AI result)를 비교한 도면이다.Figure 11 is a graph verifying the performance of the sleep analysis method according to the present invention, and is a diagram comparing the polysomnography (PSG) result (PSG result) and the analysis result (AI result) using the AI algorithm according to the present invention. am.
도 11에 도시된 바와 같이, 본 발명에 따라 획득된 수면 분석 결과는 수면다원검사와 매우 일치할 뿐만 아니라, 오히려 수면단계(Wake, Light, Deep, REM)와 관련한 더욱 정밀하고도 유의미한 정보를 포함한다. 도 10의 가장 아래에 도시된 힙노그램(hypnogram)은 사용자 수면 음향 정보를 입력받아 수면단계를 예측할 때, 30초 단위로 4개의 클래스(Wake, Light, Deep, REM) 중 어디에 속하는지에 대한 확률을 나타낸다. 여기서 4개의 클래스는 각각 깨어 있는 상태, 가볍게 잠이 든 상태, 깊게 잠이 든 상태, REM 수면 상태를 의미한다.As shown in Figure 11, the sleep analysis results obtained according to the present invention are not only consistent with polysomnography, but also contain more precise and meaningful information related to sleep stages (Wake, Light, Deep, REM). do. The hypnogram shown at the bottom of Figure 10 shows the probability of which of the four classes (Wake, Light, Deep, REM) it belongs to in 30 second increments when predicting the sleep stage by receiving the user's sleep sound information. indicates. Here, the four classes refer to the awake state, light sleep state, deep sleep state, and REM sleep state, respectively.
도 12는 본 발명에 따른 수면 분석 방법의 성능을 검증한 그래프로, 수면 무호흡증(apnea), 호흡저하(hypopnea)와 관련하여 수면다원검사(polysomnography, PSG) 결과(PSG result)와 본 발명에 따른 AI 알고리즘을 이용한 분석 결과(AI result)를 비교한 도면이다. 도 12의 가장 아래에 도시된 힙노그램(hypnogram)은 사용자 수면 음향 정보를 입력받아서 수면 질환을 예측할 때, 30초 단위로 2개의 질환(수면 무호흡증, 호흡저하) 중 어디에 속하는지에 대한 확률을 나타낸다. 본 발명에 따른 수면 분석을 이용하면, 도 12에 도시된 바와 같이, 본 발명에 따라 획득된 수면 상태 정보는 수면다원검사와 매우 일치할 뿐만 아니라, 무호흡증과 호흡저하와 관련한 더욱 정밀한 분석 정보를 포함한다. Figure 12 is a graph verifying the performance of the sleep analysis method according to the present invention, showing polysomnography (PSG) results in relation to sleep apnea and hypoventilation (hypopnea) and polysomnography (PSG) results according to the present invention. This is a diagram comparing the analysis results (AI results) using AI algorithms. The hypnogram shown at the bottom of FIG. 12 indicates the probability of which of the two diseases (sleep apnea, hypoventilation) it belongs to in 30-second increments when predicting a sleep disease by receiving user sleep sound information. Using sleep analysis according to the present invention, as shown in Figure 12, the sleep state information obtained according to the present invention not only closely matches polysomnography, but also includes more precise analysis information related to apnea and hypoventilation. do.
본 발명은 사용자의 수면 분석을 실시간으로 분석하면서 수면장애(수면무호흡, 수면과호흡, 수면저호흡)가 발생한 지점을 파악할 수 있다. 수면장애가 발생한 순간 사용자에게 자극(촉각적, 자극 청각적 자극, 후각적 자극 등)을 제공하면, 수면장애가 일시적으로 완화될 수 있다. 즉, 본 발명은 수면장애와 관련한 정확한 이벤트탐지를 바탕으로 사용자의 수면장애를 중단시키고, 수면장애의 빈도를 감소시킬 수 있다. 또한, 본 발명에 따르면 수면 분석을 멀티모달로 수행함으로써 매우 정확한 수면 분석이 가능하다는 효과도 있다.The present invention can analyze the user's sleep in real time and identify the point where sleep disorders (sleep apnea, sleep hyperventilation, sleep hypopnea) occur. If stimulation (tactile, auditory, olfactory, etc.) is provided to the user at the moment the sleep disorder occurs, the sleep disorder may be temporarily alleviated. In other words, the present invention can stop the user's sleep disorder and reduce the frequency of sleep disorder based on accurate event detection related to the sleep disorder. In addition, according to the present invention, there is an effect that very accurate sleep analysis is possible by performing sleep analysis in a multimodal manner.
본 발명의 추론단계 사후처리Post-processing of the inference step of the present invention
학습을 통해서 수면 단계를 추론하는 추론단계에서, 수면은 학습 데이터와 같이 일정시간(예컨대, 30초, 20분 등)으로 구성되는 것뿐만 아니라 수면시간(예컨대, 5시간, 8시간 등)으로 구성될 수도 있다. 수면단계에 대한 정확한 추론을 진행하기 위해서, 수면 지속 시간에 비추어 추론의 정확성을 올리기 위해 사후처리를 진행할 수 있다. 상술한 시간 간격과 관련한 구체적인 수치는 단순한 예시일 뿐, 본 발명은 이에 제한되는 것은 아니다.In the inference stage of inferring the sleep stage through learning, sleep consists not only of a certain amount of time (e.g., 30 seconds, 20 minutes, etc.) like the learning data, but also of sleep time (e.g., 5 hours, 8 hours, etc.) It could be. In order to make accurate inferences about sleep stages, post-processing can be performed to increase the accuracy of inferences in light of sleep duration. The specific values related to the above-mentioned time interval are merely examples, and the present invention is not limited thereto.
본 발명의 일실시예에 따르면, 수면지속시간에 따른 수면의 깊이에 관한 추론을 의학적 정보를 활용하여 사후처리를 진행할 수 있다.According to one embodiment of the present invention, inference regarding the depth of sleep according to sleep duration can be post-processed using medical information.
본 발명의 일실시예에 따르면, 수면지속 시간에 따른 수면단계 정보 데이터를 활용하여 인공지능학습을 통해서 사후처리를 진행할 수 있다.According to one embodiment of the present invention, post-processing can be performed through artificial intelligence learning using sleep stage information data according to sleep duration.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 본 발명의 실시예들은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments of the invention may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, including: It can be implemented in a programming or scripting language such as C, C++, Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.
본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.Those skilled in the art will understand that various illustrative logical blocks, modules, processors, means, circuits and algorithm steps described in connection with the embodiments disclosed herein can be used in electronic hardware, (for convenience) It will be understood that the implementation may be implemented by various forms of program or design code (referred to herein as “software”) or a combination of both. To clearly illustrate this interoperability of hardware and software, various illustrative components, blocks, modules, circuits and steps have been described above generally with respect to their functionality. Whether this functionality is implemented as hardware or software depends on the specific application and design constraints imposed on the overall system. A person skilled in the art may implement the described functionality in various ways for each specific application, but such implementation decisions should not be construed as departing from the scope of the present invention.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다. The various embodiments presented herein may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques. The term “article of manufacture” includes a computer program, carrier, or media accessible from any computer-readable device. For example, computer-readable media include magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory. Includes, but is not limited to, devices (e.g., EEPROM, cards, sticks, key drives, etc.). Additionally, various storage media presented herein include one or more devices and/or other machine-readable media for storing information. The term “machine-readable media” includes, but is not limited to, wireless channels and various other media capable of storing, retaining, and/or transmitting instruction(s) and/or data.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.It is to be understood that the specific order or hierarchy of steps in the processes presented is an example of illustrative approaches. It is to be understood that the specific order or hierarchy of steps in processes may be rearranged within the scope of the present invention, based on design priorities. The appended method claims present elements of the various steps in a sample order but are not meant to be limited to the particular order or hierarchy presented.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the presented embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the invention. Thus, the present invention is not limited to the embodiments presented herein, but is to be construed in the broadest scope consistent with the principles and novel features presented herein.
[부호의 설명][Explanation of symbols]
10: 사용자 단말10: User terminal
100: 컴퓨팅 장치100: computing device
110: 네트워크부110: Network unit
120: 메모리120: memory
130: 프로세서130: processor
20: 외부 서버20: External server
11a: 객체 상태 정보 또는 환경 센싱 정보를 획득할 수 있는 영역11a: Area where object state information or environmental sensing information can be obtained
1a: 영역(11a) 내에서 네트워크와 연결된 전자장치1a: Electronic devices connected to the network within area 11a
1b: 영역(11a) 내에서 네트워크와 연결된 전자장치1b: Electronic devices connected to the network within area 11a
1c: 영역(11a) 내에서 네트워크와 연결되지 않은 전자장치1c: Electronic devices not connected to the network within area 11a
1d: 영역(11a) 내에서 네트워크와 연결되지 않은 전자장치1d: Electronic devices not connected to the network within area 11a
2a: 영역(11a)의 범위 밖에 있는 전자장치2a: Electronic devices outside the scope of area 11a
2b: 영역(11a)의 범위 밖에 있는 전자장치2b: Electronic devices outside the scope of area 11a
E: 음향 정보E: Acoustic information
P: 사용자의 수면에 관련한 특이점P: Singularities related to the user’s sleep
SS: 수면 음향 정보SS: Sleep acoustic information
SP: 스펙트로그램SP: spectrogram
Claims (14)
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 전처리된 정보는 상기 획득된 음향 정보의 주파수 성분의 시간 축에 따른 변화를 시각화한 것이고, The preprocessed information visualizes changes along the time axis in the frequency component of the acquired acoustic information,상기 딥러닝 모델은 자연어처리 기반의 인공지능 모델인,The deep learning model is an artificial intelligence model based on natural language processing,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 일관성 손실에 기초한 학습을 수행한 것인,The deep learning model performs learning based on consistency loss,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 상기 음향 정보의 시계열적인 특성을 고려할 수 있도록 순차적 일관성 손실에 기초한 반지도 학습을 수행한 것인,The deep learning model performs semi-supervised learning based on sequential consistency loss to consider the time series characteristics of the acoustic information,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 반지도 대조 손실에 기초한 학습을 수행한 것인,The deep learning model performs learning based on semi-supervised contrast loss,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 제4항에 있어서,According to clause 4,상기 반지도 대조 손실에 기초한 학습은,Learning based on the semi-supervised contrast loss is,클래스 신뢰도 임계값을 설정하는 단계; 및setting a class confidence threshold; and상기 설정된 클래스 신뢰도 임계값에 기초하여 앵커 데이터를 기준으로 벡터 공간 상의 위치를 조정하는 단계;adjusting a position in a vector space based on anchor data based on the set class reliability threshold;를 포함하는,Including,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 제5항에 있어서,According to clause 5,상기 앵커 데이터는 수면 상태에 대한 라벨이 부여된 라벨링 데이터 또는 수면 상태에 대한 슈도 라벨이 부여된 슈도 라벨 데이터 중 적어도 하나 이상을 포함하는 것을 특징으로 하는,Characterized in that the anchor data includes at least one of labeling data with a label for a sleep state or pseudo-label data with a pseudo label for a sleep state,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 비지도 도메인 적응(UDA) 방법에 기초한 학습을 수행한 것인,The deep learning model performs learning based on the unsupervised domain adaptation (UDA) method,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 라벨링이 되어 있지 않은 음향 정보에 대한 예측값을 슈도 라벨로 취급하여 상기 슈도 라벨을 기초로 학습된 것인,The deep learning model treats the predicted value for unlabeled acoustic information as a pseudo label and is learned based on the pseudo label,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 상기 음향 정보에 기초하여 수면 이벤트를 추론하도록 학습 -상기 수면 이벤트 추론 학습 방법에서는 각 수면 이벤트 클래스의 불균형 문제를 해소하도록 클래스 가중치를 부여함- 된 것인, The deep learning model is trained to infer a sleep event based on the acoustic information - in the sleep event inference learning method, class weights are assigned to solve the imbalance problem of each sleep event class -음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 단계;Obtaining acoustic information in the time domain related to the user's sleep;상기 음향 정보에 대한 전처리를 수행하는 단계; 및performing preprocessing on the sound information; and상기 전처리된 정보를 딥러닝 모델의 입력으로 하여 수면 상태 정보 추출 또는 분류 중 적어도 하나를 수행하는 단계;performing at least one of extracting or classifying sleep state information using the preprocessed information as input to a deep learning model;를 포함하며,Includes,상기 딥러닝 모델은 상기 음향 정보에 기초하여 멀티 태스크 학습 -상기 멀티 태스크 학습을 위해서 상기 딥러닝 모델은 복수의 헤드를 갖는 구조를 가짐- 된 것인, The deep learning model performs multi-task learning based on the acoustic information - for the multi-task learning, the deep learning model has a structure having a plurality of heads.음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 제10항에 있어서,According to clause 10,상기 복수의 헤드에 포함되는 각각의 헤드는 복수의 태스크 중 서로 상이한 하나의 태스크를 수행하고,Each head included in the plurality of heads performs one different task among the plurality of tasks,상기 복수의 태스크는 멀티모달 학습, 수면 이벤트 분석, 수면 단계 분석 중 적어도 하나 이상을 포함하는 것을 특징으로 하는,Characterized in that the plurality of tasks include at least one of multimodal learning, sleep event analysis, and sleep stage analysis,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 시간 도메인상의 음향 정보를 획득하는 제1 정보 획득 단계;A first information acquisition step of acquiring sound information in the time domain related to the user's sleep;사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계;A second information acquisition step of acquiring user sleep environment information related to the user's sleep;상기 제1 정보와 상기 제2 정보를 멀티모달 데이터로 결합하는 단계;combining the first information and the second information into multimodal data;상기 멀티모달 데이터를 멀티모달 학습된 딥러닝 모델의 입력으로 하여, 피처를 추출하는 단계; 및Extracting features by using the multimodal data as input to a multimodal learned deep learning model; and상기 추출된 피처를 딥러닝 모델의 입력으로 하여 사용자의 수면 상태 정보를 획득하는 단계;Obtaining information on the user's sleep state by using the extracted features as input to a deep learning model;를 포함하는,Including,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 수면 음향 정보를 획득하는 제1 정보 획득 단계;A first information acquisition step of acquiring sleep sound information related to the user's sleep;상기 획득된 제1 정보를 딥러닝 모델의 입력으로 하여, 제1 수면 상태 정보를 추론하는 단계;Inferring first sleep state information by using the obtained first information as input to a deep learning model;사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계;A second information acquisition step of acquiring user sleep environment information related to the user's sleep;상기 획득된 제2 정보를 추론 모델의 입력으로 하여, 제2 수면 상태 정보를 추론하는 단계; 및Inferring second sleep state information by using the acquired second information as input to an inference model; and상기 추론된 제1 수면 상태 정보 및 상기 추론된 제2 수면 상태 정보를 결합하여 사용자의 수면 상태 정보를 획득하는 단계;Obtaining sleep state information of the user by combining the inferred first sleep state information and the inferred second sleep state information;를 포함하는,Including,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
- 음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법에 있어서,In a method for analyzing the user's sleep state information through acoustic information,사용자의 수면과 관련한 수면 음향 정보를 획득하는 제1 정보 획득 단계;A first information acquisition step of acquiring sleep sound information related to the user's sleep;상기 획득된 제1 정보를 딥러닝 모델의 입력으로 하여 제1 수면 상태 정보를 추론하는 단계;Inferring first sleep state information by using the obtained first information as input to a deep learning model;사용자의 수면과 관련한 사용자 수면 환경 정보를 획득하는 제2 정보 획득 단계; 및A second information acquisition step of acquiring user sleep environment information related to the user's sleep; and상기 추론된 제1 수면 상태 정보와 상기 획득된 제2 정보를 결합하여 사용자의 수면 상태 정보를 획득하는 단계;Obtaining sleep state information of the user by combining the inferred first sleep state information and the obtained second information;를 포함하는,Including,음향 정보를 통해 사용자의 수면 상태 정보를 분석하기 위한 방법.A method for analyzing user sleep state information through acoustic information.
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0089286 | 2022-07-20 | ||
KR1020220089286A KR20240011964A (en) | 2022-07-20 | 2022-07-20 | Method, apparatus and computer program for generating a sleep analysis model that predicts a sleep state based on acoustic information |
KR10-2023-0028773 | 2023-03-03 | ||
KR20230028773 | 2023-03-03 | ||
KR20230038894 | 2023-03-24 | ||
KR10-2023-0038894 | 2023-03-24 | ||
KR10-2023-0068718 | 2023-05-26 | ||
KR20230068718 | 2023-05-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024019567A1 true WO2024019567A1 (en) | 2024-01-25 |
Family
ID=89618321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/010525 WO2024019567A1 (en) | 2022-07-20 | 2023-07-20 | Method, apparatus, and computer program for generating sleep analysis model predicting sleep state on the basis of sound information |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024019567A1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019063200A (en) * | 2017-09-29 | 2019-04-25 | 特定非営利活動法人睡眠健康研究所 | Respiration evaluation system, analysis system, and program |
KR20210076594A (en) * | 2019-12-16 | 2021-06-24 | 서울대학교병원 | Method for making prediction model for sleep apnea syndrome by using numerical data and method for predicting sleep apnea syndrome by using the same prediction model |
KR20210099059A (en) * | 2018-11-29 | 2021-08-11 | 재뉴어리, 인크. | Systems, methods and devices for biophysical modeling and response prediction |
KR20210108577A (en) * | 2020-02-26 | 2021-09-03 | 주식회사 씨밀레테크 | Apparatus for improving quality of sleep |
KR102415103B1 (en) * | 2021-11-11 | 2022-06-30 | 주식회사 파블로아트컴퍼니 | A device that analyzes psychology based on an artificial intelligence model generated using voice data and text data |
KR20220095009A (en) * | 2020-12-29 | 2022-07-06 | 서울대학교병원 | Method and device converting electrical biosignals data into numerical vectors and method and apparatus for analyzing diseases using the same |
-
2023
- 2023-07-20 WO PCT/KR2023/010525 patent/WO2024019567A1/en unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019063200A (en) * | 2017-09-29 | 2019-04-25 | 特定非営利活動法人睡眠健康研究所 | Respiration evaluation system, analysis system, and program |
KR20210099059A (en) * | 2018-11-29 | 2021-08-11 | 재뉴어리, 인크. | Systems, methods and devices for biophysical modeling and response prediction |
KR20210076594A (en) * | 2019-12-16 | 2021-06-24 | 서울대학교병원 | Method for making prediction model for sleep apnea syndrome by using numerical data and method for predicting sleep apnea syndrome by using the same prediction model |
KR20210108577A (en) * | 2020-02-26 | 2021-09-03 | 주식회사 씨밀레테크 | Apparatus for improving quality of sleep |
KR20220095009A (en) * | 2020-12-29 | 2022-07-06 | 서울대학교병원 | Method and device converting electrical biosignals data into numerical vectors and method and apparatus for analyzing diseases using the same |
KR102415103B1 (en) * | 2021-11-11 | 2022-06-30 | 주식회사 파블로아트컴퍼니 | A device that analyzes psychology based on an artificial intelligence model generated using voice data and text data |
Non-Patent Citations (6)
Title |
---|
HONG JOONKI, HAI TRAN, JINHWAN JEONG, HYERYUNG JANG, IN-YOUNG YOON, JUNG KYUNG HONG, JEONG-WHUN KIM: "0348 SLEEP STAGING USING END-TO-END DEEP LEARNING MODEL BASED ON NOCTURNAL SOUND FOR SMARTPHONES", SLEEP, vol. 45, no. Suppl 1, 25 May 2022 (2022-05-25), pages A156, XP093131680, DOI: 10.1101/2021.10.13.21264974 * |
HONG JOONKI, TRAN HAI HONG, JUNG JINHWAN, JANG HYERYUNG, LEE DONGHEON, YOON IN-YOUNG, HONG JUNG KYUNG, KIM JEONG-WHUN: "End-to-End Sleep Staging Using Nocturnal Sounds from Microphone Chips for Mobile Devices", NATURE AND SCIENCE OF SLEEP, DOVE MEDICAL PRESS, vol. Volume 14, 1 June 2022 (2022-06-01), pages 1187 - 1201, XP093131683, ISSN: 1179-1608, DOI: 10.2147/NSS.S361270 * |
HONG JUNG KYUNG, LEE TAEYOUNG, DELOS REYES ROBEN DEOCAMPO, HONG JOONKI, TRAN HAI HONG, LEE DONGHEON, JUNG JINHWAN, YOON IN-YOUNG: "Confidence-Based Framework Using Deep Learning for Automated Sleep Stage Scoring", NATURE AND SCIENCE OF SLEEP, DOVE MEDICAL PRESS, vol. 13, 1 January 2021 (2021-01-01), pages 2239 - 2250, XP093131678, ISSN: 1179-1608, DOI: 10.2147/NSS.S333566 * |
KIM JONGMOK, KIM DAEWOO, CHO EUNSUNG, TRAN HAI HONG, HONG JOONKI, LEE DONGHEON, HONG JUNGKYUNG, YOON IN-YOUNG, KIM JEONG-WHUN, JAN: "SOUND-BASED SLEEP STAGING BY EXPLOITING REAL-WORLD UNLABELED DATA", ICLR 2023, 2 March 2023 (2023-03-02), pages 1 - 7, XP093131686 * |
LE VU LINH, KIM DAEWOO, CHO EUNSUNG, JANG HYERYUNG, REYES ROBEN DELOS, KIM HYUNGGUG, LEE DONGHEON, YOON IN-YOUNG, HONG JOONKI, KIM: "Real-Time Detection of Sleep Apnea Based on Breathing Sounds and Prediction Reinforcement Using Home Noises: Algorithm Development and Validation", JOURNAL OF MEDICAL INTERNET RESEARCH, JMIR PUBLICATIONS, CA, vol. 25, 22 February 2023 (2023-02-22), CA , pages e44818, XP093131684, ISSN: 1438-8871, DOI: 10.2196/44818 * |
TRAN, Hai Hong et al. Prediction of Sleep Stages Via Deep Learning Using Smartphone Audio Recordings in Home Environments: Model Development and Validation. 01 June 2023. [Retrieved on 07 November 2023]. Retrieved from <J Med Internet Res. URL: https://pubmed.ncbi.nlm.nih.gov/37261889></J><DOI: 10.2196/46216>. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023128713A1 (en) | Method, computing apparatus, and computer program for analyzing sleeping state of user through sound information | |
WO2017146524A1 (en) | Aparatus and method for assessing heart failure | |
WO2020138624A1 (en) | Apparatus for noise canceling and method for the same | |
WO2020235696A1 (en) | Artificial intelligence apparatus for interconverting text and speech by considering style, and method for same | |
WO2017146515A1 (en) | Sensor assisted evaluation of health and rehabilitation | |
WO2015137788A1 (en) | Electronic apparatus for providing health status information, method of controlling the same, and computer-readable storage medium | |
EP3220815A1 (en) | Apparatus for measuring bioelectrical signals | |
WO2020122294A1 (en) | Washing machine | |
WO2018084576A1 (en) | Electronic device and controlling method thereof | |
WO2019182265A1 (en) | Artificial intelligence device and method for operating same | |
WO2020230933A1 (en) | Artificial intelligence device for recognizing voice of user and method for same | |
WO2019225961A1 (en) | Electronic device for outputting response to speech input by using application and operation method thereof | |
WO2020230926A1 (en) | Voice synthesis apparatus for evaluating quality of synthesized voice by using artificial intelligence, and operating method therefor | |
WO2020184748A1 (en) | Artificial intelligence device and method for controlling auto-stop system on basis of traffic information | |
WO2021225403A1 (en) | Electronic device for speech recognition and method of speech recognition using thereof | |
WO2021107310A1 (en) | Electroencephalogram analysis-based patient diagnosis support system and method | |
EP3776378A1 (en) | Electronic apparatus and controlling method thereof | |
WO2020184753A1 (en) | Artificial intelligence apparatus for performing voice control by using voice extraction filter, and method therefor | |
EP3532990A1 (en) | Data recognition model construction apparatus and method for constructing data recognition model thereof, and data recognition apparatus and method for recognizing data thereof | |
EP3523709A1 (en) | Electronic device and controlling method thereof | |
WO2024096204A1 (en) | Method and system for providing digital-based musculoskeletal rehabilitation treatment | |
WO2021049921A1 (en) | Method, apparatus, electronic device and storage medium for predicting user attribute | |
WO2020218635A1 (en) | Voice synthesis apparatus using artificial intelligence, method for operating voice synthesis apparatus, and computer-readable recording medium | |
WO2020122293A1 (en) | Laundry scheduling apparatus | |
WO2022154457A1 (en) | Action localization method, device, electronic equipment, and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23843413 Country of ref document: EP Kind code of ref document: A1 |