KR102516196B1 - Apparatus for forecasting demand based on extreme events and method therefor - Google Patents

Apparatus for forecasting demand based on extreme events and method therefor Download PDF

Info

Publication number
KR102516196B1
KR102516196B1 KR1020220019352A KR20220019352A KR102516196B1 KR 102516196 B1 KR102516196 B1 KR 102516196B1 KR 1020220019352 A KR1020220019352 A KR 1020220019352A KR 20220019352 A KR20220019352 A KR 20220019352A KR 102516196 B1 KR102516196 B1 KR 102516196B1
Authority
KR
South Korea
Prior art keywords
demand
storage module
remind
state storage
state
Prior art date
Application number
KR1020220019352A
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 호서대학교 산학협력단
Application granted granted Critical
Publication of KR102516196B1 publication Critical patent/KR102516196B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Provided is a device for forecasting demand, which includes: a data processing unit which collects a demand for parts by a unit period, generates a plurality of demand statistics vectors each representing the demand for parts by the unit period, and creates a demand statistics vector column in which the generated plurality of demand statistics vectors are arranged in chronological order; and a forecasting unit for deriving a demand forecasting vector for forecasting the demand quantity of the parts after a predetermined period through an operation on the demand statistics vector column using a pre-learned forecasting model.

Description

희소성 이벤트 기반의 수요를 예측하기 위한 장치 및 이를 위한 방법{Apparatus for forecasting demand based on extreme events and method therefor}Apparatus for forecasting demand based on extreme events and method therefor}

본 발명은 수요 예측 기술에 관한 것으로, 보다 상세하게는, 희소성 이벤트(extreme events) 기반의 수요를 예측하기 위한 장치 및 이를 위한 방법에 관한 것이다. The present invention relates to demand forecasting technology, and more particularly, to an apparatus and method for predicting demand based on extreme events.

기업의 수요예측은 생산이나 서비스에 관련된 데이터를 사용하여 제품이나 서비스에 대한 미래의 수요를 추정하는 것으로 공급망 관리, 설비투자, 인력운영, 재고관리 등 사업운영 전략 수립에 중요한 활동이다. Demand forecasting is an important activity in establishing business operation strategies such as supply chain management, facility investment, manpower management, and inventory management.

한국등록특허 제2294125호 (2021년08월20일 등록)Korean Registered Patent No. 2294125 (registered on August 20, 2021)

본 발명의 목적은 희소성 이벤트 기반의 수요를 예측하기 위한 장치 및 이를 위한 방법을 제공함에 있다. An object of the present invention is to provide an apparatus and method for predicting demand based on scarcity events.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 수요를 예측하기 위한 장치는 부품의 수요를 단위 기간 별로 수집하여 각각이 단위 기간 별 부품의 수요량을 나타내는 복수의 수요통계벡터를 생성하고, 생성된 복수의 수요통계벡터가 시간 순서에 따라 정렬된 수요통계벡터열을 생성하는 데이터처리부와, 미리 학습된 예측모델을 이용하여 상기 수요통계벡터열에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출하는 예측부를 포함한다. The device for predicting demand according to a preferred embodiment of the present invention for achieving the above object collects the demand for parts for each unit period and generates a plurality of demand statistical vectors each representing the demand for parts for each unit period. and a data processing unit generating a demand statistics vector column in which a plurality of generated demand statistics vectors are arranged in chronological order, and performing an operation on the demand statistics vector column using a pre-learned prediction model. It includes a prediction unit for deriving a demand forecast vector for predicting the demand for parts.

상기 예측부는 수요통계벡터열 상기 예측모델에 입력하고, 상기 예측모델이 상기 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 상기 수요예측벡터를 생성하면, 상기 수요예측벡터에 따라 상기 소정의 기간 이후의 상기 부품의 수요량을 예측하는 것을 특징으로 한다. The prediction unit inputs a demand statistics vector sequence to the prediction model, and when the prediction model generates the demand prediction vector by performing a plurality of calculations to which a plurality of inter-layer weights are applied to the demand statistics vector column, the demand prediction vector It is characterized in that the amount of demand for the part after the predetermined period is predicted according to.

상기 예측모델은 수요통계벡터열로부터 시간 순서에 따른 수요량의 변동의 특징을 나타내는 복수의 은닉 상태를 검출하는 상태검출망과, 상기 복수의 은닉 상태에 대해 적어도 하나의 계층의 학습된 가중치가 적용되는 연산을 통해 상기 수요예측벡터를 산출하는 예측망을 포함한다. The prediction model includes a state detection network that detects a plurality of hidden states representing characteristics of demand quantity fluctuations in time order from a demand statistics vector sequence, and a learned weight of at least one layer is applied to the plurality of hidden states and a prediction network that calculates the demand prediction vector through operation.

상기 상태검출망은 순서를 가지는 복수의 상태저장모듈을 포함하며, 상기 복수의 상태저장모듈 각각은 상기 상태저장모듈 각각에 대응하는 순서에 따른 수요통계벡터를 입력받고, 입력된 수요통계벡터에 대한 연산을 통해 셀 상태 및 은닉 상태를 포함하는 상태 정보를 산출한 후, 다음 순서의 상태저장모듈에 상태 정보를 전달하며, 상기 은닉 상태를 출력한다. The state detection network includes a plurality of state storage modules having an order, each of the plurality of state storage modules receives a demand statistic vector according to an order corresponding to each state storage module, and determines the input demand statistic vector. After calculating the state information including the cell state and the hidden state through operation, the state information is transferred to the next state storage module, and the hidden state is output.

상기 상태저장모듈은 이전 상태저장모듈의 셀 상태를 현 상태저장모듈에서 유지할지 여부를 선택하기 위한 선택값을 산출하는 망각계층과, 현 상태저장모듈의 셀 상태를 갱신하기 위한 현재값 및 갱신 셀 상태를 산출하는 생성계층과, 현 상태저장모듈의 셀 상태를 산출하여 전달하는 전달계층과, 현 상태저장모듈의 은닉 상태를 산출하는 출력계층을 포함한다. The state storage module includes a forget layer for calculating a selection value for selecting whether or not to maintain the cell state of the previous state storage module in the current state storage module, and a current value and an update cell for updating the cell state of the current state storage module. It includes a creation layer that calculates the state, a delivery layer that calculates and delivers the cell state of the current state storage module, and an output layer that calculates the hidden state of the current state storage module.

보다 구체적으로, 상기 상태저장모듈은 현 상태저장모듈에 대응하는 수요통계벡터 및 이전 상태저장모듈의 은닉 상태를 입력받고, 선택가중치가 적용된 활성화함수에 의한 연산을 통해 선택값을 산출하는 망각계층과, 현 상태저장모듈에 대응하는 수요통계벡터 및 이전 상태저장모듈의 은닉 상태를 입력받고, 입력가중치가 적용된 활성화함수에 의한 연산을 통해 현재값을 산출하고, 현 상태저장모듈에 대응하는 수요통계벡터 및 이전 상태저장모듈의 은닉 상태를 입력받고, 상태가중치가 적용된 활성화함수에 의한 연산을 통해 갱신 셀 상태를 산출하는 생성계층과, 이전 상태저장모듈의 셀 상태에 상기 선택값를 곱하여 이전 상태저장모듈의 셀 상태를 소거하거나 유지하고, 소거되거나 유지된 이전 상태저장모듈의 셀 상태에 상기 현재값과 상기 갱신 셀 상태를 곱한값을 더하여 현재 상태저장모듈의 셀 상태를 생성하는 전달계층과, 현 상태저장모듈에 대응하는 수요통계벡터 및 이전 상태저장모듈의 은닉 상태를 입력받고, 연산가중치가 적용된 활성화함수에 의한 연산을 통해 연산값을 산출하고, 현 상태저장모듈의 셀 상태에 활성화함수를 적용하고, 상기 연산값을 곱하여 현 상태저장모듈의 은닉 상태를 산출하는 출력계층을 포함한다. More specifically, the state storage module receives the demand statistics vector corresponding to the current state storage module and the hidden state of the previous state storage module, and a forgetting layer that calculates a selection value through an operation by an activation function to which a selection weight is applied. , The demand statistics vector corresponding to the current state storage module and the hidden state of the previous state storage module are input, the current value is calculated through operation by the activation function to which the input weight is applied, and the demand statistics vector corresponding to the current state storage module and a generation layer that receives the hidden state of the previous state storage module and calculates an updated cell state through an operation using an activation function to which a state weight is applied, and multiplies the cell state of the previous state storage module by the selected value to obtain the previous state storage module. a transfer layer that erases or maintains a cell state and generates a cell state of the current state storage module by adding a value obtained by multiplying the current value and the updated cell state to a cell state of a previous state storage module that has been erased or maintained; The demand statistics vector corresponding to the module and the hidden state of the previous state storage module are input, the operation value is calculated through the operation by the activation function to which the operation weight is applied, and the activation function is applied to the cell state of the current state storage module, and an output layer for calculating the hidden state of the current state storage module by multiplying the operation value.

상기 망각계층은 수학식

Figure 112022016700114-pat00001
에 따른 연산을 통해 선택값을 산출하고, 상기
Figure 112022016700114-pat00002
는 선택값이고, 상기
Figure 112022016700114-pat00003
는 활성화함수이고, 상기
Figure 112022016700114-pat00004
는 선택가중치이고, 상기
Figure 112022016700114-pat00005
는 이전 상태저장모듈의 은닉 상태이고, 상기
Figure 112022016700114-pat00006
는 현 상태저장모듈에 대응하는 수요통계벡터이고, 상기
Figure 112022016700114-pat00007
는 선택값에 적용되는 임계치인 것을 특징으로 한다. The forgetting layer is expressed by Equation
Figure 112022016700114-pat00001
Calculate the selection value through the operation according to,
Figure 112022016700114-pat00002
is an optional value, and
Figure 112022016700114-pat00003
is an activation function, and the
Figure 112022016700114-pat00004
is the selection weight, and the
Figure 112022016700114-pat00005
is the hidden state of the previous state storage module, and
Figure 112022016700114-pat00006
Is a demand statistics vector corresponding to the current state storage module,
Figure 112022016700114-pat00007
is a threshold value applied to the selected value.

상기 생성계층은 수학식

Figure 112022016700114-pat00008
에 따라 현재값을 산출하고, 수학식
Figure 112022016700114-pat00009
에 따라 갱신 셀 상태를 산출하고, 상기
Figure 112022016700114-pat00010
는 이전 상태저장모듈의 은닉 상태이고, 상기
Figure 112022016700114-pat00011
는 현 상태저장모듈에 대응하는 수요통계벡터이고, 상기
Figure 112022016700114-pat00012
는 현재값이고, 상기
Figure 112022016700114-pat00013
는 활성화함수이고, 상기
Figure 112022016700114-pat00014
는 입력가중치이고, 상기
Figure 112022016700114-pat00015
는 임계치이고, 상기
Figure 112022016700114-pat00016
는 갱신 셀 상태이고, 상기
Figure 112022016700114-pat00017
는 활성화함수이고, 상기
Figure 112022016700114-pat00018
는 갱신가중치이고, 상기
Figure 112022016700114-pat00019
는 임계치인 것을 특징으로 한다. The generation layer is Equation
Figure 112022016700114-pat00008
Calculate the current value according to the equation
Figure 112022016700114-pat00009
Calculate the update cell state according to,
Figure 112022016700114-pat00010
is the hidden state of the previous state storage module, and
Figure 112022016700114-pat00011
Is a demand statistics vector corresponding to the current state storage module,
Figure 112022016700114-pat00012
is the current value, and
Figure 112022016700114-pat00013
is an activation function, and the
Figure 112022016700114-pat00014
is the input weight, and
Figure 112022016700114-pat00015
is a threshold value, and
Figure 112022016700114-pat00016
is the update cell state, and
Figure 112022016700114-pat00017
is an activation function, and the
Figure 112022016700114-pat00018
is an update weight, and
Figure 112022016700114-pat00019
is characterized in that it is a critical value.

상기 전달계층은 수학식

Figure 112022016700114-pat00020
에 따라 현재 상태저장모듈의 셀 상태를 생성하고, 상기
Figure 112022016700114-pat00021
는 현 상태저장모듈의 셀 상태이고, 상기
Figure 112022016700114-pat00022
는 선택값이고, 상기
Figure 112022016700114-pat00023
는 이전 상태저장모듈의 셀 상태이고, 상기
Figure 112022016700114-pat00024
는 현재값이고, 상기
Figure 112022016700114-pat00025
는 갱신 셀 상태인 것을 특징으로 한다. The delivery layer is expressed by Equation
Figure 112022016700114-pat00020
According to, the cell state of the current state storage module is generated, and the
Figure 112022016700114-pat00021
is the cell state of the current state storage module,
Figure 112022016700114-pat00022
is an optional value, and
Figure 112022016700114-pat00023
is the cell state of the previous state storage module, and
Figure 112022016700114-pat00024
is the current value, and
Figure 112022016700114-pat00025
is an update cell state.

상기 출력계층은 수학식

