KR20190061382A - Preprocessing Method and apparatus for CNN model - Google Patents

Preprocessing Method and apparatus for CNN model Download PDF

Info

Publication number
KR20190061382A
KR20190061382A KR1020170159703A KR20170159703A KR20190061382A KR 20190061382 A KR20190061382 A KR 20190061382A KR 1020170159703 A KR1020170159703 A KR 1020170159703A KR 20170159703 A KR20170159703 A KR 20170159703A KR 20190061382 A KR20190061382 A KR 20190061382A
Authority
KR
South Korea
Prior art keywords
pressure distribution
distribution information
cnn
model
neural network
Prior art date
Application number
KR1020170159703A
Other languages
Korean (ko)
Inventor
차길환
김철운
서현덕
Original Assignee
주식회사 알고리고
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 알고리고 filed Critical 주식회사 알고리고
Priority to KR1020170159703A priority Critical patent/KR20190061382A/en
Publication of KR20190061382A publication Critical patent/KR20190061382A/en

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/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06N7/00Computing arrangements based on specific mathematical models

Abstract

The present invention relates to a preprocessing apparatus in a CNN classification model. The preprocessing method in a CNN classification model may comprise the steps of: defining a reference vector for a specific feature; subtracting the reference vector for the specific feature from pressure distribution information and generating change amount information for the specific feature; and training or inferring the CNN model using the change amount information.

Description

CNN 분류 모델에서의 전처리 방법 및 장치{Preprocessing Method and apparatus for CNN model}{Preprocessing Method and Apparatus for CNN Model}

본 발명은 CNN 분류 모델에서의 전처리 방법 및 장치에 관한 것이다. The present invention relates to a pre-processing method and apparatus in a CNN classification model.

신경망 모델(Neural Network model)은 생물학에서의 뉴런 구조로부터 착안된 지도 학습(supervised learning) 알고리즘이다. 신경망 모델의 기본적인 작동 원리는 여러 개의 뉴런들을 상호 연결하여 입력값에 대한 최적의 출력값을 예측하는 것이다. 통계적인 관점에서 보면 신경망 모델은 입력 변수의 선형 결합에 비선형 함수를 취하는 사영추적회귀로 볼 수 있다. Neural Network model is a supervised learning algorithm based on neuron structure in biology. The basic working principle of the neural network model is to interconnect several neurons to predict the optimal output value for the input values. From a statistical point of view, the neural network model can be viewed as a projective tracking regression that takes a nonlinear function in the linear combination of input variables.

도 1은 다층 신경망 모델(딥러닝 또는 심층 신경망 모델)의 구조를 도시한 모식도이다. 도 1에 도시된 바와 같이 다층 신경망 모델은 입력층(input layer), 은닉층(hidden layer), 출력층(output layer)으로 구성된다. 입력층은 각 입력변수에 대응되는 노드로 구성되며, 노드의 수는 입력변수의 개수와 같다. 은닉층은 입력층으로부터 전달되는 변수값들의 선형 결합을 시그모이드 함수와 같은 비선형 함수로 처리하여 출력층 또는 다른 은닉층에 전달하는 역할을 한다(최근에는 Back propagation에서 chain rule을 적용하면서 error가 앞단의 layer에서 희석되는 vanishing gradient 문제가 발생되어 시그모이드 함수 대신, ReLU를 일반적으로 이용한다). 출력층은 출력 변수에 대응되는 노드로서 분류 모형에서는 클래스의 수만큼 출력 노드가 생성된다. 1 is a schematic diagram showing the structure of a multilayer neural network model (deep running or a deep neural network model). As shown in FIG. 1, a multi-layer neural network model is composed of an input layer, a hidden layer, and an output layer. The input layer consists of nodes corresponding to each input variable, and the number of nodes is equal to the number of input variables. The hidden layer processes the linear combination of the variable values transmitted from the input layer into a nonlinear function such as a sigmoid function and transmits it to the output layer or other hidden layer (in recent years, applying the chain rule in Back propagation, A dilution vanishing gradient problem occurs, and ReLU is generally used instead of the sigmoid function). The output layer is a node corresponding to the output variable. In the classification model, output nodes are generated by the number of classes.

