KR102245717B1 - 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템 - Google Patents

인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템 Download PDF

Info

Publication number
KR102245717B1
KR102245717B1 KR1020190056322A KR20190056322A KR102245717B1 KR 102245717 B1 KR102245717 B1 KR 102245717B1 KR 1020190056322 A KR1020190056322 A KR 1020190056322A KR 20190056322 A KR20190056322 A KR 20190056322A KR 102245717 B1 KR102245717 B1 KR 102245717B1
Authority
KR
South Korea
Prior art keywords
sequence
prediction model
lstm
sales quantity
product
Prior art date
Application number
KR1020190056322A
Other languages
English (en)
Other versions
KR20200131549A (ko
Inventor
최원규
정다혜
Original Assignee
카페24 주식회사
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 카페24 주식회사 filed Critical 카페24 주식회사
Priority to KR1020190056322A priority Critical patent/KR102245717B1/ko
Publication of KR20200131549A publication Critical patent/KR20200131549A/ko
Application granted granted Critical
Publication of KR102245717B1 publication Critical patent/KR102245717B1/ko

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
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일 양태는 인공지능 모델을 이용한 상품 판매량 예측 방법을 개시하고 있다. 상기 방법은, 제 1 상품의 제 1 시점까지의 일별 판매 수량 정보를 획득하는 단계, 상기 제 1 상품의 제 2 시점의 판매수량 예측을 위해, 상기 획득된 일별 판매 수량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하는 단계(상기 제 2 시점은 상기 제 1 시점 이후의 시점임) 및 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 단계를 포함하되, 상기 제 1 예측 모델을 생성하는 단계는, 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키는 단계; 및 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하는 단계를 포함한다.

Description

인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템{ITEM SALES VOLUME PREDICTION METHOD, APPARATUS AND SYSTEM USING ARTIFICIAL INTELLIGENCE MODEL}
본 발명은 상품 판매수량을 예측하는 방법에 관한 것으로, 보다 상세하게는, 판매 예상분에 해당하는 재고보유를 위해 상품의 미래 판매 수량을 예측하는 방법에 관한 것이다.
의류와 같은 상품을 판매하는 영업은 적절한 재고량 관리가 중요하다. 특히, 생산 또는 주문 후 입고 기간을 기준으로 기간 내 판매예상분에 해당하는 재고를 보유하고 있어야 구매자의 요청에 실시간으로 대응할 수 있다. 재고가 부족하여 고객 주문을 충족시키지 못하는 경우, 판매기회를 상실할 뿐만 아니라 고객 이탈의 위험을 감수해야 한다. 이러한 문제점을 해결하기 위해 적정재고 수준을 유지하는 것이 요구되고, 이를 위해 미래의 상품판매량을 정확히 예측하는 것이 필요하다.
통상적으로, 구매 주문 후, 실제 상품의 입고까지는 일정기간이 소요된다. 따라서, 미래시점의 예상 판매량에 근거하여 추가물량을 미리미리 주문하지 않으면 위와 같은 문제가 발생된다. 특히, 외부생산 제품의 경우, 미리미리 재고를 보충하지 않으면 필요물량을 원천적으로 확보하지 못할 위험도 존재한다.
위와 같은 적정재고 유지를 상품판매량의 예측이 필요함에도 불구하고, 그 예측이 적절하게 이루어지지 못한 이유에는 다음과 같은 이유가 있다. 먼저, 상품판매량은 다양한 변수에 의해 영향을 받으며, 지속적인 불확실성에 노출되기 때문에, 예측이 어렵다. 또한, 온라인 쇼핑몰의 경우, 쇼핑몰 운영자는 상품판매량을 예측할 수 있는 전문적인 지식을 가지고 있지 않으며, 다수 상품을 관리해야 하기 때문에, 전체상품의 판매량 예측을 위해서는 과도한 비용과 노력이 들게 되는 문제가 있다. 또한, 운영자의 자의적인 판단이 개입되는 경우가 존재하는데, 이러한 경우 상품별로 동일한 기준의 의사결정이 이루어지지 않아 적절한 재고관리가 되지 않는 문제점이 있다.
상술한 문제점을 해결하기 위한 본 발명의 일 양태에 따른 목적은, 일정기간 이후의 판매량을 인공지능 기반의 예측 모델을 이용하여 계산하는 상품 판매량 예측 방법 및 장치를 제공하는 것이다.
또한, 본 발명의 다른 양태에 따른 목적은 사용자의 입력이나 개입없이 자율적으로 판매량을 판단하고, 사전에 설정된 기준에 따라 자동으로 재주문 경보를 발령하는 상품 판매량 예측 방법 및 장치를 제공하는 것이다.
더욱이, 본 발명의 또 다른 양태에 따른 목적은 특정 상품의 일별 판매동향에 따라 동적으로 예측모델을 수정하기 위해 실시간 예측이 이루어지고, 전체품목에 대해 일괄적용이 가능하며, 상품판매가 둔화된 시점에 과다 추정하는 오류를 보정할 수 있는 상품 판매량 예측 방법 및 장치를 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른 상품 판매량 예측 방법은, 제 1 상품의 제 1 시점까지의 일별 판매 수량 정보를 획득하는 단계, 상기 제 1 상품의 제 2 시점의 판매수량 예측을 위해, 상기 획득된 일별 판매 수량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하는 단계(상기 제 2 시점은 상기 제 1 시점 이후의 시점임) 및 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 단계를 포함하되, 상기 제 1 예측 모델을 생성하는 단계는, 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키는 단계; 및 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하는 단계를 포함할 수 있다.
상기 제 1 예측 모델은 LSTM(Long Short Term Memory) 모델을 포함할 수 있다.
상기 학습데이터는 판매 개시 시점으로부터 제 1 기간 단위로 발생한 판매수량을 합산한 판매수량 정보를 포함할 수 있다.
상기 제 1 기간은 3일 내지 10일의 기간일 수 있다.
상기 상품 판매량 예측 방법은 상기 제 1 상품의 일별 판매 수량 정보 중 특정 일자의 판매수량 정보의 부존재 여부를 판단하여 상기 일별 판매 수량 정보의 학습데이터로써의 사용 여부를 결정하는 단계를 더 포함할 수 있다.
상기 상품 판매량 예측 방법은 중앙값 필터(median filter)를 사용하여, 상기 일별 판매 수량 정보의 각 일자별 판매 수량 값을 중앙값과 비교하는 단계, 비교 결과, 중앙값으로부터 벗어난 수치가 임계값보다 큰 제 3 시점의 일별 판매수량 값을 선별하는 단계 및 상기 선별된 제 3 시점의 일별 판매수량 값을, 중앙값을 이용하여 연산된 값으로 대체하는 단계를 더 포함할 수 있다.
상기 선별된 제 3 시점의 일별 판매수량 값을, 중앙값을 이용하여 연산된 값으로 대체하는 단계는, 상기 선별된 제 3 시점의 일별 판매수량 값을 상기 제 3 시점 전일까지의 평균 판매량으로 대체한 후, 대체된 값과의 차이만큼을 부가하는 단계를 포함할 수 있다.
상기 상품 판매량 예측 방법은 중앙값 필터를 통해 처리된 값을 갖는 일별 판매 수량 값에 대해 스탠다드 스케일링(standard scaling)을 수행하는 단계를 더 포함할 수 있다.
상기 제 1 예측 모델을 생성하는 단계는, 기보유된 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하는 단계, 상기 복수 개의 구조화된 후보 예측 모델에 상기 일별 판매 수량 정보 중 제 1 부분을 학습데이터로 입력하여 학습시키는 단계, 상기 일별 판매 수량 정보 중 제 2 부분을 이용하여 상기 복수 개의 구조화된 후보 예측 모델의 학습 성능을 평가하는 단계 및 평가 결과 가장 학습 성능이 우수한 구조화된 후보 예측 모델을 상기 제 1 예측 모델로 선정하는 단계를 포함할 수 있다.
상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM 모델의 LSTM 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함할 수 있다.
상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 각 시퀀스에 대응하는 하이퍼 파라미터의 값을 갖되, 각 시퀀스에 대응하는 하이퍼 파라미터는 메모리 셀의 갯수와 연관된 제 1 변수, 입력 또는 출력 속성의 갯수와 연관된 제 2 변수 및 시계열 데이터의 입력 또는 출력 길이와 연관된 제 3 변수 중 적어도 하나를 포함할수 있다.
상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른 상품 판매량 예측 장치는, 제 1 상품의 일별 판매량 정보 및 프로세서(processor)의 동작과 관련된 명령어를 저장하는 메모리 및 제 1 시점까지 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 상기 제 1 상품의 제 2 시점(상기 제 2 시점은 상기 제 1 시점 이후의 시점임)의 판매수량 예측을 위해, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 프로세서를 포함하되, 상기 프로세서는, 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키고, 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른 상품 판매량 예측 시스템은, 제 1 상품의 제 2 시점(제 2 시점은 제 1 시점보다 후속하는 시점임)까지의 판매량에 대한 예측을 서버로 요청하는 사용자 단말 및 상기 사용자 단말로부터의 요청에 응답하여, 상기 제 1 시점까지의 상기 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 서버를 포함하되, 상기 서버는 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키고, 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른 상품 판매량 예측 방법은, 제 1 상품의 제 1 시점까지의 일별 판매 수량 정보를 획득하는 단계, 상기 제 1 상품의 제 2 시점의 판매수량 예측을 위해, 상기 획득된 일별 판매 수량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하는 단계(상기 제 2 시점은 상기 제 1 시점 이후의 시점임) 및 상기 일별 판매 수량 정보를 기반으로 상기 결정된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 단계를 포함하되, 상기 제 1 예측 모델을 생성하는 단계는 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 구조화된 후보 예측 모델을 생성하는 단계를 포함하되, 상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함할 수 있다.
상기 제 1 예측 모델을 생성하는 단계는, 구조화된 후보 예측 모델을 복수 개 생성하여 상기 일별 판매 수량 정보 중 제 1 부분을 학습데이터로 입력함에 의해 상기 복수 개의 구조화된 후보 예측 모델을 학습시키는 단계, 상기 일별 판매 수량 정보 중 제 2 부분을 테스트 데이터로 추출하여 이용하여 상기 복수 개의 구조화된 후보 예측 모델의 학습 성능을 평가하는 단계 및 평가 결과 가장 학습 성능이 가장 우수한 구조화된 후보 예측 모델을 상기 제 1 예측 모델로 선정하는 단계를 더 포함할 수 있다.
상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 각 시퀀스에 대응하는 하이퍼 파라미터의 값을 갖되, 각 시퀀스에 대응하는 하이퍼 파라미터는 메모리 셀의 갯수와 연관된 제 1 변수, 입력 또는 출력 속성 갯수와 연관된 제 2 변수 및 시계열 데이터의 입력 또는 출력 길이와 연관된 제 3 변수 중 적어도 하나를 포함할 수 있다.
상기 제 1 예측 모델을 생성하는 단계는, 상기 일별 판매 수량 정보 중 상기 제 1 부분을 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키는 단계 및 상기 일별 판매 수량 정보 중 상기 제 2 부분을 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하는 단계를 더 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른 상품 판매량 예측 장치는, 제 1 상품의 일별 판매량 정보 및 프로세서(processor)의 동작과 관련된 명령어를 저장하는 메모리 및 제 1 시점까지 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 상기 제 1 상품의 제 2 시점(상기 제 2 시점은 상기 제 1 시점 이후의 시점임)의 판매수량 예측을 위해, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 프로세서를 포함하되, 상기 프로세서는, 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 구조화된 후보 예측 모델을 생성하되, 상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른 상품 판매량 예측 시스템은, 제 1 상품의 제 2 시점(제 2 시점은 제 1 시점보다 후속하는 시점임)까지의 판매량에 대한 예측을 서버로 요청하는 사용자 단말 및 상기 사용자 단말로부터의 요청에 응답하여, 상기 제 1 시점까지의 상기 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 서버를 포함하되, 상기 서버는 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 구조화된 후보 예측 모델을 생성하되, 상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함할 수 있다.
본 발명의 상품 판매량 예측 방법 및 장치에 따르면, 일정기간 이후의 특정 상품의 판매량을 인공지능 기반의 예측모델을 이용하여 정밀하게 예측함으로써, 상품 재고를 적절하게 유지하고, 주문 고객의 요청에 적절하게 대처함으로써 상품 판매의 효율성을 증대시키는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법이 적용되는 시스템을 나타낸 개념도,
도 2a 및 도 2b는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에서 사용되는 인공지능 예측 모델을 설명하기 위한 개념도,
도 3은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법을 개략적으로 나타낸 흐름도,
도 4는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에 사용되는 데이터를 가공하는 방법을 설명하기 위한 도면,
도 5는 인공지능 예측 모델에 데이터를 적용하기 전의 전처리 과정을 구체적으로 나타낸 상세흐름도,
도 6은 아웃라이어(outlier)가 일어난 예를 나타낸 그래프,
도 7은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법의 판매수량 예측을 위한 인공지능 예측 모델을 생성하는 과정을 구체적으로 나타낸 상세흐름도,
도 8은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에 적용가능한 LSTM(Long Short Term Memory) 모델을 예시적으로 나타낸 도면,
도 9a 및 도 9b는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법의 파라미터 변동에 따른 예측 결과를 나타낸 도면,
도 10은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법을 이용하여 판매수량을 예측한 결과를 나타낸 도면,
도 11은 본 발명의 다른 실시예에 따른 상품 판매량 예측 방법을 이용하여 판매수량을 예측한 결과를 나타낸 도면,
도 12는 본 발명의 일 실시예에 따른 상품 판매량 예측 장치를 개략적으로 나타낸 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
상품 판매량 예측 시스템
도 1은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법이 적용되는 시스템을 나타낸 개념도이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 상품 판매량 예측 시스템은 쇼핑몰을 운영하는 관리자의 사용자 단말(110-1~110-N), 네트워크(120) 및 상품 판매량 예측 장치(130)를 포함할 수 있다.
도 1을 참조하면, 쇼핑몰(110-1~110-N)은 인터넷을 통하여 상품 및/또는 서비스을 판매하는 온라인 쇼핑몰을 의미할 수 있다. 쇼핑몰(110-1~110-N)은 인터넷 상의 특정 웹 사이트를 기반으로 동작한다. 본 발명의 실시예에 따르면, 상기 복수 개의 쇼핑몰(110-1~110-N)은 네트워크(120)를 통해 상품 판매량 예측 장치(130)와 연동한다. 본 발명의 실시예에 따르면, 상품 판매량 예측 장치(130)는 온라인 쇼핑몰들(110-1~110-N)의 운영 정보 및 상품 정보 등을 관리하는 서버로써 동작할 수 있고, 온라인 쇼핑몰들(110-1~110-N)에 쇼핑몰 운영과 관련된 플랫폼을 제공하여, 운영자가 용이하게 쇼핑몰들(110-1~110-N)을 개설하고 운영할 수 있도록 지원할 수 있다. 그리고, 이러한 과정에서 생겨나는 쇼핑몰의 운영정보, 상품정보, 판매정보, 고객정보 등은 상품 판매량 예측 장치(130)의 내부 스토리지 또는 외부의 대용량 데이터베이스에 저장되어 있을 수 있다.
본 발명의 실시예에 따르면, 상품 판매량 예측 장치(130)는 컴퓨팅 장치로 구현될 수 있다. 여기서 말하는 컴퓨터 장치는 서버 급 컴퓨터 단말기로 구현될 수 있다. 상기 컴퓨터 장치는 통상적인 컴퓨터 단말이 가지는 입력 장치, 표시 장치, 네트워킹 장치, 하드디스크, 프로그램을 저장하는 메모리 및 메모리에 저장된 프로그램을 수행시키는 프로세서 등을 구비할 수 있다. 다만, 반드시 서버 급 컴퓨터 단말로 구현되어야 하는 것은 아니다.
쇼핑몰(110-1~110-N)과 연관된 사용자 단말(미도시)은 상기 쇼핑몰(110-1~110-N)의 운영자의 단말기를 포함한다. 단말도 스마트폰, PC 등의 컴퓨팅 디바이스로 구현될 수 있다. 사용자 단말은 상기 쇼핑몰(110-1~110-N)의 상기 특정 웹 사이트에 접속하여 쇼핑몰(110-1~110-N)의 운영과 연관된 신호를 네트워크(120)를 통해 서버(130)로 제공함에 의해 쇼핑몰(110-1~110-N)의 운영을 관리한다.
사용자 단말은 자신의 쇼핑몰(110-1~110-N)에 진열된 상품의 재고를 관리하기 위해, 상품 판매량 예측 장치(130)의 판매량 예측 알고리즘을 활용할 수 있다. 사용자 단말은 상품 판매량 예측 장치(130)로 특정 상품의 판매량 예측을 요청하는 신호를 제공할 수 있다. 이는, 웹 사이트 상에 표시되는 특정 아이콘을 클릭함에 의해 이루어질 수 있다. 사용자 단말에서 생성된, 판매량 예측 요청 신호는 네트워크(120)를 통해 상품 판매량 예측 장치(130)로 전송된다.
상품 판매량 예측 장치(130)는 상기 판매량 예측 요청 신호를 수신하여 판매량 예측을 수행한다. 이를 위해, 장치(130)는 기확보된 일별 판매 수량 정보를 기반으로 인공지능 기반의 예측모델을 학습시키고, 학습된 예측모델을 이용하여 미래시점의 상품 판매량을 예측할 수 있다. 그리고, 예측된 상품 판매량과 현재 해당 상품의 재고량을 비교하여 예측치가 현재 재고량보다 클 경우, 상품 주문을 자동으로 발생시킬 수 있다. 이때, 재고 관련 경보를 표시할 수 있고, 이와 관련된 신호를 사용자 단말로 제공한다. 이와 같은 재고와 관련된 경보 신호를 수신한 사용자 단말은 직접 해당 상품의 부족분을 자동 또는 수동으로 주문할 수 있다.
본 발명의 다른 실시예에 따르면, 상품 판매량의 예측은 사용자 단말에서 이루어질 수 있다. 사용자 단말은 상품 판매량 예측과 관련된 알고리즘을 포함하는 애플리케이션(APP: application)을 설치할 수 있고, 설치된 애플리케이션을 실행하여 단말의 프로세서에 의해 특정 상품의 판매량을 예측할 수 있다. 또는, 사용자 단말 및 쇼핑몰 관리를 위한 서버가 아닌, 상품 판매량 예측에만 특화된 제3의 장치가 상품의 판매량을 예측할 수 있다. 예컨대, 온라인 쇼핑몰과 관련없이, 일반 오프라인 매장의 상품도, 상품에 대한 시간에 따른 일별 판매량 정보만 확보된다면, 본 발명의 일 실시예에 따른 상품판매량 예측 방법을 적용하여 향후 발생될 판매량을 예측할 수 있다.
네트워크(120)는 쇼핑몰(110-1~110-N)과 상품 판매량 예측 장치(130)를 연결하는 망으로써, 유선망 및/또는 무선망(인터넷(internet))을 포함할 수 있다.
이하, 본 명세서 상에서, "판매량 예측 장치", "장치", 및/또는 "단말"이라는 용어는 상품 판매량을 예측하는 사용자 단말, 상품 판매량 예측 장치(130) 및 제3의 장치 중 적어도 하나를 의미할 수 있다.
상품 판매량 예측 방법
도 2a 및 도 2b는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에서 사용되는 인공지능 모델을 설명하기 위한 개념도이다.
도 2a를 참조하면, 본 발명의 일 실시예에 있어서, 장치는 미래시점의 판매수량을 예측하기 위해, 일정기간 동안 확보한 일별 판매 수량 정보를 학습 데이터로 사용한다. 또한, 장치는 인공신경망을 활용하는 인공지능 예측 모델을 예측을 위한 알고리즘으로 사용한다. 인공신경망은 다수의 입력(예컨대, 특정 시점)과 타겟 샘플(특정 시점의 일별 판매수량)을 관찰하면서 입력을 타겟에 매핑하는 과정을 포함한다. 다른 실시예에 따르면, 이미지 내 객체를 구분하는 인공신경망에서, 입력은 이미지가 되고, 타겟은 고양이와 같은 특정 객체가 된다. 인공신경망은 복수 개의 층(layer)에서의 처리 과정을 포함하고, 층에서 입력 데이터가 처리되는 내용은 각 층의 가중치에 저장된다. 즉, 인공신경망은 타겟을 잘 판별할 수 있는 각 층의 가중치의 정확한 값을 찾아내는 것이라고 볼 수 있다. "층"이라는 용어는 이하 시퀀스(sequence) 및/또는 레이어라고 불릴 수 있다.
가중치의 값을 정확히 찾기 위해, 손실 함수(loss function)가 사용된다. 손실 함수란 예측된 결과가 실제와 얼마나 벗어났는지를 측정하는 함수이다. 기본적으로, 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에서 사용되는 딥 러닝(deep learning) 방법은 과거 분에 해당하는, 기확보된 일별 판매 수량 정보를 이용하여 측정된 손실 함수를 피드백으로 사용한다. 손실함수를 통해 벗어난 정도가 감소되는 방향으로 조금씩 가중치를 수정하는 것이다. 딥러닝 초기에는 가중치가 랜덤한 값으로 할당되기 때문에, 출력은 기대한 것보다 멀고 손실함수가 매우 높지만, 네트워크가 모든 샘플들(과거분의 일별 판매 수량 정보의 저장된 내역들)을 처리하면서 가중치가 올바른 방향으로 수정되게 된다.
도 2b를 참조하면, 본 발명의 실시예에 있어서, 장치는 RNN(Recurrent Neural Network) 방식의 인공지능 모델을 예측모델로써 사용할 수 있다(도 2b의 좌측 도면 참조, 도 2b의 우측도면은 일반적인 NN(Neural Network)의 개념도임). RNN은 과거 정보를 사용하여 구축되며 새로운 정보를 계속 업데이트함에 의해, 순차적인 자료에서 규칙적인 패턴을 인식하거나 의미를 추론하는 학습 방법이다. 특히, 순환구조를 가지며, 특정 층의 결과가 다시 해당 층의 입력으로 들어갈 수 있다. 이는 시간의 흐름과 연관된다. RNN은 네트워크가 깊어질수록 긴 시퀀스를 처리할 때, 기억을 잘 못하는 단점이 있다. 따라서, 이를 RNN 중에서도, 위와 같은 단점을 보강한 LSTM(Long Short Term Memory) 모델이 미래 판매량 예측에 적합할 수 있다.
LSTM 모델은 RNN의 그래디언트 소실(vanishing gradients) 문제를 해결하여, 오차 그래디언트가 시간을 거슬러서 잘 흘러갈 수 있도록 도와준다. LSTM 모듈(또는 시퀀스)은 여러 개의 게이트(gate)가 붙어있는 셀(cell)로 이루어져 있으며, 이 셀의 정보를 새로 저장하고, 셀의 정보를 불러오며, 셀의 정보를 유지하는 기능이 있다. 이는 컴퓨터의 메모리 셀과 유사하다고 볼 수 있다. LSTM 모델의 셀은 셀에 연결된 게이트의 값을 보고 무엇을 저장할지, 언제 정보를 내보낼지, 언제 쓰고 언제 지울지를 결정한다. 여기서, 이 게이트가 열리거나(1) 닫히는(0) 디지털 방식이 아닌 아날로그 방식인 것을 주목해야 한다. 즉, 각 게이트는 0 내지 1의 값을 가지며 게이트의 값에 비례하여 여러가지 동작을 한다. 각 게이트가 갖는 값, 즉, 게이트의 계수(가중치)는 은닉층의 값과 같은 원리로 학습된다. 즉, 게이트는 언제 신호를 불러올지, 내보낼지, 유지할지 학습하며 이 학습과정은 출력의 오차를 이용한 경사하강법을 사용할 수 있다. 본 발명의 일 실시예에 따르면, 상품 판매량 예측을 위해 사용되는 LSTM 모델에서 하이퍼 파라미터를 정할 때 다음의 사항을 고려하는 것이 바람직하다.
- 과적합(overfitting)이 일어나는지를 계속 모니터링한다. 과적합은 신경망이 학습 데이터를 보고 패턴을 인식하는 것이 아니라 그냥 데이터를 외워버리는 것인데 이렇게 되면 처음 보는 데이터가 왔을 때 제대로 결과를 내지 못하기 때문이다.
- 학습 과정에서 규제(regularization)가 필요할 수도 있다. l1-규제, l2-규제, 드롭아웃을 고려하는 것이 바람직하다.
- 학습엔 사용하지 않는 테스트 데이터(test set)를 별도로 마련하고, 학습 완료 후, 성능 평가 때 상기 시험 데이터를 사용한다. 또한, 검증 데이터(validation set)도 별도로 마련하는 것이 바람직하다.
- 신경망이 커질수록 더 많고 복잡한 패턴을 인식할 수 있다. 그렇지만 신경망의 크기를 키우면 신경망의 파라미터의 수가 늘어나게 되고 결과적으로 과적합이 일어날 수 있다. 따라서, 임계 값을 설정하여 과적합에 대비한다.
- 데이터는 많으면 많을수록 좋고, 같은 데이터로 여러 번 학습을 시키는 것이 바람직하다.
- 조기 종료(early stopping)를 활용할 수 있다. 또한, 검증 데이터를 대상으로 얼마나 성능이 나오는지 확인하면서 언제 학습을 끝낼 것인지를 정할 수 있다.
- 학습 속도(learning rate)를 적절히 설정한다.
- 다른 문제가 없다면 층은 많을수록 좋다.
- LSTM 예측 모델에서는 하이퍼 탄젠트보다 소프트사인(softsign) 함수를 사용한다. 속도도 더 빠르고 그라디언트가 평평해지는 문제(그라디언트 소실)도 덜 발생하기 때문이다.
- 회귀 작업에서는 데이터를 꼭 정규화하는 것이 바람직하다. 또한, 평균제곱오차(MSE)를 목적 함수로 하고 출력층의 활성함수(activation function)는 y=x(identity function)을 사용하는 것이 바람직하다. 다만, 반드시 이에 한정되는 것은 아니다.
도 3은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법을 개략적으로 나타낸 흐름도이다.
도 3을 참조하면, 장치는 일별 판매 수량 정보를 획득한다(S310). 이때, 장치는 다수의 상품의 판매 수량 정보를 획득할 수 있다. 또한, 각 상품의 1일 단위의 판매수량 정보를 획득한다. 경우에 따라서는, 누적 판매량 정보를 획득하여 이를 판매량 예측에 사용할 수도 있다. 또한, 윈도우 방식(window method)를 적용한 상품별 판매 수량 데이터를 사용할 수도 있다.
장치는, 상품별로 하루 단위의 상품 판매량을 입력 데이터로 사용하지 않고, 일정 기간 단위의 상품 판매량을 합산하여 입력데이터로 사용한다.
도 4는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에 사용되는 데이터를 가공하는 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 장치는 매일이 아닌 5일씩 발생한 판매 수량 값을 합산하여 학습데이터로 사용한다. 즉, 다수의 행과 다수의 열을 갖는 매트릭스를 활용할 수 있다. 행에는 판매량 예측 대상이 되는 상품들을 배치하고, 열에는 단위 기간에 따른 판매 수량을 배치한다. 이때, 0번 열은 판매 개시 시점부터 5일까지의 판매수량을 합산한 값을, 1번 열은 6일부터 10일까지의 판매수량을 합산한 값을 배치한다. 장치는 이와 같은 열이 최소 6개 이상, 즉 30일 이상의 데이터가 확보된 시점에 판매량 예측을 수행한다. 30일 이하의 시점의 데이터만 가지고는 예측 모델 학습이 어렵고, 학습성능이 매우 떨어지기 때문에, 위와 같이 예측 수행을 위한 최소한의 데이터를 확보하는 것이 중요하다. 본 발명의 실시예에 따르면, 반드시 5일 단위의 판매수량 값을 학습 및 예측에 활용해야만 하는 것은 아니고, 1일, 2일, 3일, 5일, 8일, 10일, 15일, 20일, 25일 30일의 단위로 판매 수량 값을 합산하여 학습 및 예측에 활용해도 무방하다.
다시 도 3으로 돌아가서, 장치는 위와 같이 학습 데이터를 확보하고 나면, 장치는 확보된 데이터를 예측 모델 학습에 적절한 형태로 전처리한다(S320). 본 발명의 일 실시예에 따른 데이터 전처리 과정은 일별 판매 수량 값이 일관적이지 않은 (1) 특정 상품을 제외하는 처리, (2) 아웃라이어 검출(Outlier Detection) 처리 및 (3) 스탠다드 스케일링(standard scaling) 처리를 포함할 수 있다. 이는 도 5를 통해 보다 상세히 설명한다.
데이터 전처리가 완료되면, 장치는, 판매 수량 예측 모델을 생성한다(S330). 이는 앞서 설명한 바와 같이, LSTM 모델을 활용하여 예측모델을 구조화하고, 이후 구조화된 예측모델의 하이퍼 파라미터의 튜닝(tuning)을 수행하는 것이 바람직하다. 즉, RNN의 단점을 보강한 LSTM 모델이 일별 판매 수량 정보와 같은 시계열 데이터에 대한 학습에 적합하다. 다만, 반드시 LSTM 모델에만 한정되는 것은 아니고, 1D-CNN(Convolutional Neural Network), DNN(Deep Neural Network), Xgb, lightgbm, linear-regression, 기본 인공신경망, Xgb & LSTM Emsemble, AE-denoising(denoising Auto-Encoder) 중 적어도 하나를 사용할 수도 있다. 이때, 모델의 종류 및 구조를 변경하면서 해당 모델의 각 층에서 사용되는 하이퍼 파라미터의 값도 학습시킬 수 있다. 즉, 하이퍼 파라미터의 값을 변경하면서 판매 수량에 대한 예측을 수행하고, 테스트 데이터로 미리 추출해 둔 데이터를 기반으로 학습 성능을 평가함에 의해 최적의 모델 구조 및/또는 하이퍼 파라미터의 값을 확정할 수 있다.
본 발명의 일 실시예에 따르면, 복수 개의 상품들에 대한 일별 판매 수량 정보를 종합적으로 이용하여 최적의 인공지능 예측 모델을 선정할 수 있다. 이때, 학습 및 예측에 사용되는 일별 판매 수량 정보는 판매수량이 높은 상위 n%의 데이터만 사용되도록 제어할 수 있다. n은 10 내지 30 사이의 값을 가질 수 있고, 바람직하게는, 약 25%의 값을 가질 수 있다.
또는, 개별 상품별로 인공지능 예측 모델을 독립적으로 선정하여, 제 1 상품은 제 1 인공지능 예측 모델을, 제 2 상품은 제 2 인공지능 예측 모델을 사용하도록 제어할 수도 있다.
경우에 따라서는, 상품을 그룹핑하여, 제 1 카테고리의 상품들(A, B, C 상품)에는 제 1 인공지능 예측 모델을 선정하여 사용하고, 제 2 카테고리의 상품들(D, E, F 상품)에는 제 2 인공지능 예측 모델을 선정하여 사용할 수 있다. 개별 상품별로 독립적인 인공지능 예측모델을 새롭게 생성하는 것 역시 장치의 부하를 야기할 수 있기 때문에, 그룹핑된 상품군에 하나의 예측모델을 할당할 수 있다. 또는, 특정 쇼핑몰 및/또는 상점별로 대응하는 하나 또는 그 이상의 예측모델을 할당할 수 있다.
판매 수량 예측을 위한 인공지능 모델을 생성하고 나면, 장치는 테스트 데이터를 통한 성능 평가를 수행하여 가장 우수한 성능을 보인 인공지능 예측 모델(예측 정확도가 가장 높은 예측 모델임)을 이용하여 미래 특정 시점의 판매수량을 예측함에 의해 예측 결과값을 획득할 수 있다(S340). 그리고는, 예측 결과값을 그래프로 시각화하여 사용자가 확인할 수 있도록 한다.
도 5는 인공지능 모델에 데이터를 적용하기 전의 전처리 과정을 구체적으로 나타낸 상세흐름도이다.
도 5를 참조하면, 장치는 특정 상품 또는 복수 개의 상품들의 일별 판매수량 정보를 획득한 후에, 인공지능 예측 모델로의 적용을 위한 전처리를 위해 데이터를 정제한다(S510). 본 발명의 일 실시예에 따른 판매수량 예측은 시계열 데이터의 추세를 보기 위한 모델이기에, 데이터가 특정 부분에서 끊겨 있는 경우, 이를 학습데이터로 사용할 수가 없다. 따라서, 특정 일자의 일별 상품수량 정보가 확보되지 않은 데이터는 학습데이터에서 삭제한다. 예컨대, A 상품, B 상품 및 C 상품의 일별 판매수량 정보가 존재하는 경우, 각 상품별 일별 판매수량 정보의 데이터의 연속성을 확인한다. 이때, B 상품 및 C 상품의 데이터는 연속성이 유지되는데 반해, A 상품의 경우, 13일차의 일별 판매수량 정보가 존재하지 않는 경우, A 상품의 데이터는 폐기하고, B 상품 및 C 상품의 일별 판매수량 정보를 가지고 생성된 예측 모델을 A 상품에도 활용할 수 있다.
데이터 정제를 완료하고 나면, 장치는 중앙값 필터를 이용하여 아웃라이어 검출(outlier detection)을 수행한다(S520). 여기서 사용되는 중앙값 필터는 이미지나 기타 신호로부터 잡음을 제거할 때 자주 사용되는 필터로써, 특정 신호의 포인트와 신호의 중앙값과의 관계를 기준으로 그로부터 일정 범위 이상 벗어난 아웃라이어(점프(jump)라고도 부를 수 있음)를 선별하는데 사용한다.
도 6은 아웃라이어(outlier)가 일어난 예를 나타낸 그래프이다.
도 6을 참조하면, 장치는 중앙값 필터를 통해 중앙값으로부터 임계 범위 이상 벗어난 특정 지점(610)을 아웃라이어로 선별하고, 해당 지점을 중앙값 기반의 연산된 값으로 처리한다. 예컨대, 해당 지점(610)의 값을 이전 날까지의 중앙값 또는 평균판매량으로 처리할 수 있다. 보다 바람직하게는, 해당 지점(610)의 판매수량을 이전 날까지의 평균 판매량으로 대체한 후, 대체된 차이만큼을 y 값에 더해줄 수 있다. 본 발명의 실시예에 따르면, 아웃라이어를 찾기 위한 임계범위에 대한 파라미터가 적절해야 학습 성능이 좋아진다. 본 발명의 실시예에 따르면, 실험에 의해 획득된 결과를 비교해 봤을 때, 상기 임계 범위는 15 내지 30의 값이 좋고, 보다 바람직하게는, 20 내지 25 사이의 값이 적절하다. 상기 임계 범위와 관련된 파라미터의 값은 도 3의 인공지능 기반의 예측 모델의 생성 과정, 그 중에서도 학습 과정에서 최적화될 수 있다. 최적화는 값을 변경하면서 최적의 값을 찾는 과정을 포함한다.
다시 도 5로 돌아가서, 아웃라이어 검출이 완료되고 나면, 장치는 단계(S510, 520)을 거친 데이터를 스탠다드 스케일링(standard scaling)한다(S530). 이는 자료 집합에 적용되는 전처리의 일 과정으로 단계(S510, S520)을 거쳐 획득된 데이터에 선형변환을 적용하여 전체 데이터의 분포를 평균 0, 그리고 분산 1이 되도록 하는 과정이다. 이러한 스케일링은 데이터의 오버플로우(overflow)나 언더플로우(underflow)를 방지하고, 독립 변수의 공분산 행렬의 조건수(condition number)를 감소시켜 최적화 과정에서의 안정성 및 수렴 속도를 향상시킬 수 있다.
도 7은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법의 판매수량 예측을 위한 인공지능 예측 모델을 생성하는 과정을 구체적으로 나타낸 상세흐름도이다.
도 7을 참조하면, 데이터 전처리 과정이 완료되면, 장치는 복수 개의 인공지능 예측 모델을 보유하고 있을 수 있다. 여기에는, LSTM 모델의 종류가 다수일 수도 있고, RNN, DNN 및 CNN과 같이 LSTM 모델이 아닌 다른 인공지능 모델(예컨대, 앞서 설명한 1D-CNN, DNN, Xgb, lightgbm, linear-regression, Xgb & LSTM Emsemble, AE-denoising 등)이 다수 포함될 수 있다. 장치는, 다수의 LSTM 모델 및 다른 인공지능 모델에 일별 판매 수량 정보를 학습 데이터로 적용하여 각 예측 모델들을 학습시킨다(S710).
장치는, 모델 구조를 변경하면서 예측모델들을 학습시킬 수 있다(S720). 또한, 모델 구조를 변경하면서, 장치는 특정 구조화된 예측 모델 내에서 사용되는 하이퍼 파라미터의 값을 변경한다(S730). 즉, 구조화된 예측모델 알고리즘에서 사용되는 각종 설정값(예컨대, 각 레이어의 변수들)들을 튜닝하는 단계를 거친다. 본 발명의 실시예에 따르면, 상기 각 레이어의 변수들은 1개 시퀀스의 길이(시계열 데이터의 입력 갯수), 변수 개수, 각 셀의 출력 크기, 결과 분류를 위한 총 수, 학습률, 학습 데이터를 몇 회 반복 학습할 것인지, 및/또는 각 레이어들의 가중치 값 등을 포함할 수 있다.
장치는 LSTM 모듈(또는 시퀀스)을 다수 개 쌓아서 하나의 LSTM 예측 모델을 생성할 수 있다. 이때, LSTM 예측 모델 생성을 위한 구조, 각 레이어의 변수들의 초기 샘플링 값 및/또는 상기 LSTM 예측 모델 구조를 적절히 구성하는 방법은 메모리(미도시)에 미리 저장되어 있을 수 있다. LSTM 모델 구조 생성 및 변수 변경 과정은 도 8을 예를 들어 보다 상세히 설명한다.
도 8은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법에 적용가능한 LSTM(Long Short Term Memory) 모델을 예시적으로 나타낸 도면이다.
도 8을 참조하면, 장치는 LSTM 1번 시퀀스(sequence)(레이어라고 부를 수 있음), LSTM의 드롭아웃(dropout) 시퀀스, 그리고는, LSTM 2번 시퀀스, 그 다음 덴스(dense) 시퀀스를 순차적으로 쌓은 LSTM 모델을 생성할 수 있다. 이때, LSTM 1번 시퀀스는 입력으로 (1, 6, 1)이 들어오고, 출력으로 (1, 6, 63)을 출력한다. 두 번째 시퀀스인 드롭아웃 1 시퀀스는 LSTM 1번 시퀀스의 출력인 (1, 6, 63)을 입력으로 받아, (1, 6, 63)을 출력으로 드롭아웃(dropout)한다. 그 하위 시퀀스인 LSTM 2번 시퀀스는 드롭아웃 1 시퀀스의 출력인 (1, 6, 63)을 입력으로 받아, (1, 32)를 출력한다. 마지막 덴스 1 시퀀스는 LSTM 2번 시퀀스의 (1, 32)를 입력으로 받아 (1,1)을 출력한다. 여기서, 드롭아웃(dropout)은 과적합을 방지하기 위해, 학습시에 지정된 비율만큼 임의의 입력 뉴런(1차원 또는 2차원)을 제외시키는 시퀀스이다. LSTM 시퀀스는 앞서 설명한 순환 신경망 레이어 중 하나이고, 덴스 시퀀스는 모들 입력 뉴런과 출력 뉴런을 연결하는 전결합층이다.
또한, LSTM 모델의 (x,y)에서, x는 메모리 셀의 갯수, y는 data-dim으로 입력/출력 속성수를 나타내고, (x, y, z)에서, z는 시계열 데이터의 입력/출력 길이를 나타낸다.
장치는, 이와 같이 4개의 시퀀스가 혼재된 LSTM 인코더를 사용할 수 있다. 장치는 반드시 위 4개의 시퀀스를 갖는 LSTM 인코더를 사용해야만 하는 것은 아니고, 다양한 시퀀스의 혼합 모델을 이용하여 최적의 학습성능을 갖는 시퀀스들의 조합을 찾을 수 있다. 장치는 시퀀스의 종류 및 순서를 적절히 선택 배치하여 최적의 예측 모델을 생성할 수 있다. 앞서 설명한 바와 같이, 시퀀스의 종류 및 순서 배치 방법 및 그에 대한 설정 값은 미리 저장되어 있을 수 있다. 장치는 다양한 시퀀스의 조합을 고려하되, 마지막 시퀀스는 입력 시퀀스를 단일 벡터로 생성하기 위해, 덴스 시퀀스를 배치하는 것이 바람직하다.
도 8의 실시예에서 사용된 LSTM 시퀀스, 드롭아웃 시퀀스, 덴스 시퀀스 외에, 스테이트풀(stateful) 시퀀스, conv 시퀀스(필터를 이용하여 지역적인 특징을 추출), flatten 시퀀스(2차원 특징맵을 전결합층으로 전달하기 위해 1차원 형식으로 변환) 등이 사용될 수 있다.
또한, 상기와 같은 시퀀스의 출력값을 조정하기 위한 활성화 함수로는, 시그모이드(sigmoid) 함수, 레루(relu) 함수 등이 사용될 수 있다.
장치는, 둘 이상의 병렬적인 시퀀스를 연결하여, 연결된(concatenated) 형태로 생성할 수 있다. 예컨대, (1, 8, 16) 입력, (1, 32) 출력을 갖는 두 개의 LSTM 시퀀스를 병합(merge)하여 병합 시퀀스(Merge Sequence)를 생성하되, 이때, ((1, 8, 16), (1, 8, 16))가 입력이 되고, (1, 64)가 출력이 된다.
장치는 상기에서 설명한 바와 같이 다양한 형태의 모델 구조를 결정짓는 시퀀스들 및 변수들(x, y 및 z 값)을 기저장된 값 및 디폴트 생성 알고리즘에 따라 적절히 샘플링한 후, 학습데이터(일별 판매 수량 데이터)를 입력하여 샘플링된 값들에 따라 구조화된 예측 모델을 학습시킨다. 하나의 예측 모델에 대한 학습이 완료되면, 모델 구조를 결정짓는 시퀀스들의 순서/조합 및 입출력 변수들을 다른 값들로 변경하면서 예측 모델들에 대한 학습을 이어간다. 이는 기보유된 값 및 방법에 대응하는 적어도 대부분의 예측 모델에 대한 학습이 완료되거나, 기설정된 임계시간에 도달하면 학습을 완료한다.
단계(S720, S730)를 통해 다양한 예측 모델의 구조 및 하이퍼 파라미터의 값을 변경하면서 학습한 결과, 복수 개의 예측 모델이 생성될 것인데, 장치는 미리 추출해 놓은 테스트 데이터(일별 판매 정보의 적어도 일부)를 기반으로 각 예측 모델의 예측 성능을 평가한다. 그리고는, 가장 예측성능(학습 성능이라고 부를 수 있음)이 우수한 제 1 예측 모델 및 해당 모델에서 사용하는 변수를 추출한다(S740). 이렇게 선정된 제 1 예측 모델이 미래시점의 특정 상품의 판매량을 예측하는데 사용된다.
본 발명의 실시예에 따르면, 테스트 완료 후, 미리 추출한 검증 데이터를 이용하여 예측 모델의 사용 여부를 검증한다. 기설정된 임계 수치 이하의 예측정확도를 기록한다면 다시 단계(S710)로 돌아가 모델 생성을 수행한다.
도 9a 및 도 9b는 본 발명의 일 실시예에 따른 상품 판매량 예측 방법의 파라미터 변동에 따른 예측 결과를 나타낸 도면이다.
도 9a 및 도 9b는 예측 모델의 구조 및 하이퍼 파라미터의 값을 다르게 한 두 개의 예시를 나타내며, 여기서 실선은 실제 판매량을, 점선은 예측치를 나타낸다. 본 발명의 실시예에 따르면, 장치가 (1) 아웃라이어 검출의 기준치(예컨대, 중앙값으로부터 벗어난 수치: 20 등) 및/또는 (2) LSTM 모델의 구조 및 그에 사용되는 하이퍼 파라미터의 값을 적절히 결정하는 것이 바람직하다. 위 두 개의 설정 변수를 얼마나 적절히 결정하느냐에 따라 예측 성능의 차이가 많이 나는 것을 확인할 수 있다.
도 10은 본 발명의 일 실시예에 따른 상품 판매량 예측 방법을 이용하여 판매수량을 예측한 결과를 나타낸 도면이다.
도 10은 무작위로 선택한 2개 상품의 30일 데이터를 기반으로 5일, 10일, 15일 이후의 값을 예측한 결과인데, 경향이 대체적으로 맞은 것을 확인할 수 있다. 또한, 실제보다 여유롭게 예측되어 재고에 적절히 대비할 수 있는 것을 확인할 수 있다.
도 11은 본 발명의 다른 실시예에 따른 상품 판매량 예측 방법을 이용하여 판매수량을 예측한 결과를 나타낸 도면이다.
도 11은 무작위로 선택한 2개 상품의 30일 데이터를 기반으로 매일 데이터를 사용하여 하루씩 미래 판매량을 예측한 결과인데, 결과가 도 10의 실시예보다 좋지 않은 것을 확인할 수 있다. 즉, 일별 판매량을 그대로 학습데이터로 사용하는 것 보다는 5일씩 합산한 데이터를 학습데이터로 사용하는 것이 바람직하다.
도 12는 본 발명의 일 실시예에 따른 상품 판매량 예측 장치를 개략적으로 나타낸 블록도이다. 도 12에 도시된 바와 같이, 본 발명의 일 실시예에 따른 판매량 예측 장치는 통신부(1210), 메모리(1220), 프로세서(1230), 입력부(1240) 및 출력부(1250)를 포함할 수 있다.
도 12을 참조하면, 통신부(1210)는 타 장치와의 통신을 위한 구성요소이다. 이는 안테나 또는 통신과 연관된 전자회로, 통신 프로세서로 구현될 수 있다.
메모리(1220)는 프로세서(1230)에서의 작업과 관련된 프로그램 명령어를 저장하고 있는 저장소이다. 또한, 각종 사용자 설정과 관련된 정보(예컨대, 학습 및 예측을 위한 데이터로의 사용을 위한 판매수량 합산 일수(예컨대, 5일), 아웃라이어 검출 임계치, 예측 주기, 예측 기간 등), 상품 판매량 예측을 위한 인공지능 예측 모델과 관련된 개별 모듈들, 상품 판매량과 관련된 정보 등도 저장하고 있을 수 있다.
프로세서(1230)는 메모리(1220)에 저장된 명령어를 기반으로 인공지능 예측 모델을 생성하고, 생성된 예측 모델을 이용하여 미래 시점의 특정 상품 및 다수 상품의 판매량을 예측한다.
프로세서(1230)는 기보유하고 있는 인공지능 예측 모델들을 하나의 시퀀스로 생성하여 하나의 예측 모델의 구조를 결정한다. 그리고는, 일별 판매량 정보를 기반으로, 구조화된 예측 모델을 학습시킨다. 이때, 예측 모델에 사용되는 각종 하이퍼 파라미터들의 값을 변경하면서 최적의 값을 찾는다. 이와 같이, 하나의 시퀀스에 대한 학습이 완료되면, 다른 구조의 예측 모델을 생성하여 일별 판매 정보를 기반으로 학습을 수행하고, 이와 같은 과정을 기설정된 횟수, 기설정된 시간 및/또는 기설정된 예측 모델의 갯수만큼 반복 수행한다.
그리고는, 학습 완료된 복수 개의 구조화된 예측 모델의 성능을 테스트 데이터를 기반으로 판단하고, 가장 우수한 성능을 나타내는 예측 모델을 실제 판매량 예측에 사용할 모델로 선정한다. 프로세서(1230)는 선정된 예측 모델을 이용하여 미래 시점의 특정 상품의 판매량을 예측한다. 이때도 5일 단위의 미래시점을 예측하는 것이 바람직하다.
입력부(1240)는 사용자 입력을 위한 인터페이스로써, 키보드, 마우스, 터치패드 등을 포함할 수 있고, 사용자 설정, 예측 대상 상품 선택 등과 같은 사용자 입력을 제공받는다.
출력부(1250)는 화면을 표시하는 디스플레이 수단을 포함한다. 이는 모니터, TV 스크린 등을 포함할 수 있다. 출력부(1250)는 상기 디스플레이 수단을 이용하여 사용자에게 판매량 예측 대상 상품을 표시하고, 그래프 형태 또는 그 밖의 다양한 형태(예컨대, 테이블 형태 등)를 이용하여 판매량 예측 결과를 표시한다.
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (19)

  1. 제 1 상품의 제 1 시점까지의 일별 판매 수량 정보를 획득하는 단계;
    상기 제 1 상품의 제 2 시점의 판매수량 예측을 위해, 상기 획득된 일별 판매 수량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하는 단계, 상기 제 2 시점은 상기 제 1 시점 이후의 시점임; 및
    상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 단계를 포함하되,
    상기 제 1 예측 모델을 생성하는 단계는,
    상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키는 단계; 및
    상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하는 단계를 포함하고,
    상기 제 1 예측 모델을 생성하는 단계는, 기보유된 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하는 단계를 포함하되,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM(Long Short Term Memory) 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 방법.
  2. 제 1 항에 있어서,
    상기 제 1 예측 모델은 LSTM(Long Short Term Memory) 모델을 포함하는, 상품 판매량 예측 방법.
  3. 제 1 항에 있어서,
    상기 학습데이터는 판매 개시 시점으로부터 제 1 기간 단위로 발생한 판매수량을 합산한 판매수량 정보를 포함하는, 상품 판매량 예측 방법.
  4. 제 3 항에 있어서,
    상기 제 1 기간은 3일 내지 10일의 기간인, 상품 판매량 예측 방법.
  5. 제 1 항에 있어서,
    상기 제 1 상품의 일별 판매 수량 정보 중 특정 일자의 판매수량 정보의 부존재 여부를 판단하여 상기 일별 판매 수량 정보의 학습데이터로써의 사용 여부를 결정하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  6. 제 1 항에 있어서,
    중앙값 필터(median filter)를 사용하여, 상기 일별 판매 수량 정보의 각 일자별 판매 수량 값을 중앙값과 비교하는 단계;
    비교 결과, 중앙값으로부터 벗어난 수치가 임계값보다 큰 제 3 시점의 일별 판매수량 값을 선별하는 단계; 및
    상기 선별된 제 3 시점의 일별 판매수량 값을, 중앙값을 이용하여 연산된 값으로 대체하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  7. 제 6 항에 있어서, 상기 선별된 제 3 시점의 일별 판매수량 값을, 중앙값을 이용하여 연산된 값으로 대체하는 단계는,
    상기 선별된 제 3 시점의 일별 판매수량 값을 상기 제 3 시점 전일까지의 평균 판매량으로 대체한 후, 대체된 값과의 차이만큼을 부가하는 단계를 포함하는, 상품 판매량 예측 방법.
  8. 제 6 항에 있어서,
    중앙값 필터를 통해 처리된 값을 갖는 일별 판매 수량 값에 대해 스탠다드 스케일링(standard scaling)을 수행하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  9. 제 1 항에 있어서, 상기 제 1 예측 모델을 생성하는 단계는,
    상기 복수 개의 구조화된 후보 예측 모델에 상기 일별 판매 수량 정보 중 제 1 부분을 학습데이터로 입력하여 학습시키는 단계;
    상기 일별 판매 수량 정보 중 제 2 부분을 이용하여 상기 복수 개의 구조화된 후보 예측 모델의 학습 성능을 평가하는 단계; 및
    평가 결과 가장 학습 성능이 우수한 구조화된 후보 예측 모델을 상기 제 1 예측 모델로 선정하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  10. 제 1 항에 있어서,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM 모델의 LSTM 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함하는, 상품 판매량 예측 방법.
  11. 제 1 항에 있어서,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 각 시퀀스에 대응하는 하이퍼 파라미터의 값을 갖되,
    각 시퀀스에 대응하는 하이퍼 파라미터는 메모리 셀의 갯수와 연관된 제 1 변수, 입력 또는 출력 속성의 갯수와 연관된 제 2 변수 및 시계열 데이터의 입력 또는 출력 길이와 연관된 제 3 변수 중 적어도 하나를 포함하는, 상품 판매량 예측 방법.
  12. 제 1 상품의 일별 판매량 정보 및 프로세서(processor)의 동작과 관련된 명령어를 저장하는 메모리; 및
    제 1 시점까지 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 상기 제 1 상품의 제 2 시점 - 상기 제 2 시점은 상기 제 1 시점 이후의 시점임 - 의 판매수량 예측을 위해, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 프로세서를 포함하되,
    상기 프로세서는, 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키고, 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하고,
    상기 프로세서는, 기보유된 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하되,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 장치.
  13. 제 1 상품의 제 2 시점 - 제 2 시점은 제 1 시점보다 후속하는 시점임 - 까지의 판매량에 대한 예측을 서버로 요청하는 사용자 단말; 및
    상기 사용자 단말로부터의 요청에 응답하여, 상기 제 1 시점까지의 상기 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 서버를 포함하되,
    상기 서버는 상기 일별 판매 수량 정보를 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키고, 상기 일별 판매 수량 정보를 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하고,
    상기 서버는, 기보유된 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하되,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 시스템.
  14. 제 1 상품의 제 1 시점까지의 일별 판매 수량 정보를 획득하는 단계;
    상기 제 1 상품의 제 2 시점의 판매수량 예측을 위해, 상기 획득된 일별 판매 수량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하는 단계, 상기 제 2 시점은 상기 제 1 시점 이후의 시점임; 및
    상기 일별 판매 수량 정보를 기반으로 상기 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 단계를 포함하되,
    상기 제 1 예측 모델을 생성하는 단계는,
    복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하는 단계를 포함하되,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함하고,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 방법.
  15. 제 14 항에 있어서, 상기 제 1 예측 모델을 생성하는 단계는,
    상기 일별 판매 수량 정보 중 제 1 부분을 학습데이터로 입력함에 의해 상기 복수 개의 구조화된 후보 예측 모델을 학습시키는 단계;
    상기 일별 판매 수량 정보 중 제 2 부분을 테스트 데이터로 추출하여 이용하여 상기 복수 개의 구조화된 후보 예측 모델의 학습 성능을 평가하는 단계; 및
    평가 결과 가장 학습 성능이 가장 우수한 구조화된 후보 예측 모델을 상기 제 1 예측 모델로 선정하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  16. 제 14 항에 있어서,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 각 시퀀스에 대응하는 하이퍼 파라미터의 값을 갖되,
    각 시퀀스에 대응하는 하이퍼 파라미터는 메모리 셀의 갯수와 연관된 제 1 변수, 입력 또는 출력 속성 갯수와 연관된 제 2 변수 및 시계열 데이터의 입력 또는 출력 길이와 연관된 제 3 변수 중 적어도 하나를 포함하는, 상품 판매량 예측 방법.
  17. 제 14 항에 있어서, 상기 제 1 예측 모델을 생성하는 단계는,
    상기 일별 판매 수량 정보 중 상기 제 1 부분을 이용하여, 상기 제 1 예측 모델의 하이퍼 파라미터(hyper parameter)의 값을 변경하면서 상기 제 1 예측 모델을 학습시키는 단계; 및
    상기 일별 판매 수량 정보 중 상기 제 2 부분을 이용하여 학습성능을 평가한 결과, 학습성능이 가장 좋은 하이퍼 파라미터의 값을 상기 제 1 예측 모델의 하이퍼 파라미터의 값으로 결정하는 단계를 더 포함하는, 상품 판매량 예측 방법.
  18. 제 1 상품의 일별 판매량 정보 및 프로세서(processor)의 동작과 관련된 명령어를 저장하는 메모리; 및
    제 1 시점까지 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 상기 제 1 상품의 제 2 시점 - 상기 제 2 시점은 상기 제 1 시점 이후의 시점임 - 의 판매수량 예측을 위해, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 프로세서를 포함하되,
    상기 프로세서는, 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하되,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함하고,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 장치.
  19. 제 1 상품의 제 2 시점 - 제 2 시점은 제 1 시점보다 후속하는 시점임 - 까지의 판매량에 대한 예측을 서버로 요청하는 사용자 단말; 및
    상기 사용자 단말로부터의 요청에 응답하여, 상기 제 1 시점까지의 상기 제 1 상품의 일별 판매량 정보를 학습데이터로 사용하여, 인공지능 기반의 제 1 예측 모델을 생성하고, 상기 일별 판매 수량 정보를 기반으로 상기 생성된 제 1 예측 모델을 이용하여 상기 제 2 시점의 상기 제 1 상품의 판매수량을 예측하는 서버를 포함하되,
    상기 서버는 복수 개의 인공지능 기반의 예측 모델 시퀀스들 중 적어도 일부를 조합하여 복수 개의 구조화된 후보 예측 모델을 생성하되,
    상기 복수 개의 인공지능 기반의 예측 모델 시퀀스들은 LSTM(Long Short Term Memory) 시퀀스, 드롭 아웃(drop out) 시퀀스, 덴스(dense) 시퀀스, 및 Ir 시퀀스 중 적어도 둘을 포함하고,
    상기 복수 개의 구조화된 후보 예측 모델 중 적어도 하나는, (i) 제 1 LSTM 시퀀스(sequence)와 제 2 LSTM 시퀀스 - 상기 제 2 LSTM 시퀀스의 입력 데이터는 상기 제 1 LSTM 시퀀스의 출력 데이터와 동일함 - 를 포함하고, (ii) 상기 제 1 LSTM 시퀀스와 상기 제 2 LSTM 시퀀스 사이에 과적합 방지를 위한 드롭아웃(drop-out) 시퀀스를 포함하며, (iii) 최종 레이어에 덴스(dense) 시퀀스를 포함하는 형태를 갖는, 상품 판매량 예측 시스템.
KR1020190056322A 2019-05-14 2019-05-14 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템 KR102245717B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190056322A KR102245717B1 (ko) 2019-05-14 2019-05-14 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190056322A KR102245717B1 (ko) 2019-05-14 2019-05-14 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템

Publications (2)

Publication Number Publication Date
KR20200131549A KR20200131549A (ko) 2020-11-24
KR102245717B1 true KR102245717B1 (ko) 2021-04-28

Family

ID=73679770

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190056322A KR102245717B1 (ko) 2019-05-14 2019-05-14 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템

Country Status (1)

Country Link
KR (1) KR102245717B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102434886B1 (ko) * 2021-07-12 2022-08-23 이태호 상거래 정보 제공을 위한 전자 장치의 동작 방법 및 이를 지원하는 전자 장치
KR20240028884A (ko) 2022-08-25 2024-03-05 주식회사 익스펜시아 인공지능 기반 브랜드 경쟁력 예측 시스템

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112396466A (zh) * 2020-11-30 2021-02-23 上海明略人工智能(集团)有限公司 电商平台流量预测方法、系统、存储介质及电子设备
KR102562992B1 (ko) * 2021-01-19 2023-08-03 충북대학교 산학협력단 슬라이딩 시뮬레이션 기반의 수요 예측 방법 및 장치
KR102344383B1 (ko) * 2021-02-01 2021-12-29 테이블매니저 주식회사 인공지능 기반 매장 수요 예측 방법 및 시스템
CN112950267A (zh) * 2021-02-26 2021-06-11 北京京东乾石科技有限公司 一种信息生成方法、装置、终端设备及存储介质
KR102259945B1 (ko) 2021-03-03 2021-06-02 (주)플랜아이 인공지능 기반의 예측을 활용하는 a/b 테스팅 시스템 및 방법
KR102567137B1 (ko) 2021-06-01 2023-08-16 주식회사 에이아이닷엠 과거 일별 판매량 추정 및 미래 판매량 예측 모델 생성 방법
CN113487359B (zh) * 2021-07-12 2024-03-22 华润数字科技有限公司 基于多模态特征的商品销量预测方法、装置及相关设备
KR102554135B1 (ko) * 2021-07-27 2023-07-12 테이블매니저 주식회사 매장의 수요 예측을 기반으로 한 상품 할인권 제공 방법 및 시스템
CN113919558A (zh) * 2021-09-28 2022-01-11 三一重机有限公司 产品销量预测方法及装置
KR102646061B1 (ko) * 2021-10-12 2024-03-12 주식회사 디에스이트레이드 Ai 기반 모델 선택 알고리즘을 이용한 수요 예측 방법
KR102449350B1 (ko) * 2021-12-31 2022-09-29 황성혜 재고 관리 서비스를 제공하는 시스템 및 그 동작 방법
KR102509392B1 (ko) * 2022-06-15 2023-03-14 주식회사 광덕철강 뉴럴 네트워크를 이용하여 서버가 품목별 예측 주문량에 따라 원자재 요청 메시지를 전송하는 방법 및 장치
KR102658414B1 (ko) * 2023-05-12 2024-04-17 (주)비제이로지스 Ict기반 수출입 지원 시스템
KR102603779B1 (ko) * 2023-05-12 2023-11-20 (주)비제이로지스 수입신고 제출서류 자동 생성 시스템
KR102634529B1 (ko) * 2023-05-24 2024-02-07 주식회사 온투인 다단계 시계열 예측 방법을 이용한 농산물 가격 예측 장치 및 이를 이용한 농산물 가격 예측 방법
KR102653142B1 (ko) * 2023-11-27 2024-04-01 주식회사 워커스하이 멀티 도메인 변수를 활용한 인공지능 모델 기반 수요 예측 및 구독 솔루션 제공 방법, 장치 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003346070A (ja) * 2002-05-27 2003-12-05 Matsushita Electric Works Ltd 需要量予測方法及び需要量予測システム
JP2009104408A (ja) * 2007-10-23 2009-05-14 Ntt Data Corp 統合需要予測装置、統合需要予測方法、及び統合需要予測プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221384A (ja) * 1995-02-17 1996-08-30 Kao Corp 販売量予測方法および装置
KR20140147456A (ko) * 2013-06-20 2014-12-30 엘에스산전 주식회사 상수관망의 일일 수요량 예측방법
KR102077804B1 (ko) * 2017-04-26 2020-04-07 김정희 학습 데이터 전처리 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003346070A (ja) * 2002-05-27 2003-12-05 Matsushita Electric Works Ltd 需要量予測方法及び需要量予測システム
JP2009104408A (ja) * 2007-10-23 2009-05-14 Ntt Data Corp 統合需要予測装置、統合需要予測方法、及び統合需要予測プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102434886B1 (ko) * 2021-07-12 2022-08-23 이태호 상거래 정보 제공을 위한 전자 장치의 동작 방법 및 이를 지원하는 전자 장치
WO2023286986A1 (ko) * 2021-07-12 2023-01-19 이태호 상거래 정보 제공을 위한 전자 장치의 동작 방법 및 이를 지원하는 전자 장치
KR20240028884A (ko) 2022-08-25 2024-03-05 주식회사 익스펜시아 인공지능 기반 브랜드 경쟁력 예측 시스템

Also Published As

Publication number Publication date
KR20200131549A (ko) 2020-11-24

Similar Documents

Publication Publication Date Title
KR102245717B1 (ko) 인공지능 모델을 이용한 상품 판매량 예측 방법, 장치 및 시스템
KR102264526B1 (ko) 상품 판매량 예측 방법, 장치 및 시스템
CN110956272A (zh) 实现数据处理的方法和系统
KR102468827B1 (ko) 인공지능 기반 상품 소싱 및 카테고리 맞춤형 리뷰 분석 서비스 제공 방법, 장치 및 시스템
CA3097449A1 (en) Method and system for model auto-selection using an ensemble of machine learning models
US11087344B2 (en) Method and system for predicting and indexing real estate demand and pricing
KR102546871B1 (ko) 인공지능 모델 기반 b2b 식자재 및 부자재의 유통의 주문 히스토리의 패턴 분석을 통한 주문 정보 추천 방법, 장치 및 시스템
Saravanan et al. Forecasting Economy using Machine Learning Algorithm
Navin Big data analytics for gold price forecasting based on decision tree algorithm and support vector regression (SVR)
Glavan et al. Production modelling for holistic production control
Badakhshan et al. Using digital twins for inventory and cash management in supply chains
Hsu et al. A back-propagation neural network with a distributed lag model for semiconductor vendor-managed inventory
TW202242727A (zh) 條件參數最佳化方法及系統
US20180260902A1 (en) System and method for determining an optimal stopping time
KR20220059287A (ko) 시계열 예측을 위한 어텐션 기반 스태킹 방법
KR20230034608A (ko) 판매데이터를 기반으로 인공지능을 활용한 상품 판매량 예측 및 상품 추천 정보 생성 방법, 장치 및 시스템
CN114119202B (zh) 一种信贷管理平台的自动化配置方法及系统
KR102454317B1 (ko) 가상 사용자 및 상품 증강을 이용한 콜드-스타트 문제 해결 방안
US11762562B2 (en) Performance analysis apparatus and performance analysis method
KR102415043B1 (ko) 상품 재고량 관리 방법, 장치 및 시스템
KR20210098892A (ko) 수산물의 판매량을 추정하기 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
KR102289396B1 (ko) 군장비 수리부속 품목 수요예측의 고도화를 위한 강화학습 적용
JP7310827B2 (ja) 学習装置、学習方法、及びプログラム
Mohd et al. Rapid modelling of machine learning in predicting office rental price
Urbanek et al. Using analytical programming and UCP method for effort estimation

Legal Events

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