WO2020091122A1 - 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템 - Google Patents

시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템 Download PDF

Info

Publication number
WO2020091122A1
WO2020091122A1 PCT/KR2018/013257 KR2018013257W WO2020091122A1 WO 2020091122 A1 WO2020091122 A1 WO 2020091122A1 KR 2018013257 W KR2018013257 W KR 2018013257W WO 2020091122 A1 WO2020091122 A1 WO 2020091122A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
data
series data
input
deep learning
Prior art date
Application number
PCT/KR2018/013257
Other languages
English (en)
French (fr)
Inventor
이정우
이종득
배기덕
박지현
최영호
Original Assignee
한국로봇융합연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국로봇융합연구원 filed Critical 한국로봇융합연구원
Publication of WO2020091122A1 publication Critical patent/WO2020091122A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present invention relates to a deep learning learning method and system for dividing time series data for each frequency component and processing multiple learning models in parallel.
  • a Recurrent Neural Network (RNN) or Recurrent Convolutional Neural Network (RCNN) model with state is mainly used. Doing.
  • the Recurrent Neural Network is a deep learning model for learning data that changes over time, such as time-series data. It is an artificial neural network (ANN) constructed by connecting a network at a reference time (t) and a next time (t + 1).
  • ANN artificial neural network
  • the present invention relates to a deep learning learning method and system for dividing time series data by frequency components and processing multiple learning models in parallel.
  • RNN or RCNN models for state classification or prediction of results using time series data as input. In order to improve the slow learning speed that occurs when learning a deep learning system using.
  • the present invention 1) analyzes the frequency component based on the time axis and divides it into a plurality of sections, and 2) uses the input data of multiple learning models having the same domain to perform parallel learning to reduce learning time. I would like to propose a deep learning method and system that can be shortened.
  • a method of deep learning learning a model performing at least one of an operation of predicting a result based on time series data, which is an aspect of the present invention, and an operation of classifying the time series data, to achieve the above technical problem, the time series A first step of determining a frequency per unit time of data; A second step of dividing the determined frequency into a plurality of sections; Three steps of dividing the time series data into pieces of data for each of the plurality of sections; A fourth step of determining whether the type of applied learning is on-line learning or off-line learning; A fifth step of using piece data divided according to the determined learning type as an input to the model; And a sixth step of deep learning learning based on the data from which the model is input.
  • the model is used in plural to be applied to each of a plurality of sections of the frequency, and in the fourth step, if the applied learning type is determined to be online learning, in the fifth step, the divided pieces
  • the first piece of data corresponding to the first section among the plurality of sections may be used as an input of the first model corresponding to the first section among the plurality of models.
  • the number of pieces of segmented and divided pieces of data is N, and the models are K smaller than the N, and in the fifth and sixth steps, the N pieces of data are inputted in parallel to the K models. And can be learned.
  • each of the divided pieces of data may be used as an input to each of the plurality of models.
  • model, a plurality of sections and divided piece data are N pieces, and in the fifth and sixth steps, the N piece pieces of data may be input and learned in parallel to the N models.
  • the unit time is. It can be set on the basis of 'Time Step', which is an axis of time series data having a three-dimensional structure, or an arbitrary number of samples.
  • the frequency may be determined by differentiating a signal of a feature value of the time series data during the unit time.
  • the plurality of sections may be set by dividing the lowest frequency from the highest frequency among the frequencies at equal intervals or grouping frequency components of the time series data using a K-average algorithm.
  • the controller determines the frequency per unit time of the time series data, divides the determined frequency into a plurality of sections, divides the time series data into pieces of data for each of the plurality of sections, and the type of learning applied is online. It determines whether it is on-line learning or off-line learning, uses fragment data divided according to the determined learning type as input to the model, and based on the data on which the model is input. It can be controlled to learn deep learning.
  • the present invention can provide a user with a deep learning method and system for dividing time series data for each frequency component and processing multiple learning models in parallel.
  • the present invention can improve the slow learning speed that occurs during training of a deep learning system using an RNN or RCNN model for state classification or prediction of results by using time series data as input.
  • the present invention 1) analyzes the frequency component based on the time axis and divides it into a plurality of sections, and 2) uses the input data of multiple learning models having the same domain to perform parallel learning to reduce learning time. It can provide users with a method and system for deep learning that can be shortened.
  • the present invention analyzes the frequency components of time series data input through the method proposed in the present invention to solve the problem of slow learning in a deep learning method using RNN or RCNN models for time series data
  • the learning time can be reduced by dividing into several sections and parallel training several learning models with the same domain.
  • the present invention can improve inference accuracy of each learning model by grouping and training time-series data having similar signal components.
  • FIG. 1 shows an example of a block diagram of a deep learning learning system related to the present invention.
  • FIG. 2 is a diagram illustrating a conventional deep learning learning method in connection with the present invention.
  • FIG. 3 is a diagram illustrating a deep learning learning structure through input data division and parallel processing in connection with the present invention.
  • FIG. 4 is a flowchart illustrating a deep learning learning method through input data division and parallel processing in connection with the present invention.
  • FIG. 5 is a diagram illustrating an input method of a learning model in online learning in connection with the present invention.
  • FIG. 6 is a diagram illustrating an input method of a learning model in offline learning in connection with the present invention.
  • FIG. 1 Prior to the detailed description of the present invention, an example of a block diagram of a deep learning learning system applied to the present invention will be described with reference to FIG. 1.
  • the deep learning learning system 100 includes a wireless communication unit 110, an audio / video (A / V) input unit 120, a user input unit 130, a sensing unit 140, and an output unit 150 , A memory 160, an interface unit 170, a control unit 180, and a power supply unit 190.
  • a wireless communication unit 110 an audio / video (A / V) input unit 120, a user input unit 130, a sensing unit 140, and an output unit 150 , A memory 160, an interface unit 170, a control unit 180, and a power supply unit 190.
  • FIG. 1 since the components shown in FIG. 1 are not essential, a deep learning learning system having more or fewer components may be implemented.
  • the wireless communication unit 110 may include one or more modules that enable wireless communication between the deep learning learning system and the wireless communication system or between a device and a network in which the device is located.
  • the wireless communication unit 110 may include a broadcast reception module 111, a mobile communication module 112, a wireless Internet module 113, a short-range communication module 114, and a location information module 115. .
  • the broadcast receiving module 111 receives a broadcast signal and / or broadcast related information from an external broadcast management server through a broadcast channel.
  • the broadcast channel may include a satellite channel and a terrestrial channel.
  • the broadcast management server may mean a server that generates and transmits broadcast signals and / or broadcast-related information or a server that receives previously generated broadcast signals and / or broadcast-related information and transmits them to a deep learning learning system.
  • the broadcast signal may include a TV broadcast signal, a radio broadcast signal, and a data broadcast signal, and may also include a TV broadcast signal or a radio broadcast signal combined with a data broadcast signal.
  • the broadcast related information may mean information related to a broadcast channel, a broadcast program, or a broadcast service provider.
  • the broadcast-related information may also be provided through a mobile communication network. In this case, it may be received by the mobile communication module 112.
  • the broadcast-related information may exist in various forms. For example, it may exist in the form of an Electronic Program Guide (EPG) of Digital Multimedia Broadcasting (DMB) or an Electronic Service Guide (ESG) of Digital Video Broadcast-Handheld (DVB-H).
  • EPG Electronic Program Guide
  • DMB Digital Multimedia Broadcasting
  • ESG Electronic Service Guide
  • DVB-H Digital Video Broadcast-Handheld
  • the broadcast receiving module 111 for example, DMB-T (Digital Multimedia Broadcasting-Terrestrial), DMB-S (Digital Multimedia Broadcasting-Satellite), MediaFLO (Media Forward Link Only), DVB-H (Digital Video Broadcast) Digital broadcasting signals can be received using digital broadcasting systems such as -Handheld) and ISDB-T (Integrated Services Digital Broadcast-Terrestrial).
  • DMB-T Digital Multimedia Broadcasting-Terrestrial
  • DMB-S Digital Multimedia Broadcasting-Satellite
  • MediaFLO Media Forward Link Only
  • DVB-H Digital Video Broadcast
  • Digital broadcasting signals can be received using digital broadcasting systems such as -Handheld) and ISDB-T (Integrated Services Digital Broadcast-Terrestrial).
  • the broadcast receiving module 111 may be configured to be suitable for other broadcasting systems as well as the digital broadcasting system described above.
  • the broadcast signal and / or broadcast-related information received through the broadcast receiving module 111 may be stored in the memory 160.
  • the mobile communication module 112 transmits and receives wireless signals to and from at least one of a base station, an external device, and a server on a mobile communication network.
  • the wireless Internet module 113 refers to a module for wireless Internet access, and may be built in or external to a deep learning learning system.
  • Wireless Internet technology Wi-Fi
  • Wibro Wireless broadband
  • Wimax Worldwide Interoperability for Microwave Access
  • HSDPA High Speed Downlink Packet Access
  • the short-range communication module 114 refers to a module for short-range communication.
  • Bluetooth Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra-Wideband (UWB), ZigBee, Wireless Fidelity (Wi-Fi), etc. This can be used.
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra-Wideband
  • ZigBee ZigBee
  • Wi-Fi Wireless Fidelity
  • the location information module 115 is a module for obtaining a location of a deep learning learning system, and a representative example thereof is a Global Position System (GPS) module.
  • GPS Global Position System
  • an audio / video (A / V) input unit 120 is for inputting an audio signal or a video signal, which may include a camera 121 and a microphone 122.
  • the camera 121 processes image frames such as still images or moving pictures obtained by an image sensor in a shooting mode.
  • the processed image frame may be displayed on the display unit 151.
  • the image frames processed by the camera 121 may be stored in the memory 160 or transmitted to the outside through the wireless communication unit 110.
  • Two or more cameras 121 may be provided according to the use environment.
  • the microphone 122 receives an external sound signal by a microphone in a recording mode, a voice recognition mode, etc., and processes it as electrical voice data.
  • the processed voice data may be converted and output in a form that can be transmitted to the mobile communication base station through the mobile communication module 112.
  • Various noise reduction algorithms for removing noise generated in the process of receiving an external sound signal may be implemented in the microphone 122.
  • the user input unit 130 generates input data for the user to control the motion of the deep learning learning system.
  • the user input unit 130 may be configured with a key pad dome switch, a touch pad (static pressure / blackout), a jog wheel, a jog switch, or the like.
  • the sensing unit 140 displays the current state of the deep learning learning system, such as the open / closed state of the deep learning learning system, the location of the deep learning learning system, the presence or absence of user contact, the orientation of the deep learning learning system, the acceleration / deceleration of the deep learning learning system, and the like. It senses and generates a sensing signal to control the operation of the deep learning learning system.
  • the sensing unit 140 may sense whether the power supply unit 190 is supplied with power, whether the interface unit 170 is coupled with external devices, or the like.
  • the sensing unit 140 may include a proximity sensor 141.
  • the sensing unit 140 may further include an ultrasonic sensor 142.
  • the ultrasonic sensor 142 refers to a sensor using characteristics of ultrasonic waves, which are sounds of a high frequency (about 20 KHz or more) that are inaudible to the human ear.
  • Ultrasonic waves can be used for air, liquids, and solids. Because it has a high frequency and a short wavelength, it has a feature that can measure high resolution.
  • the output unit 150 is for generating output related to visual, auditory, or tactile senses, which include a display unit 151, an audio output module 152, an alarm unit 153, a haptic module 154, and a projector module ( 155).
  • the display unit 151 displays (outputs) information processed by the deep learning learning system.
  • the display unit 151 includes a liquid crystal display (LCD), a thin film transistor-liquid crystal display (TFT LCD), an organic light-emitting diode (OLED), and a flexible display (flexible). display) and a 3D display.
  • LCD liquid crystal display
  • TFT LCD thin film transistor-liquid crystal display
  • OLED organic light-emitting diode
  • flexible display flexible display
  • 3D display 3D display
  • Some of these displays may be of a transparent type or a light transmissive type so that the outside can be seen through them. This may be referred to as a transparent display, and a typical example of the transparent display is TOLED (Transparant OLED).
  • the rear structure of the display unit 151 may also be configured as a light transmissive structure. With this structure, the user can view objects located behind the body of the deep learning learning system through the area occupied by the display unit 151 of the body of the deep learning learning system.
  • Two or more display units 151 may be present depending on the implementation form of the deep learning learning system.
  • a plurality of display units may be spaced apart or integrally arranged on one surface, or may be arranged on different surfaces.
  • the display unit 151 and a sensor that senses a touch operation form a mutual layer structure (hereinafter, referred to as a “touch screen”)
  • the display unit 151 may be used in addition to an output device. It can also be used as an input device.
  • the touch sensor may have, for example, a form of a touch film, a touch sheet, a touch pad, and the like.
  • the touch sensor may be configured to convert a change in pressure applied to a specific portion of the display unit 151 or a capacitance generated in a specific portion of the display unit 151 into an electrical input signal.
  • the touch sensor may be configured to detect not only the touched position and area, but also pressure at the time of touch.
  • the control unit 180 can know which area of the display unit 151 has been touched, and the like.
  • the proximity sensor 141 may be disposed in an inner region of the deep learning learning system wrapped by the touch screen or near the touch screen.
  • the proximity sensor refers to a sensor that detects the presence or absence of an object approaching a predetermined detection surface or an object present in the vicinity without mechanical contact using electromagnetic force or infrared rays.
  • Proximity sensors have a longer lifespan and higher utilization than contact sensors.
  • the proximity sensor examples include a transmission type photoelectric sensor, a direct reflection type photoelectric sensor, a mirror reflection type photoelectric sensor, a high frequency oscillation type proximity sensor, a capacitive type proximity sensor, a magnetic type proximity sensor, and an infrared proximity sensor.
  • the touch screen When the touch screen is capacitive, it is configured to detect the proximity of the pointer due to a change in electric field according to the proximity of the pointer. In this case, the touch screen (touch sensor) may be classified as a proximity sensor.
  • proximity touch the act of causing the pointer to be recognized as being positioned on the touch screen without touching the pointer on the touch screen
  • contact touch the act of actually touching the pointer on the screen.
  • the location on the touch screen that is a proximity touch with a pointer means a location where the pointer is perpendicular to the touch screen when the pointer is touched close.
  • the proximity sensor detects a proximity touch and a proximity touch pattern (eg, proximity touch distance, proximity touch direction, proximity touch speed, proximity touch time, proximity touch position, proximity touch movement state, etc.). Information corresponding to the sensed proximity touch operation and proximity touch pattern may be output on the touch screen.
  • a proximity touch and a proximity touch pattern eg, proximity touch distance, proximity touch direction, proximity touch speed, proximity touch time, proximity touch position, proximity touch movement state, etc.
  • the audio output module 152 may output audio data received from the wireless communication unit 110 or stored in the memory 160 in a recording mode, a voice recognition mode, a broadcast reception mode, or the like.
  • the sound output module 152 may also output sound signals related to functions performed in the deep learning learning system.
  • the sound output module 152 may include a receiver, a speaker, and a buzzer.
  • the alarm unit 153 outputs a signal for notifying the occurrence of an event in the deep learning learning system.
  • the alarm unit 153 may output a signal for notifying the occurrence of an event by other forms, for example, vibration, in addition to a video signal or an audio signal.
  • the video signal or the audio signal may also be output through the display unit 151 or the audio output module 152, so that they 151 and 152 may be classified as part of the alarm unit 153.
  • the haptic module 154 generates various tactile effects that the user can feel.
  • a typical example of the tactile effect generated by the haptic module 154 is vibration.
  • the intensity and pattern of vibration generated by the haptic module 154 can be controlled.
  • vibrations may be synthesized and output or sequentially output.
  • the haptic module 154 in addition to vibration, is a pin array that vertically moves with respect to the contact skin surface, the ejection force or inhalation force of the air through the injection port or the intake port, the stimulation of the skin surface, the contact of the electrode (electrotrode), the stimulation of electrostatic force, etc.
  • Various tactile effects can be generated, such as an effect caused by an effect and an effect of reproducing a feeling of cold and warm using an element capable of absorbing heat or generating heat.
  • the haptic module 154 may not only transmit the tactile effect through direct contact, but may also implement the user to feel the tactile effect through muscle sensations such as fingers or arms. Two or more haptic modules 154 may be provided according to a configuration aspect of the deep learning learning system.
  • the projector module 155 is a component for performing an image project function using a deep learning learning system, and is the same as the image displayed on the display unit 151 according to the control signal of the controller 180 At least some of the other images may be displayed on an external screen or wall.
  • the projector module 155 generates a light source (not shown) that generates light (for example, laser light) for outputting an image to the outside, and generates an image to be output to the outside using light generated by the light source. It may include an image generating means (not shown), and a lens (not shown) for expanding and outputting the image from a certain focal length to the outside. In addition, the projector module 155 may include a device (not shown) that can mechanically move the lens or the entire module to adjust the image projection direction.
  • the projector module 155 may be divided into a cathode ray tube (CRT) module, a liquid crystal display (LCD) module, and a digital light processing (DLP) module, depending on the device type of the display means.
  • the DLP module may be advantageous for miniaturization of the projector module 151 by expanding and projecting an image generated by reflecting light generated from a light source to a DMD (Digital Micromirror Device) chip.
  • DMD Digital Micromirror Device
  • the projector module 155 may be provided in the longitudinal direction on the side, front, or rear of the deep learning learning system.
  • the projector module 155 may be provided at any location of the deep learning learning system as necessary.
  • the memory 160 may store programs for processing and control of the controller 180 and temporarily store input / output data (eg, messages, audio, still images, videos, etc.). You can also do The frequency of use for each of the data may also be stored in the memory unit 160. In addition, the memory unit 160 may store data related to various patterns of vibration and sound output when a touch is input on the touch screen.
  • the memory 160 is a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, SD or XD memory, etc.), RAM (Random Access Memory, RAM), Static Random Access Memory (SRAM), Read-Only Memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Programmable Read-Only Memory (PROM), magnetic memory, magnetic It may include a storage medium of at least one type of disk, optical disk.
  • the deep learning learning system may operate in connection with a web storage that performs a storage function of the memory 160 on the Internet.
  • the interface unit 170 serves as a path to all external devices connected to the deep learning learning system.
  • the interface unit 170 receives data from an external device, receives power, and transmits data to each component in the deep learning learning system, or allows data inside the deep learning learning system to be transmitted to the external device.
  • wired / wireless headset port, external charger port, wired / wireless data port, memory card port, port for connecting devices equipped with an identification module, audio input / output (I / O) port, A video input / output (I / O) port, an earphone port, and the like may be included in the interface unit 170.
  • the identification module is a chip that stores various information for authenticating the usage rights of the deep learning learning system, and a user identification module (UIM), a subscriber identification module (SIM), and a universal user authentication module (Universal) Subscriber Identity Module, USIM).
  • the device provided with the identification module (hereinafter referred to as an 'identification device') may be manufactured in a smart card format. Therefore, the identification device can be connected to the deep learning learning system through the port.
  • the interface unit When the deep learning learning system is connected to an external cradle, the interface unit becomes a passage through which power from the cradle is supplied to the deep learning learning system, or various command signals input from the cradle by the user to the mobile device. It can be a passage. Various command signals or power inputted from the cradle may be operated as signals for recognizing that the mobile device is correctly mounted on the cradle.
  • the controller 180 controls the overall operation of the deep learning learning system.
  • the controller 180 may include a multimedia module 181 for multimedia playback.
  • the multimedia module 181 may be implemented in the controller 180, or may be implemented separately from the controller 180.
  • the controller 180 may perform pattern recognition processing capable of recognizing handwriting input or picture drawing input performed on the touch screen as text and images, respectively.
  • the power supply unit 190 receives external power and internal power under the control of the controller 180 to supply power required for the operation of each component.
  • the embodiments described herein include application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), It may be implemented using at least one of processors, controllers, micro-controllers, microprocessors, and electrical units for performing other functions.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • It may be implemented using at least one of processors, controllers, micro-controllers, microprocessors, and electrical units for performing other functions.
  • the described embodiments may be implemented by the controller 180 itself.
  • embodiments such as procedures and functions described herein may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.
  • Software code can be implemented in a software application written in an appropriate programming language. The software code may be stored in the memory 160 and executed by the controller 180.
  • RNN Recurrent Neural Network
  • RCNN Recurrent Convolutional Neural Network
  • a deep learning system that classifies states or predicts the next result by inputting time series data arranged by the time axis of the output of a system including a sensor as an input, learns and infers using a cyclic neural network (RNN) or a cyclic synthetic neural network (RCNN). It consists of a model.
  • RNN cyclic neural network
  • RCNN cyclic synthetic neural network
  • the input time series data is composed of a three-dimensional array or set consisting of the type of feature values, the number of feature values included per unit time, and the total number of samples.
  • 'k_features' is a kind of feature values. For example, if time series data includes temperature and air pressure data, this value is 2, or if there is only one-dimensional vector data of image pixel values, this value is It becomes 1.
  • 'm_timesteps' is the number of feature values included per unit time. For example, if the number of data of temperature and air pressure obtained during a unit time of 1 second is 10, this value is 10.
  • 'n_samples' is the total number of samples obtained in unit time. For example, if data is acquired for a total of 1000 seconds, this value is 1000.
  • cyclic neural network or cyclic convergence neural network (RCNN) model stores and maintains the state internally for data input on the time axis, and processes the input data from the previous state to calculate the current state. It has a slower learning speed than a general synthetic neural network (CNN) without state.
  • CNN general synthetic neural network
  • a similar conventional invention for implementing a deep learning system from such input data is as follows.
  • the second classifier re-learns the results of the first classifier to correct the classification result.
  • FIG. 2 is a view for explaining the conventional deep learning learning method described above.
  • an intermediate value of a feature vector is generated through pre-processing of input data, particularly an image, and the pre-processed data has various classification criteria (eg, posture and posture) having different domains. Divided into motions and positions).
  • classification criteria eg, posture and posture
  • the same pre-processed data is used as the input of multiple classifiers, multiple classifiers learn in each domain, and the results of one classifier are referenced by other classifiers to re-learn and correct the results.
  • time series data is constructed (data with multiple k_features) by vectorizing or arranging various characteristics of the signal itself, and the same is used for learning.
  • the frequency data on the time axis is analyzed for the data input at the current or previous time to divide the input data into a plurality of divided ranges.
  • a deep learning learning method that divides time series data into frequency components to process multiple learning models in parallel
  • the number of divisions can be increased according to a level in which parallel processing of multiple learning models having the same domain is possible.
  • this learning model learns several parameters to infer a rapidly changing value.
  • the learning model changes slowly. It is trained to better deduce the value to be made.
  • the method of dividing the input data based on the frequency component when compared with the conventional method, takes a short learning time by processing in parallel when processing the same amount of input data, and requires more input during the same learning time. Data can be processed.
  • time series data is divided based on frequency components using the same partitioning rules as when learning, and a number of pre-trained deep learning models are selectively used to infer the results. Merge.
  • inference is output through the deep learning model No. 1, and if the data is a high-frequency section, the result is inferred through the deep learning model No. 2 and the result is output through the deep learning model. Merge by criteria.
  • FIG. 3 is a diagram illustrating a deep learning learning structure through input data division and parallel processing in connection with the present invention.
  • FIG. 3 shows the overall structure of dividing time series data input to a deep learning system using an RNN or RCNN model and parallel processing it into multiple learning models having the same domain.
  • FIG. 4 is a flowchart illustrating a deep learning learning method through input data division and parallel processing in connection with the present invention.
  • the controller 180 determines a frequency per unit time of the time series data (S10).
  • step S10 the frequency per unit time of the time series data is obtained.
  • the unit time may use 'Time Step', which is an axis of time series data having a three-dimensional structure, or an arbitrary number of samples.
  • the frequency may be calculated by differentiating the signal of the feature values for a unit time.
  • step (S20) of setting a plurality of sections for frequency components of time series data is performed.
  • step S20 several sections are set for frequency components of time series data.
  • This section can divide the lowest frequency to the highest frequency at equal intervals, or group frequency components of time series data using a K-average algorithm.
  • the time series data may be divided into 10 sections at equal intervals of 100 Hz.
  • a section of 300 Hz or less may be divided into eight and a section of two or more may be divided into two using a K-average algorithm.
  • the division interval can be set to a uniform interval or a non-uniform interval according to the characteristics of time series data.
  • step S20 the step of dividing pieces of time-series data corresponding to each section (S30) and classifying the online learning (off-line learning) and the offline learning (off-line learning) to be used as an input of the learning model ( S40) proceeds.
  • the step S40 may be divided into online learning and off-line learning.
  • the controller 180 determines in which section the frequency component of the currently input time series data corresponds (S52).
  • controller 180 may use the input of the learning model corresponding to the determined section (S53).
  • the controller 180 divides the entire time series data prepared in advance (S62) and divides the divided data into sections to collect pieces in advance ( S63).
  • controller 180 uses the collected pieces as an input of the learning model (S64).
  • step S40 during online learning, data is continuously input during learning, and it is determined by which section the frequency component of the currently input time-series data corresponds to the learning model corresponding thereto. Used as input.
  • the entire time series data prepared in advance are divided and divided into sections, and pieces are collected in advance and used as an input of a learning model.
  • step S40 deep learning step (S70) is repeatedly performed.
  • time series data may be previously divided to perform parallel learning on N learning models, thereby speeding up learning.
  • the input data processing unit may be implemented using a data structure such as a queue.
  • the present invention can provide a user with a deep learning method and system for dividing time series data for each frequency component and processing multiple learning models in parallel.
  • the present invention can improve the slow learning speed that occurs during training of a deep learning system using an RNN or RCNN model for state classification or prediction of results by using time series data as input.
  • the present invention 1) analyzes the frequency component based on the time axis and divides it into a plurality of sections, and 2) uses the input data of multiple learning models having the same domain to perform parallel learning to reduce learning time. It can provide users with a method and system for deep learning that can be shortened.
  • the present invention analyzes the frequency components of time series data input through the method proposed in the present invention to solve the problem of slow learning in a deep learning method using RNN or RCNN models for time series data
  • the learning time can be reduced by dividing into several sections and parallel training several learning models with the same domain.
  • the present invention can improve inference accuracy of each learning model by grouping and training time-series data having similar signal components.
  • embodiments of the present invention can be implemented through various means.
  • embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
  • the method according to embodiments of the present invention includes one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs) , Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.
  • ASICs Application Specific Integrated Circuits
  • DSPs Digital Signal Processors
  • DSPDs Digital Signal Processing Devices
  • PLDs Programmable Logic Devices
  • FPGAs Field Programmable Gate Arrays
  • processors controllers, microcontrollers, microprocessors, and the like.
  • the method according to embodiments of the present invention may be implemented in the form of a module, procedure, or function that performs the functions or operations described above.
  • the software code can be stored in a memory unit and driven by a processor.
  • the memory unit is located inside or outside the processor, and can exchange data with the processor by various known means.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 시계열 데이터를 주파수 성분 별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템에 관한 것이다. 본 발명의 일 양상인 시계열 데이터를 기초로 결과를 예측하는 동작 및 상기 시계열 데이터를 분류하는 동작 중 적어도 하나를 수행하는 모델을 딥러닝 학습하는 방법에 있어서, 상기 시계열 데이터의 단위 시간당 주파수를 결정하는 제 1 단계; 상기 결정한 주파수를 복수의 구간으로 구획하는 제 2 단계; 상기 시계열 데이터를 상기 복수의 구간 각각에 대한 조각 데이터로 분할하는 데 3 단계; 적용되는 학습의 종류가 온라인 학습(On-line Learning) 인지 또는 오프라인 학습(Off-line Learning) 인지 여부를 결정하는 제 4 단계; 상기 결정된 학습 종류에 따라 분할된 조각 데이터를 상기 모델의 입력으로 사용하는 제 5 단계; 및 상기 모델이 입력된 데이터를 기초로 딥러닝 학습하는 제 6단계;를 포함할 수 있다.