Figure 112022016700114-pat00026
에 따라 연산값을 산출하고, 수학식
Figure 112022016700114-pat00027
에 따라 현 상태저장모듈의 은닉 상태를 산출하며, 상기
Figure 112022016700114-pat00028
는 연산값이고, 상기
Figure 112022016700114-pat00029
는 활성화함수이고, 상기
Figure 112022016700114-pat00030
는 연산가중치이고, 상기
Figure 112022016700114-pat00031
는 이전 상태저장모듈의 은닉 상태이고, 상기
Figure 112022016700114-pat00032
는 현 상태저장모듈에 대응하는 수요통계벡터이고, 상기
Figure 112022016700114-pat00033
는 임계치이고, 상기
Figure 112022016700114-pat00034
는 현 상태저장모듈의 은닉 상태이고, 상기
Figure 112022016700114-pat00035
는 활성화함수이고, 상기
Figure 112022016700114-pat00036
는 현 상태저장모듈의 셀 상태인 것을 특징으로 한다. The output layer is expressed by Equation
Figure 112022016700114-pat00026
Calculate the operation value according to the equation
Figure 112022016700114-pat00027
Calculate the hidden state of the current state storage module according to
Figure 112022016700114-pat00028
is an operation value, and the
Figure 112022016700114-pat00029
is an activation function, and the
Figure 112022016700114-pat00030
is the computational weight, and the
Figure 112022016700114-pat00031
is the hidden state of the previous state storage module, and
Figure 112022016700114-pat00032
Is a demand statistics vector corresponding to the current state storage module,
Figure 112022016700114-pat00033
is a threshold value, and
Figure 112022016700114-pat00034
is the hidden state of the current state storage module, and
Figure 112022016700114-pat00035
is an activation function, and the
Figure 112022016700114-pat00036
is the cell state of the current state storage module.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 수요를 예측하기 위한 방법은 데이터처리부가 부품의 수요를 단위 기간 별로 수집하여 각각이 단위 기간 별 부품의 수요량을 나타내는 복수의 수요통계벡터를 생성하고, 생성된 복수의 수요통계벡터가 시간 순서에 따라 정렬된 수요통계벡터열을 생성하는 단계와, 예측부가 미리 학습된 예측모델을 이용하여 상기 수요통계벡터열에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출하는 단계를 포함한다. The method for predicting demand according to a preferred embodiment of the present invention to achieve the above object is a plurality of demand statistics in which the data processing unit collects the demand for parts by unit period and each represents the demand for parts by unit period. Generating a vector and generating a demand statistics vector column in which a plurality of generated demand statistics vectors are arranged in chronological order; and a predictor performs a predetermined operation on the demand statistics vector column using a pre-learned prediction model. and deriving a demand prediction vector for estimating the demand amount of the parts after the period.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 수요예측 모델을 생성하기 위한 방법은 학습부가 설정되는 드롭아웃 비율에 따라 예측모델의 복수의 노드 중 랜덤으로 선택된 노드를 소거하여 예측모델을 구성하는 구성 단계와, 상기 학습부가 구성된 예측모델을 학습시키는 학습 단계와, 상기 학습부가 학습이 완료된 예측모델을 평가하는 평가 단계와, 상기 학습부가 상기 정확도가 수렴하는지 여부를 판별하는 판별 단계와, 상기 판별 결과, 상기 정확도가 수렴하지 않으면, 상기 학습부가 드롭아웃 비율을 재설정하고, 재설정된 드롭아웃 비율에 따라 예측모델의 복수의 노드 중 랜덤으로 선택된 노드를 소거하여 예측모델을 재구성한 후, 상기 학습 단계, 상기 평가 단계 및 상기 판별 단계를 반복하는 단계를 포함한다. A method for generating a demand forecasting model according to a preferred embodiment of the present invention for achieving the above object is predicted by eliminating randomly selected nodes from among a plurality of nodes of the predictive model according to the dropout ratio set by the learning unit. A configuration step of constructing a model; a learning step of learning the predicted model configured by the learning unit; an evaluation step of evaluating the predicted model for which the learning unit has completed learning; and a determination step of determining whether the accuracy converges by the learning unit. And, as a result of the determination, if the accuracy does not converge, the learning unit resets the dropout ratio and reconstructs the prediction model by erasing randomly selected nodes from among a plurality of nodes of the prediction model according to the reset dropout ratio. , repeating the learning step, the evaluation step, and the determination step.

상기 방법은 상기 판별 결과, 상기 정확도가 수렴하면, 학습이 완료된 복수의 예측모델 중 정확도가 가장 높은 드롭아웃 비율에 따라 구성되어 학습된 예측모델을 최종적으로 선택하는 단계를 더 포함한다. The method further includes, when the accuracy converges as a result of the determination, finally selecting a predicted model configured and learned according to a dropout ratio having the highest accuracy among a plurality of trained predictive models.

상기 학습 단계는 상기 학습부가 상기 예측모델에 복수의 학습용 수요통계벡터가 시간 순서에 따라 정렬된 학습용 수요통계벡터열을 입력하는 단계와, 상기 예측모델이 학습용 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 연산을 수행하여 학습용 수요예측벡터를 도출하는 단계와, 상기 학습부가 비용함수를 통해 학습용 수요예측벡터와 학습용 수요통계벡터열에 대응하는 목적값과의 차이를 나타내는 생성손실을 산출하는 단계와, 상기 학습부가 상기 생성손실이 최소가 되도록 상기 예측모델의 학습되지 않은 파라미터를 수정하는 최적화를 수행하는 단계를 포함한다. In the learning step, the learning unit inputs, to the prediction model, a demand statistic vector sequence for learning in which a plurality of demand statistic vectors for learning are arranged in chronological order; Deriving a demand forecast vector for learning by performing an operation to which is applied, and the learning unit calculating a generation loss representing the difference between the demand forecast vector for learning and a target value corresponding to the demand statistics vector sequence for learning through a cost function; , performing optimization by the learning unit to modify unlearned parameters of the prediction model so that the generation loss is minimized.

상기 생성손실을 산출하는 단계는 수학식

Figure 112022016700114-pat00037
에 따라 상기 생성손실을 산출하며, 상기 LR은 비용함수이고, 상기 L은 손실함수이고, 상기
Figure 112022016700114-pat00038
는 목적값이고, 상기
Figure 112022016700114-pat00039
는 학습용 수요예측벡터이고, 상기
Figure 112022016700114-pat00040
는 학습률이고, 상기
Figure 112022016700114-pat00041
는 가중치인 것을 특징으로 한다. The step of calculating the generation loss is Equation
Figure 112022016700114-pat00037
The generation loss is calculated according to, wherein the LR is a cost function, the L is a loss function, and the
Figure 112022016700114-pat00038
is the target value, and the
Figure 112022016700114-pat00039
Is a demand forecast vector for learning, and
Figure 112022016700114-pat00040
is the learning rate, and
Figure 112022016700114-pat00041
is characterized in that it is a weight.

상기 최적화를 수행하는 단계는 상기 학습부가 생성손실이 최소이면서 가중치들의 절대값의 합이 최소가 되도록 예측모델의 학습되지 않은 파라미터를 수정하는 것을 특징으로 한다. The performing of the optimization may be characterized in that the learning unit modifies the unlearned parameters of the predictive model so that the generation loss is minimized and the sum of the absolute values of the weights is minimized.

상기 생성손실을 산출하는 단계는 수학식

Figure 112022016700114-pat00042
에 따라 상기 생성손실을 산출하며, 상기 LR은 비용함수이고, 상기 L은 손실함수이고, 상기
Figure 112022016700114-pat00043
는 목적값이고, 상기
Figure 112022016700114-pat00044
는 학습용 수요예측벡터이고, 상기
Figure 112022016700114-pat00045
는 학습률이고, 상기
Figure 112022016700114-pat00046
는 가중치인 것을 특징으로 한다. The step of calculating the generation loss is Equation
Figure 112022016700114-pat00042
The generation loss is calculated according to, wherein the LR is a cost function, the L is a loss function, and the
Figure 112022016700114-pat00043
is the target value, and the
Figure 112022016700114-pat00044
Is a demand forecast vector for learning, and
Figure 112022016700114-pat00045
is the learning rate, and
Figure 112022016700114-pat00046
is characterized in that it is a weight.

상기 최적화를 수행하는 단계는 상기 학습부가 생성손실이 최소이면서 가중치들의 제곱합이 최소가 되도록 예측모델의 학습되지 않은 파라미터를 수정하는 것을 특징으로 한다. The performing of the optimization may be characterized in that the learning unit modifies unlearned parameters of the predictive model so that a generation loss is minimized and a sum of squares of weights is minimized.

상기 학습 단계는 상기 회적화를 수행하는 단계 후, 상기 학습부가 상기 예측모델에 복수의 검증용 수요통계벡터가 시간 순서에 따라 정렬된 검증용 수요통계벡터열을 입력하는 단계와, 상기 예측모델이 상기 검증용 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 연산을 수행하여 검증용 수요예측벡터를 도출하는 단계와, 상기 학습부가 손실함수를 통해 검증용 수요예측벡터와 상기 검증용 수요통계벡터열에 대응하는 목적값과의 차이를 나타내는 검증손실을 산출하는 단계와, 상기 학습부가 상기 검증손실이 기 설정된 기준치 미만이면, 상기 예측모델에 대한 학습을 완료하는 단계를 더 포함한다. In the learning step, after performing the regression, the learning unit inputs a demand statistic vector sequence for verification in which a plurality of demand statistic vectors for verification are arranged in chronological order to the prediction model; Deriving a demand forecast vector for verification by performing an operation to which a weight between a plurality of layers is applied to the demand statistic vector sequence for verification; The method may further include calculating a verification loss representing a difference from a target value corresponding to a column, and completing learning of the predictive model by the learning unit when the verification loss is less than a predetermined reference value.

상기 방법은 상기 구성 단계 전, 상기 학습부가 학습용 데이터 및 검증용 데이터를 포함하는 복수의 훈련 데이터를 마련하는 단계와, 상기 학습부가 상기 훈련 데이터에 대한 희소성 계수를 산출하는 단계를 더 포함한다. 여기서, 상기 희소성 계수는 대상 부품의 수요가 완성품 전체 수요에서 차지하는 누적 비율인 부품 곡선과, 완성품을 구성하는 전체 부품의 수요의 누적 비율인 균등 곡선 사이의 면적 비율에 따라 산출되는 것을 특징으로 한다. The method further includes preparing, by the learning unit, a plurality of training data including data for learning and data for verification, before the configuring step, and calculating, by the learning unit, a sparsity coefficient for the training data. Here, the scarcity coefficient is characterized in that it is calculated according to the area ratio between a part curve, which is the cumulative ratio of demand for the target part to total demand for finished products, and an equal curve, which is the cumulative ratio of demand for all parts constituting the finished product.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 수요예측 모델을 생성하기 위한 장치는 설정되는 드롭아웃 비율에 따라 예측모델의 복수의 노드 중 랜덤으로 선택된 노드를 소거하여 예측모델을 구성한 후, 구성된 예측모델을 학습시키는 학습 프로세스, 학습이 완료된 예측모델을 평가하는 평가 프로세스, 상기 정확도가 수렴하는지 여부를 판별하는 판별 프로세스를 수행하고, 상기 판별 결과, 상기 정확도가 수렴하지 않으면, 드롭아웃 비율을 재설정하고, 재설정된 드롭아웃 비율에 따라 예측모델의 복수의 노드 중 랜덤으로 선택된 노드를 소거하여 예측모델을 재구성한 후, 상기 학습 프로세스, 상기 평가 프로세스, 및 상기 판별 프로세스를 반복하는 학습부를 포함한다. An apparatus for generating a demand forecasting model according to a preferred embodiment of the present invention for achieving the above object is a predictive model by eliminating randomly selected nodes from among a plurality of nodes of the predictive model according to a set dropout ratio. After the configuration, a learning process of learning the configured prediction model, an evaluation process of evaluating the learned prediction model, and a determination process of determining whether the accuracy converges, and if the accuracy does not converge as a result of the determination, drop After resetting the out ratio, reconstructing the prediction model by eliminating randomly selected nodes among a plurality of nodes of the prediction model according to the reset dropout ratio, and then repeating the learning process, the evaluation process, and the discrimination process. includes wealth

본 발명의 실시예에 따르면, 기간 별 특징을 검출하고, 이를 기초로 부품의 수요를 예측함으로써, 보다 정확하게 부품의 수요를 예측할 수 있다. According to an embodiment of the present invention, the demand for parts can be predicted more accurately by detecting the characteristics of each period and predicting the demand for parts based on the detected characteristics.

도 1은 본 발명의 실시예에 따른 희소성 이벤트 기반의 수요를 예측하기 위한 장치의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 예측모델의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 상태저장모듈의 구성 및 연산을 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 예측망의 구성 및 연산을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 예측망의 노드의 구성 및 연산을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 수요 예측을 위한 예측모델을 학습시키기 위한 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 부품의 희소성 계수를 도출하기 위한 그래프이다.
도 8은 본 발명의 실시예에 따른 드롭아웃 비율에 따라 구성되는 예측모델을 설명하기 위한 도면이다.
도 9는 본 발명의 실시예에 따른 예측모델의 정확도를 최적화하기 위한 최적화 곡선을 설명하기 위한 그래프이다.
도 10은 본 발명의 실시예에 따른 희소성 이벤트 기반의 수요를 예측하기 위한 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 실시예에 따른 컴퓨팅 장치를 나타내는 도면이다.
1 is a diagram for explaining the configuration of an apparatus for predicting demand based on a scarcity event according to an embodiment of the present invention.
2 is a diagram for explaining the configuration of a predictive model according to an embodiment of the present invention.
3 is a diagram for explaining configuration and operation of a state storage module according to an embodiment of the present invention.
4 is a diagram for explaining the configuration and operation of a prediction network according to an embodiment of the present invention.
5 is a diagram for explaining the configuration and operation of nodes of a prediction network according to an embodiment of the present invention.
6 is a diagram for explaining a method for learning a prediction model for demand forecasting according to an embodiment of the present invention.
7 is a graph for deriving a sparsity coefficient of a part according to an embodiment of the present invention.
8 is a diagram for explaining a predictive model configured according to a dropout ratio according to an embodiment of the present invention.
9 is a graph for explaining an optimization curve for optimizing the accuracy of a predictive model according to an embodiment of the present invention.
10 is a flowchart illustrating a method for predicting demand based on a scarcity event according to an embodiment of the present invention.
11 is a diagram illustrating a computing device according to an embodiment of the present invention.

