일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- KT
- LLaMA
- 생성형
- AI
- AIVLE
- LLM
- naver
- KoGPT
- 인공지능
- deeplearning
- GPT4
- TRANSFORMER
- GPT-4
- SKT
- 딥러닝
- ChatGPT
- Stable Diffusion
- 3기
- GPT-3.5
- 생성형 AI
- hyperclovaX
- OpenAI
- gpt
- nlp
- generative
- ML
- SearchGPT
- 네이버
- Meta
- Today
- Total
Ttoro_Tech
[Coupang]_요즘IT_뉴스기사('23.04.14) 본문
https://yozm.wishket.com/magazine/detail/1973/
쿠팡이 '기계학습'으로 물류 입고 프로세스 개선한 방법 | 요즘IT
쿠팡은 물류 입고 프로세스의 최적화를 위해 끊임없이 노력하고 있습니다. 풀필먼트 센터로의 제품 입고과정에서 낭비되는 자원을 최소화하면, 적기에 제품을 판매하고 더 많은 고객들에게 더
yozm.wishket.com
쿠팡(Coupang)에서 사용한 Machine Learning
풀릴먼트 센터 입고 프로세스 효율 개선
쿠팡 풀필먼트 센토로의 제품 입고 시 필요한 운송 트럭의 적정 수량을 데이터에 기반해 예측하기
제품 입고 과정에서 낭비되는 자원을 최소화하면 적기에 제품을 판매하고 더 많은 고객들에게 더 빠르게 배송 가능
배경
- 매일 각지의 수많은 업체들이 트럭에 다양한 종류의 제품을 적재해 쿠팡 풀필먼트 센터로 제품을 반입
- 각 풀필먼트 센터에는 트럭을 세워두고 물건을 하역하는 도크(dock)가 존재
- 센터마다 시간대별로 사용 가능한 도크의 최대 개수는 정해져 있음
- 제품 하역 작업 시 한 대의 트럭이 하나의 도크를 정해진 시간 동안 사용, 이 시간을 슬롯(slot)
# 도크(dock) # 슬롯(slot)
정해진 개수의 슬롯들로 여러 업체들이 납품하는 제품들이 효율적으로 입고되려면,
각 입고에 필요한 슬롯 개수가 사전에 정확히 예측되어야 함
사전에 예측한 필요 슬롯 개수가 실제 필요 슬롯보다 적을 경우 | 사전에 예측한 필요 슬롯 개수가 실제 필요 슬롯보다 많은 경우 |
입고 과정에서 지연이 발생 | 한정된 자원인 슬롯을 불필요하게 낭비 |
목표
- 업체 특성과 풀필먼트 센터로 입고되는 제품의 특성을 바탕
- 입고 예약 신청을 하는 업체들에게 적정한 필요 슬롯 개수를 예측해 제공하는 시스템을 개발하기 시작함
- 낭비되는 슬롯의 개수를 줄이고, 슬롯이 부족해 입고가 지연되는 문제를 최소화하는 것
트럭 수량 예측 모델 학습하기
사전 준비
- 그동안 축적해온 물류 데이터 및 입고 신청 정보로부터 트럭 대수에 영향을 미치는 특징들(feature) 도출
- 각 물류 입고에 실제 사용된 트럭 대수 데이터를 결합해 학습 데이터를 구성
- 적정 트럭 입차 수량을 예측하는 머신 러닝(ML) 모델을 학습
- 학습된 모델을 입고 예약 시스템과 연결해 업체가 입고 신청을 하면 시스템으로 바로 적정 트럭 대수를 확인할 수 있게끔 설계
# 트럭 대수 특징들 # 수량 예측(Regression) # ML
특징 추출
Coupang에 축적된 대량의 물류 데이터들로 부터 트럭 수량 예측 모델에 적합한 특징들을 찾기
EDA(Exploratory Data Analysis) 탐색적 데이터 분석
- 도메인 전문가들의 조언이 필요
- 물류 담당자들과 심층 인터뷰를 진행
- 물류 입고 과정에서 나타나는 의미 있는 패턴들을 다양하게 파악
- 트럭 수량 예측에 유용하게 활용할 수 있는 다수의 특징들 발견
- 이렇게 도출된 특징들을 피처 엔지니어링(Feature Engineering)으로 가공
- 최종적인 특징 셋(Feature Set) 확정
모델(LightGBM)
Datasets - 수집기간 : 약 2년, 크기 : 약 80만 건의 학습 데이터
적지 않은 데이터 세트, 대부분이 범주형(Categorical) 특징
위와 같은 특징의 데이터를 빠르게 학습 가능하고 튜닝이 가능한 모델 선정
LightGBM
- 트리 기반 부스팅 모델
- 많은 기계 학습 문제에서 성능을 입증한 알고리즘
- 다른 트리 기반 알고리즘
- 트리를 수평적으로 확장하는 level-wise tree growth 방식
- LightGBM 알고리즘
- 트리를 수직적으로 확장하는 leaf-wise tree growth 방식
- 다른 알고리즘보다 빠르다는 것이 특징
- level-wise tree growth 방식은 각 트리 깊이가 모두 확장할 때까지 기다려야 함
- leaf-wise tree growth 방식은 기다리지 않고 가장 손실이 높은 리프 노드를 분할해 나가면서 수직으로 확장
- 다른 알고리즘은 범주형 특징에 원핫 인코딩(one-hot Encoding) 과정이 필요함
- LightGBM은 별도의 원핫 인코딩(one-hot Encoding)을 하지 않아도 됨
- Fisher 알고리즘 : 데이터의 클래스를 최적으로 분할하는 학습을 수행해 나감
Fisher 알고리즘 [on grouping for maximum homogeneity(최대 균일성을 위한 군집화)]
- 초기 단계: 모든 데이터 포인트는 각각 자신의 클러스터로 할당됩니다.
- 유사성 계산: 각 클러스터 쌍의 유사성을 계산합니다. 유사성은 일반적으로 클러스터의 중심 간 거리, 클러스터 간의 평균 거리, 또는 클러스터의 유사성 점수 등으로 측정됩니다.
- 가장 유사한 클러스터 결합: 가장 유사한 두 클러스터를 결합하여 새로운 클러스터를 생성합니다.
- 클러스터 갱신: 새로운 클러스터를 갱신합니다.
- 종료 조건: 더 이상 클러스터가 결합되지 않거나, 원하는 클러스터의 수에 도달할 때까지 2-4 단계를 반복합니다
# LightGBM # Tree 기반 모델 # Boosting 모델 # 빠르게 학습 가능한 모델
모델 튜닝 (Hyperparameter 탐색)
베이지안 최적화 (Bayesian Optimization) [link]
- 목적 함수($f$)의 함수 값 $f(x)$를 최대로 만드는 입력 값 $x$의 전역 최적해(global optimization)
$x^*$를 찾기 위한 방법 - 목적 함수가 명시적이지 않고 함수 값 $f(x)$의 계산 비용이 클 때 최적의 해를 효과적으로 찾아낼 수 있음
- 머신러닝(ML)에서 최적의 하이퍼 파라미터 조합을 효율적으로 찾아내는 방법 중 하나로 많이 사용
과정
- 미리 지정된 Hyperparameter의 탐색 범위 내에서 n개의 값들을 랜덤하게 선택하여 모델을 학습
학습된 모델의 함수 값을 계산 - 입력 값과 함수 값 쌍으로 집합을 구성, 이를 바탕으로 Gaussian Process 등의 방법을 사용하여 미지의 목적 함수 $f$를 확률적인 방법으로 추정
- 현재까지 목적 함수에 대해 추정한 결과를 바탕으로, $x^*$를 찾을 수 있을 것으로 예상되는 다음 입력 값 후보를 선택하여 모델 학습
학습된 모델의 함수 값을 계산하여 입력 값과 함수 값 쌍의 집합에 추가 - 위 2, 3 과정을 정해진 횟수만큼 반복, 추정 함수를 갱신
추정 함수의 값을 최대로 만드는 최적 하이퍼 파라미터 $x^*$를 선택
해당 과정을 한 달 주기로 새로운 데이터들을 추가 반영, 반복되면서 모델을 업데이트
# 베이지안 최적화 # Hyperparameter
과소 예측과 과대 예측 사이의 Trade-off
- 머신 러닝 예측 모델에서는 필연적으로 오차를 동반
ex) 실제 적정 슬롯 개수보다 적은 개수를 예측 - 과소 예측
ex) 실제 적정 슬롯 개수보다 많은 개수를 예측 - 과대 예측
- 같은 수준의 오차율 내에서
예측 모델이 적정 트럭 개수를 가급적 적게 예측하는 경향 | 예측 모델이 적정 트럭 개수를 가급적 많게 예측하느 경향 |
과대 예측은 줄어들지만 과소 예측이 늘어남 | 과소 예측은 줄어들지만 과대 예측이 늘어남 |
- 기본적인 목표 - 과대 예측을 줄여 불필요하게 예약되는 슬롯들을 최소화하는 것
- 실제 : 과대 예측을 지나치게 최소화하는 방향으로 모델의 예측 슬롯 개수를 결정할 경우
- 업체 입장 : 너무 적은 슬롯들이 배정된다고 느끼게 됨
- 최종 결정 - 과소 예측 비율을 유지, 과도 예측을 최대한 줄이는 것이 모두에게 이로운 방식
모델 적용 결과
구분 | 모델 전 | 모델 후 |
과소 예측 | 8.71% | 2.53% |
과대 예측 | 44.45% | 5.04% |
- 모델 활용 결과, 크게 개선된 것을 확인할 수 있음
- 실제 슬롯이 부족해 업체가 입고일을 변경하는 사례가 67.9% 감소
- 업체는 원하는 일정으로 제품을 풀필먼트 센터로 입고 가능
- 쿠팡은 불필요하게 낭비되는 비용을 줄이고 필요한 수량의 물품들을 원하는 일정에 납품 가능
정리
- 쿠팡에서 물류 최적화를 위해 다양한 데이터를 수집하여 머신러닝을 통해 트럭 수를 예측하는 과정을 살펴볼 수 있었다.
- LightGBM의 경우 대량의 데이터가 있을 때 빠르게 학습이 가능하며, LightGBM의 경우 Categorical 데이터에 대해 one-hot encoding이 필요하지 않다는 것에 대해 알 수 있었다.
- Hyperparameter 튜닝시 베이지안 최적화를 통해 Hyperparameter를 찾는 방법에 대해 배울 수 있었다.
'Tech News > 국내 기업' 카테고리의 다른 글
[LG_TILDA]_LG_AI연구원_뉴스기사('22.07.15) (0) | 2023.04.28 |
---|---|
[SKT_LLM]_AITIMES_뉴스기사('23.04.24) (0) | 2023.04.24 |
[Sporky]_ZDNET_뉴스기사('23.03.09) (0) | 2023.04.13 |
[AI_암세포]_인공지능신문_뉴스기사('23.04.04) (0) | 2023.04.06 |
[루시아_KOR_ChatGPT]_인공지능신문_뉴스기사('23.03.31) (0) | 2023.03.31 |