Description

시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템
본 발명은 시계열 데이터를 주파수 성분 별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템에 관한 것이다.
딥러닝 시스템에서 시계열 데이터로부터 결과를 예측 또는 분류하는 모델을 생성하고 학습시킬 때, 상태를 갖는 순환신경망(RNN: Recurrent Neural Network) 또는 순환합성곱신경망(RCNN: Recurrent Convolutional Neural Network) 모델을 주로 사용하고 있다.
여기서 갖는 순환신경망(RNN: Recurrent Neural Network)은, 시계열 데이터(time-series data)와 같이 시간의 흐름에 따라 변화하는 데이터를 학습하기 위한 딥 러닝 모델. 기준 시점(t)과 다음 시점(t+1)에 네트워크를 연결하여 구성한 인공 신경망(ANN)이다.
그러나 이러한 종래의 RNN 계열 모델은 연산속도가 느려 학습시간이 많이 필요하다는 단점이 있다.
따라서 시계열 데이터를 사용하는 순환신경망 계열 딥러닝 모델의 학습시간 단축을 위한 새로운 딥러닝 학습 모델이 요구되고 있는 실정이다.
본 발명은 시계열 데이터를 주파수 성분 별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템에 관한 것으로, 본 발명에서는 시계열 데이터를 입력으로 하여 상태 분류 또는 결과 예측을 위한, RNN 또는 RCNN 모델을 사용하는 딥러닝 시스템의 학습 시 발생하는 느린 학습속도를 개선하고자 한다.
구체적으로 본 발명은 1)입력 데이터를 시간축을 기준으로 하여 주파수 성분을 분석하여 다수의 구간으로 분할하고, 2)동일한 도메인을 갖는 다수의 학습 모델의 입력으로 사용하여 병렬 학습을 진행함으로써 학습 시간을 단축할 수 있는 딥러닝 학습 방법 및 시스템을 제안하고자 한다.
다만, 본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기의 기술적 과제를 달성하기 위한 본 발명의 일 양상인 시계열 데이터를 기초로 결과를 예측하는 동작 및 상기 시계열 데이터를 분류하는 동작 중 적어도 하나를 수행하는 모델을 딥러닝 학습하는 방법에 있어서, 상기 시계열 데이터의 단위 시간당 주파수를 결정하는 제 1 단계; 상기 결정한 주파수를 복수의 구간으로 구획하는 제 2 단계; 상기 시계열 데이터를 상기 복수의 구간 각각에 대한 조각 데이터로 분할하는 데 3 단계; 적용되는 학습의 종류가 온라인 학습(On-line Learning) 인지 또는 오프라인 학습(Off-line Learning) 인지 여부를 결정하는 제 4 단계; 상기 결정된 학습 종류에 따라 분할된 조각 데이터를 상기 모델의 입력으로 사용하는 제 5 단계; 및 상기 모델이 입력된 데이터를 기초로 딥러닝 학습하는 제 6단계;를 포함할 수 있다.
또한, 상기 모델은, 상기 주파수의 복수의 구간 각각에 대응하여 적용되도록 복수로 이용되고, 상기 제 4 단계에서, 적용되는 학습 종류가 온라인 학습으로 결정된 경우, 상기 제 5 단계에서는, 상기 분활된 조각 데이터 중 상기 복수의 구간에서 제 1 구간에 대응하는 제 1 조각 데이터가, 상기 복수의 모델 중 상기 제 1 구간에 대응하는 제 1 모델의 입력으로 이용될 수 있다.
또한, 복수의 구간 및 분할된 조각 데이터는 N개이고, 상기 모델은 상기 N보다 작은 K개이며, 상기 제 5 단계 및 제 6 단계는, 상기 N개의 조각 데이터가 상기 K개의 모델에 병렬적으로 입력 및 학습될 수 있다.
또한, 상기 모델은 복수이고, 상기 제 4 단계에서, 적용되는 학습 종류가 오프라인 학습으로 결정된 경우, 상기 제 5 단계에서는, 상기 분활된 조각 데이터 각각을 상기 복수의 모델 각각의 입력으로 이용할 수 있다.
또한, 상기 모델, 복수의 구간 및 분할된 조각 데이터는 N개이고, 상기 제 5 단계 및 제 6 단계는, 상기 N개의 조각 데이터가 상기 N개의 모델에 병렬적으로 입력 및 학습될 수 있다.
또한, 상기 단위 시간은. 3차원 구조를 갖는 시계열 데이터의 한 축인 ‘Time Step’ 또는 임의의 샘플 수를 기준으로 설정될 수 있다.
또한, 상기 단위 시간 동안의 상기 시계열 데이터의 특징 값의 신호를 미분하여 상기 주파수를 결정할 수 있다.
또한, 상기 복수의 구간은, 상기 주파수 중 가장 낮은 주파수에서부터 가장 높은 주파수 사이를 동일한 간격으로 나누어 설정하거나 상기 시계열 데이터가 갖는 주파수 성분을 K-평균 알고리즘을 이용하여 그룹화하여 설정할 수 있다.
한편, 상기의 기술적 과제를 달성하기 위한 본 발명의 다른 일 양상인 시계열 데이터를 기초로 결과를 예측하는 동작 및 상기 시계열 데이터를 분류하는 동작 중 적어도 하나를 수행하는 모델을 딥러닝 학습하는 시스템에 있어서, 제어부는, 상기 시계열 데이터의 단위 시간당 주파수를 결정하고, 상기 결정한 주파수를 복수의 구간으로 구획하며, 상기 시계열 데이터를 상기 복수의 구간 각각에 대한 조각 데이터로 분할하고, 적용되는 학습의 종류가 온라인 학습(On-line Learning) 인지 또는 오프라인 학습(Off-line Learning) 인지 여부를 결정하며, 상기 결정된 학습 종류에 따라 분할된 조각 데이터를 상기 모델의 입력으로 사용하고, 상기 모델이 입력된 데이터를 기초로 딥러닝 학습하도록 제어할 수 있다.
본 발명은 시계열 데이터를 주파수 성분 별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템을 사용자에게 제공할 수 있다.
본 발명은 시계열 데이터를 입력으로 하여 상태 분류 또는 결과 예측을 위한, RNN 또는 RCNN 모델을 사용하는 딥러닝 시스템의 학습 시 발생하는 느린 학습속도를 개선할 수 있다.
구체적으로 본 발명은 1)입력 데이터를 시간축을 기준으로 하여 주파수 성분을 분석하여 다수의 구간으로 분할하고, 2)동일한 도메인을 갖는 다수의 학습 모델의 입력으로 사용하여 병렬 학습을 진행함으로써 학습 시간을 단축할 수 있는 딥러닝 학습 방법 및 시스템을 사용자에게 제공할 수 있다.
결국, 본 발명은, 시계열 데이터에 대한 RNN 또는 RCNN 모델을 사용한 딥러닝 학습 방법에서 학습 속도가 느렸던 문제를 해결하기 위해, 본 발명에서 제안하는 방법을 통해 입력되는 시계열 데이터의 주파수 성분을 분석하여 수 개의 구간으로 분할하고 동일한 도메인을 갖는 수 개의 학습 모델을 병렬 학습시킴으로써 학습 시간을 줄일 수 있다.
또한, 본 발명은 유사한 신호 성분을 갖는 시계열 데이터끼리 묶어 학습시킴으로써 각각의 학습 모델의 추론 정확도를 높일 수 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명과 관련된 딥러닝 학습 시스템의 블록구성도의 일례를 도시한 것이다.
도 2는 본 발명과 관련하여, 종래의 딥러닝 학습 방법을 설명하는 도면이다.
도 3은 본 발명과 관련하여, 입력 데이터 분할 및 병렬처리를 통한 딥러닝 학습 구조를 설명하는 도면이다.
도 4는 본 발명과 관련하여, 입력 데이터 분할 및 병렬처리를 통한 딥러닝 학습 방법을 설명하는 순서도이다.
도 5는 본 발명과 관련하여, 온라인 학습에서의 학습 모델의 입력 방법을 설명하는 도면이다.
도 6은 본 발명과 관련하여, 오프라인 학습에서의 학습 모델의 입력 방법을 설명하는 도면이다.
딥러닝 학습 시스템
본 발명의 구체적인 설명에 앞서, 본 발명에 적용되는 딥러닝 학습 시스템의 블록구성도의 일례를 도 1을 참조하여 설명한다.
도 1을 참조하면, 딥러닝 학습 시스템(100)은 무선 통신부(110), A/V(Audio/Video) 입력부(120), 사용자 입력부(130), 센싱부(140), 출력부(150), 메모리(160), 인터페이스부(170), 제어부(180) 및 전원 공급부(190) 등을 포함할 수 있다.
단, 도 1에 도시된 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성요소들을 갖는 딥러닝 학습 시스템이 구현될 수도 있다.
이하, 상기 구성요소들에 대해 차례로 살펴본다.
무선 통신부(110)는 딥러닝 학습 시스템과 무선 통신 시스템 사이 또는 기기와 기기가 위치한 네트워크 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다.
예를 들어, 무선 통신부(110)는 방송 수신 모듈(111), 이동통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114) 및 위치정보 모듈(115) 등을 포함할 수 있다.
방송 수신 모듈(111)은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다.
상기 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 상기 방송 관리 서버는, 방송 신호 및/또는 방송 관련 정보를 생성하여 송신하는 서버 또는 기 생성된 방송 신호 및/또는 방송 관련 정보를 제공받아 딥러닝 학습 시스템에 송신하는 서버를 의미할 수 있다. 상기 방송 신호는, TV 방송 신호, 라디오 방송 신호, 데이터 방송 신호를 포함할 뿐만 아니라, TV 방송 신호 또는 라디오 방송 신호에 데이터 방송 신호가 결합한 형태의 방송 신호도 포함할 수 있다.
상기 방송 관련 정보는, 방송 채널, 방송 프로그램 또는 방송 서비스 제공자에 관련한 정보를 의미할 수 있다. 상기 방송 관련 정보는, 이동통신망을 통하여도 제공될 수 있다. 이러한 경우에는 상기 이동통신 모듈(112)에 의해 수신될 수 있다.
상기 방송 관련 정보는 다양한 형태로 존재할 수 있다. 예를 들어, DMB(Digital Multimedia Broadcasting)의 EPG(Electronic Program Guide) 또는 DVB-H(Digital Video Broadcast-Handheld)의 ESG(Electronic Service Guide) 등의 형태로 존재할 수 있다.
상기 방송 수신 모듈(111)은, 예를 들어, DMB-T(Digital Multimedia Broadcasting-Terrestrial), DMB-S(Digital Multimedia Broadcasting-Satellite), MediaFLO(Media Forward Link Only), DVB-H(Digital Video Broadcast-Handheld), ISDB-T(Integrated Services Digital Broadcast-Terrestrial) 등의 디지털 방송 시스템을 이용하여 디지털 방송 신호를 수신할 수 있다. 물론, 상기 방송 수신 모듈(111)은, 상술한 디지털 방송 시스템뿐만 아니라 다른 방송 시스템에 적합하도록 구성될 수도 있다.
방송 수신 모듈(111)을 통해 수신된 방송 신호 및/또는 방송 관련 정보는 메모리(160)에 저장될 수 있다.
이동통신 모듈(112)은, 이동 통신망 상에서 기지국, 외부의 기기, 서버 중 적어도 하나와 무선 신호를 송수신한다.
문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
무선 인터넷 모듈(113)은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 딥러닝 학습 시스템에 내장되거나 외장될 수 있다. 무선 인터넷 기술로는 WLAN(Wireless LAN)(Wi-Fi), Wibro(Wireless broadband), Wimax(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access) 등이 이용될 수 있다.
근거리 통신 모듈(114)은 근거리 통신을 위한 모듈을 말한다. 근거리 통신(short range communication) 기술로 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(Ultra-Wideband), ZigBee, 와이파이(Wireless Fidelity, Wi-Fi) 등이 이용될 수 있다.
위치정보 모듈(115)은 딥러닝 학습 시스템의 위치를 획득하기 위한 모듈로서, 그의 대표적인 예로는 GPS(Global Position System) 모듈이 있다.
도 1을 참조하면, A/V(Audio/Video) 입력부(120)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(121)와 마이크(122) 등이 포함될 수 있다. 카메라(121)는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 디스플레이부(151)에 표시될 수 있다.
카메라(121)에서 처리된 화상 프레임은 메모리(160)에 저장되거나 무선 통신부(110)를 통하여 외부로 전송될 수 있다.
카메라(121)는 사용 환경에 따라 2개 이상이 구비될 수도 있다.
마이크(122)는 녹음모드, 음성인식 모드 등에서 마이크로폰(Microphone)에 의해 외부의 음향 신호를 입력받아 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 이동통신 모듈(112)을 통하여 이동통신 기지국으로 송신 가능한 형태로 변환되어 출력될 수 있다. 마이크(122)에는 외부의 음향 신호를 입력받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 구현될 수 있다.
사용자 입력부(130)는 사용자가 딥러닝 학습 시스템의 동작 제어를 위한 입력 데이터를 발생시킨다. 사용자 입력부(130)는 키 패드(key pad) 돔 스위치 (dome switch), 터치 패드(정압/정전), 조그 휠, 조그 스위치 등으로 구성될 수 있다.
센싱부(140)는 딥러닝 학습 시스템의 개폐 상태, 딥러닝 학습 시스템의 위치, 사용자 접촉 유무, 딥러닝 학습 시스템의 방위, 딥러닝 학습 시스템의 가속/감속 등과 같이 딥러닝 학습 시스템의 현 상태를 감지하여 딥러닝 학습 시스템의 동작을 제어하기 위한 센싱 신호를 발생시킨다.
센싱부(140)는 전원 공급부(190)의 전원 공급 여부, 인터페이스부(170)의 외부 기기 결합 여부 등을 센싱할 수도 있다.
한편, 상기 센싱부(140)는 근접 센서(141)를 포함할 수 있다.
또한, 센싱부(140)는 초음파 센서(142)를 더 포함할 수 있다.
초음파 센서(142)는 사람의 귀에 들리지 않을 정도로 높은 주파수(약 20 KHz 이상)의 소리인 초음파가 가지고 있는 특성을 이용한 센서를 말한다.
초음파는 공기나 액체, 고체에 사용할 수 있다. 주파수가 높고 파장이 짧기 때문에 높은 분해력을 계측할 수 있는 특징이 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 이에는 디스플레이부(151), 음향 출력 모듈(152), 알람부(153), 햅틱 모듈(154) 및 프로젝터 모듈(155) 등이 포함될 수 있다.
디스플레이부(151)는 딥러닝 학습 시스템에서 처리되는 정보를 표시(출력)한다.
디스플레이부(151)는 액정 디스플레이(liquid crystal display, LCD), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display, TFT LCD), 유기 발광 다이오드(organic light-emitting diode, OLED), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다.
이들 중 일부 디스플레이는 그를 통해 외부를 볼 수 있도록 투명형 또는 광투과형으로 구성될 수 있다. 이는 투명 디스플레이라 호칭될 수 있는데, 상기 투명 디스플레이의 대표적인 예로는 TOLED(Transparant OLED) 등이 있다. 디스플레이부(151)의 후방 구조 또한 광 투과형 구조로 구성될 수 있다. 이러한 구조에 의하여, 사용자는 딥러닝 학습 시스템 바디의 디스플레이부(151)가 차지하는 영역을 통해 딥러닝 학습 시스템 바디의 후방에 위치한 사물을 볼 수 있다.
딥러닝 학습 시스템의 구현 형태에 따라 디스플레이부(151)이 2개 이상 존재할 수 있다. 예를 들어, 딥러닝 학습 시스템에는 복수의 디스플레이부들이 하나의 면에 이격되거나 일체로 배치될 수 있고, 또한 서로 다른 면에 각각 배치될 수도 있다.
디스플레이부(151)와 터치 동작을 감지하는 센서(이하, '터치 센서'라 함)가 상호 레이어 구조를 이루는 경우(이하, '터치 스크린'이라 함)에, 디스플레이부(151)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 터치 센서는, 예를 들어, 터치 필름, 터치 시트, 터치 패드 등의 형태를 가질 수 있다.
터치 센서는 디스플레이부(151)의 특정 부위에 가해진 압력 또는 디스플레이부(151)의 특정 부위에 발생하는 정전 용량 등의 변화를 전기적인 입력신호로 변환하도록 구성될 수 있다. 터치 센서는 터치 되는 위치 및 면적뿐만 아니라, 터치 시의 압력까지도 검출할 수 있도록 구성될 수 있다.
터치 센서에 대한 터치 입력이 있는 경우, 그에 대응하는 신호(들)는 터치 제어기로 보내진다. 터치 제어기는 그 신호(들)를 처리한 다음 대응하는 데이터를 제어부(180)로 전송한다. 이로써, 제어부(180)는 디스플레이부(151)의 어느 영역이 터치 되었는지 여부 등을 알 수 있게 된다.
상기 근접 센서(141)는 상기 터치스크린에 의해 감싸지는 딥러닝 학습 시스템의 내부 영역 또는 상기 터치 스크린의 근처에 배치될 수 있다. 상기 근접 센서는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 근접 센서는 접촉식 센서보다는 그 수명이 길며 그 활용도 또한 높다.
상기 근접 센서의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 상기 터치스크린이 정전식인 경우에는 상기 포인터의 근접에 따른 전계의 변화로 상기 포인터의 근접을 검출하도록 구성된다. 이 경우 상기 터치 스크린(터치 센서)은 근접 센서로 분류될 수도 있다.
이하에서는 설명의 편의를 위해, 상기 터치스크린 상에 포인터가 접촉되지 않으면서 근접되어 상기 포인터가 상기 터치스크린 상에 위치함이 인식되도록 하는 행위를 "근접 터치(proximity touch)"라고 칭하고, 상기 터치스크린 상에 포인터가 실제로 접촉되는 행위를 "접촉 터치(contact touch)"라고 칭한다. 상기 터치스크린 상에서 포인터로 근접 터치가 되는 위치라 함은, 상기 포인터가 근접 터치될 때 상기 포인터가 상기 터치스크린에 대해 수직으로 대응되는 위치를 의미한다.
상기 근접센서는, 근접 터치와, 근접 터치 패턴(예를 들어, 근접 터치 거리, 근접 터치 방향, 근접 터치 속도, 근접 터치 시간, 근접 터치 위치, 근접 터치 이동 상태 등)을 감지한다. 상기 감지된 근접 터치 동작 및 근접 터치 패턴에 상응하는 정보는 터치 스크린상에 출력될 수 있다.
음향 출력 모듈(152)은 녹음 모드, 음성인식 모드, 방송수신 모드 등에서 무선 통신부(110)로부터 수신되거나 메모리(160)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력 모듈(152)은 딥러닝 학습 시스템에서 수행되는 기능과 관련된 음향 신호를 출력하기도 한다. 이러한 음향 출력 모듈(152)에는 리시버(Receiver), 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
알람부(153)는 딥러닝 학습 시스템의 이벤트 발생을 알리기 위한 신호를 출력한다.
알람부(153)는 비디오 신호나 오디오 신호 이외에 다른 형태, 예를 들어 진동으로 이벤트 발생을 알리기 위한 신호를 출력할 수도 있다.
상기 비디오 신호나 오디오 신호는 디스플레이부(151)나 음성 출력 모듈(152)을 통해서도 출력될 수 있어서, 그들(151,152)은 알람부(153)의 일부로 분류될 수도 있다.
햅틱 모듈(haptic module)(154)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(154)이 발생시키는 촉각 효과의 대표적인 예로는 진동이 있다. 햅택 모듈(154)이 발생하는 진동의 세기와 패턴 등은 제어 가능하다.
예를 들어, 서로 다른 진동을 합성하여 출력하거나 순차적으로 출력할 수도 있다.
햅틱 모듈(154)은, 진동 외에도, 접촉 피부면에 대해 수직 운동하는 핀 배열, 분사구나 흡입구를 통한 공기의 분사력이나 흡입력, 피부 표면에 대한 스침, 전극(eletrode)의 접촉, 정전기력 등의 자극에 의한 효과와, 흡열이나 발열 가능한 소자를 이용한 냉온감 재현에 의한 효과 등 다양한 촉각 효과를 발생시킬 수 있다.
햅틱 모듈(154)은 직접적인 접촉을 통해 촉각 효과의 전달할 수 있을 뿐만 아니라, 사용자가 손가락이나 팔 등의 근 감각을 통해 촉각 효과를 느낄 수 있도록 구현할 수도 있다. 햅틱 모듈(154)은 딥러닝 학습 시스템의 구성 태양에 따라 2개 이상이 구비될 수 있다.
프로젝터 모듈(155)은, 딥러닝 학습 시스템을 이용하여 이미지 프로젝트(project) 기능을 수행하기 위한 구성요소로서, 제어부(180)의 제어 신호에 따라 디스플레이부(151)상에 디스플레이되는 영상과 동일하거나 적어도 일부가 다른 영상을 외부 스크린 또는 벽에 디스플레이할 수 있다.
구체적으로, 프로젝터 모듈(155)은, 영상을 외부로 출력하기 위한 빛(일 예로서, 레이저 광)을 발생시키는 광원(미도시), 광원에 의해 발생한 빛을 이용하여 외부로 출력할 영상을 생성하기 위한 영상 생성 수단 (미도시), 및 영상을 일정 초점 거리에서 외부로 확대 출력하기 위한 렌즈(미도시)를 포함할 수 있다. 또한, 프로젝터 모듈(155)은, 렌즈 또는 모듈 전체를 기계적으로 움직여 영상 투사 방향을 조절할 수 있는 장치(미도시)를 포함할 수 있다.
프로젝터 모듈(155)은 디스플레이 수단의 소자 종류에 따라 CRT(Cathode Ray Tube) 모듈, LCD(Liquid Crystal Display) 모듈 및 DLP(Digital Light Processing) 모듈 등으로 나뉠 수 있다. 특히, DLP 모듈은, 광원에서 발생한 빛이 DMD(Digital Micromirror Device) 칩에 반사됨으로써 생성된 영상을 확대 투사하는 방식으로 프로젝터 모듈(151)의 소형화에 유리할 수 있다.
바람직하게, 프로젝터 모듈(155)은, 딥러닝 학습 시스템의 측면, 정면 또는 배면에 길이 방향으로 구비될 수 있다. 물론, 프로젝터 모듈(155)은, 필요에 따라 딥러닝 학습 시스템의 어느 위치에라도 구비될 수 있음은 당연하다.
메모리부(160)는 제어부(180)의 처리 및 제어를 위한 프로그램이 저장될 수도 있고, 입/출력되는 데이터들(예를 들어, 메시지, 오디오, 정지영상, 동영상 등)의 임시 저장을 위한 기능을 수행할 수도 있다. 상기 메모리부(160)에는 상기 데이터들 각각에 대한 사용 빈도도 함께 저장될 수 있다. 또한, 상기 메모리부(160)에는 상기 터치스크린 상의 터치 입력시 출력되는 다양한 패턴의 진동 및 음향에 관한 데이터를 저장할 수 있다.
메모리(160)는 플래시 메모리 타입(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), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 딥러닝 학습 시스템은 인터넷(internet)상에서 상기 메모리(160)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다.
인터페이스부(170)는 딥러닝 학습 시스템에 연결되는 모든 외부기기와의 통로 역할을 한다. 인터페이스부(170)는 외부 기기로부터 데이터를 전송받거나, 전원을 공급받아 딥러닝 학습 시스템 내부의 각 구성 요소에 전달하거나, 딥러닝 학습 시스템 내부의 데이터가 외부 기기로 전송되도록 한다. 예를 들어, 유/무선 헤드셋 포트, 외부 충전기 포트, 유/무선 데이터 포트, 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트, 오디오 I/O(Input/Output) 포트, 비디오 I/O(Input/Output) 포트, 이어폰 포트 등이 인터페이스부(170)에 포함될 수 있다.
식별 모듈은 딥러닝 학습 시스템의 사용 권한을 인증하기 위한 각종 정보를 저장한 칩으로서, 사용자 인증 모듈(User Identify Module, UIM), 가입자 인증 모듈(Subscriber Identify Module, SIM), 범용 사용자 인증 모듈(Universal Subscriber Identity Module, USIM) 등을 포함할 수 있다. 식별 모듈이 구비된 장치(이하 '식별 장치')는, 스마트 카드(smart card) 형식으로 제작될 수 있다. 따라서 식별 장치는 포트를 통하여 딥러닝 학습 시스템과 연결될 수 있다.
상기 인터페이스부는 딥러닝 학습 시스템이 외부 크래들(cradle)과 연결될 때 상기 크래들로부터의 전원이 상기 딥러닝 학습 시스템에 공급되는 통로가 되거나, 사용자에 의해 상기 크래들에서 입력되는 각종 명령 신호가 상기 이동기기로 전달되는 통로가 될 수 있다. 상기 크래들로부터 입력되는 각종 명령 신호 또는 상기 전원은 상기 이동기기가 상기 크래들에 정확히 장착되었음을 인지하기 위한 신호로 동작될 수도 있다.
제어부(controller, 180)는 통상적으로 딥러닝 학습 시스템의 전반적인 동작을 제어한다.
제어부(180)는 멀티 미디어 재생을 위한 멀티미디어 모듈(181)을 구비할 수도 있다. 멀티미디어 모듈(181)은 제어부(180) 내에 구현될 수도 있고, 제어부(180)와 별도로 구현될 수도 있다.
상기 제어부(180)는 상기 터치스크린 상에서 행해지는 필기 입력 또는 그림 그리기 입력을 각각 문자 및 이미지로 인식할 수 있는 패턴 인식 처리를 행할 수 있다.
전원 공급부(190)는 제어부(180)의 제어에 의해 외부의 전원, 내부의 전원을 인가 받아 각 구성요소들의 동작에 필요한 전원을 공급한다.
여기에 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록매체 내에서 구현될 수 있다.
하드웨어적인 구현에 의하면, 여기에 설명되는 실시예는 ASICs (application specific integrated circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays, 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 명세서에서 설명되는 실시예들이 제어부(180) 자체로 구현될 수 있다.
소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션으로 소프트웨어 코드가 구현될 수 있다. 상기 소프트웨어 코드는 메모리(160)에 저장되고, 제어부(180)에 의해 실행될 수 있다.
이하에서는, 도 2를 통해 설명한 시스템을 기초로 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템에 대해 구체적으로 설명한다.
종래기술 및 종래기술의 문제점
딥러닝 시스템에서 시계열 데이터로부터 결과를 예측 또는 분류하는 모델을 생성하고 학습시킬 때, 상태를 갖는 순환신경망(RNN: Recurrent Neural Network) 또는 순환합성곱신경망(RCNN: Recurrent Convolutional Neural Network) 모델을 주로 사용하게 되며, 이러한 RNN 계열의 모델은 연산속도가 느려 학습시간이 많이 필요하다는 단점이 있다.
센서를 포함하는 시스템의 출력을 시간축으로 정렬한 시계열 데이터를 입력으로 하여, 상태를 분류하거나 다음 결과를 예측하는 딥러닝 시스템은 순환신경망(RNN) 또는 순환합성곱신경망(RCNN)을 사용한 학습 및 추론 모델로 구성된다.
입력되는 시계열 데이터는 특징 값들(Feature Values)의 종류와 단위 시간 당 포함되는 특징 값들의 개수, 전체 샘플의 수로 구성되는 3차원의 배열 또는 집합으로 구성이 된다.
이는 아래의 수식과 같이 표현된다.
수학식
(n_samples, m_timesteps, k_features)
상기 수학식에서 ‘k_features’는 특징 값들의 종류로, 예를 들어 시계열 데이터에 온도와 기압에 대한 데이터가 포함되어 있다면 이 값은 2가 되고, 또는 영상 픽셀값의 1차원 벡터 데이터만 있다면 이 값은 1이 된다.
또한, 상기 수학식에서 ‘m_timesteps’는 단위 시간 당 포함하는 특징 값들의 개수로, 예를 들어 단위 시간인 1초 동안 얻어진 온도와 기압의 데이터 수가 10개라면 이 값은 10이 된다.
또한, 상기 수학식에서 ‘n_samples’는 단위 시간으로 얻어진 전체 샘플의 수로, 예를 들어 총 1000초 동안 데이터를 취득하였다면 이 값은 1000이 된다.
전술한 순환신경망(RNN) 또는 순환합성곱신경망(RCNN) 모델은 시간축으로 입력되는 데이터에 대해 내부에 상태를 저장 및 유지하고 있으며, 이전 상태로부터 입력 데이터를 처리하여 현재 상태를 계산하기 때문에, 내부 상태를 갖지 않는 일반적인 합성곱신경망(CNN)보다 느린 학습 속도를 갖는다.
이러한 입력 데이터로부터 딥러닝 시스템을 구현하는 유사한 종래 발명은 아래와 같다.
(종래기술 1) 먼저, 출원번호 1020150018145 명세서에 기재된 “복수의 분류기를 포함하는 딥 러닝 기반 인식 시스템 및 그 제어 방법”은, 입력 영상에서 특징벡터를 추출하여 분류 기준에 따라 복수의 분류기에서 학습을 수행하도록 하고 있다.
그러나 이러한 종래 발명에서는 ‘분류 기준에 따라 학습을 수행‘한다고 되어 있으나 어떠한 분류 기준인지 명확하지 개시되어 있지 않고, 후에 기술된 발명의 내용으로 유추할 때는 입력 영상을 전처리하여 특징 벡터를 추출하고, 이를 자세와 동작, 위치 인식으로 분류하는 것으로 되어 있다.
또한, 상기 종래 발명에서는 제1 분류기의 결과에 대해 제2 분류기가 학습을 재수행하여 분류 결과를 보정하는 것으로 되어 있다.
(종래기술 2) 다른 발명으로 출원번호 1020160107164인 “전자전 위협신호의 분류를 위한 딥 신경망 학습장치 및 방법”을 살펴보면, 입력 데이터를 펄스상세정보(PDWs)로 하는 학습기에 대한 것으로, 펄스상세정보에는 펄스 주파수 및 반복구간, 폭, 스캔신호를 포함한다. 여기에서 펄스 주파수 및 반복구간 등은 입력 신호 내의 정보로써 다루어지는 것으로 특징 값들의 종류가 된다는 점을 이용하고 있다.
도 2는 위에서 설명한 종래의 딥러닝 학습 방법을 설명하는 도면이다.
도 2를 참조하면, 종래 기술 (1)에서는 입력 데이터, 특히 영상에 대하여 전처리를 통해 특징 벡터의 중간값을 생성하고, 이 전처리된 데이터가 다른 도메인을 갖는 여러 분류 기준(예를 들어, 자세와 동작과 위치)으로 나누어 학습을 한다.
이 기술에서는 동일한 전처리된 데이터가 여러 분류기의 입력으로 사용되고, 여러 분류기가 각각의 도메인에서 학습을 진행하며, 한 분류기의 결과를 다른 분류기에서 참조하여 재학습 및 결과를 보정한다.
또 다른 종래 기술 (2)에서는 입력 데이터로서 신호의 여러 가지 특성인 주파수와 펄스 폭, 반복구간, 스캔신호 등의 여러 특징값을 사용하고 있다.
이 기술에서는 신호 자체에 대한 여러 특성을 벡터 또는 배열화하여 시계열 데이터를 구축(k_features가 다수인 데이터)하고 이를 그대로 학습에 사용한다.
이와 같이 종래 기술 (1) 및 (2)를 포함하는 종래기술들에서는 분류기를 복수로 하는 방법이나 특정 도메인을 갖는 시스템에서 특징 값을 기술하는 것만을 언급하고 있고, RNN 또는 RCNN 모델을 이용한 딥러닝 학습 시에 발생하는 느린 학습 속도를 개선하는 방법은 언급되지 않고 있다.
따라서 본 발명에서는 시계열 데이터를 사용하는 순환신경망 계열 딥러닝 모델의 학습시간 단축을 위해서, 현재 또는 이전 시간에 입력된 데이터에 대해 시간축에 대한 주파수 성분을 분석하여 복수의 분할 범위로 입력 데이터를 나누고, 각 범위 내의 입력 데이터를 복수의 딥러닝 학습 모델을 통해 학습하는 구조를 제안하고자 한다.
시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법
본 발명에서는 시계열 데이터를 입력으로 하여 상태 분류 또는 결과 예측을 위한, RNN 또는 RCNN 모델을 사용하는 딥러닝 시스템의 학습 시 발생하는 느린 학습속도를 개선하기 위해서, 1)입력 데이터를 시간축을 기준으로 하여 주파수 성분을 분석하여 다수의 구간으로 분할하고, 2)동일한 도메인을 갖는 다수의 학습 모델의 입력으로 사용하여 병렬 학습을 진행함으로써 학습 시간을 단축하는 방법을 적용한다.
여기서 시계열 데이터는 동일 도메인을 갖는 다수의 학습 모델의 병렬 처리가 가능한 수준에 따라 분할 수를 늘릴 수 있다.
입력 데이터를 분할함으로써 각각의 학습 모델별로 효율적인 학습과 추론이 가능해진다.
예를 들어, 고주파 성분의 입력 데이터만을 분할하여 사용하게 되면 이 학습 모델은 빠르게 변화하는 값을 추론하도록 여러 파라미터가 학습되고, 반대로 저주파 성분의 입력 데이터만을 분할하여 사용하게 되면 그 학습 모델은 천천히 변화하는 값을 더 잘 추론할 수 있도록 학습된다.
또한, 주파수 성분을 기준으로 하는 이러한 입력 데이터의 분할 방법은 기존의 방법과 비교하였을 때, 동일한 양의 입력 데이터를 처리할 때 병렬 처리를 함으로써 짧은 학습 시간이 소요되고, 동일한 학습 시간 동안 더 많은 입력 데이터를 처리할 수 있다.
또한, 학습된 딥러닝 모델을 사용하여 추론할 때도, 학습 시와 동일한 분할 규칙으로 시계열 데이터를 주파수 성분을 기준으로 분할하여, 다수의 기 학습된 딥러닝 모델들을 선택적으로 사용하여 추론한 후 결과를 병합한다.
예를 들어, 추론을 위한 시계열 데이터의 주파수 성분이 저주파 구간이라면 1번 딥러닝 모델을 통해 추론하여 결과를 출력하고, 고주파 구간의 데이터라면 2번 딥러닝 모델을 통해 추론 후 결과를 출력하여 시간축을 기준으로 병합한다.
이하에서는, 도면을 참조하여, 본 발명의 기술적 특징을 보다 구체적으로 설명한다.
도 3은 본 발명과 관련하여, 입력 데이터 분할 및 병렬처리를 통한 딥러닝 학습 구조를 설명하는 도면이다.
도 3은, RNN 또는 RCNN 모델을 사용하는 딥러닝 시스템에 입력되는 시계열 데이터를 분할하여 동일한 도메인을 갖는 다수의 학습 모델로 병렬 처리하는 전체 구조를 도시한 것이다.
또한, 도 4는 본 발명과 관련하여, 입력 데이터 분할 및 병렬처리를 통한 딥러닝 학습 방법을 설명하는 순서도이다.
도 3 및 도 4를 참조하면, 가장 먼저, 제어부(180)가 시계열 데이터의 단위 시간 당 주파수를 결정하는 단계(S10)가 진행된다.
S10 단계에서는, 시계열 데이터의 단위 시간 당 주파수를 구하는데, 단위 시간은 3차원 구조를 갖는 시계열 데이터의 한 축인 ‘Time Step’을 사용하거나, 또는 임의의 샘플 수를 사용할 수 있다.
S10 단계에서는, 단위 시간 동안의 특징 값들의 신호를 미분하여 주파수를 계산할 수 있다.
이후, 시계열 데이터의 주파수 성분에 대해 복수의 구간을 설정하는 단계(S20)가 진행된다.
S20 단계에서는, 시계열 데이터의 주파수 성분에 대해 수 개의 구간을 설정한다.
이 구간은 가장 낮은 주파수에서부터 가장 높은 주파수 사이를 동일한 간격으로 나누거나, 또는 시계열 데이터가 갖는 주파수 성분을 K-평균 알고리즘을 이용하여 그룹화할 수 있다.
예를 들어, 시계열 데이터가 1Hz부터 1KHz까지의 주파수 성분을 갖는다면 100Hz의 동일한 간격으로 10개의 구간으로 분할할 수도 있다.
또 다른 예를 들면, 저주파 성분이 많이 포함된 시계열 데이터에 대해서 K-평균 알고리즘을 이용하여 300Hz 이하의 구간은 8개로 나누고 이상의 구간은 2개로 나눌 수도 있다.
이는 하나의 예시로서 분할 구간을 시계열 데이터 특성에 따라 균일 간격 또는 불균일 간격으로 설정할 수 있다.
S20 단계 이후, 각 구간별로 해당되는 시계열 데이터의 조각들을 분할하는 단계(S30) 및 온라인 학습(On-line Learning)과 오프라인 학습(Off-line Learning)을 구분하여 학습 모델의 입력으로 사용하는 단계(S40)가 진행된다.
구체적으로 S40 단계는 온라인 학습(On-line Learning)과 오프라인 학습(Off-line Learning)으로 나누어 단계가 진행될 수 있다.
먼저, 도 5를 참조하여, 온라인 학습에서의 학습 모델의 입력 방법을 설명한다.
도 5를 참조하면, 온라인 학습으로 판단(S51)하는 경우, 제어부(180)는 현재 입력된 시계열 데이터의 주파수 성분이 어떤 구간에 해당되는지 판단(S52)하게 된다.
이후, 제어부(180)는 판단된 구간에 대응하는 학습 모델의 입력으로 사용(S53)할 수 있다.
다음으로, 도 6을 참조하여, 오프라인 학습에서의 학습 모델의 입력 방법을 설명한다.
도 6을 참조하면, 오프라인 학습으로 판단(S61)하는 경우, 제어부(180)는 사전에 준비된 전체 시계열 데이터를 분할하는 단계(S62)와 분할한 데이터를 구간별로 구분하여 미리 조각들을 수집하는 단계(S63)를 수행한다.
이후, 제어부(180)는 수집한 조각들을 학습 모델의 입력으로 사용(S64)하게 된다.
즉, S40 단계에서는, 온라인 학습(On-line Learning) 시에는 학습 중에 데이터가 지속적으로 입력이 되고 있으며, 현재 입력된 시계열 데이터의 주파수 성분이 어떤 구간에 해당되는지를 판단하여 그에 대응하는 학습 모델의 입력으로 사용한다.
또한, 오프라인 학습(Off-line Learning) 시에는 사전에 준비된 전체 시계열 데이터를 분할 및 구간별로 구분하여 미리 조각들을 모아 학습 모델의 입력으로 사용한다.
S40 단계 이후에는, 딥러닝 학습하는 단계(S70)가 반복적으로 수행된다.
도 3에 도시된 구조와 같이, 1) 오프라인 학습 시에는 시계열 데이터를 미리 분할하여 N개의 학습 모델에 대해 병렬 학습을 진행할 수 있으므로 학습 속도를 빠르게 할 수 있다.
또한, 본 발명에서는 2) 온라인 학습 시에는, 시계열 데이터가 입력되는 속도보다 학습에 소요되는 속도가 통상적으로 느리므로, 현재의 데이터를 학습시키는 동안 다음 시간에 입력되는 데이터를 다른 모델로 학습시키는 방식으로, N개보다 적은 k개의 학습 모델을 병렬 학습시킴으로써 학습 속도를 빠르게 할 수 있다. 이때에는 입력 데이터 처리부를 큐 등의 자료 구조를 사용하여 구현할 수 있다.
본 발명에 따른 효과
본 발명은 시계열 데이터를 주파수 성분 별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템을 사용자에게 제공할 수 있다.
본 발명은 시계열 데이터를 입력으로 하여 상태 분류 또는 결과 예측을 위한, RNN 또는 RCNN 모델을 사용하는 딥러닝 시스템의 학습 시 발생하는 느린 학습속도를 개선할 수 있다.
구체적으로 본 발명은 1)입력 데이터를 시간축을 기준으로 하여 주파수 성분을 분석하여 다수의 구간으로 분할하고, 2)동일한 도메인을 갖는 다수의 학습 모델의 입력으로 사용하여 병렬 학습을 진행함으로써 학습 시간을 단축할 수 있는 딥러닝 학습 방법 및 시스템을 사용자에게 제공할 수 있다.
결국, 본 발명은, 시계열 데이터에 대한 RNN 또는 RCNN 모델을 사용한 딥러닝 학습 방법에서 학습 속도가 느렸던 문제를 해결하기 위해, 본 발명에서 제안하는 방법을 통해 입력되는 시계열 데이터의 주파수 성분을 분석하여 수 개의 구간으로 분할하고 동일한 도메인을 갖는 수 개의 학습 모델을 병렬 학습시킴으로써 학습 시간을 줄일 수 있다.
또한, 본 발명은 유사한 신호 성분을 갖는 시계열 데이터끼리 묶어 학습시킴으로써 각각의 학습 모델의 추론 정확도를 높일 수 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.
하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.
상술한 바와 같이 개시된 본 발명의 바람직한 실시예들에 대한 상세한 설명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 본 발명의 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 예를 들어, 당업자는 상술한 실시예들에 기재된 각 구성을 서로 조합하는 방식으로 이용할 수 있다. 따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함할 수 있다.