본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. Prior to the detailed description of the present invention, the terms or words used in this specification and claims described below should not be construed as being limited to a common or dictionary meaning, and the inventors should use their own invention in the best way. It should be interpreted as a meaning and concept corresponding to the technical idea of the present invention based on the principle that it can be properly defined as a concept of a term for explanation. Therefore, the embodiments described in this specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all of the technical ideas of the present invention, so various equivalents that can replace them at the time of the present application. It should be understood that there may be water and variations.

본 발명의 실시예의 설명 및 특허 청구 범위에서, "네트워크"는 컴퓨터 시스템들 및/또는 모듈들 간의 전자 데이터를 전송할 수 있게 하는 하나 이상의 데이터 링크로서 정의된다. 정보가 네트워크 또는 동종 혹은 이종의 통신 접속, 즉, 유선, 무선, 또는 유선 또는 무선의 조합인 통신 접속을 통하여 컴퓨터 시스템에 전송되거나 제공될 때, 이 접속은 컴퓨터-판독가능매체로서 이해될 수 있다. 컴퓨터 판독가능 명령어는, 예를 들면, 범용 컴퓨터 시스템 또는 특수 목적 컴퓨터 시스템이 특정 기능 또는 기능의 그룹을 수행하도록 하는 명령어 및 데이터를 포함한다. 컴퓨터 실행가능 명령어는, 예를 들면, 어셈블리어, 또는 심지어는 소스코드와 같은 이진, 중간 포맷 명령어일 수 있다. 더욱이, 본 발명은 퍼스널 컴퓨터, 랩톱 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, 휴대폰, 이동통신단말기, 스마트폰, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서, 상기 컴퓨터 시스템들을 대상으로 적용될 수 있다. In the description and claims of embodiments of the present invention, a "network" is defined as one or more data links that enable the transfer of electronic data between computer systems and/or modules. When information is transmitted or provided to a computer system over a network or over a communication connection of any kind or kind, i.e., wired, wireless, or a combination of wired and wireless, the connection may be understood as a computer-readable medium. . Computer readable instructions include, for example, instructions and data that cause a general purpose or special purpose computer system to perform a particular function or group of functions. Computer executable instructions may be, for example, binary, intermediate format instructions, such as assembly language, or even source code. Moreover, the present invention relates to personal computers, laptop computers, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile telephones, cellular phones, and mobile devices. In a network computing environment having various types of computer system configurations including communication terminals, smart phones, PDAs, pagers, etc., the above computer systems may be applied.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. At this time, it should be noted that the same components in the accompanying drawings are indicated by the same reference numerals as much as possible. In addition, detailed descriptions of well-known functions and configurations that may obscure the gist of the present invention will be omitted. For the same reason, some components in the accompanying drawings are exaggerated, omitted, or schematically illustrated, and the size of each component does not entirely reflect the actual size.

먼저, 본 발명의 실시예에 따른 희소성 이벤트 기반의 수요를 예측하기 위한 장치에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 희소성 이벤트 기반의 수요를 예측하기 위한 장치의 구성을 설명하기 위한 도면이다. 도 2는 본 발명의 실시예에 따른 예측모델의 구성을 설명하기 위한 도면이다. 도 3은 본 발명의 실시예에 따른 상태저장모듈의 구성 및 연산을 설명하기 위한 도면이다. 도 4는 본 발명의 실시예에 따른 예측망의 구성 및 연산을 설명하기 위한 도면이다. 도 5는 본 발명의 실시예에 따른 예측망의 노드의 구성 및 연산을 설명하기 위한 도면이다. First, an apparatus for predicting demand based on a scarcity event according to an embodiment of the present invention will be described. 1 is a diagram for explaining the configuration of an apparatus for predicting demand based on a scarcity event according to an embodiment of the present invention. 2 is a diagram for explaining the configuration of a predictive model according to an embodiment of the present invention. 3 is a diagram for explaining configuration and operation of a state storage module according to an embodiment of the present invention. 4 is a diagram for explaining the configuration and operation of a prediction network according to an embodiment of the present invention. 5 is a diagram for explaining the configuration and operation of nodes of a prediction network according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 수요예측장치(10)는 학습부(100), 데이터처리부(200) 및 예측부(300)를 포함한다. Referring to FIG. 1 , a demand forecasting device 10 according to an embodiment of the present invention includes a learning unit 100, a data processing unit 200, and a prediction unit 300.

학습부(100)는 본 발명의 실시예에 따른 예측모델(PM)을 생성하기 위한 것이다. 예측모델(PM)은 단위 기간 별 부품의 수요량을 나타내는 복수의 수요통계벡터에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출하기 위한 것이다. 학습부(100)는 예측모델(PM)을 생성하면, 생성된 예측모델(PM)을 예측부(300)에 제공한다. The learning unit 100 is for generating a predictive model (PM) according to an embodiment of the present invention. The forecasting model (PM) is for deriving a demand forecasting vector for predicting the demand for parts after a predetermined period by calculating a plurality of demand statistical vectors representing the demand for parts for each unit period. When the learning unit 100 generates a prediction model (PM), it provides the generated prediction model (PM) to the prediction unit 300 .

데이터처리부(200)는 완성품을 구성하는 전체 부품 중 어느 하나의 부품에 대한 수요의 통계치를 수집한다. 여기서, 수요의 통계치는 수요가 발생한 단위 기간 및 수요량을 포함한다. 또한, 데이터처리부(200)는 수요의 통계치를 소정의 벡터공간에 사상(embedding)하여 복수의 수요통계벡터를 생성하고, 시간 순서에 따라 정렬된 복수의 수요통계벡터를 포함하는 수요통계벡터열을 생성한다. 여기서, 수요통계벡터는 단위 기간 별 부품의 수요량을 나타낸다. The data processing unit 200 collects statistics on the demand for any one part among all parts constituting the finished product. Here, the statistics of demand include a unit period in which the demand occurred and the amount of demand. In addition, the data processing unit 200 generates a plurality of demand statistics vectors by embedding demand statistics into a predetermined vector space, and generates a demand statistics vector column including a plurality of demand statistics vectors arranged in chronological order. generate Here, the demand statistic vector represents the demand for parts per unit period.

예측부(300)는 미리 학습된 예측모델(PM)을 이용하여 복수의 수요통계벡터를 포함하는 수요통계벡터열에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출한다. The prediction unit 300 derives a demand forecasting vector for predicting the demand for the part after a predetermined period through an operation on a demand statistics vector column including a plurality of demand statistics vectors using a pre-learned prediction model (PM). do.

도 2에 도시된 바와 같이, 예측모델(PM)은 심층신경망(DNN: Deep Neural Network)이며, 상태검출망(SN) 및 예측망(PN)을 포함한다. 상태검출망(SN)은 수요통계벡터열로부터 시간 순서에 따른 수요량의 변동의 특징을 나타내는 복수의 은닉 상태를 검출한다. 예측망(PN)은 복수의 은닉 상태에 대해 적어도 하나의 계층의 학습된 가중치가 적용되는 연산을 통해 수요예측벡터를 산출한다. As shown in FIG. 2, the prediction model (PM) is a deep neural network (DNN), and includes a state detection network (SN) and a prediction network (PN). The state detection network (SN) detects a plurality of hidden states representing the characteristics of the change in demand quantity according to the time order from the demand statistics vector sequence. The prediction network (PN) calculates a demand prediction vector through an operation in which learned weights of at least one layer are applied to a plurality of hidden states.

상태연산망(SN)은 순서를 가지는 복수의 상태저장모듈(Mt: M1~Mn)을 포함한다. 여기서, 상태연산망(SN)은 LSTM(Long Short-Term Memory models)이 될 수 있다. 예측망(PN)은 적어도 하나의 완전연결계층(Fully-connected Layer)를 포함한다. 여기서, 도 4에 도시된 바와 같이, 예측망(PN)은 단층퍼셉트론(SLP: Single Layer Perceptron), 다층퍼셉트론(MLP: Multi Layer Perceptron) 등과 같은 퍼셉트론 모델이 될 수 있다. The state operation network (SN) includes a plurality of orderly state storage modules (Mt: M1 to Mn). Here, the state operation network (SN) may be LSTM (Long Short-Term Memory models). The prediction network (PN) includes at least one fully-connected layer. Here, as shown in FIG. 4, the prediction network (PN) may be a perceptron model such as a single layer perceptron (SLP) or a multi layer perceptron (MLP).

상태검출망(SN)은 순서를 가지는 복수의 상태저장모듈(Mt: M1~Mn)을 포함한다. 복수의 상태저장모듈(Mt: M1~Mn) 각각은 상태저장모듈(Mt: M1~Mn) 각각에 대응하는 순서에 따른 수요통계벡터(x: x1~xn)를 입력받는다. 복수의 상태저장모듈(Mt: M1~Mn) 각각은 연산을 통해 셀 상태(Ct) 및 은닉 상태(ht)를 포함하는 상태 정보를 산출한 후, 다음 순서의 상태저장모듈(Mt+1)에 상태 정보를 전달하며, 상태 정보 중 은닉 상태(ht)를 출력한다. The state detection network (SN) includes a plurality of orderly state storage modules (Mt: M1 to Mn). Each of the plurality of state storage modules (Mt: M1 to Mn) receives demand statistic vectors (x: x1 to xn) according to the order corresponding to each of the state storage modules (Mt: M1 to Mn). Each of the plurality of state storage modules (Mt: M1 to Mn) calculates state information including cell state (Ct) and hidden state (ht) through operation, and then to the next state storage module (Mt+1). It transmits state information and outputs the hidden state (ht) among state information.

도 3에 도시된 바와 같이, 상태저장모듈(Mt)은 복수의 계층을 포함한다. 즉, 상태저장모듈(Mt)은 전달계층(DL), 망각계층(FGL), 생성계층(IGL) 및 출력계층(OGL)을 포함한다. 이러한 복수의 계층은 가중치가 부여되는 연산을 수행한다. As shown in FIG. 3, the state storage module Mt includes a plurality of layers. That is, the state storage module (Mt) includes a transfer layer (DL), a forget layer (FGL), a creation layer (IGL), and an output layer (OGL). These multiple layers perform weighted computations.

망각계층(FGL)은 이전 상태저장모듈(Mt-1)의 셀 상태(Ct-1)를 현 상태저장모듈(Mt)에서 유지할지 여부를 선택하기 위한 선택값(ft)을 산출한다. 이때, 망각계층(FGL)은 현 상태저장모듈(Mt)에 대응하는 수요통계벡터(xt) 및 이전 상태저장모듈(Mt-1)의 은닉 상태(ht-1)를 입력 받고, 선택가중치(Wf)가 적용된 활성화함수에 의한 연산을 통해 선택값(ft)을 산출한다. 즉, 망각계층(FGL)은 다음의 수학식 1에 따른 연산을 통해 선택값(ft)을 산출한다. The forgetting layer (FGL) calculates a selection value (ft) for selecting whether to retain the cell state (Ct-1) of the previous state storage module (Mt-1) in the current state storage module (Mt). At this time, the forgetting layer (FGL) receives the demand statistics vector (xt) corresponding to the current state storage module (Mt) and the hidden state (ht-1) of the previous state storage module (Mt-1), and selects the selection weight (Wf ) is applied, the selection value (ft) is calculated. That is, the forgetting layer FGL calculates the selection value ft through an operation according to Equation 1 below.

Figure 112022016700114-pat00047
Figure 112022016700114-pat00047

여기서,

Figure 112022016700114-pat00048
는 선택값을 나타낸다.
Figure 112022016700114-pat00049
는 선택값에 적용되는 활성화함수를 나타낸다. 또한,
Figure 112022016700114-pat00050
는 선택가중치이다. 그리고
Figure 112022016700114-pat00051
는 이전 상태저장모듈(Mt-1)의 은닉 상태를 나타내고,
Figure 112022016700114-pat00052
는 현 상태저장모듈(Mt)에 대응하는 수요통계벡터를 나타낸다.
Figure 112022016700114-pat00053
는 선택값에 적용되는 임계치를 의미한다. here,
Figure 112022016700114-pat00048
represents an optional value.
Figure 112022016700114-pat00049
represents the activation function applied to the selected value. also,
Figure 112022016700114-pat00050
is the selection weight. and
Figure 112022016700114-pat00051
Represents the hidden state of the previous state storage module (Mt-1),
Figure 112022016700114-pat00052
Denotes a demand statistics vector corresponding to the current state storage module (Mt).
Figure 112022016700114-pat00053
denotes a threshold applied to the selected value.