도 2는 노드에서의 계산 과정을 도시한 모식도이다. 도 2에 도시된 바와 같이, 각각의 노드에서는 실제로 연산이 일어나는데, 이 연산 과정은 인간의 신경망을 구성하는 뉴런에서 일어나는 과정을 모사하도록 수학적으로 설계되어있다. 노드는 일정 크기 이상의 자극을 받으면 반응을 하는데, 그 반응의 크기는 바이어스(bias) 값을 제외하고 입력 값과 노드의 계수(또는 가중치, weights)를 곱한 값과 대략 비례한다. 일반적으로 노드는 여러 개의 입력을 받으며 입력의 개수만큼 계수를 가지고 있다. 따라서 이 계수를 조절함으로써 여러 입력에 다른 가중치를 부여할 수 있다. 최종적으로 곱한 값들은 전부 더해지고 그 합은 활성 함수(activation function)의 입력으로 들어가게 된다. 활성 함수의 결과가 노드의 출력에 해당하며 이 출력값이 궁극적으로 분류나 회귀 분석에 쓰이게 된다. 신경망 모델의 각 층은 적어도 하나의 노드로 이루어져 있으며 입력값에 따라 각 노드의 활성화/비활성화 여부가 결정된다. 입력 데이터는 첫 번째 층(입력층, input layer)의 입력이 되며 그 이후엔 각 층의 출력이 다시 다음 층의 입력이 된다. 모든 계수는 학습 과정에서 계속 조금씩 변하는데, 결과적으로 각 노드가 어떤 입력을 중요하게 여기는지를 반영한다. 그리고 신경망 모델의 '학습(training)'은 이 계수를 업데이트하는 과정이다.2 is a schematic diagram showing a calculation process in a node. As shown in FIG. 2, an actual computation takes place at each node, and this computation process is mathematically designed to simulate the processes occurring in neurons constituting a human neural network. A node responds when it receives a stimulus of a certain size or more. The magnitude of the response is approximately proportional to the input value multiplied by the coefficient (or weight) of the node, excluding the bias value. In general, a node receives multiple inputs and has coefficients as many as the number of inputs. Thus, we can assign different weights to different inputs by adjusting this coefficient. The final multiplied values are all added and the sum is input to the activation function. The result of the active function corresponds to the output of the node, which is ultimately used for classification and regression analysis. Each layer of the neural network model is made up of at least one node, and the activation / deactivation of each node is determined according to the input value. The input data is the input of the first layer (input layer), after which the output of each layer is again the input of the next layer. All the coefficients change little by little in the learning process, and as a result they reflect which inputs each node regards as important. And 'training' of the neural network model is the process of updating this coefficient.

다층 신경망 모델, 즉 딥러닝에서 가장 문제되는 것은 과적합(overfitting) 문제이다. 과적합(Overfitting)은 주어진 데이터의 양에 비해 모델의 복잡도(complexity)가 높으면 발생하게 된다. 안타깝게도 신경망(neural network)이 깊어질수록 모델의 복잡도는 exponential하게 증가하게 된다. 그렇기 때문에 거의 무한한 표현형을 학습할 수 있는 deep network가 좋다는 것을 다들 알고 있음에도 불구하고, 너무나 과적합(overfitting)이 심하게 발생하기 때문에 Marvin Minsky 교수의 1969년 Perceptrons 이론에 의해 neural network 연구가 멈추게 된 것이다. 하지만, 2007~2008년 즈음하여 과적합을 막기 위한 새로운 initialization 방법인 RBM(Restricted Boltzmann Machine)과 CNN(Convolutional Neural Network)이 제안되면서, 다시 딥러닝 연구가 활발하게 진행되었다. The most problematic of the multi-layer neural network model, deep run, is the overfitting problem. Overfitting occurs when the complexity of the model is higher than the amount of data given. Unfortunately, as the neural network deepens, the complexity of the model increases exponentially. This is why the neural network study by Marvin Minsky's 1969 Perceptrons theory was stopped because, although everyone knows that a deep network that can learn almost infinite phenotype is good, overfitting is so severe. However, as the new initialization methods RBM (Restricted Boltzmann Machine) and CNN (Convolutional Neural Network) were proposed to prevent over-integration during 2007 ~ 2008, deep research was actively conducted again.

특히, RBM은 DBN(Deep Belief Network)을 구성하는 요소로 이용되고, unsupervised RBM(restricted Boltzmann machine)을 통해 학습시킬 feedforward neural network의 각 층을 효과적으로 사전훈련(pre-training)하여 과적합(overfitting)을 방지할 수 있는 수준의 initialize point를 잡았고, 이를 다시 supervised back propagation를 사용하는 형태로 학습을 진행한다.In particular, the RBM is used as a component of the DBN (Deep Belief Network) and is effectively pre-training each layer of the feedforward neural network to be learned through an unsupervised RBM (overbitting) , And then proceeds to the learning using supervised back propagation.