Claims (9)

  1. 시계열 데이터를 기초로 결과를 예측하는 동작 및 상기 시계열 데이터를 분류하는 동작 중 적어도 하나를 수행하는 모델을 딥러닝 학습하는 방법에 있어서,
    상기 시계열 데이터의 단위 시간당 주파수를 결정하는 제 1 단계;
    상기 결정한 주파수를 복수의 구간으로 구획하는 제 2 단계;
    상기 시계열 데이터를 상기 복수의 구간 각각에 대한 조각 데이터로 분할하는 데 3 단계;
    적용되는 학습의 종류가 온라인 학습(On-line Learning) 인지 또는 오프라인 학습(Off-line Learning) 인지 여부를 결정하는 제 4 단계;
    상기 결정된 학습 종류에 따라 분할된 조각 데이터를 상기 모델의 입력으로 사용하는 제 5 단계; 및
    상기 모델이 입력된 데이터를 기초로 딥러닝 학습하는 제 6단계;를 포함하는 딥러닝 학습 방법.
  2. 제 1항에 있어서,
    상기 모델은, 상기 주파수의 복수의 구간 각각에 대응하여 적용되도록 복수로 이용되고,
    상기 제 4 단계에서,
    적용되는 학습 종류가 온라인 학습으로 결정된 경우,
    상기 제 5 단계에서는,
    상기 분활된 조각 데이터 중 상기 복수의 구간에서 제 1 구간에 대응하는 제 1 조각 데이터가, 상기 복수의 모델 중 상기 제 1 구간에 대응하는 제 1 모델의 입력으로 이용되는 것을 특징으로 하는 딥러닝 학습 방법.
  3. 제 2항에 있어서,
    복수의 구간 및 분할된 조각 데이터는 N개이고, 상기 모델은 상기 N보다 작은 K개이며,
    상기 제 5 단계 및 제 6 단계는,
    상기 N개의 조각 데이터가 상기 K개의 모델에 병렬적으로 입력 및 학습되는 것을 특징으로 하는 딥러닝 학습 방법.
  4. 제 1항에 있어서,
    상기 모델은 복수이고,
    상기 제 4 단계에서,
    적용되는 학습 종류가 오프라인 학습으로 결정된 경우,
    상기 제 5 단계에서는,
    상기 분활된 조각 데이터 각각을 상기 복수의 모델 각각의 입력으로 이용하는 것을 특징으로 하는 딥러닝 학습 방법.
  5. 제 4항에 있어서,
    상기 모델, 복수의 구간 및 분할된 조각 데이터는 N개이고,
    상기 제 5 단계 및 제 6 단계는,
    상기 N개의 조각 데이터가 상기 N개의 모델에 병렬적으로 입력 및 학습되는 것을 특징으로 하는 딥러닝 학습 방법.
  6. 제 1항에 있어서,
    상기 단위 시간은.
    3차원 구조를 갖는 시계열 데이터의 한 축인 ‘Time Step’ 또는 임의의 샘플 수를 기준으로 설정되는 것을 특징으로 하는 딥러닝 학습 방법.
  7. 제 6항에 있어서,
    상기 단위 시간 동안의 상기 시계열 데이터의 특징 값의 신호를 미분하여 상기 주파수를 결정하는 것을 특징으로 하는 딥러닝 학습 방법.
  8. 제 1항에 있어서,
    상기 복수의 구간은,
    상기 주파수 중 가장 낮은 주파수에서부터 가장 높은 주파수 사이를 동일한 간격으로 나누어 설정하거나 상기 시계열 데이터가 갖는 주파수 성분을 K-평균 알고리즘을 이용하여 그룹화하여 설정하는 것을 특징으로 하는 딥러닝 학습 방법.
  9. 시계열 데이터를 기초로 결과를 예측하는 동작 및 상기 시계열 데이터를 분류하는 동작 중 적어도 하나를 수행하는 모델을 딥러닝 학습하는 시스템에 있어서,
    제어부는,
    상기 시계열 데이터의 단위 시간당 주파수를 결정하고,
    상기 결정한 주파수를 복수의 구간으로 구획하며,
    상기 시계열 데이터를 상기 복수의 구간 각각에 대한 조각 데이터로 분할하고,
    적용되는 학습의 종류가 온라인 학습(On-line Learning) 인지 또는 오프라인 학습(Off-line Learning) 인지 여부를 결정하며,
    상기 결정된 학습 종류에 따라 분할된 조각 데이터를 상기 모델의 입력으로 사용하고,
    상기 모델이 입력된 데이터를 기초로 딥러닝 학습하도록 제어하는 것을 특징으로 하는 딥러닝 학습 시스템.