생성계층(IGL)은 현 상태저장모듈(Mt)의 셀 상태를 갱신하기 위한 현재값(it) 및 갱신 셀 상태(

Figure 112022016700114-pat00054
)를 산출한다. 이때, 생성계층(IGL)은 현 상태저장모듈(Mt)에 대응하는 수요통계벡터(xt) 및 이전 상태저장모듈(Mt-1)의 은닉 상태(ht-1)를 입력받고, 입력가중치(Wi)가 적용된 활성화함수에 의한 연산을 통해 현재값(it)을 산출한다. 또한, 생성계층(IGL)은 현 상태저장모듈(Mt)에 대응하는 수요통계벡터(xt) 및 이전 상태저장모듈(Mt-1)의 은닉 상태(ht-1)를 입력받고, 상태가중치(Wc)가 적용된 활성화함수에 의한 연산을 통해 갱신 셀 상태(
Figure 112022016700114-pat00055
)를 산출한다. 즉, 생성계층(IGL)은 다음의 수학식 2에 따른 연산을 통해 현재값(it)을 산출하고, 다음의 수학식 3에 따른 연산을 통해 갱신 셀 상태(
Figure 112022016700114-pat00056
)를 산출한다. The generation layer (IGL) includes a current value (it) for updating the cell state of the current state storage module (Mt) and an updated cell state (
Figure 112022016700114-pat00054
) is calculated. At this time, the generation layer (IGL) receives the demand statistic vector (xt) corresponding to the current state storage module (Mt) and the hidden state (ht-1) of the previous state storage module (Mt-1), input weight (Wi ) is applied to calculate the current value (it). In addition, the creation layer (IGL) receives the demand statistic vector (xt) corresponding to the current state storage module (Mt) and the hidden state (ht-1) of the previous state storage module (Mt-1), and obtains the state weight (Wc) ) is applied through the operation by the activation function to update the cell state (
Figure 112022016700114-pat00055
) is calculated. That is, the generation layer (IGL) calculates the current value (it) through an operation according to Equation 2 below, and updates the cell state (through an operation according to Equation 3 below)
Figure 112022016700114-pat00056
) is calculated.

Figure 112022016700114-pat00057
Figure 112022016700114-pat00057

여기서,

Figure 112022016700114-pat00058
는 현재값을 나타낸다.
Figure 112022016700114-pat00059
는 현재값에 적용되는 활성화함수를 나타낸다. 또한,
Figure 112022016700114-pat00060
는 입력가중치이다. 그리고
Figure 112022016700114-pat00061
는 이전 상태저장모듈(Mt-1)의 은닉 상태를 나타내고,
Figure 112022016700114-pat00062
는 현 상태저장모듈(Mt)에 대응하는 수요통계벡터를 나타낸다.
Figure 112022016700114-pat00063
는 현재값에 적용되는 임계치를 의미한다. here,
Figure 112022016700114-pat00058
represents the current value.
Figure 112022016700114-pat00059
represents the activation function applied to the current value. also,
Figure 112022016700114-pat00060
is the input weight. and
Figure 112022016700114-pat00061
Represents the hidden state of the previous state storage module (Mt-1),
Figure 112022016700114-pat00062
Denotes a demand statistics vector corresponding to the current state storage module (Mt).
Figure 112022016700114-pat00063
denotes a threshold applied to the current value.

Figure 112022016700114-pat00064
Figure 112022016700114-pat00064

여기서,

Figure 112022016700114-pat00065
는 갱신 셀 상태를 나타낸다.
Figure 112022016700114-pat00066
는 갱신 셀 상태에 적용되는 활성화함수를 나타낸다. 또한,
Figure 112022016700114-pat00067
는 갱신가중치이다. 그리고
Figure 112022016700114-pat00068
는 이전 상태저장모듈(Mt-1)의 은닉 상태를 나타내고,
Figure 112022016700114-pat00069
는 현 상태저장모듈(Mt)에 대응하는 수요통계벡터를 나타낸다.
Figure 112022016700114-pat00070
는 갱신 셀 상태에 적용되는 임계치를 의미한다. here,
Figure 112022016700114-pat00065
represents the updated cell state.
Figure 112022016700114-pat00066
represents an activation function applied to the updated cell state. also,
Figure 112022016700114-pat00067
is the update weight. and
Figure 112022016700114-pat00068
Represents the hidden state of the previous state storage module (Mt-1),
Figure 112022016700114-pat00069
Denotes a demand statistics vector corresponding to the current state storage module (Mt).
Figure 112022016700114-pat00070
Means a threshold applied to the updated cell state.

전달계층(DL)은 현 상태저장모듈(Mt)의 셀 상태를 산출하기 위한 것이다. 산출된 현 상태저장모듈(Mt)의 셀 상태는 다음 상태저장모듈(Mt+1)에 제공된다. 이전 상태저장모듈(Mt-1)의 셀 상태(Ct-1)를 입력받고, 이전 상태저장모듈(Mt-1)의 셀 상태(Ct-1)에 망각계층(FGL)으로부터 입력되는 선택값(ft)를 곱하여 이전 상태저장모듈(Mt-1)의 셀 상태(Ct-1)를 소거하거나, 유지한다. 그런 다음, 전달계층(DL)은 소거되거나, 유지된 이전 상태저장모듈(Mt-1)의 셀 상태(Ct-1)에 현재값(it)과 갱신 셀 상태(

Figure 112022016700114-pat00071
)를 곱한값을 더하여 현재 상태저장모듈(Mt)의 셀 상태(Ct)를 생성한다. The delivery layer (DL) is for calculating the cell state of the current state storage module (Mt). The calculated cell state of the current state storage module (Mt) is provided to the next state storage module (Mt+1). The cell state (Ct-1) of the previous state storage module (Mt-1) is received, and the selection value (which is input from the forget layer (FGL) to the cell state (Ct-1) of the previous state storage module (Mt-1)) ft) to erase or maintain the cell state (Ct-1) of the previous state storage module (Mt-1). Then, the transfer layer (DL) stores the current value (it) and the updated cell state (
Figure 112022016700114-pat00071
) to generate the cell state Ct of the current state storage module Mt.

전달계층(DL)은 다음의 수학식 4에 따른 연산을 통해 현재 상태저장모듈(Mt)의 셀 상태(Ct), 즉, 현재의 셀 상태(Ct)를 산출한다. The delivery layer (DL) calculates the cell state (Ct) of the current state storage module (Mt), that is, the current cell state (Ct), through an operation according to Equation 4 below.

Figure 112022016700114-pat00072
Figure 112022016700114-pat00072

여기서,

Figure 112022016700114-pat00073
는 현재의 셀 상태(현 상태저장모듈의 셀 상태)를 나타낸다.
Figure 112022016700114-pat00074
는 선택값을 나타내며,
Figure 112022016700114-pat00075
는 이전의 셀 상태(이전 상태저장모듈의 셀 상태)를 나타낸다. 또한,
Figure 112022016700114-pat00076
는 현재값을 나타내고,
Figure 112022016700114-pat00077
는 갱신 셀 상태를 나타낸다. here,
Figure 112022016700114-pat00073
represents the current cell state (cell state of the current state storage module).
Figure 112022016700114-pat00074
represents a selection value,
Figure 112022016700114-pat00075
represents the previous cell state (cell state of the previous state storage module). also,
Figure 112022016700114-pat00076
represents the current value,
Figure 112022016700114-pat00077
represents the updated cell state.

출력계층(OGL)은 현 상태저장모듈(Mt)의 은닉 상태(ht)를 산출하기 위한 것이다. 산출된 현 상태저장모듈(Mt)의 은닉 상태(ht)는 다음 상태저장모듈(Mt+1)에 제공된다. 또한, 산출된 현 상태저장모듈(Mt)의 은닉 상태(ht)는 출력되어 예측망(PN)에 입력된다. 이때, 출력계층(OGL)은 현 상태저장모듈(Mt)에 대응하는 수요통계벡터(xt) 및 이전 상태저장모듈(Mt-1)의 은닉 상태(ht-1)를 입력받고, 연산가중치(Wo)가 적용된 활성화함수에 의한 연산을 통해 연산값(ot)을 산출한다. 그런 다음, 출력계층(OGL)은 현 상태저장모듈(Mt)의 셀 상태(Ct)에 활성화함수를 적용하고, 연산값(ot)을 곱하여 은닉 상태(ht)를 산출한다. 즉, 출력계층(OGL)은 다음의 수학식 5 및 수학식 6에 따른 연산을 통해 은닉 상태(ht)를 산출한다. The output layer OGL is for calculating the hidden state ht of the current state storage module Mt. The calculated hidden state (ht) of the current state storage module (Mt) is provided to the next state storage module (Mt+1). In addition, the calculated hidden state (ht) of the current state storage module (Mt) is output and input to the prediction network (PN). At this time, the output layer (OGL) receives the demand statistics vector (xt) corresponding to the current state storage module (Mt) and the hidden state (ht-1) of the previous state storage module (Mt-1), and calculates the operation weight (Wo ) is applied, the operation value (ot) is calculated through operation. Then, the output layer (OGL) applies the activation function to the cell state (Ct) of the current state storage module (Mt) and multiplies the operation value (ot) to calculate the hidden state (ht). That is, the output layer OGL calculates the hidden state ht through calculations according to Equations 5 and 6 below.

Figure 112022016700114-pat00078
Figure 112022016700114-pat00078

Figure 112022016700114-pat00079
Figure 112022016700114-pat00079

여기서,

Figure 112022016700114-pat00080
는 연산값을 나타낸다.
Figure 112022016700114-pat00081
는 연산값에 적용되는 활성화함수를 나타낸다. 또한,
Figure 112022016700114-pat00082
는 연산가중치이다. 그리고
Figure 112022016700114-pat00083
는 이전 상태저장모듈(Mt-1)의 은닉 상태를 나타내고,
Figure 112022016700114-pat00084
는 현 상태저장모듈(Mt)에 대응하는 수요통계벡터를 나타낸다.
Figure 112022016700114-pat00085
는 연산값에 적용되는 임계치를 의미한다.
Figure 112022016700114-pat00086
는 현 상태저장모듈(Mt)의 은닉 상태를 나타낸다.
Figure 112022016700114-pat00087
는 연산값에 적용되는 활성화함수를 나타낸다.
Figure 112022016700114-pat00088
는 현재의 셀 상태(현 상태저장모듈의 셀 상태)를 나타낸다. here,
Figure 112022016700114-pat00080
represents the calculated value.
Figure 112022016700114-pat00081
represents the activation function applied to the computed value. also,
Figure 112022016700114-pat00082
is the computational weight. and
Figure 112022016700114-pat00083
Represents the hidden state of the previous state storage module (Mt-1),
Figure 112022016700114-pat00084
Denotes a demand statistics vector corresponding to the current state storage module (Mt).
Figure 112022016700114-pat00085
denotes a threshold value applied to the calculated value.
Figure 112022016700114-pat00086
represents the hidden state of the current state storage module (Mt).
Figure 112022016700114-pat00087
represents the activation function applied to the computed value.
Figure 112022016700114-pat00088
represents the current cell state (cell state of the current state storage module).

도 4를 참조하면, 예측망(PN)은 하나 이상의 계층(IL, HL, OL)을 포함할 수 있다. 도 4에 도시된 일 실시예에 따르면, 예측망(PN)은 입력층(IL), 복수의 은닉 계층(HL: HL1 내지 HLk) 및 출력층(OL)을 포함한다. Referring to FIG. 4 , a prediction network (PN) may include one or more layers (IL, HL, and OL). According to an embodiment shown in FIG. 4, the prediction network (PN) includes an input layer (IL), a plurality of hidden layers (HL: HL1 to HLk), and an output layer (OL).

또한, 복수의 계층(IL, HL, OL) 각각은 복수의 노드를 포함한다. 예컨대, 입력층(IL)은 n개의 입력노드(i1 ~ in)를 포함하며, 출력층(OL)은 하나의 출력노드(P, N)를 포함할 수 있다. 또한, 은닉층(HL) 중 제1 은닉계층(HL1)은 a개의 노드(h11 ~ h1a)를 포함하고, 제2 은닉계층(HL2)은 b개의 노드(h21 ~ h2b)를 포함하고, 제k 은닉계층(HLk)은 c개의 노드(hk1 ~ hkc)를 포함할 수 있다. In addition, each of the plurality of layers IL, HL, and OL includes a plurality of nodes. For example, the input layer IL may include n input nodes i1 to in, and the output layer OL may include one output node P or N. In addition, among the hidden layers (HL), the first hidden layer (HL1) includes a number of nodes (h11 to h1a), the second hidden layer (HL2) includes b number of nodes (h21 to h2b), kth hidden The layer HLk may include c nodes hk1 to hkc.

복수의 계층의 복수의 노드 모두는 가중치 연산을 수행한다. 특히, 서로 다른 계층의 복수의 노드는 가중치(W: weight)를 가지는 채널(점선으로 표시)로 연결된다. 다른 말로, 어느 하나의 노드의 연산 결과는 가중치가 적용되어 다음 계층 노드의 입력이 된다. All of the plurality of nodes of the plurality of layers perform weight calculation. In particular, a plurality of nodes of different layers are connected by a channel (indicated by a dotted line) having a weight (W). In other words, the calculation result of one node is weighted and becomes the input of the next layer node.

