원료들을 벡터로 표현하고 임베딩하여 유사 원료를 확인하는 방법에 대한 논의
raw_data:receipt_3
) ds:receipt_3_dl
)sigmoid_code_learning
)각 원료에 대한 표현벡터를 만드는 것은 꾸준하게 증가하는 신규 원료에 대한 인공지능 모델 학습을 쉽게 하며, 표현된 벡터를 해석함으로써, 사용자는 복잡한 신경망에 대한 부담을 덜 수 있다. 이를 위해서 단순히 함량에 대해서 예측 하는 모델이 아닌, 각 원료를 표현벡터로 맵핑하고, 추가적인 함량과 함께 예측하는 형태를 제안한다.
좀더 자세히 설명하면 표현벡터는 임의의 원료 $\mathcal{M}$를 벡터 $H$ 형태로 맵핑된 형태로 나타나며, 원료의 유사도가 높다면, 벡터의 거리도 줄어드는 성질이 있다.
원료를 벡터로 표현하는 방법은 지도/비지도 학습 방법들을 포함하여 여러가지가 있다. 이번 보고서에서는 크게 데이터의 특성을 기반으로한 벡터와 End-to-End 점도 예측 학습을 활용한 벡터 표현 학습을 다룬다.
가장 쉽게 원료에 대한 표현벡터를 만드는 방법은 배합목적을 기반으로 하는 방식이다. KCA데이터에는 원료에 대한 배합목적은 91가지가 있으며, 특정 원료는 각 배합목적을 포함할 수 있다.
91차원은 고차원으로 시각적으로 유사한 원료를 찾고 이해하는 것은 쉽지 않다.시각적인 목적으로 사용하는 방법 중 “저차원 임베딩”을 소개한다.저차원 시각화는 91차원 벡터를 2차원으로 사영하여 시각화한다. 추가적인 정보로 레이블을 시각화하는 경우, 예상하는 특징들이 비슷한 벡터 표현으로 묶이는지 확인할 수 있다.
실제 원료의 특성을 기반으로 하는 방법과 다르게, 점도 예측을 목적으로 코드 표현을 학습할 수 있다. 이 방법의 가정은 “코드 표현이 적절하게 형성된다면, 예측력이 올라간다”는 점이다. 각 원료에 대한 표현벡터 형성을 최적화하여, 점도 예측을 최소화하는 표현벡터를 학습하는 방법이다 .
The code mapping problem has two components $h_{\theta_{map}}$ and $g_{\theta_{reg}}$ to compute predict any type of outputs with the amount of materials for the input. The direct regression function $f_\theta$ is the composition of two functions.
\[f_\theta = g_{\theta_{reg}} \circ h_{\theta_{map}}\]The input and output spaces for each module are as follows:
End-to-End code entry preference learning is optimized by
\[\theta_{reg}^{\star},\theta_{map}^{\star} = \arg \min_{\theta_{map}, \theta_{reg}} \mathcal{L}( f_\theta (x), y)\]One way to model $h_{\theta_{map}}$ is to map individual code $c$ to a representation vector \(\mathbf{h}_c \in \mathbb{R}^{N_{entry}}\) and combine the $\mathbf{h}_c$ with amounts.
\[h_{\theta_{map}} (A_1, \cdots, A_{N_{code}}) = \sum_{c} A_c \cdot \mathbf{h}_c\]To minimize the loss, both weights $\theta_{reg}$ and $\theta_{map}$ are jointly optimized.
벡터 길이에 대한 성능 차이는 없었음.
ACT | HIDDEN_DIM | N_ENTRIES | NUM_LAYERS | OPTIM | (Eval+Train)/2 | Eval | Train |
---|---|---|---|---|---|---|---|
sigmoid | 128 | 10 | 4 | adam | 1494 | 1500 | 1488 |
sigmoid | 128 | 25 | 4 | adam | 1494 | 1500 | 1488 |
sigmoid | 128 | 2 | 4 | adam | 1495 | 1501 | 1489 |
sigmoid | 128 | 5 | 4 | adam | 1495 | 1501 | 1489 |