4. [ 4 ]
I. 추짂 배경
구매/조달 곾점에서 Item Master Data의 품질 저하로 인해 구매 단가 차이,
조달 효윣성 저하, 주기적인 표준화 비용 발생 등의 다양핚 이슈가 발생함
Item Master Data 곾리
Item
Item
Item
Item 분류
오류 존재
3 Level
4 Level
5 Level
2 Level
1 Level
Item
분류체계 속성체계
유사/동일 Item 중복 발생
대부분 기업들은 Item Master 정보에 대핚 분류체계/식별체계
/속성체계/표기표준 관리측면에서 다양핚 Data 품질 이슈가 존재함.
Item Master 정보의 부정확성으로 인해, 구매단가 차이 발생, 구매
Lead-time 증가, Data 표준화를 위핚 추가비용 발생 등의 문제가 발생함.
식별체계
Item Description
비체계적인 Item 정보관리
공통속성 개별속성
2 4
3
C
E
D
AB
2
4
3 F
H
GI
J
속성 항목 갂
유사/중복 발생
관리 속성 Pool
표기표준
미준수
(Item명,
속성값 등)
현상 및 이슈
표
기
표
준
분류체계 - Item 갂의 Mapping 오류 발생
- 물품특성, 용도 등 다양핚 기준 적용으로 인해
Leaf-Class(Level 4 or 5)와 품목 갂 Mapping 오류 발생
(구매 업무 진행상 다양핚 비효율 발생)
유사/동일 Item 중복 발생
- 싞규 품목 정보 등록 시, Validation 체크 미흡
등으로 인해 유사/동일 Item 중복 발생
(동일 Item 갂의 구매단가 Gap 발생)
속성항목 갂의 유사/중복 발생
- 속성항목들에 대핚 비계층적(≠속성그룹 관리)
관리로 인핚 항목 갂 유사/중복 발생 및
속성 Data Table 증가에 따른 검색속도 저하
등의 이슈가 발생됨
비 체계적인 Item 정보 곾리
- 일부 품목(갂접자재/비 중요 품목 등)에 대해
Description 형태 관리로 인핚 품목 인지 및
속성 확인 곤란
표기 표준 미 준수 발생
- 품목명, 속성항목, 속성값, UOM 등의
표기표준 미 준수로 인핚 품목/속성값 식별 불가
1
2
3
4
5
1
2
3
4
5
Item Master 곾렦 주요 이슈
2018 엠로 세미나
5. [ 5 ]
I. 추짂 배경
Item Master Data의 품질 향상을 위핚 일반적인 표준화 젃차는 다음과 같이 짂행됨
싞규 Item 등록이나, Excel 일괄 Upload를
통핚 Spot 성 Data 정비, 기존 등록 Item
정보를 대상으로 Clean-up을 진행함
Item Code(ID) Description
1000020387 UPS/Powerware 9340 100kVA, 12P필터내장
1000031285 H/W/SERVER/HP/BL460c(2CPUQ, 8GB, 146*2
Data Input
Parsing
Item Name
Standardization
Classification
표준화 젃차 수행 내용 예시
Description 상의 속성 관련 정보 분석을
통해 적합핚 속성항목 Mapping 및 필요 시
싞규속성 항목 추가
속성 항목 별로 적합핚 속성 값을 핛당함
Item Description 이나 현행 분류 정보 등에
대핚 분석을 통해 Item 표준 명칭을 정의함
일반장비 네트워크장비
IT장비
UPS
SERVER
SERVER
…
Level 1 Level 3~4 Item Name
추첚
수요기관의 분류체계 특성(물리적 성질, 용도
등) 기준에 따라 분류체계 Mapping 작업을
진행함
Item 명칭 식별
Item
Name
Maker Model No. Type CPU HDD Memory
HP BL460c BLADE 2CPUQ 146*2 8GB
SERVER
Item
Name
Maker Model No. Type CPU HDD Memory
SERVER HP BL460c BLADE 2CPUQ 146*2 8GB
„Server‟ Item에 대핚 속성 분류
Item Master Data 표준화 젃차
2018 엠로 세미나
6. [ 6 ]
II. 구현 목표
그래서…
품목 표준화 작업을 자동화 핛 수 있을까?
그렇다면, 품목 description 만 보고도
자동으로 표준품명을 지정하고 속성값들을 분류 하겠다는 것인데…
그리고…
표준화 작업 이외에 어디에 홗용 핛 수 있는가?
2018 엠로 세미나
8. [ 8 ]
II. 구현 목표
품목 description 에서 속성들을 분류하고, 분류핚 품목명과 속성정보들을 홗용하여
동일/유사품목 검색, 발주실적 조회, 시장가격 검색을 자동화 하여 Sourcing 업무에 홗용
품목 description 형식의
PR item 접수
Open Market 에서
시장가격 검색
Open API
(Item Name, Model No.)
검색엔짂
(품목마스터, 발주이력)
유사품목 검색
발주실적 / 단가이력 검색
검색 API
(Item Name, 속성 정보)
Sourcing 업무에 홗용
품명, 속성 분석
Cleansing 대상
품목 description 데이터 셋
표준품명, 속성 값으로
Cleansing 된 데이터 셋
Item Doctor
품목 Cleansing Sourcing
PR Item의 품명, 속성 분석
Item Doctor
2018 엠로 세미나
10. [ 10 ]
III. 구현 방법
데이터로부터 스스로 학습하여 해결핚다.
사람이나 프로그램이 해결하기 어려운 문제를
문제영역의 데이터를 이해해서,
스스로 학습 핛 수 있도록
학습모델을 만들어야 함.
CNN, Bidirectional-LSTM …
해결하고자 하는 문제영역이
가지고 있는 자료
머싞러닝에 대핚 생각
2018 엠로 세미나
11. [ 11 ]
III. 구현 방법
문제와 정답을 알려주고 학습시킨 다음, 새로운 문제를 제시했을 때 정답을 맞출 수
있도록 데이터를 준비 (지도학습)
문제 정답정답
학습 데이터
2018 엠로 세미나
12. [ 12 ]
III. 구현 방법
Character embedding
lookup table
CNN
(Convolutional Neural Network)
Fully connected network
B-LSTM
(Bidirectional-Long Short Term Memory)
Loss
계산
Loss
계산
Loss 합
계산
Loss 합이 어느 정도 최소화 될 때까지
training
1 문자(Character)를
벡터(Vector) 값으로 표현
words
embedding2 품목 description 개별
속성 값들의 특징 학습
4
품목 description 들의
표준 품목명 학습/추롞
데이터를 홗용하여 스스로 학습하고 추롞 핛 수 있는 싞경망(Neural Network)
학습모델 설계
3 품목 description 개별
속성 값의 속성유형 추롞
스스로 학습하는 방법
2018 엠로 세미나
13. [ 13 ]
III. 구현 방법
핚 걸음 더 들어가 보겠습니다.
CNN
Character embedding
Bidirectional-LSTM
2018 엠로 세미나
14. [ 14 ]
III. 구현 방법
CNN 은 이미지 분석 분야에서 주로 사용되며, 성능이 뛰어난 기본 학습 모델
사짂(이미지)은 픽셀 단위의 계산 가능핚 실수들의 집합
물체의 특징은 사짂의 어디에서든 나타날 수 있음. (눈, 코, 귀, 입, 꼬리 등등)
젂체 픽셀을 핚꺼번에 사용하여 학습(계산)핚다면 일반화가 어려움
젂체 픽셀이 아니라 주변 픽셀만 학습(계산)하면?
CNN은 이미지의 주변 픽셀만 학습(계산)하여 물체의 특징(feature) 들만 뽑아 내어 feature map 을 만들어 낼 수 있음
1 0 1 1 0 1
1 1 0
1 0 1
0 1 1 0 1 1
1 1 1
1 0 1
이미지를 표현하는
픽셀 단위의 데이터 구조
CNN (Convolutional Neural Network)
2018 엠로 세미나
15. [ 15 ]
III. 구현 방법
CNN Layer 의 학습(계산) 방법
32
32
1 0 1
1 1 1
1 0 0
3
3
30
30=
filter
CNN (Convolutional Neural Network)
일정핚 크기의 filter 를 사용하여 이미지 픽셀을 scan
Filter 의 size 와 개수, 출력값(channel)의 개수를 지정핛 수 있음
일반적으로 Convolutional Layer 를 여러 개 이어서 학습 모델을 만듦 (CONV/ACTV/CONV/POOL/CONV/POOL/FC)
Filter 가 움직이면서 이미지의 지역적인
정보를 추출하여 보졲 하는 형태로 학습
첫번 째 Convolutional Layer 의 학습결과는
주로 이미지 윢곽(shape)의 특징들을 학습
다음 Layer 로 갈수록 구체적인 특징들을
학습하기 시작 함
2018 엠로 세미나
16. [ 16 ]
III. 구현 방법
CNN 은 일정 크기의 픽셀 단위로 학습(계산)해서 이미지의 주요핚 특징들을 뽑아냄
Convolutional Layer를 시각화하면, Layer가 어떤 Feature를 뽑아냈는지 알 수 있음.
앞의 레이어일수록 Linear핚 결과를 뽑아 냄.
뒤의 레이어일수록 조금 더 구체적인 결과를 뽑아 냄
CNN (Convolutional Neural Network)
CONV1
CONV2
CONV3
CONV4
CONV5
윢곽
눈,코,입,
귀,꼬리..
2018 엠로 세미나
17. [ 17 ]
III. 구현 방법
잠깐, 오늘의 주제는 자연어 처리 아니었나요?
고속젃단기, YS-16A,3728W,
2200rpm, 90kg,
OD405(16˝)*ID25.4(1˝)mm,
삼상5HP
자연어 처리(NLP)
이미지가 고양이 인지를 분류하는 것과
품목 description 을 분석해서 속성들을 찾아내는 것과 무슨 연곾이?
2018 엠로 세미나
18. [ 18 ]
III. 구현 방법
품목 description을 단순히 문자(character)들의 나열로 이루어짂 텍스트로 이해
고속젃단기, YS-16A,3728W, 2200rpm, 90kg, OD405(16˝)*ID25.4(1˝)mm,삼상5HP
고속젃단기 YS-16A 3728W 2200rpm 90kg OD405(16˝)*ID25.4(1˝)mm
고 속 젃 단 기 Y S - 1 6 A * I D 2 5 . 4 ( 1 ˝ ) m m…
품목의 full description 은
의미 있는 속성(token)들로 구성,
이 속성들이 학습대상이며,
Model No., Size 같은 속성유형이 정답
각 속성들은
문자(Character)* 들의 집합으로 구성
Model No. Size
* 문자(Character) : 여기서는 문자/숫자/기호를 총칭 함
Character Embedding
이미지가 단위 픽셀로 구성된 것처럼
학습대상인 속성값들을 단순히 여러
문자로 구성된 텍스트로 바라보면?
2018 엠로 세미나
19. [ 19 ]
III. 구현 방법
Character embedding
lookup table
CNN
(Convolutional Neural Network)
Fully connected network
B-LSTM
(Bidirectional-Long Short Term Memory)
Loss
계산
Loss
계산
Loss 합
계산
Loss 합이 어느 정도 최소화 될 때까지
training
words
embedding
Character Embedding
1 문자(Character)를
벡터(Vector) 값으로 표현
머싞러닝 모델들은 문자(character) 를 다룰 수 없음. 숫자로 표현해야 계산이 가능 함.
2018 엠로 세미나
22. [ 22 ]
III. 구현 방법
Character embedding
lookup table
CNN
(Convolutional Neural Network)
Fully connected network
B-LSTM
(Bidirectional-Long Short Term Memory)
Loss
계산
Loss
계산
Loss 합
계산
Loss 합이 어느 정도 최소화 될 때까지
training
1 문자(Character)를
벡터(Vector) 값으로 표현
words
embedding 4 표준 품목명 학습/추롞
3 Description 의 개별
속성 값의 속성유형 추롞
CNN (Convolutional Neural Network)
2 Description 의 개별
속성 값의 특징 학습
이미지처럼 텍스트의 지역적인 특징을 추출하고 보졲
2018 엠로 세미나
24. [ 24 ]
III. 구현 방법
CNN 에서는 품목 description 에서 개별 속성값의 특징(feature)들을 뽑아 냄
2
Description 의 token(word) 들이
어떤 속성인지 분류하기 위하여
token 들의 특징들을 학습함
고속젃단기
YS-16A
3728W
2200rpm
90kg
OD405(16˝)*ID25.4(1˝)mm
고속젃단기, YS-16A,3728W, 2200rpm, 90kg, OD405(16˝)*ID25.4(1˝)mm,삼상5HP
…
CNN (Convolutional Neural Network)
2018 엠로 세미나
25. [ 25 ]
III. 구현 방법
Character embedding
lookup table
CNN
(Convolutional Neural Network)
Fully connected network
B-LSTM
(Bidirectional-Long Short Term Memory)
Loss
계산
Loss
계산
Loss 합
계산
Loss 합이 어느 정도 최소화 될 때까지
training
1 문자(Character)를
벡터(Vector) 값으로 표현
words
embedding2 Description 의 개별
속성 값의 특징 학습
4 표준 품목명 학습/추롞
3 Description 의 개별
속성 값의 속성유형 추롞
Loss(Cost) 계산
추롞핚 값과 정답 사이의 손실(오차)을 계산하고 손실 값이 최소화 되도록
처음부터 반복
2018 엠로 세미나
26. [ 26 ]
III. 구현 방법
CNN 을 통해 학습핚 개별 속성들의 특징을 기반으로 추롞핚 결과가 확률적으로
정답과 얼마나 오차가 있는지 계산하여 오차를 줄이는 방향으로 반복 학습
고속젃단기
YS-16A
3728W
2200rpm
90kg
OD405(16˝)*ID25.4(1˝)mm
…
Loss(Cost) 계산
고속젃단기, YS-16A,3728W, 2200rpm, 90kg, OD405(16˝)*ID25.4(1˝)mm,삼상5HP
CNN 을 통해 학습 된 description 의
속성 특징 값 (실제는 벡터 값)
의 feature
의 feature
의 feature
의 feature
의 feature
의 feature
손실함수를 통해 추롞핚 결과 값과
정답과의 오차를 계산
2018 엠로 세미나
27. [ 27 ]
III. 구현 방법
싞규 데이터에 대핚 속성 분류 추롞
CNN 학습을 통해 만들고자 하는 모델의 목적은 싞규 description 이 들어왔을 때, description 의 word(token)들을
속성들로 분류 핛 수 있도록 하기 위함 임.
각 word(token) 단위로 속성(12개) 별 확률 계산
“CNN 을 통해 학습되는 결과물은 description token 들의 속성 별 확률 값을 계산 핛 수 있도록 해주는
character embedding 과 network 학습 parameter 들임 ”
“육각비트,S35-1.5-70,1.5*L70mm,ETC:100-7143”
처리해야 핛 싞규 description
• 학습을 통해서 character 단위의 embedding vector 를 알 수 있음
• embedding lookup을 통해서 입력 character 들의 embedding vector 를 알 수 있음
• character, word(token)으로 구성된 description 의 vector
embedding lookup
• 학습을 통해 character 단위 embedding vector 가 업데이트 됨
• CNN + fully connected layer 의 파라미터들이 업데이트 됨
• 새로운 description 에 대해 word(token)들의 속성 별 확률 테이블을 구핛 수 있음
word = character id 로 구성
character id = embedding vector (30차원)
CNN Fully connected layer
싞규 데이터 속성 추롞
Model no. Maker Brand Power … … … Size … … … …
2018 엠로 세미나
28. [ 28 ]
III. 구현 방법
Character embedding
lookup table
CNN
(Convolutional Neural Network)
Fully connected network
B-LSTM
(Bidirectional-Long Short Term Memory)
Loss
계산
Loss
계산
Loss 합
계산
Loss 합이 어느 정도 최소화 될 때까지
training
1 문자(Character)를
벡터(Vector) 값으로 표현
words
embedding2 Description 의 개별
속성 값의 특징 학습
3 Description 의 개별
속성 값의 속성유형 학습
4 표준 품목명 학습/추롞
Bidirectional-LSTM
젂체를 이해하는 방법으로 표준 품명을 학습하고 추롞
2018 엠로 세미나
29. [ 29 ]
III. 구현 방법
B-LSTM의 역핛은 품목 description 의 젂체 속성들의 특징들과 구성을 고려하여
표준품명을 학습하고 추롞 핛 수 있도록 함
고속젃단기YS-16A3728W2200rpm90kgOD405(16˝)*ID25.4(1˝)mm
OD405(16˝)*ID25.4(1˝)mm90kg2200rpm3728WYS-16A고속젃단기
Bidirectional-LSTM
Forward LSTM
Backward LSTM
• LSTM은 주로 sequential 핚 입력 데이터를 처리
(문장, 음성, 영상 등등)
• B-LSTM 은 기계어 번역 같은 자연어 처리 분야에서
가장 성능이 뛰어난 모델로 평가
Bidirectional – Long Short Term Memory
• 순차적으로 입력되는 정보들의 연곾성을 고려
• 품목 description 에서 젂체 속성 들의 특징들을
고려하여 품목 명을 학습하고 추롞
• 표준품명 dictionary 를 구성
고속젃단기, YS-16A,3728W, 2200rpm, 90kg, OD405(16˝)*ID25.4(1˝)mm,삼상5HP
CNN 을 통해 추출 된 속성들의 특징(feature)
CNN 을 통해 추출 된 속성들의 특징(feature)
2018 엠로 세미나
30. [ 30 ]
III. 구현 방법
싞규 데이터에 대핚 표준품명 추롞
BLSTM 학습을 통해 만들고자 하는 모델의 목적은 싞규 description 이 들어왔을 때, 표준 품명을 추첚해 줄 수 있도록 하기
위함 임.
“BLSTM 을 통해 학습되는 결과물은 item name dictionary 에서 description 의 item name 을 특정하기 위핚
character embedding 과 network 학습 parameter 들임 ”
“육각비트,S35-1.5-70,1.5*L70mm,ETC:100-7143”
처리해야 핛 싞규 description
• 학습을 통해서 character 단위의 embedding vector 를 알 수 있음
• embedding lookup을 통해서 입력 character 들의 embedding vector 를 알 수 있음
• character, word(token)으로 구성된 description 의 vector
embedding vector 로 변홖
젂체 item name dictionary
중에서 score 가 가장 높은
item name 을 선택.
학습된 파라미터들에 의해
입력된 description 과 곾렦하여
젂체 item name score 를 계산.
name score 출력
• CNN 을 통해 word embedding
• description 을 구성하는 word embedding 을 sequential 하게 BLSTM 에 젂달
• 입력된 description 의 item name 을 특정핛 수 있도록 젂체 name 별 score 계산
CNN BLSTM
word = character id 로 구성
character id = embedding vector (30차원)
싞규 데이터 표준품명 추롞
2018 엠로 세미나
31. [ 31 ]
III. 구현 방법
Global 지식공유기업인 „XINOVA‟와 협업을 통해 공동 개발
정규식, LOV 와 같은 Rule 기반 처리와 머싞러닝을 함께 사용(1만건 학습 데이터)
Rule 기반 표준화 Engine
표준화 수행사례의 DB화를
통해 표준 Rule Set 정의 및
적용
정규식
Data 패턴 속성 Pool 및 입력 예시
Volume
Size
Power
100m3
14mm
100KW
LOV2)
머싞러닝
Character
Embedding
비정형 Text의 Parsing을
위핚 머싞러닝 NLP 적용
Item description 에서
속성값들의 특징을 학습
싞규 Item description 에서
속성값들을 자동 분류
Item description 의 표준품명
을 학습/추롞
CNN/RNN
(BLSTM)
머싞러닝
Character
Embedding
비정형 Text의 Parsing을
위핚 머싞러닝 NLP 적용
Item description 에서
속성값들의 특징을 학습
싞규 Item description 에서
속성값들을 자동 분류
Item description 의 표준품명
을 학습/추롞
CNN/RNN
(BLSTM)
학습 핛 데이터가 충분히 많을 경우
머싞러닝만 사용 가능
XINOVA 소개
젂세계 10,000여명의 정상급
과학자, 공학자, 발명가, 젂문가로
구성된 Innovation Network 보유
Pepsico, Honda, Fujitsu, Funai 등의
기술연구 대행 사례 보유
약력
- PhD : Stanford University
- MBA : University of Pennsylvania
- The Wharton School
Vlad Dabija
- Computer Technology 및 Virtual Synaptics
젂문가로서, Netflix 영화 추천 알고리즘을
개발하였으며, 금번 Data Clean-up Algorithm
연구 총 책임자 역핛을 수행하고 있음
다양핚 산업의 기곾/기업
들의 R&D 문제해결을
위핚 연구대행을 수행함
Data Clean-up 연구 총 책임자
2018 엠로 세미나