한편, 도 5에 본 발명의 실시예에 따른 노드(Z)가 도시되었다. 이러한 노드(Z)는 예측망(PN)에 포함되는 어느 하나의 노드가 될 수 있다. 노드(Z)는 입력된 신호 x=[x1, x2, … , xn]에 가중치 w=[w1, w2, … , wn]를 적용한 후, 그 결과에 함수 F를 취한다. 여기서, 함수 F는 활성화 함수(activation function)이다. 활성화함수는 시그모이드(Sigmoid), 하이퍼볼릭탄젠트(tanh: Hyperbolic tangent), ELU(Exponential Linear Unit), ReLU(Rectified Linear Unit), Leakly ReLU, Maxout, Minout, Softmax 등을 예시할 수 있다. 이러한 활성화함수 중 어느 하나를 선택하여 사용할 수 있다. Meanwhile, a node Z according to an embodiment of the present invention is shown in FIG. 5 . This node (Z) may be any one node included in the prediction network (PN). Node Z is an input signal x = [x1, x2, ... , xn] with weights w=[w1, w2, … , wn], take the function F as the result. Here, function F is an activation function. Activation functions may include sigmoid, hyperbolic tangent (tanh), exponential linear unit (ELU), rectified linear unit (ReLU), leaky ReLU, Maxout, Minout, and Softmax. Any one of these activation functions can be selected and used.

각 노드의 출력은 다음의 수학식 7과 같다. The output of each node is shown in Equation 7 below.

Figure 112022016700114-pat00089
Figure 112022016700114-pat00089

여기서, 설명되지 않은 파라미터 중 b는 임계치이며, 이러한 임계치는 수학식 7에서

Figure 112022016700114-pat00090
의 값이 임계치 보다 작을 때 해당 노드가 활성화되지 않도록 하는 역할을 한다. Here, among the unexplained parameters, b is a threshold, and this threshold is
Figure 112022016700114-pat00090
It serves to prevent the corresponding node from being activated when the value of is smaller than the threshold.

수학식 7에 따르면, 입력이 동일한 경우에도, 출력은 가중치(W)에 따라 다른 값이 된다. 예를 들면, 현 노드(Z)의 이전 계층의 노드가 3개라고 가정한다. 이에 따라, 현 노드(Z)에 대해 3개의 입력(n=3) X1, X2, X3과 3개의 가중치 W1, W2, W3이 존재한다. 노드(Z)는 3개의 입력 X1, X2, X3에 대응하는 가중치 W1, W2, W3을 곱한 값을 입력받고, 모두 합산한 후, 합산된 값을 활성화 함수에 대입하여 출력을 산출한다. 구체적으로, 입력 [X1, X2, X3] = 0.5, -0.3, 0이라고 가정하고, 가중치 w=[W1, W2, W3] = 4, 5, 2라고 가정한다. 또한, 설명의 편의를 위하여 전달 함수는 'sgn()'이라고 가정하면, 다음과 같이 출력값이 산출된다. According to Equation 7, even when the input is the same, the output becomes a different value according to the weight (W). For example, it is assumed that there are 3 nodes in a layer prior to the current node Z. Accordingly, there are three inputs (n=3) X1, X2, and X3 and three weights W1, W2, and W3 for the current node Z. The node Z receives a value obtained by multiplying three inputs X1, X2, and X3 by weights W1, W2, and W3, sums them all, and substitutes the summed value into an activation function to calculate an output. Specifically, assume that inputs [X1, X2, X3] = 0.5, -0.3, 0, and weights w = [W1, W2, W3] = 4, 5, 2. In addition, assuming that the transfer function is 'sgn()' for convenience of explanation, the output value is calculated as follows.

x1 × w1 = 0.5 × 4 = 2 x1 × w1 = 0.5 × 4 = 2

x2 × w2 = - 0.3 × 5 = -1.5x2 × w2 = -0.3 × 5 = -1.5

x3 × w3 = 0 × 2 = 0 x3 × w3 = 0 × 2 = 0

2 + (-1.5) + 0 = 0.5 2 + (-1.5) + 0 = 0.5

sgn(0.5) = 1 sgn(0.5) = 1

이와 같이, 본 발명의 예측망(PN)의 어느 하나의 노드(Z)는 이전 계층의 노드값에 가중치를 적용한 값을 입력받고, 이를 합산하여 활성화함수에 따라 연산을 수행하고, 이러한 결과를 다음 계층의 하나 이상의 노드의 입력으로 전달한다. In this way, any one node (Z) of the prediction network (PN) of the present invention receives a value obtained by applying a weight to the node value of the previous layer, sums them, performs an operation according to an activation function, and returns the result to the next Pass it as an input to one or more nodes in the hierarchy.

정리하면, 예측망(PN)의 어느 한 계층의 어느 하나의 노드는 이전 계층의 노드로부터의 입력에 가중치를 적용한 값을 입력받고, 이를 합산하여 활성화 함수를 취하고, 이러한 결과를 다음 계층의 입력으로 전달한다. 이에 따라, 상태검출망(SN)의 복수의 은닉 상태(ht: h1~hn)가 예측망(PN)의 입력층(IL)에 입력되면, 예측망(PN)은 복수의 은닉 상태(ht: h1~hn)에 대해 복수의 계층(IL, HL, OL)의 가중치가 적용되는 복수의 연산을 수행하여 부품의 수요를 예측하는 수요예측벡터를 도출한다. In summary, any one node in any one layer of the prediction network (PN) receives a value obtained by applying weights to inputs from nodes in the previous layer, sums them to take an activation function, and uses this result as an input to the next layer. convey Accordingly, when a plurality of hidden states (ht: h1 to hn) of the state detection network (SN) are input to the input layer (IL) of the prediction network (PN), the prediction network (PN) receives a plurality of hidden states (ht: For h1 to hn), a plurality of calculations to which weights of a plurality of layers (IL, HL, OL) are applied are performed to derive a demand forecast vector that predicts the demand for parts.

다시 도 4를 참조하면, 복수의 은닉 상태(ht: h1~hn)가 예측망(PN)의 입력층(IL)의 복수의 입력노드(i1 ~ in)에 입력되면, 제1 은닉층(HL1)의 복수의 제1 은닉노드(h11 ~ h1a) 각각은 복수의 입력노드(i1 ~ in)의 복수의 은닉 상태(ht: h1~hn)에 가중치가 적용된 값을 입력받고(점선으로 표시), 입력된 값을 모두 합산한 후, 합산된 값에 대해 활성화함수에 따른 연산을 수행하여 복수의 제1 은닉노드값을 산출한다. 이어서, 제2 은닉층(PHL2)의 복수의 제2 은닉노드(h21 ~ h2b) 각각은 복수의 제1 은닉노드(h11 ~ h1a)의 복수의 제1 은닉노드값 각각에 가중치가 적용된 값을 입력받고(점선으로 표시), 입력된 값을 모두 합산하고, 합산된 값에 대해 활성화함수에 따른 연산을 수행하여 복수의 제2 은닉노드값을 산출한다. 이와 같은 방식으로, 은닉층(HL) 내에서 이전의 노드값이 가중치가 적용되어 전달되고, 연산을 통해 현재의 노드값이 산출된다. 이러한 과정을 반복하여, 제k 은닉계층(PHLk)의 복수의 제k 은닉노드(hk1 ~ hkc)의 복수의 제k 은닉노드값을 산출할 수 있다. Referring to FIG. 4 again, when a plurality of hidden states (ht: h1 to hn) are input to a plurality of input nodes i1 to in of the input layer IL of the prediction network PN, the first hidden layer HL1 Each of the plurality of first hidden nodes (h11 to h1a) receives a value to which a weight is applied to a plurality of hidden states (ht: h1 to hn) of a plurality of input nodes (i1 to in) (indicated by a dotted line), input After summing up all the values, a plurality of first hidden node values are calculated by performing an operation according to an activation function on the summed values. Then, each of the plurality of second hidden nodes h21 to h2b of the second hidden layer PHL2 receives a value to which a weight is applied to each of the plurality of first hidden node values of the plurality of first hidden nodes h11 to h1a, (indicated by a dotted line), all input values are summed, and a plurality of second hidden node values are calculated by performing an operation according to an activation function on the summed values. In this way, in the hidden layer (HL), a previous node value is transmitted with a weight applied, and a current node value is calculated through an operation. By repeating this process, a plurality of k-th hidden node values of a plurality of k-th hidden nodes (hk1 to hkc) of the k-th hidden layer (PHLk) may be calculated.

그러면, 출력노드(P)는 제k 은닉계층(PHLk)의 복수의 제k 은닉노드(hk1 ~ hkc)의 복수의 제k 은닉노드값에 가중치 w=[w1, w2, … , wc×2]가 적용된 값을 입력받고(점선으로 표시), 입력된 값을 모두 합산한 후, 합산된 값에 대해 활성화함수에 따른 연산을 수행하여 출력값, 즉, 수요예측벡터를 산출하고, 산출된 수요예측벡터를 출력한다. Then, the output node P assigns a weight w = [w1, w2, . . . , wc × 2] is applied (indicated by a dotted line), and after summing all the input values, calculating the output value, that is, the demand forecast vector, by performing an operation according to the activation function on the summed value, Output the calculated demand forecast vector.

다음으로, 본 발명의 실시예에 따른 수요 예측을 위한 예측모델을 생성하기 위한 방법에 대해서 설명하기로 한다. 본 발명의 실시예에 따른 예측모델은 학습 데이터를 이용하여 학습을 수행한 후, 평가 데이터를 이용하여 튜닝을 수행하여 최종적으로 예측모델을 생성한다. 이에 따라, 먼저, 수요 예측을 위한 예측모델을 학습시키기 위한 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시예에 따른 수요 예측을 위한 예측모델을 학습시키기 위한 방법을 설명하기 위한 도면이다. 도 7은 본 발명의 실시예에 따른 부품의 희소성 계수를 도출하기 위한 그래프이다. 도 8은 본 발명의 실시예에 따른 드롭아웃 비율에 따라 구성되는 예측모델을 설명하기 위한 도면이다. 도 9는 본 발명의 실시예에 따른 예측모델의 정확도를 최적화하기 위한 최적화 곡선을 설명하기 위한 그래프이다. Next, a method for generating a prediction model for demand forecasting according to an embodiment of the present invention will be described. The predictive model according to an embodiment of the present invention performs learning using training data, and then performs tuning using evaluation data to finally generate a predictive model. Accordingly, first, a method for learning a prediction model for demand forecasting will be described. 6 is a diagram for explaining a method for learning a prediction model for demand forecasting according to an embodiment of the present invention. 7 is a graph for deriving a sparsity coefficient of a part according to an embodiment of the present invention. 8 is a diagram for explaining a predictive model configured according to a dropout ratio according to an embodiment of the present invention. 9 is a graph for explaining an optimization curve for optimizing the accuracy of a predictive model according to an embodiment of the present invention.

도 6을 참조하면, 학습부(100)는 S110 단계에서 복수의 훈련 데이터를 마련한다. 복수의 훈련 데이터는 예측모델(PM)에 대한 학습에 사용되는 학습용 데이터 및 예측모델(PM)에 대한 검증에 사용되는 검증용 데이터로 분류할 수 있다. 학습용 데이터는 복수의 학습용 수요통계벡터가 시간 순서에 따라 정렬된 학습용 수요통계벡터열과 학습용 수요통계벡터열에 대응하는 목적값을 포함한다. 학습용 수요통계벡터는 완성품 중 어느 하나의 부품에 수요가 발생할 때마다 수요가 발생한 시간 및 수요량을 나타내는 통계치를 소정의 벡터공간에 사상(embedding)하여 생성된다. 목적값은 학습용 수요통계벡터열 중 마지막 학습용 수요통계벡터가 생성된 시간으로부터 소정 시간 이후에 발생한 해당 부품의 수요에 의해 생성된 학습용 수요통계벡터이다. 검증용 데이터는 학습용 데이터와 동일한 형식을 가지며, 단지, 데이의 값만이 상이한 데이터이다. 검증용 데이터는 복수의 검증용 수요통계벡터가 시간 순서에 따라 정렬된 검증용 수요통계벡터열과 검증용 수요통계벡터열에 대응하는 목적값을 포함한다. 검증용 수요통계벡터는 완성품 중 어느 하나의 부품에 수요가 발생할 때마다 수요가 발생한 시간 및 수요량을 나타내는 통계치를 소정의 벡터공간에 사상(embedding)하여 생성된다. 목적값은 검증용 수요통계벡터열 중 마지막 검증용 수요통계벡터가 생성된 시간으로부터 소정 시간 이후에 발생한 해당 부품의 수요에 의해 생성된 검증용 수요통계벡터이다. Referring to FIG. 6 , the learning unit 100 prepares a plurality of training data in step S110. The plurality of training data can be classified into learning data used for learning the predictive model (PM) and verification data used for verifying the predictive model (PM). The learning data includes a demand statistic vector sequence for learning in which a plurality of demand statistic vectors for learning are arranged in chronological order and a target value corresponding to the demand statistic vector sequence for learning. The demand statistic vector for learning is generated by embedding statistics representing the time and amount of demand whenever a demand occurs for any one part of a finished product in a predetermined vector space. The target value is a demand statistic vector for learning generated by a demand for a corresponding part that occurred a predetermined time after the time at which the last demand statistic vector for learning was created among the demand statistic vector for learning. The data for verification has the same format as the data for training, only the value of day is different. The verification data includes a demand statistic vector sequence for verification in which a plurality of demand statistic vectors for verification are arranged in chronological order and a target value corresponding to the demand statistic vector sequence for verification. The demand statistic vector for verification is generated by embedding statistics representing the time and amount of demand whenever a demand occurs for any one part of the finished product in a predetermined vector space. The target value is a demand statistic vector for verification generated by the demand for the corresponding part that occurred a predetermined time after the time at which the last demand statistic vector for verification among the demand statistic vector for verification was generated.