하지만, NIPS 2006에 발표된 Bengio 교수 연구팀의 Greedy layer-wise training of deep networks 연구와 NIPS 2007에 발표된 Hinton 교수 연구팀의 A fast learning algorithm for deep belief nets 두 논문을 통해 제안되었던 RBM과 DBN 같은 unsupervised pretraining method들은 최근 실무에서 사용되지는 않는다. 지금은 데이터가 충분히 많을 경우 이런 방식으로 weight를 initialization하는 것보다 random initialization의 성능이 훨씬 우수하다는 것이 알려져 있기 때문이다. Random initialization의 일환으로 Drop-out이라는 개념이 소개되었고, 최근에는 대부분이 Drop-out 방식을 이용하고 있다. In this paper, we propose a novel fast learning algorithm for deep nervous system (RNBM), which is based on NIPS 2006, methods are not used in recent work. It is now known that the performance of random initialization is much better than initializing the weight in this way if the data is large enough. As a part of random initialization, the concept of drop-out has been introduced, and most of them are using drop-out method recently.

도 3은 Drop-out 방식을 도시한 모식도이다. 도 3에 도시된 바와 같이, Drop-out 방식은 매 학습시 은닉층에서 모든 neuron을 사용하는 것이 아니라 50% 정도의 neuron을 사용한다. 하나의 딥러닝에서 여러 개의 작은 neural network이 앙상블(ensemble)되어진 효과가 있고, 앙상블은 과적합이 크게 줄어든다고 알려져 있다. 또한, 비슷한 weight를 갖는 뉴런들이 줄어들게 되어서 중복된 판단을 하는 뉴런들이 줄어들게 되어 뉴런을 효율적으로 사용가능한 장점이 있다.3 is a schematic diagram showing a drop-out method. As shown in FIG. 3, in the drop-out method, neurons of about 50% are used instead of all neurons in the hidden layer in each learning. In one deep run, several small neural networks have been ensembled, and ensembles are known to greatly reduce over-sum. In addition, neurons with similar weights are reduced, which reduces the number of overlapping neurons, which makes it possible to use neurons efficiently.

또한, 최근에는 ReLU(Rectified Linear Unit) 라는 활성함수(activation function)로 느린 학습시간과 과적합 문제 등을 해결하고 있다. 도 4는 ReLU 활성함수를 도시한 그래프이다. 도 4에 도시된 바와 같이, 기존의 sigmoid 함수는 기울기 하강(Gradient Descent)를 여러 층으로 해나갈 때마다 error가 소멸되는 문제가 발생한다. 여러 층을 지나 극한으로 갈수록 sigmoid 함수는 Gradient(기울기)가 작아져서 weight가 업데이트되지 않는 문제가 발생하는 것이다. 그런데 활성함수로 ReLU 함수를 사용시, 기울기가 0 또는 1로 학습되는 경우에 100%로 error가 전파되어 이러한 문제가 해소되게 된다. ReLU 함수는 sigmoid 처럼 [0,1]로 제한되는 것이 아니고 그 범위가 무제한이기 때문에 좀 더 확실한 표현력을 가진다고 볼 수 있다. 또한, 각 노드의 출력값 중 필요 없는 값들이 많다. 이럴 때, sigmoid 함수 사용시 모든 값에 대한 계산을 해야하는데, ReLU 함수는 상당 부분의 연산량을 줄일 수 있어 컴퓨팅 속도가 개선되는 효과가 발생된다. ReLU 함수에 의해 정규화(Regularization)가 향상될 수 있다.In addition, recently, an activation function called ReLU (Rectified Linear Unit) has solved the problem of slow learning time and over sum. 4 is a graph showing the ReLU activation function. As shown in FIG. 4, the existing sigmoid function has a problem that the error disappears every time the gradient descent is made into several layers. As we go through the layers, the sigmoid function has a problem that the weight is not updated because the gradient becomes smaller. However, when the ReLU function is used as the activation function, the error propagates to 100% when the slope is 0 or 1, and this problem is solved. The ReLU function is not limited to [0,1] like sigmoid, but it has more definite expressiveness because its range is unlimited. Also, there are many unnecessary values among the output values of each node. In this case, when using the sigmoid function, it is necessary to calculate all the values, and the ReLU function can reduce a large amount of computation, thereby improving the computing speed. Regularization can be improved by the ReLU function.

대한민국 공개특허 10-2016-0034814, 삼성전자주식회사, 뉴럴 네트워크를 수반한 클라이언트 장치 및 그것을 포함하는 시스템, 2016.03.30.Korean Patent Laid-Open No. 10-2016-0034814, Samsung Electronics Co., Ltd., client device accompanied by a neural network and a system including the same, 2013.03.30.