PCT/KR2018/013257 2018-11-02 2018-11-02 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템 WO2020091122A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0133496 2018-11-02
KR1020180133496A KR102163966B1 (ko) 2018-11-02 2018-11-02 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템

Publications (1)

Publication Number Publication Date
WO2020091122A1 true WO2020091122A1 (ko) 2020-05-07

Family

ID=70462101

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/013257 WO2020091122A1 (ko) 2018-11-02 2018-11-02 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR102163966B1 (ko)
WO (1) WO2020091122A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220120154A (ko) * 2021-02-23 2022-08-30 삼성전자주식회사 복수의 어플리케이션들에 공유되는 기계 학습 모델을 이용한 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010064806A (ko) * 1999-12-18 2001-07-11 이계철 필터뱅크를 이용한 시계열 예측 장치 및 그 방법
US20040015459A1 (en) * 2000-10-13 2004-01-22 Herbert Jaeger Method for supervised teaching of a recurrent artificial neural network
JP3743508B2 (ja) * 2001-08-27 2006-02-08 日本電気株式会社 オーディオ信号を分類するためのデータの抽出方法と装置
KR101273652B1 (ko) * 2011-07-22 2013-06-11 가천대학교 산학협력단 심박변이도의 시간과 주파수 영역에서의 특징 비교 분석을 이용하여 심근 허혈을 검출하는 방법
KR101797402B1 (ko) * 2016-12-07 2017-11-15 울산대학교 산학협력단 기계 결함 진단 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101863381B1 (ko) 2013-08-09 2018-05-31 (주)엘지하우시스 진공단열재
DE202014000299U1 (de) 2014-01-10 2014-03-14 Rosenberger Hochfrequenztechnik Gmbh & Co. Kg HV-Schnittstelle mit Zentrierung
KR101828215B1 (ko) 2017-08-01 2018-02-12 건국대학교 산학협력단 Long Short Term Memory 기반 순환형 상태 전이 모델의 학습 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010064806A (ko) * 1999-12-18 2001-07-11 이계철 필터뱅크를 이용한 시계열 예측 장치 및 그 방법
US20040015459A1 (en) * 2000-10-13 2004-01-22 Herbert Jaeger Method for supervised teaching of a recurrent artificial neural network
JP3743508B2 (ja) * 2001-08-27 2006-02-08 日本電気株式会社 オーディオ信号を分類するためのデータの抽出方法と装置
KR101273652B1 (ko) * 2011-07-22 2013-06-11 가천대학교 산학협력단 심박변이도의 시간과 주파수 영역에서의 특징 비교 분석을 이용하여 심근 허혈을 검출하는 방법
KR101797402B1 (ko) * 2016-12-07 2017-11-15 울산대학교 산학협력단 기계 결함 진단 방법 및 장치