훈련 데이터가 마련되면, 학습부(100)는 S120 단계에서 훈련 데이터에 대한 희소성 계수를 산출한다. 희소성 계수는 도 7에 도시된 부품 곡선과 균등 곡선 사이의 면적 비율에 따라 산출된다. 부품 곡선은 대상 부품의 수요가 완성품 전체 수요에서 차지하는 누적 비율을 나타내며, 균등 곡선은 완성품을 구성하는 전체 부품의 수요의 누적 비율을 나타낸다. 즉, 학습부(100)는 도 7의 그래프에서, 삼각형 ABC의 면적에서 X 영역이 차지하는 비율을 희소성 계수로 산출한다. When the training data is prepared, the learning unit 100 calculates a sparsity coefficient for the training data in step S120. The sparsity coefficient is calculated according to the area ratio between the part curve and the equal curve shown in FIG. 7 . The part curve represents the cumulative ratio of the demand for a target part to the total demand for finished products, and the uniform curve represents the cumulative ratio of the demand for all parts constituting the finished product. That is, in the graph of FIG. 7 , the learner 100 calculates a ratio occupied by area X in the area of triangle ABC as a sparsity coefficient.

다음으로, 학습부(100)는 S130 단계에서 설정되는 드롭아웃 비율에 따라 임의로 노드를 소거하여 예측모델(PM)을 구성한다. 이때, 초기의 드롭아웃 비율은 임의의 값으로 미리 설정될 수 있다. 예컨대, 도 9에 예측모델(PM)의 예시적인 3개의 계층(L1, L2, L3)이 도시되었다. 제1 계층(L1)은 2개의 노드(X1, X2)를 포함하며, 제2 계층(L1)은 3개의 노드(Y1, Y2, Y3)를 포함하며, 제3 계층(L3)은 2개의 노드(Z1, Z2)를 포함한다고 가정한다. 일례로, 학습부(100)는 드롭아웃 비율이 1/3인 경우, 제2 계층(L1)의 3개의 노드(Y1, Y2, Y3) 중 무작위로 1개의 노드를 소거하여 예측모델(PM)을 구성할 수 있다. 다른 예로, 학습부(100)는 드롭아웃 비율이 2/3인 경우, 제2 계층(L1)의 3개의 노드(Y1, Y2, Y3) 중 무작위로 2개의 노드를 소거하여 예측모델(PM)을 구성할 수 있다. Next, the learning unit 100 configures a predictive model (PM) by randomly erasing nodes according to the dropout ratio set in step S130. In this case, the initial dropout ratio may be preset to an arbitrary value. For example, in FIG. 9, three exemplary layers (L1, L2, L3) of the predictive model (PM) are shown. The first layer L1 includes two nodes X1 and X2, the second layer L1 includes three nodes Y1, Y2, and Y3, and the third layer L3 includes two nodes. It is assumed to contain (Z1, Z2). For example, when the dropout ratio is 1/3, the learning unit 100 randomly erases one node among three nodes (Y1, Y2, Y3) of the second layer (L1) to generate a predictive model (PM). can be configured. As another example, when the dropout ratio is 2/3, the learning unit 100 randomly eliminates two nodes among the three nodes (Y1, Y2, Y3) of the second layer (L1) to generate a predictive model (PM). can be configured.

학습용 데이터가 마련되면, 학습부(100)는 S140 단계에서 학습이 완료되지 않은 파라미터를 가지는 예측모델(PM)에 학습용 수요통계벡터열을 입력한다. 그러면, 예측모델(PM)은 S150 단계에서 학습용 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 연산을 수행하여 학습용 수요예측벡터를 도출한다. 학습용 수요예측벡터는 앞서 도 2 내지 도 5를 통해 설명된 수요예측벡터를 도출하는 것과 동일하게 이루어진다. When the data for learning is prepared, the learning unit 100 inputs the vector sequence of demand statistics for learning to the predictive model (PM) having parameters for which learning has not been completed in step S140. Then, the prediction model (PM) derives a demand prediction vector for learning by performing an operation in which weights between a plurality of layers are applied to the demand statistic vector sequence for learning in step S150. The demand prediction vector for learning is performed in the same way as deriving the demand prediction vector described above with reference to FIGS. 2 to 5 .

학습부(100)는 S160 단계에서 비용함수를 통해 학습용 수요예측벡터와 목적값과의 차이를 나타내는 생성손실을 산출한다. 이때, 학습부(100)는 다음의 수학식 8 혹은 수학식 9를 이용하여 생성손실을 산출할 수 있다. In step S160, the learning unit 100 calculates a generation loss representing the difference between the learning demand prediction vector and the target value through the cost function. At this time, the learning unit 100 may calculate the generation loss using Equation 8 or Equation 9 below.

Figure 112022016700114-pat00091
Figure 112022016700114-pat00091

Figure 112022016700114-pat00092
Figure 112022016700114-pat00092

수학식 8 및 수학식 9에서, LR은 비용함수를 나타낸다. L은 손실함수를 나타내며, 이러한 손실함수는 LAE(Least Absolute Error), LSE(Least Squares Error), MSE(Mean Squared Error) 등을 이용할 수 있다. 여기서,

Figure 112022016700114-pat00093
는 목적값이고,
Figure 112022016700114-pat00094
는 학습용 수요예측벡터를 나타낸다. 또한,
Figure 112022016700114-pat00095
는 학습률이고,
Figure 112022016700114-pat00096
는 가중치를 나타낸다. In Equations 8 and 9, LR represents a cost function. L represents a loss function, and such a loss function may use LAE (Least Absolute Error), LSE (Least Squares Error), MSE (Mean Squared Error), and the like. here,
Figure 112022016700114-pat00093
is the target value,
Figure 112022016700114-pat00094
denotes a demand forecasting vector for learning. also,
Figure 112022016700114-pat00095
is the learning rate,
Figure 112022016700114-pat00096
represents the weight.

그런 다음, 학습부(100)는 S170 단계에서 소정의 최적화 알고리즘을 이용하여 생성손실이 최소가 되도록 예측모델(PM)의 학습되지 않은 파라미터를 수정하는 최적화를 수행한다. 이때, 일 실시예에 따르면, 비용함수가 수학식 8과 같은 경우, 학습부(100)는 생성손실이 최소이면서 가중치들의 절대값의 합이 최소가 되도록 예측모델(PM)의 학습되지 않은 파라미터를 수정하는 최적화를 수행한다. 또한, 다른 실시예에 따르면, 비용함수가 수학식 9와 같은 경우, 학습부(100)는 생성손실이 최소이면서 가중치들의 제곱합이 최소가 되도록 예측모델(PM)의 학습되지 않은 파라미터를 수정하는 최적화를 수행한다. Then, in step S170, the learning unit 100 performs optimization of modifying unlearned parameters of the predictive model (PM) so that generation loss is minimized using a predetermined optimization algorithm. At this time, according to an embodiment, when the cost function is equal to Equation 8, the learner 100 sets the unlearned parameters of the predictive model (PM) such that the generation loss is minimized and the sum of the absolute values of the weights is minimized. Perform corrective optimization. In addition, according to another embodiment, when the cost function is equal to Equation 9, the learning unit 100 optimizes the unlearned parameters of the predictive model (PM) so that the generation loss is minimized and the sum of squares of the weights is minimized. do

다음으로, 학습부(100)는 S160 단계에서 예측모델(PM)에 대해 검증손실을 산출한다. 이때, 학습부(100)은 예측모델(PM)에 앞서 S120 단계 내지 S150 단계에서 검증용 수요통계벡터열를 예측모델(PM)에 입력하고, 예측모델(PM)이 입력된 검증용 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 연산을 수행하여 검증용 수요예측벡터를 도출하면, 손실함수를 통해 검증용 수요예측벡터와 검증용 수요예측벡터에 대응하는 목적값과의 차이를 나타내는 검증손실을 산출한다. Next, the learning unit 100 calculates a verification loss for the prediction model (PM) in step S160. At this time, the learning unit 100 inputs the demand statistics vector column for verification into the prediction model (PM) in steps S120 to S150 prior to the prediction model (PM), and inputs the demand statistics vector column for verification into the input demand statistics vector column. When a demand forecast vector for verification is derived by performing an operation in which weights between multiple layers are applied to each layer, the verification loss representing the difference between the demand forecast vector for verification and the target value corresponding to the demand forecast vector for verification is calculated through a loss function. yield

검증손실이 산출되면, 학습부(100)는 S190 단계에서 검증손실이 기 설정된 학습 종료 조건을 만족하는지 여부를 판별한다. 학습 종료 조건은 검증손실이 기 설정된 기준치 미만인 경우 및 검증손실이 줄어들다가 다시 증가하는 경우 중 적어도 하나를 포함한다. S190 단계의 판별 결과, 종료 조건을 만족하지 않으면, 앞서 사용된 학습용 데이터와 다른 학습용 데이터를 이용하여 전술한 S140 단계 내지 S190 단계를 반복한다. 반면, S170 단계의 판별 결과, 종료 조건을 만족하면, 학습부(100)는 S210 단계에서 정확도를 평가한다. 여기서, 정확도는 마지막으로 도출된 검증손실의 역수이다. When the verification loss is calculated, the learning unit 100 determines whether or not the verification loss satisfies a preset learning end condition in step S190. The learning end condition includes at least one of a case where the verification loss is less than a predetermined reference value and a case where the verification loss decreases and then increases again. As a result of the determination in step S190, if the end condition is not satisfied, steps S140 to S190 are repeated using learning data different from the previously used learning data. On the other hand, as a result of the determination in step S170, if the end condition is satisfied, the learning unit 100 evaluates the accuracy in step S210. Here, the accuracy is the reciprocal of the last derived verification loss.

그런 다음, 학습부(100)는 S220 단계에서 평가 종료 조건을 만족하는지 여부를 판별한다. 여기서, 평가 종료 조건은 정확도가 수렴하는지 여부를 판별한다. 즉, 학습부(100)는 정확도가 증가하였다가 다시 줄어드는 경우, 정확도가 정점에 수렴한 것으로 판단할 수 있다. 도 9에 희소성 계수 및 드롭아웃의 비율에 따른 정확도를 나타내는 3차원 그래프가 도시되었다. 정확도의 평가 결과, 정확도는 순차로 제1 위치(P1)에서 제5 위치(P5)로 이동하였다가 가정한다. 이때, 제1 위치(P1)에서 제4 위치(P4)까지 정확도가 증가하다가 제5 위치(P5)에서 정확도가 감소하였다. 이에 따라, 정확도는 제4 위치(P4)로 수렴함을 알 수 있다. Then, the learning unit 100 determines whether or not the evaluation end condition is satisfied in step S220. Here, the evaluation end condition determines whether accuracy converges. That is, when the accuracy increases and then decreases again, the learning unit 100 may determine that the accuracy has converged to a peak. 9 shows a three-dimensional graph showing the accuracy according to the sparsity coefficient and dropout rate. As a result of evaluating the accuracy, it is assumed that the accuracy sequentially moves from the first position P1 to the fifth position P5. At this time, the accuracy increases from the first position P1 to the fourth position P4 and then decreases at the fifth position P5. Accordingly, it can be seen that the accuracy converges to the fourth position P4.

S220 단계의 판별 결과, 평가 종료 조건을 만족하지 않으면, 학습부(100)는 S230 단계로 진행하여 드롭아웃 비율을 재설정한다. 이때, 학습부(100)는 드롭아웃 비율은 정확도가 증가하도록 소정 단위로 증감시킨다. 그런 다음, 학습부(100)는 S130 내지 S220 단계를 반복한다. 즉, 학습부(100)는 S130 단계에서 재설정된 드롭아웃 비율에 따라 노드를 소거하여 예측모델(PM)을 새로 구성하고, 새로 구성된 예측모델(PM)에 대한 학습을 수행하고, 정확도를 평가한 후, 평가 종료 조건을 만족하는지 여부를 판단하는 일련을 절차를 수행한다. As a result of the determination in step S220, if the evaluation end condition is not satisfied, the learning unit 100 proceeds to step S230 to reset the dropout ratio. At this time, the learning unit 100 increases or decreases the dropout ratio in predetermined units to increase accuracy. Then, the learning unit 100 repeats steps S130 to S220. That is, the learning unit 100 reconfigures a prediction model (PM) by eliminating nodes according to the reset dropout ratio in step S130, performs learning on the newly configured prediction model (PM), and evaluates accuracy. After that, a series of procedures for determining whether the evaluation end conditions are satisfied are performed.

반면, S220 단계의 판별 결과, 평가 종료 조건을 만족하면, 학습부(100)는 S240 단계에서 정확도가 가장 높은 드롭아웃 비율에 따라 구성되어 학습된 예측모델(PM)을 최종적으로 선택한다. On the other hand, if the evaluation end condition is satisfied as a result of the determination in step S220, the learning unit 100 finally selects the predicted model (PM) configured and learned according to the dropout ratio having the highest accuracy in step S240.