이러한 다양한 ANN 알고리즘 중 예를 들어, 64 x 64의 압력센서 매트릭스로 구성된 스마트 좌석에서 발생되는 Time series 매트릭스 형태의 압력 데이터를 토대로 좌석에 착석한 사용자의 자세를 분류하는 모델을 개발하려는 경우, CNN(Convolutional Neural Network)이 이용될 수 있다. 헌데 이러한 압력 데이터는 사용자 체형, 의자 상태, 센서 변수에 대해 센서 값 변화가 크다. 특히, 바른 자세와 앞으로 기울인 자세에 대한 실제 데이터 구분이 쉽지 않으며, 분류기 정확도를 낮추는 요인이다. 예를 들어, 다리가 짧은 사람의 바른 자세는 다리가 긴 사람의 앞으로 기울인 자세와 데이터에 차이가 없고 유사하다.For example, to develop a model for classifying the posture of a user seated on a seat based on pressure data in the form of a time series matrix generated from a smart seat composed of a 64 x 64 pressure sensor matrix, Convolutional Neural Network) can be used. However, these pressure data show a large change in the sensor value with respect to the user's body shape, the chair state, and the sensor variable. Particularly, it is not easy to distinguish the actual data from the right posture and the posture that is tilted forward, and it is a factor that lowers the accuracy of the classifier. For example, the right posture of a person with a short leg is similar to that of a person with a long leg, with no difference in posture and data.

따라서, 본 발명의 목적은 CNN 분류 모델에서의 전처리 방법 및 장치를 제공하는 데에 있다. Accordingly, it is an object of the present invention to provide a pre-processing method and apparatus in a CNN classification model.

이하 본 발명의 목적을 달성하기 위한 구체적 수단에 대하여 설명한다.Hereinafter, specific means for achieving the object of the present invention will be described.

본 발명의 목적은,매트릭스 형태로 구성되는 압력센서에서 수신되는 압력분포 정보인 입력값을 저장하고, 상기 압력분포 정보를 분류하는 CNN 모델에서의 상기 압력분포 정보를 전처리하는 프로그램 코드가 저장된 메모리 모듈; 및 상기 프로그램 코드를 수행하여, 상기 CNN 모델에서의 상기 압력분포 정보를 전처리하는 처리 모듈;을 포함하고, 상기 프로그램 코드는, 특정 특징에 대한 기준 벡터를 정의하는 단계; 상기 압력분포 정보에서 상기 특정 특징에 대한 기준 벡터를 빼고, 상기 특정 특징에 대한 변화량 정보를 생성하는 단계; 및 상기 변화량 정보를 이용하여 상기 CNN 모델을 Training 또는 Inference 하는 단계;를 포함하는, CNN 분류 모델에서의 전처리 장치를 제공하여 달성될 수 있다. An object of the present invention is to provide a memory module that stores an input value that is pressure distribution information received from a pressure sensor formed in a matrix form and preprocesses the pressure distribution information in a CNN model for classifying the pressure distribution information, ; And a processing module for executing the program code to preprocess the pressure distribution information in the CNN model, the program code comprising: defining a reference vector for a particular feature; Subtracting a reference vector for the specific feature from the pressure distribution information and generating change amount information for the specific feature; And training or recommending the CNN model using the change amount information.

상기한 바와 같이, 본 발명에 의하면 이하와 같은 효과가 있다.As described above, the present invention has the following effects.

첫째, 본 발명의 일실시예에 따르면, 환경/상태/상황(개인, 센서 변수, 의자 상태) 등의 변화에 민감하지 않는 범용 분류 모델로 이용될 수 있는 효과가 발생된다. .First, according to one embodiment of the present invention, an effect that can be used as a universal classification model that is not sensitive to changes in environment / state / situation (individual, sensor variable, chair state) is generated. .