Also Published As

Publication number Publication date
KR102163966B1 (ko) 2020-10-12
KR20200054352A (ko) 2020-05-20

Similar Documents

Publication Publication Date Title
WO2018117428A1 (en) Method and apparatus for filtering video
WO2018212538A1 (en) Electronic device and method of detecting driving event of vehicle
WO2020085694A1 (ko) 이미지 획득 장치 및 그의 제어 방법
WO2021015308A1 (ko) 로봇 및 그의 기동어 인식 방법
WO2019164232A1 (ko) 전자 장치, 이의 영상 처리 방법 및 컴퓨터 판독가능 기록 매체
EP3602497A1 (en) Electronic device and method of detecting driving event of vehicle
WO2019124963A1 (ko) 음성 인식 장치 및 방법
WO2019182269A1 (ko) 전자 장치, 전자 장치의 이미지 처리 방법 및 컴퓨터 판독 가능 매체
WO2019151735A1 (en) Vision inspection management method and vision inspection system
WO2019112342A1 (en) Voice recognition apparatus and operation method thereof cross-reference to related application
WO2020091519A1 (en) Electronic apparatus and controlling method thereof
WO2020241920A1 (ko) 장치 정보에 기반하여, 다른 장치를 제어할 수 있는 인공 지능 장치
WO2020251086A1 (ko) 인공지능 세탁물 처리 기기
WO2019050137A1 (en) SYSTEM AND METHOD FOR DETERMINING INPUT CHARACTERS BASED ON SCAN INPUT
WO2021206221A1 (en) Artificial intelligence apparatus using a plurality of output layers and method for same
WO2020251074A1 (ko) 음성 인식 기능을 제공하는 인공 지능 로봇 및 그의 동작 방법
EP3545685A1 (en) Method and apparatus for filtering video
WO2020096139A1 (ko) 다종의 진동 흡수용 댐핑 부품을 적용한 영상 카메라 장비용 댐퍼 장치
WO2020091122A1 (ko) 시계열 데이터를 주파수 성분별로 분할하여 복수의 학습 모델을 병렬 처리하는 딥러닝 학습 방법 및 시스템
WO2021040105A1 (ko) 개체명 테이블을 생성하는 인공 지능 장치 및 그 방법
WO2019231068A1 (en) Electronic device and control method thereof
WO2020246639A1 (ko) 증강현실 전자기기의 제어방법
WO2020256169A1 (ko) 인공 지능을 이용하여, 안내 서비스를 제공하는 로봇 및 그의 동작 방법
EP3738305A1 (en) Electronic device and control method thereof
WO2022035054A1 (ko) 로봇 및 이의 제어 방법

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: 18938642

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18938642

Country of ref document: EP

Kind code of ref document: A1