전술한 바와 같이, 최종적으로 선택된 예측모델(PM)을 이용하여 부품에 대한 수요를 예측할 수 있다. 이러한 방법에 대해서 설명하기로 한다. 도 10은 본 발명의 실시예에 따른 희소성 이벤트 기반의 수요를 예측하기 위한 방법을 설명하기 위한 흐름도이다. As described above, the demand for parts may be predicted using the finally selected prediction model (PM). These methods will be described. 10 is a flowchart illustrating a method for predicting demand based on a scarcity event according to an embodiment of the present invention.

도 10을 참조하면, 데이터처리부(200)는 S310 단계에서 완성품을 구성하는 전체 부품 중 어느 하나의 부품에 대한 수요의 통계치를 수집한다. 여기서, 수요의 통계치는 수요가 발생한 단위 기간 및 수요량을 포함한다. Referring to FIG. 10 , the data processing unit 200 collects statistics on the demand for any one part among all parts constituting the finished product in step S310. Here, the statistics of demand include a unit period in which the demand occurred and the amount of demand.

데이터처리부(200)는 S320 단계에서 수요의 통계치를 소정의 벡터공간에 사상(embedding)하여 복수의 수요통계벡터를 생성하고, 시간 순서에 따라 정렬된 복수의 수요통계벡터를 포함하는 수요통계벡터열을 생성한다. 여기서, 수요통계벡터는 단위 기간 별 부품의 수요량을 나타낸다. The data processing unit 200 generates a plurality of demand statistics vectors by embedding the demand statistics into a predetermined vector space in step S320, and a demand statistics vector column including a plurality of demand statistics vectors arranged in chronological order. generate Here, the demand statistic vector represents the demand for parts per unit period.

이어서, 예측부(300)는 S330 단계에서 앞서 도 6 내지 도 9를 통해 설명된 바에 따라 학습되어 최종적으로 선택된 예측모델(PM)에 수요통계벡터열을 입력한다. Subsequently, the prediction unit 300 inputs the demand statistics vector sequence to the predicted model (PM) finally selected after being learned as described above with reference to FIGS. 6 to 9 in step S330.

그러면, 예측모델(PM)은 S340 단계에서 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 연산을 수행하여 수요예측벡터를 도출한다. 수요예측벡터는 수요통계벡터열의 마지막 수요통계벡터에 대응하는 시간으로부터 소정의 기간 이후의 예측된 수요량을 나타낸다. Then, the prediction model (PM) derives a demand prediction vector by performing an operation in which weights between a plurality of layers are applied to the demand statistics vector sequence in step S340. The demand forecast vector represents the predicted demand quantity after a predetermined period from the time corresponding to the last demand statistic vector in the demand statistic vector column.

따라서 예측부(300)는 S350 단계에서 수요예측벡터에 따라 해당 부품에 대한 수요를 예측할 수 있다. Therefore, the prediction unit 300 may predict the demand for the corresponding part according to the demand prediction vector in step S350.

도 11은 본 발명의 실시예에 따른 컴퓨팅 장치를 나타내는 도면이다. 컴퓨팅 장치(TN100)는 본 명세서에서 기술된 장치(예, 수요예측장치(10) 등) 일 수 있다. 11 is a diagram illustrating a computing device according to an embodiment of the present invention. The computing device TN100 may be a device described in this specification (eg, the demand forecasting device 10, etc.).

도 11의 실시예에서, 컴퓨팅 장치(TN100)는 적어도 하나의 프로세서(TN110), 송수신 장치(TN120), 및 메모리(TN130)를 포함할 수 있다. 또한, 컴퓨팅 장치(TN100)는 저장 장치(TN140), 입력 인터페이스 장치(TN150), 출력 인터페이스 장치(TN160) 등을 더 포함할 수 있다. 컴퓨팅 장치(TN100)에 포함된 구성 요소들은 버스(bus)(TN170)에 의해 연결되어 서로 통신을 수행할 수 있다.In the embodiment of FIG. 11 , the computing device TN100 may include at least one processor TN110, a transceiver TN120, and a memory TN130. In addition, the computing device TN100 may further include a storage device TN140, an input interface device TN150, and an output interface device TN160. Elements included in the computing device TN100 may communicate with each other by being connected by a bus TN170.

프로세서(TN110)는 메모리(TN130) 및 저장 장치(TN140) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(TN110)는 중앙 처리 장치(CPU: central processing unit), 그래픽 처리 장치(GPU: graphics processing unit), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(TN110)는 본 발명의 실시예와 관련하여 기술된 절차, 기능, 및 방법 등을 구현하도록 구성될 수 있다. 프로세서(TN110)는 컴퓨팅 장치(TN100)의 각 구성 요소를 제어할 수 있다. The processor TN110 may execute program commands stored in at least one of the memory TN130 and the storage device TN140. The processor TN110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to embodiments of the present invention are performed. Processor TN110 may be configured to implement procedures, functions, methods, and the like described in relation to embodiments of the present invention. The processor TN110 may control each component of the computing device TN100.

메모리(TN130) 및 저장 장치(TN140) 각각은 프로세서(TN110)의 동작과 관련된 다양한 정보를 저장할 수 있다. 메모리(TN130) 및 저장 장치(TN140) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(TN130)는 읽기 전용 메모리(ROM: read only memory) 및 랜덤 액세스 메모리(RAM: random access memory) 중에서 적어도 하나로 구성될 수 있다. Each of the memory TN130 and the storage device TN140 may store various information related to the operation of the processor TN110. Each of the memory TN130 and the storage device TN140 may include at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory TN130 may include at least one of read only memory (ROM) and random access memory (RAM).

송수신 장치(TN120)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다. 송수신 장치(TN120)는 네트워크에 연결되어 통신을 수행할 수 있다. The transmitting/receiving device TN120 may transmit or receive a wired signal or a wireless signal. The transmitting/receiving device TN120 may perform communication by being connected to a network.