본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 다층 신경망 모델(딥러닝 또는 심층 신경망 모델)의 구조를 도시한 모식도,
도 2는 노드에서의 계산 과정을 도시한 모식도,
도 3은 Drop-out 방식을 도시한 모식도,
도 4는 ReLU 활성함수를 도시한 그래프,
도 5는 본 발명의 일실시예에 따른 압력분포 정보를 이용한 자세 분류 시스템을 도시한 것,
도 6은 본 발명의 일실시예에 따른 자세 분류 시스템의 사용자 클라이언트에 디스플레이 되는 화면의 예,
도 7은 본 발명의 일실시예에 따른 CNN 분류 모델에서의 전처리 장치의 적용 전 후 비교 그래프이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate preferred embodiments of the invention and, together with the description, And shall not be interpreted.
1 is a schematic diagram showing the structure of a multilayer neural network model (deep running or a deep neural network model)
2 is a schematic diagram illustrating a calculation process in a node,
3 is a schematic diagram showing a drop-out method,
Figure 4 is a graph showing the < RTI ID = 0.0 > ReLU <
5 is a view showing a posture classification system using pressure distribution information according to an embodiment of the present invention,
FIG. 6 illustrates an example of a screen displayed on a user client of the posture classification system according to an embodiment of the present invention,
FIG. 7 is a graph illustrating a pre-treatment and post-treatment comparison of the pretreatment apparatus in the CNN classification model according to an embodiment of the present invention.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 쉽게 실시할 수 있는 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작원리를 상세하게 설명함에 있어서 관련된 공지기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following detailed description of the operation principle of the preferred embodiment of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may unnecessarily obscure the subject matter of the present invention.

또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다. 명세서 전체에서, 특정 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고, 간접적으로 연결되어 있는 경우도 포함한다. 또한, 특정 구성요소를 포함한다는 것은 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다.The same reference numerals are used for portions having similar functions and functions throughout the drawings. In the specification, when a specific portion is connected to another portion, it includes not only a direct connection but also a case where the other portion is indirectly connected with another element in between. In addition, the inclusion of a specific constituent element does not exclude other constituent elements unless specifically stated otherwise, but may include other constituent elements.

압력분포 정보를 이용한 자세 분류 시스템 및 장치Posture classification system and apparatus using pressure distribution information

도 5는 본 발명의 일실시예에 따른 압력분포 정보를 이용한 자세 분류 시스템을 도시한 것이다. 도 5에 도시된 바와 같이 압력분포 정보를 이용한 자세 분류 시스템은 압력 센싱 장치(1, 압력분포 센서, 송수신부(100), 전원부 포함), 서버(6), DB(7), 사용자 클라이언트(8)를 포함할 수 있다.FIG. 5 illustrates a posture classification system using pressure distribution information according to an embodiment of the present invention. 5, the posture classification system using the pressure distribution information includes a pressure sensing device 1 (including a pressure distribution sensor, a transceiver 100 and a power supply), a server 6, a DB 7, a user client 8 ).

압력 센싱 장치(1)는 사용자의 착석위치에 장착되어 사용자가 압력 센싱 장치 위에 앉았을 때, 압력분포를 센싱하여 출력하는 구성이다. 압력 센싱 장치(1)는 압력분포 센서(2), 송신부(3), 전원부(4), 제어부(5)를 포함할 수 있다. The pressure sensing device 1 is configured to sense the pressure distribution when the user is seated on the pressure sensing device and is output to the seating position of the user. The pressure sensing device 1 may include a pressure distribution sensor 2, a transmission unit 3, a power supply unit 4, and a control unit 5.

압력분포 센서(2)는 사용자의 착석 위치에 평면 또는 곡면으로 구성되는 복수개의 압전센서 또는 압력센서가 격자 형태로 분포된 구성을 의미할 수 있다. 압력분포 센서(2)에서는 각각의 압전센서 또는 압력센서에서 생성된 압력값이 컨버팅되어 이미지 또는 행렬 데이터로 형성된 압력분포 정보가 생성될 수 있다. The pressure distribution sensor 2 may refer to a configuration in which a plurality of piezoelectric sensors or pressure sensors each formed of a flat surface or a curved surface at a user's seating position are distributed in a lattice form. In the pressure distribution sensor 2, pressure values generated in the respective piezoelectric sensors or pressure sensors may be converted to generate pressure distribution information formed of image or matrix data.

송신부(3)는 압력분포 센서(2)에서 생성된 압력분포 정보를 제어부(5)가 요청한 특정 시간 간격에 따라 서버(6) 또는 사용자 클라이언트(8)에 송신하는 구성이다. 송신부(3)가 압력분포 정보를 사용자 클라이언트(8)로 송신하는 경우에는 BLE 등의 근거리 통신으로 송신할 수 있다.The transmitting unit 3 transmits the pressure distribution information generated by the pressure distribution sensor 2 to the server 6 or the user client 8 at a specific time interval requested by the control unit 5. [ When the transmitter 3 transmits the pressure distribution information to the user client 8, the transmitter 3 can transmit it by short-distance communication such as BLE.

전원부(4)는 압력분포 센서(2), 송신부(3), 제어부(5)에 전원을 공급하는 구성이다. The power supply section 4 is configured to supply power to the pressure distribution sensor 2, the transmission section 3, and the control section 5.

제어부(5)는 압력분포 센서(2)의 센싱 duration, 송신부(3)의 압력분포 정보 송신 등을 제어하는 구성이다.The control unit 5 controls the sensing duration of the pressure distribution sensor 2, transmission of pressure distribution information of the transmission unit 3, and the like.

서버(6)는 압력 센싱 장치(1)에서 직접, 또는 사용자 클라이언트(8)를 통해 압력분포 정보를 수신하고, 사용자 클라이언트(8)에서 특정 압력분포 정보에 대한 레이블(label) 정보를 수신하여 트레이닝 세트를 구성하며, 해당 트레이닝 세트를 이용하여 신경망 모델을 학습하고, 해당 신경망 모델을 이용하여 사용자의 자세 정보를 분류하여 사용자 클라이언트(8)에 출력하는 구성이다.The server 6 receives the pressure distribution information directly from the pressure sensing device 1 or via the user client 8 and receives label information on the specific pressure distribution information from the user client 8, Sets the training set, learns the neural network model using the training set, classifies the user's posture information using the neural network model, and outputs the classified information to the user client 8.

DB(7)는 서버(6)와 연결되어, 압력 센싱 장치(1)에서 수신되는 압력분포 정보를 시계열 순으로 저장하고, 사용자 클라이언트(8)에서 입력되는 레이블 정보를 해당 압력분포 정보에 연결하여 저장하는 구성이다.The DB 7 is connected to the server 6 and stores the pressure distribution information received from the pressure sensing device 1 in a time series order and connects the label information inputted from the user client 8 to the pressure distribution information .

사용자 클라이언트(8)는 서버(6)와 연결되어, 서버(6)에서 압력분포 정보를 수신하거나, 특정 압력분포 정보에 대해 레이블 정보(현재 어떤 자세로 앉아 있는지)를 입력하여 서버(6)로 송신하고, 서버(6)에서 분류된 사용자의 자세 정보를 송신받아 디스플레이하는 구성이다. 본 발명의 일실시예에 따라 사용자 클라이언트(8)가 서버(6)와 압력 센싱 장치(1)의 Access Point 역할을 수행하는 경우에는, 압력분포 정보를 압력 센싱 장치(1)에서 직접 수신할 수 있고, 수신된 압력분포 정보를 서버(6)에 송신하여 신경망 모델을 이용해 사용자의 자세 정보를 분류, 예측할 수 있다. 또는, 사용자 클라이언트(8)의 컴퓨팅 파워가 충분한 경우, 사용자 클라이언트(8)에서 직접 신경망 모델을 컴퓨팅할 수 있다.The user client 8 is connected to the server 6 and receives the pressure distribution information from the server 6 or inputs the label information (in which position it is currently sitting) for the specific pressure distribution information to the server 6 And transmits the posture information of the user classified by the server 6 and displays the posture information. When the user client 8 serves as an access point of the server 6 and the pressure sensing device 1 according to an embodiment of the present invention, the pressure sensing device 1 can receive the pressure distribution information directly And transmits the received pressure distribution information to the server 6 so that the user's posture information can be classified and predicted using the neural network model. Alternatively, if the computing power of the user client 8 is sufficient, the neural network model may be computed directly at the user client 8.

도 6은 본 발명의 일실시예에 따른 자세 분류 시스템의 사용자 클라이언트에 디스플레이 되는 화면의 예를 도시한 것이다. 도 6에 도시된 바와 같이, 수신된 압력분포 정보(30)를 인코딩하여 디스플레이하거나, 분류된 사용자의 자세 정보(31)를 송신받아 디스플레이 할 수 있다. FIG. 6 illustrates an example of a screen displayed on a user client of a posture classification system according to an embodiment of the present invention. As shown in FIG. 6, the received pressure distribution information 30 can be encoded and displayed, or the posture information 31 of the user can be transmitted and displayed.

CNN 분류 모델에서의 전처리 방법 및 장치Pretreatment method and device in CNN classification model

본 발명의 일실시예에 따른 CNN 분류 모델에서의 전처리 방법 및 장치는, 기저(기준 자세)로부터의 변화 경향성은 모든 환경에서 유사할 거라고 가정하고 있고, 환경/상태/상황(개인, 센서 변수, 의자 상태)에 따른 전처리를 통해 다양한 상황에서도 범용적으로 이용될 수 있는 분류 모델을 만드는 것이 목적이다. The pre-processing method and apparatus in the CNN classification model according to an embodiment of the present invention assume that the change tendency from the base (reference posture) is similar in all environments, and the environment / state / The purpose of this study is to develop a classification model that can be used universally in various situations through preprocessing according to the state of the chair.

본 발명의 일실시예에 따른 CNN 분류 모델에서의 전처리 방법 및 장치는, 기준으로부터의 차이값을 정의하는 것이 목적이며, 구체적으로, 아래의 수식으로 수행될 수 있다. The preprocessing method and apparatus in the CNN classification model according to an embodiment of the present invention is to define a difference value from a reference, and specifically, it can be performed by the following equation.

Figure pat00001
Figure pat00001

위 수학식 1에서, z: Representation Vector (Input to Classifier), s*: Optimal Setting, p: Posture, p*: A Base/Standard Posture, t: Ensemble 를 의미한다. p* 의 경우도 classifier의 Loss나 accuracy를 지표로 하여 Reasonable 하게 설정해도 되지만, 현재는 바른자세가 p* 이다. 일반적인 centering 과정에서는 모든 데이터에 동일한 기저값이 제외되지만(통계적인 목적), 이 경우에는 사용자 및 의자 상태를 반영하여 기저가 바뀌게 된다.In Equation (1), z: Representation Vector (Input to Classifier), s *: Optimal Setting, p: Posture, p *: A Base / Standard Posture, t: Ensemble. In the case of p *, it is also possible to set it to Reasonable with the loss or accuracy of the classifier as an index, but now the correct posture is p *. In a typical centering procedure, the same base values are excluded for all data (for statistical purposes), but in this case the base is changed to reflect the user and chair status.

이와 같은 본 발명의 일실시예에 따른 CNN 분류 모델에서의 전처리 방법 및 장치에 따르면, 아래와 같은 효과가 발생될 수 있다. According to the pre-processing method and apparatus in the CNN classification model according to an embodiment of the present invention, the following effects can be generated.

도 7은 본 발명의 일실시예에 따른 CNN 분류 모델에서의 전처리 장치의 적용 전 후 비교 그래프이다. 도 7에 도시된 바와 같이, 정확도가 크게 향상된 것을 확인할 수 있다. FIG. 7 is a graph illustrating a pre-treatment and post-treatment comparison of the pretreatment apparatus in the CNN classification model according to an embodiment of the present invention. As shown in FIG. 7, it can be seen that the accuracy is greatly improved.

이상에서 설명한 바와 같이, 본 발명이 속하는 기술 분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 상술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함하는 것으로 해석되어야 한다.As described above, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the above-described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention.

본 명세서 내에 기술된 특징들 및 장점들은 모두를 포함하지 않으며, 특히 많은 추가적인 특징들 및 장점들이 도면들, 명세서, 및 청구항들을 고려하여 당업자에게 명백해질 것이다. 더욱이, 본 명세서에 사용된 언어는 주로 읽기 쉽도록 그리고 교시의 목적으로 선택되었고, 본 발명의 주제를 묘사하거나 제한하기 위해 선택되지 않을 수도 있다는 것을 주의해야 한다.The features and advantages described herein are not all inclusive, and in particular, many additional features and advantages will be apparent to those skilled in the art in view of the drawings, specification, and claims. Moreover, it should be noted that the language used herein is primarily chosen for readability and for purposes of teaching, and may not be selected to delineate or limit the subject matter of the invention.

본 발명의 실시예들의 상기한 설명은 예시의 목적으로 제시되었다. 이는 개시된 정확한 형태로 본 발명을 제한하거나, 빠뜨리는 것 없이 만들려고 의도한 것이 아니다. 당업자는 상기한 개시에 비추어 많은 수정 및 변형이 가능하다는 것을 이해할 수 있다.The foregoing description of embodiments of the invention has been presented for purposes of illustration. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Those skilled in the art will appreciate that many modifications and variations are possible in light of the above teachings.

그러므로 본 발명의 범위는 상세한 설명에 의해 한정되지 않고, 이를 기반으로 하는 출원의 임의의 청구항들에 의해 한정된다. 따라서, 본 발명의 실시예들의 개시는 예시적인 것이며, 이하의 청구항에 기재된 본 발명의 범위를 제한하는 것은 아니다.The scope of the invention is, therefore, not to be limited by the Detailed Description, but is to be defined by the claims of any application based thereon. Accordingly, the disclosure of embodiments of the invention is illustrative and not restrictive of the scope of the invention, which is set forth in the following claims.

1: 압력 센싱 장치
2: 압력분포 센서
3: 송수신부
4: 전원부
5: 제어부
6: 서버
7: DB
8: 사용자 클라이언트
1: Pressure sensing device
2: Pressure distribution sensor
3: Transmitting /
4:
5:
6: Server
7: DB
8: User Client

Claims (1)

매트릭스 형태로 구성되는 압력센서에서 수신되는 압력분포 정보인 입력값을 저장하고, 상기 압력분포 정보를 분류하는 CNN 모델에서의 상기 압력분포 정보를 전처리하는 프로그램 코드가 저장된 메모리 모듈; 및
상기 프로그램 코드를 수행하여, 상기 CNN 모델에서의 상기 압력분포 정보를 전처리하는 처리 모듈;
을 포함하고,
상기 프로그램 코드는,
특정 특징에 대한 기준 벡터를 정의하는 단계;
상기 압력분포 정보에서 상기 특정 특징에 대한 기준 벡터를 빼고, 상기 특정 특징에 대한 변화량 정보를 생성하는 단계; 및
상기 변화량 정보를 이용하여 상기 CNN 모델을 Training 또는 Inference 하는 단계;
를 포함하는,
CNN 분류 모델에서의 전처리 장치.
A memory module storing program codes for storing an input value, which is pressure distribution information received from a pressure sensor formed in a matrix form, and preprocessing the pressure distribution information in a CNN model for classifying the pressure distribution information; And
A processing module for executing the program code to preprocess the pressure distribution information in the CNN model;
/ RTI >
The program code comprises:
Defining a reference vector for a particular feature;
Subtracting a reference vector for the specific feature from the pressure distribution information and generating change amount information for the specific feature; And
Training or referring to the CNN model using the change amount information;
/ RTI >
Pretreatment device in CNN classification model.
KR1020170159703A 2017-11-27 2017-11-27 Preprocessing Method and apparatus for CNN model KR20190061382A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170159703A KR20190061382A (en) 2017-11-27 2017-11-27 Preprocessing Method and apparatus for CNN model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170159703A KR20190061382A (en) 2017-11-27 2017-11-27 Preprocessing Method and apparatus for CNN model

Publications (1)

Publication Number Publication Date
KR20190061382A true KR20190061382A (en) 2019-06-05

Family

ID=66844867

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170159703A KR20190061382A (en) 2017-11-27 2017-11-27 Preprocessing Method and apparatus for CNN model

Country Status (1)

Country Link
KR (1) KR20190061382A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160034814A (en) 2014-09-22 2016-03-30 삼성전자주식회사 Client device with neural network and system including the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160034814A (en) 2014-09-22 2016-03-30 삼성전자주식회사 Client device with neural network and system including the same

Similar Documents

Publication Publication Date Title
JP7328993B2 (en) Gradient Adversarial Training of Neural Networks
JP6608981B2 (en) Abnormal session detection method
US11087086B2 (en) Named-entity recognition through sequence of classification using a deep learning neural network
KR102031982B1 (en) A posture classifying apparatus for pressure distribution information using determination of re-learning of unlabeled data
Khashman Modeling cognitive and emotional processes: A novel neural network architecture
WO2019018533A1 (en) Neuro-bayesian architecture for implementing artificial general intelligence
KR20190078899A (en) Visual Question Answering Apparatus Using Hierarchical Visual Feature and Method Thereof
Ohata et al. Investigation of the sense of agency in social cognition, based on frameworks of predictive coding and active inference: A simulation study on multimodal imitative interaction
Cheung et al. An introduction to neural networks
Bah et al. Facial expression recognition using adapted residual based deep neural network
Kozlova et al. The use of neural networks for planning the behavior of complex systems
Gurney Neural networks for perceptual processing: from simulation tools to theories
WO2018092957A1 (en) Method, device and program for determining for re-learning with respect to input value in neural network model
KR20190035635A (en) Apparatus for posture analysis of time series using artificial inteligence
KR20190061381A (en) Method and apparatus for hardware variable automation
Licata Are neural networks imitations of mind
KR20190061382A (en) Preprocessing Method and apparatus for CNN model
An et al. Enhancing visual coding through collaborative perception
Rajini et al. Performance evaluation of neural networks for shape identification in image processing
Toennies 7 multi-layer perceptron for image classification
Hudson et al. Choosing and using a neural net
KR102610242B1 (en) Method, device and system for recognizing irregular handwriting based on artificial intelligence optical character recognition
Whittington et al. Learning in cortical networks through error back-propagation: Error back-propagation in the cortex
Verdhan et al. Introduction to Computer Vision and Deep Learning
Shivakumar et al. An improved artificial neural network based emotion classification system for expressive facial images