한편, 전술한 본 발명의 실시예에 따른 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. On the other hand, the method according to the embodiment of the present invention described above may be implemented in the form of a program readable by various computer means and recorded on a computer-readable recording medium. Here, the recording medium may include program commands, data files, data structures, etc. alone or in combination. Program instructions recorded on the recording medium may be those specially designed and configured for the present invention, or those known and usable to those skilled in computer software. For example, recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks ( It includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media and ROM, RAM, flash memory, etc. Examples of program commands may include high-level language wires that can be executed by a computer using an interpreter, as well as machine language wires such as those produced by a compiler. These hardware devices may be configured to act as one or more software modules to perform the operations of the present invention, and vice versa.

이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. The present invention has been described above using several preferred examples, but these examples are illustrative and not limiting. As such, those skilled in the art to which the present invention belongs will understand that various changes and modifications can be made according to the doctrine of equivalents without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.

100: 학습부
200: 데이터처리부
300: 예측부
100: learning unit
200: data processing unit
300: prediction unit

Claims (10)

수요를 예측하기 위한 장치에 있어서,
부품의 수요를 단위 기간 별로 수집하여 각각이 단위 기간 별 부품의 수요량을 나타내는 복수의 수요통계벡터를 생성하고, 생성된 복수의 수요통계벡터가 시간 순서에 따라 정렬된 수요통계벡터열을 생성하는 데이터처리부; 및
미리 학습된 예측모델을 이용하여 상기 수요통계벡터열에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출하는 예측부;
를 포함하며,
상기 예측모델은
수요통계벡터열로부터 시간 순서에 따른 수요량의 변동의 특징을 나타내는 복수의 은닉 상태를 검출하는 상태검출망; 및
상기 복수의 은닉 상태에 대해 적어도 하나의 계층의 학습된 가중치가 적용되는 연산을 통해 상기 수요예측벡터를 산출하는 예측망;
을 포함하며,
상기 상태검출망은
순서를 가지는 복수의 상태저장모듈을 포함하며,
상기 상태저장모듈은
이전 상태저장모듈의 셀 상태를 현 상태저장모듈에서 유지할지 여부를 선택하기 위한 선택값을 산출하는 망각계층;
현 상태저장모듈의 셀 상태를 갱신하기 위한 현재값 및 갱신 셀 상태를 산출하는 생성계층;
현 상태저장모듈의 셀 상태를 산출하여 전달하는 전달계층; 및
현 상태저장모듈의 은닉 상태를 산출하는 출력계층;
을 포함하며,
상기 망각계층은
수학식
Figure 112023006450138-pat00144

에 따른 연산을 통해 선택값을 산출하고,
상기
Figure 112023006450138-pat00145
는 선택값이고,
상기
Figure 112023006450138-pat00146
는 활성화함수이고,
상기
Figure 112023006450138-pat00147
는 선택가중치이고,
상기
Figure 112023006450138-pat00148
는 이전 상태저장모듈의 은닉 상태이고,
상기
Figure 112023006450138-pat00149
는 현 상태저장모듈에 대응하는 수요통계벡터이고,
상기
Figure 112023006450138-pat00150
는 선택값에 적용되는 임계치인 것을 특징으로 하는
수요를 예측하기 위한 장치.
In the device for predicting demand,
Data that collects the demand for parts by unit period to generate a plurality of demand statistics vectors each representing the demand for parts for each unit period, and generates a demand statistics vector column in which the generated plurality of demand statistics vectors are arranged in chronological order processing unit; and
a prediction unit for deriving a demand prediction vector for predicting the demand quantity of the parts after a predetermined period through an operation on the demand statistics vector sequence using a pre-learned prediction model;
Including,
The prediction model is
a state detection network that detects a plurality of hidden states representing characteristics of a change in demand quantity according to a time sequence from a demand statistics vector sequence; and
a prediction network calculating the demand prediction vector through an operation to which the learned weights of at least one layer are applied to the plurality of hidden states;
Including,
The state detection network
It includes a plurality of state storage modules having an order,
The state storage module
a forget layer calculating a selection value for selecting whether or not to maintain the cell state of the previous state storage module in the current state storage module;
a creation layer that calculates a current value for updating the cell state of the current state storage module and an updated cell state;
a transmission layer that calculates and transmits the cell state of the current state storage module; and
an output layer that calculates the hidden state of the current state storage module;
Including,
The forgetting layer is
math formula
Figure 112023006450138-pat00144

Calculate the selection value through the operation according to,
remind
Figure 112023006450138-pat00145
is an optional value,
remind
Figure 112023006450138-pat00146
is the activation function,
remind
Figure 112023006450138-pat00147
is the selection weight,
remind
Figure 112023006450138-pat00148
is the hidden state of the previous state storage module,
remind
Figure 112023006450138-pat00149
is a demand statistics vector corresponding to the current state storage module,
remind
Figure 112023006450138-pat00150
Is a threshold applied to the selected value, characterized in that
A device for forecasting demand.
제1항에 있어서,
상기 예측부는
수요통계벡터열 상기 예측모델에 입력하고,
상기 예측모델이 상기 수요통계벡터열에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 상기 수요예측벡터를 생성하면,
상기 수요예측벡터에 따라 상기 소정의 기간 이후의 상기 부품의 수요량을 예측하는 것을 특징으로 하는
수요를 예측하기 위한 장치.
According to claim 1,
the prediction unit
Enter the demand statistics vector column into the forecast model,
When the prediction model generates the demand prediction vector by performing a plurality of calculations to which weights between a plurality of layers are applied to the demand statistics vector sequence,
Characterized in that the demand quantity of the parts after the predetermined period is predicted according to the demand prediction vector
A device for forecasting demand.
삭제delete 제1항에 있어서,
상기 복수의 상태저장모듈 각각은
상기 상태저장모듈 각각에 대응하는 순서에 따른 수요통계벡터를 입력받고,
입력된 수요통계벡터에 대한 연산을 통해 셀 상태 및 은닉 상태를 포함하는 상태 정보를 산출한 후,
다음 순서의 상태저장모듈에 상태 정보를 전달하며,
상기 은닉 상태를 출력하는 것을 특징으로 하는
수요를 예측하기 위한 장치.
According to claim 1,
Each of the plurality of state storage modules
Demand statistics vectors according to the order corresponding to each of the state storage modules are input;
After calculating the state information including the cell state and the hidden state through the operation of the input demand statistics vector,
The state information is delivered to the state storage module in the next order,
characterized in that for outputting the hidden state
A device for forecasting demand.
삭제delete 삭제delete 제1항에 있어서,
상기 생성계층은
수학식
Figure 112023006450138-pat00104

에 따라 현재값을 산출하고,
수학식
Figure 112023006450138-pat00105

에 따라 갱신 셀 상태를 산출하고,
상기
Figure 112023006450138-pat00106
는 이전 상태저장모듈의 은닉 상태이고,
상기
Figure 112023006450138-pat00107
는 현 상태저장모듈에 대응하는 수요통계벡터이고,
상기
Figure 112023006450138-pat00108
는 현재값이고,
상기
Figure 112023006450138-pat00109
는 활성화함수이고,
상기
Figure 112023006450138-pat00110
는 입력가중치이고,
상기
Figure 112023006450138-pat00111
는 임계치이고,
상기
Figure 112023006450138-pat00112
는 갱신 셀 상태이고,
상기
Figure 112023006450138-pat00113
는 활성화함수이고,
상기
Figure 112023006450138-pat00114
는 갱신가중치이고,
상기
Figure 112023006450138-pat00115
는 임계치인 것을 특징으로 하는
수요를 예측하기 위한 장치.
According to claim 1,
The generation layer is
math formula
Figure 112023006450138-pat00104

Calculate the current value according to
math formula
Figure 112023006450138-pat00105

Calculate the update cell state according to,
remind
Figure 112023006450138-pat00106
is the hidden state of the previous state storage module,
remind
Figure 112023006450138-pat00107
is a demand statistics vector corresponding to the current state storage module,
remind
Figure 112023006450138-pat00108
is the current value,
remind
Figure 112023006450138-pat00109
is the activation function,
remind
Figure 112023006450138-pat00110
is the input weight,
remind
Figure 112023006450138-pat00111
is the critical value,
remind
Figure 112023006450138-pat00112
is the update cell state,
remind
Figure 112023006450138-pat00113
is the activation function,
remind
Figure 112023006450138-pat00114
is the update weight,
remind
Figure 112023006450138-pat00115
is characterized in that the critical value
A device for forecasting demand.
제1항에 있어서,
상기 전달계층은
수학식
Figure 112023006450138-pat00116

에 따라 현재 상태저장모듈의 셀 상태를 생성하고,
상기
Figure 112023006450138-pat00117
는 현 상태저장모듈의 셀 상태이고,
상기
Figure 112023006450138-pat00118
는 선택값이고,
상기
Figure 112023006450138-pat00119
는 이전 상태저장모듈의 셀 상태이고,
상기
Figure 112023006450138-pat00120
는 현재값이고,
상기
Figure 112023006450138-pat00121
는 갱신 셀 상태인 것을 특징으로 하는
수요를 예측하기 위한 장치.
According to claim 1,
The delivery layer is
math formula
Figure 112023006450138-pat00116

According to, the cell state of the current state storage module is created,
remind
Figure 112023006450138-pat00117
is the cell state of the current state storage module,
remind
Figure 112023006450138-pat00118
is an optional value,
remind
Figure 112023006450138-pat00119
is the cell state of the previous state storage module,
remind
Figure 112023006450138-pat00120
is the current value,
remind
Figure 112023006450138-pat00121
is an update cell state
A device for forecasting demand.
제1항에 있어서,
상기 출력계층은
수학식
Figure 112023006450138-pat00122
에 따라 연산값을 산출하고,
수학식
Figure 112023006450138-pat00123

에 따라 현 상태저장모듈의 은닉 상태를 산출하며,
상기
Figure 112023006450138-pat00124
는 연산값이고,
상기
Figure 112023006450138-pat00125
는 활성화함수이고,
상기
Figure 112023006450138-pat00126
는 연산가중치이고,
상기
Figure 112023006450138-pat00127
는 이전 상태저장모듈의 은닉 상태이고,
상기
Figure 112023006450138-pat00128
는 현 상태저장모듈에 대응하는 수요통계벡터이고,
상기
Figure 112023006450138-pat00129
는 임계치이고,
상기
Figure 112023006450138-pat00130
는 현 상태저장모듈의 은닉 상태이고,
상기
Figure 112023006450138-pat00131
는 활성화함수이고,
상기
Figure 112023006450138-pat00132
는 현 상태저장모듈의 셀 상태인 것을 특징으로 하는
수요를 예측하기 위한 장치.
According to claim 1,
The output layer is
math formula
Figure 112023006450138-pat00122
Calculate the calculated value according to
math formula
Figure 112023006450138-pat00123

Calculate the hidden state of the current state storage module according to
remind
Figure 112023006450138-pat00124
is the calculated value,
remind
Figure 112023006450138-pat00125
is the activation function,
remind
Figure 112023006450138-pat00126
is the computational weight,
remind
Figure 112023006450138-pat00127
is the hidden state of the previous state storage module,
remind
Figure 112023006450138-pat00128
is a demand statistics vector corresponding to the current state storage module,
remind
Figure 112023006450138-pat00129
is the critical value,
remind
Figure 112023006450138-pat00130
is the hidden state of the current state storage module,
remind
Figure 112023006450138-pat00131
is the activation function,
remind
Figure 112023006450138-pat00132
Characterized in that the cell state of the current state storage module
A device for forecasting demand.
수요를 예측하기 위한 방법에 있어서,
데이터처리부가 부품의 수요를 단위 기간 별로 수집하여 각각이 단위 기간 별 부품의 수요량을 나타내는 복수의 수요통계벡터를 생성하고, 생성된 복수의 수요통계벡터가 시간 순서에 따라 정렬된 수요통계벡터열을 생성하는 단계;
예측부가 미리 학습된 예측모델을 이용하여 상기 수요통계벡터열에 대한 연산을 통해 소정의 기간 이후의 상기 부품의 수요량을 예측하는 수요예측벡터를 도출하는 단계;
를 포함하며,
상기 수요예측벡터를 도출하는 단계는
상기 예측모델의 복수의 상태저장모듈을 포함하는 상태검출망이 수요통계벡터열로부터 시간 순서에 따른 수요량의 변동의 특징을 나타내는 복수의 은닉 상태를 검출하는 단계; 및
상기 예측모델의 예측망이 상기 복수의 은닉 상태에 대해 적어도 하나의 계층의 학습된 가중치가 적용되는 연산을 통해 상기 수요예측벡터를 산출하는 단계;
를 포함하며,
상기 복수의 은닉 상태를 검출하는 단계는
상기 상태저장모듈의 망각계층이 이전 상태저장모듈의 셀 상태를 현 상태저장모듈에서 유지할지 여부를 선택하기 위한 선택값을 산출하는 단계;
상기 상태저장모듈의 생성계층이 현 상태저장모듈의 셀 상태를 갱신하기 위한 현재값 및 갱신 셀 상태를 산출하는 단계;
상기 상태저장모듈의 전달계층이 현 상태저장모듈의 셀 상태를 산출하여 전달하는 단계; 및
상기 상태저장모듈의 출력계층이 현 상태저장모듈의 은닉 상태를 산출하는 단계;
를 포함하며,
상기 선택값을 산출하는 단계는
상기 망각계층이
수학식
Figure 112023006450138-pat00151

에 따른 연산을 통해 선택값을 산출하며,
상기
Figure 112023006450138-pat00152
는 선택값이고,
상기
Figure 112023006450138-pat00153
는 활성화함수이고,
상기
Figure 112023006450138-pat00154
는 선택가중치이고,
상기
Figure 112023006450138-pat00155
는 이전 상태저장모듈의 은닉 상태이고,
상기
Figure 112023006450138-pat00156
는 현 상태저장모듈에 대응하는 수요통계벡터이고,
상기
Figure 112023006450138-pat00157
는 선택값에 적용되는 임계치인 것을 특징으로 하는
수요를 예측하기 위한 방법.
In a method for forecasting demand,
The data processing unit collects the demand for parts for each unit period and generates a plurality of demand statistics vectors each representing the demand for parts for each unit period. generating;
deriving a demand forecast vector for predicting the demand quantity of the part after a predetermined period through an operation on the demand statistics vector column using a predictive model learned in advance by a predictor;
Including,
The step of deriving the demand forecast vector
detecting, by a state detection network including a plurality of state storage modules of the prediction model, a plurality of hidden states representing characteristics of a change in demand quantity according to a time sequence from a demand statistics vector sequence; and
calculating the demand prediction vector through an operation in which the learned weight of at least one layer is applied to the plurality of hidden states by the prediction network of the prediction model;
Including,
Detecting the plurality of hidden states
calculating, by the forget layer of the state storage module, a selection value for selecting whether or not to retain the cell state of the previous state storage module in the current state storage module;
calculating, by the generation layer of the state storage module, a current value for updating a cell state of the current state storage module and an updated cell state;
calculating and transferring the cell state of the current state storage module by the delivery layer of the state storage module; and
calculating, by the output layer of the state storage module, a hidden state of the current state storage module;
Including,
The step of calculating the selection value is
the forgetting layer
math formula
Figure 112023006450138-pat00151

Calculate the selected value through the operation according to
remind
Figure 112023006450138-pat00152
is an optional value,
remind
Figure 112023006450138-pat00153
is the activation function,
remind
Figure 112023006450138-pat00154
is the selection weight,
remind
Figure 112023006450138-pat00155
is the hidden state of the previous state storage module,
remind
Figure 112023006450138-pat00156
is a demand statistics vector corresponding to the current state storage module,
remind
Figure 112023006450138-pat00157
Is a threshold applied to the selected value, characterized in that
A method for forecasting demand.
KR1020220019352A 2021-12-22 2022-02-15 Apparatus for forecasting demand based on extreme events and method therefor KR102516196B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210184776 2021-12-22
KR20210184776 2021-12-22

Publications (1)

Publication Number Publication Date
KR102516196B1 true KR102516196B1 (en) 2023-03-30

Family

ID=85985839

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220019352A KR102516196B1 (en) 2021-12-22 2022-02-15 Apparatus for forecasting demand based on extreme events and method therefor
KR1020220019353A KR102516197B1 (en) 2021-12-22 2022-02-15 Apparatus for generating demand forecasting model using Response Surface Methodology and method therefor

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220019353A KR102516197B1 (en) 2021-12-22 2022-02-15 Apparatus for generating demand forecasting model using Response Surface Methodology and method therefor

Country Status (1)

Country Link
KR (2) KR102516196B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090047131A (en) * 2007-11-07 2009-05-12 연세대학교 산학협력단 Method and system for forecasting part demand
KR20160050562A (en) * 2014-10-30 2016-05-11 삼성에스디에스 주식회사 Apparatus and method for generating prediction model
KR102050855B1 (en) * 2019-03-25 2020-01-08 강태기 Apparatus and method for forecasting demand
KR102294125B1 (en) 2020-10-27 2021-08-26 (주)한알 Method and system for predicting product demand using artificial intelligence
KR102343358B1 (en) * 2020-07-14 2021-12-27 한국광기술원 Postural correction wellness system based on artificial intelligence

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200057815A (en) * 2018-11-13 2020-05-27 한국전력공사 Method for predicting gas turbine abnormality and gas turbine abnormality prediction device using the same
KR102037279B1 (en) * 2019-02-11 2019-11-15 주식회사 딥노이드 Deep learning system and method for determining optimum learning model
KR102493664B1 (en) * 2020-01-29 2023-02-01 한국화학연구원 System and method for modelling prediction of herg induced cardiotoxicity
KR102412433B1 (en) * 2020-05-11 2022-06-23 주식회사 에이젠글로벌 Automatic data analysis method and system using artificial intelligence

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090047131A (en) * 2007-11-07 2009-05-12 연세대학교 산학협력단 Method and system for forecasting part demand
KR20160050562A (en) * 2014-10-30 2016-05-11 삼성에스디에스 주식회사 Apparatus and method for generating prediction model
KR102050855B1 (en) * 2019-03-25 2020-01-08 강태기 Apparatus and method for forecasting demand
KR102343358B1 (en) * 2020-07-14 2021-12-27 한국광기술원 Postural correction wellness system based on artificial intelligence
KR102294125B1 (en) 2020-10-27 2021-08-26 (주)한알 Method and system for predicting product demand using artificial intelligence

Also Published As

Publication number Publication date
KR102516197B1 (en) 2023-03-30

Similar Documents

Publication Publication Date Title
US20210278825A1 (en) Real-Time Production Scheduling with Deep Reinforcement Learning and Monte Carlo Tree Research
US11620612B2 (en) Systems and methods for inventory management and optimization
US20200242511A1 (en) Dynamic Data Selection for a Machine Learning Model
Tomlin Impact of supply learning when suppliers are unreliable
US20040093315A1 (en) Neural network training
Liu et al. Evaluating smart grid renewable energy accommodation capability with uncertain generation using deep reinforcement learning
CN108829766B (en) Interest point recommendation method, system, equipment and computer readable storage medium
US20210390498A1 (en) Systems and methods for inventory management and optimization
JP5242988B2 (en) Integrated demand prediction apparatus, integrated demand prediction method, and integrated demand prediction program
CN113256184B (en) Resource planning method for measurement and control data transmission resource integration satellite ground station
Dolatabadi et al. Deep reinforcement learning-based self-scheduling strategy for a CAES-PV system using accurate sky images-based forecasting
EP2963608A1 (en) System and method for prescriptive analytics
US20230186331A1 (en) Generalized demand estimation for automated forecasting systems
JP5551806B2 (en) Integrated demand prediction apparatus, integrated demand prediction method, and integrated demand prediction program
KR102516196B1 (en) Apparatus for forecasting demand based on extreme events and method therefor
CN117273233A (en) User future task amount and resource demand accurate prediction method based on long-short-term memory network model
CN115860363A (en) Resource dynamic scheduling adaptation method and system under limited demand scene
Kim Reinforcement learning
KR20230043547A (en) Method for learning of power transaction model based of deep reinforcement learning and method for transacting power using the power transaction model
CN114819442A (en) Operational research optimization method and device and computing equipment
Liang et al. A Reinforcement Learning Approach for Dynamic Rebalancing in Bike-Sharing System
KR102561345B1 (en) Apparatus and method for controlling hvac based on drqn
CN117236649B (en) Scheduling method for pet feed processing raw material demand
KR102677122B1 (en) Apparatus and method for optimizing power supply to a shared community
US20230041035A1 (en) Combining math-programming and reinforcement learning for problems with known transition dynamics

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant