카테고리 없음

[Paper Review] Controlling Neural Networks with Rule Representations

내일한다 2022. 8. 10. 23:43

다소 개인적인 의견이 반영되어있고, review를 목적으로 작성된 글입니다. 문제가 된다면 글을 내리도록 하겠습니다.

Prologue (with introduction in paper)

 데이터를 많이 습득할 수 있는 환경에서 data-driven을 통한 접근은 나쁘지 않은 시도이다. 하지만 대부분의 시나리오에서 지도학습을 예시로, 레이블과 쌍을 이루는 데이터셋은 task에 대하여 모든 규칙(rule)을 가르치기에 충분하지 않다. 저자는 Physics 분야의 double pendulum system을 예로 들면서 설명한다. 비록 data-driven의 conventional supervised learning으로 적합된 black box 모델이 현재상태에서 다음 시점의 상태를 예측할 때 정확도가 높을 수는 있어도 energy conservation (에너지 보존법칙)과 같은 rule을 위반할 수 있다. 저자는 Deep neural networks (DNNs) 에 효율적으로 rule를 학습시키는 방법에 초점을 두고있다. 

 

Figure 1. Overview of DEEPCTRL.

 

Rule로부터 학습하는 것의 장점을 크게 3가지 언급한다.

1. Rule은 최소한의 학습데이터에서 추가적인 정보를 제공할 수 있고 테스트 정확도를 향상시킬 수 있다.

2. Rule은 DNNs의 신뢰성을 높여 줄 것이다.

3. DNNs는 인간이 인지할 수 없는 작은 변화에 민감하다. Rule을 학습단계에서 제공함으로서 이러한 변화에 대한 영향을 최소화할 수 있다. (underspecification을 줄이기 위해서 model search space를 제약)

 

 Data-driven과 rule-driven을 함께 고려할 때, 각각에 대한 contribution의 균형을 어떻게 잡히게 하는지는 기본적으로 생각할 수 있는 질문이다. 학습단계에서 데이터셋 뿐만 아니라 샘플에 따라 달라지는 최적의 절충(optimal trade-off)이 존재한다. 따라서 data 혹은 rule-driven의 contribution을 제어(논문의 제목에서 controlling 한다는 의미가 여기에 담김)할 수 있는 framework는 가치가 있다. 이상적으로, controlling은 계산 비용을 최소화하고 시간을 단축시키면서 다른 샘플에 적응하거나 분포를 유연하게 변경하기 위해 retraining할 필요없이 추론할 때 활성화되어야 한다.

 

 논문에서는 바로 위에서 언급한 이상적인 아이디어를 실현시킬 수 있는 DEEPCTRL이라는 framework를 제안한다. 이는 아래와 같은 contribution과 장점을 가지고 있다. 이를 보여주기 위해 크게 3 가지 분야의 데이터셋을 활용하여 각각의 분야에서 알려진 rule을 적용하는 것을 보여준다.

 

1. labeled data와 rule를 joint learning 할 수 있다.

2. non-differentiable rule을 손실함수로 활용하기 위해 novel perturbation-based method를 제안하여 differentiable objectives로 전환 후 활용할 수 있다.

3. model agnostic하여 다양한 task와 다양한 rule에 대하여 유연하게 사용할 수 있다.

 

Related Work

아래에 언급하는 기술은 사전연구에서 rule을 신경망에서 함께 학습할 수 있도록 제안되었던 방법들이다.

 

- Posterior regularization

- Teacher-student framework

- Adversarial learning

- Lagrangian duality framework (LDF)

- Formulation over the space of confusion matrices and optimization solvers

- KL divergence for variational autoencoders

 

Learning Jointly from Rules and Task

Related work에서 언급한 일부의 방법들과 추가로 신경망에 rule을 주입하려 할 때 전통적인 손실함수는 아래와 같이 작성될 수 있다.

λ는 rule 손실함수의 계수로 손실을 얼마나 반영할지 지정할 수 있는 term이다. 하지만 이 손실함수는 세 가지 한계점을 가지고 있다.

1. λ는 학습전에 결정되어야 하는 hyperparameter이다.

2. λ는 학습단계에서 어떠한 불일치가 존재할 때, 추론에서 적합하지 않을 수 있다. (not adaptable)

3. rule 손실함수는 learnable parameters에 관하여 differentiable 해야 한다.

 

이 한계를 해결하는 것이 곧 논문의 기여와 동일한 맥락으로 이어진다. 이를 위해 제안하는 framework의 대략적인 형태는 Figure 2.와 같고, 대응되는 알고리즘는 Algorithm 1.과 같다.

Figure 2. Simplified learning process of DEEPCTRL.
Algorithm 1. Training process for DEEPCTRL.

 먼저 Rule과 Data를 위한 encoder는 각각의 representation을 concatenation한다. 이 때 α는 beta distribution으로부터 임의로 추출되는 값으로 가중치를 각각의 representation에 곱한다. Batch마다 새로운 값을 임의로 추출하고 beta distribution의 특성상 정의역이 범위가 [0, 1]이면서 양극단의 값을 uniform distribution에서 추출할 때보다 높은 빈도로 추출할 수 있다는 점에서 해당 분포가 차용되었다. (beta distribution 그려보기 https://homepage.stat.uiowa.edu/~mbognar/applets/beta.html, 모수는 둘 다 0.1, 0.1 일 때 적합하다는 것을 ablation studies에서 확인

 

 Concatenation한 representation z는 신경망 기반의 decision block을 통과하여 task의 대한 결과 값을 도출하게 된다. 알고리즘의 ρ는 epoch마다 첫 번째 batch에 대하여 손실값의 비율을 계산하여 적용해 준다. 이는 실제 손실 값의 차이가 불균형할 때 rule 혹은 task에 대한 손실함수가 지배적이게 되면서 모두를 고려할 수 없는 경우가 생기기 때문이다. (이는 supplementary infomation에서 실험으로 그 현상에 대하여 언급) 결국 아래와 같은 손실함수를 제안하여 기존의 손실함수의 한계점으로 언급했던 1번과 2번을 해소함(1번의 학습 전에 지정하지 않아도 α를 stochastically 결정한다. 또한 2번의 불일치가 일어날 수 있기 때문에 지정되지 않은 가중치를 batch마다 다양한 관점에서 학습을 가능케 하고 있다)을 확인할 수 있다.

Integrating Rules via Input Perturbations

 Rule 손실함수는 differentiable 해야 한다. 이를 위한 아이디어를 이해하기 위해 논문에서는 두 가지 예시를 활용한다. 1)만약  differentiable 함수 r() 가 주어지고 r(x,  y ̂)τ 라는 rule이 정의된 상태라면 손실함수를 max( r(x,  y ̂) - τ, 0 )처럼 표현할 수 있을 것이다. 이는 ReLU 활성함수와 같은 기능을 하며 rule을 위반하는 것을 대상으로(rule을 위반하지 않은 것들은 0이 되어 계산에 반영되지 않는다.) 가중치 갱신에 사용할 수 있을 것이다. 2)fitted decision tree가 결과적으로 도출하는 해석은 'the probability of the j-th class y ̂_j  is higher when a < x_k (where a is a constant and x_k is the k-th feature)' 와 같다. 

 

 논문에서는 input perturbations를 통해 differentiable rule 손실함수를 제안한다. perturbations은 특정 분포로부터 상황에 맞게 임의 추출된 값을 활용한다.(자세한 내용은 experimental results 참고) 이때 x에 대한 작은 perturbation을 더한 x_p에 대하여 y_p를 계산할 수 있고 (모델의 x_p에 대한 예측값) 만약 위의 2)에서 언급한 예제의 rule을 만족해야하는 상황에서 x_k < a and a < x_(p, k) 라면 rule 손실함수는 다음과 같다. 

Algorithm 2. DEEPCTRL via perturbation-based integration of rules.

 Algorithm 2는 Algorithm 1.에서 perturbation 기법을 추가하여 최종적으로 제안하는 framework가 작동하는 방식을 표현한 것이다. Rule 손실함수는 예제 2)를 활용하여 일반화 되었고, 실제 적용하는 데이터의 분야에 따라 존재하는 rule를 반영하는 사례를 확인할 때 그 식이 분명하게 이해될 수 있다.

Experimental Results

 Physics(맨 위에서 언급한 double pendulum 시뮬레이션), Detail, Healthcare 분야의 데이터를 사용하여 제안하는 방법의 성능을 분석한다. Algorithm 2의 line 4에서 pertured input를 취한다. 데이터셋 마다 적용하는 rule과 분포로 부터 추출하는 perturbation의 값은 다르다. 

 

Case 1) Physics-Double Pendulum (해당 case의 task는 아래의 정보를 참고)

 Rule은 energy dumping rule에 근거한다. 이는 시간이 지남에 따라 에너지(E)가 감소한다는 법칙이다. Task는 바로 다음시점의 4개의 값을 예측하는 것으로 위반하는 경우에 대하여 손실함수를 적용할 때 아래와 같이 ReLU 함수를 사용할 수 있다. 평가를 위해 제안하는 framework와 동일한 구조에서 α=1(task의 손실함수만 반영되도록)로 설정한 모델(TaskOnly), conventional objectives를 사용하여 λ를 0.01, 0.1, 1로 설정한 모델, 2020년에 제안된 LDF의 MAE, ratio 설정 모델과 제안하는 DEEPCTRL을 비교한다. DEEPCTRL은 α를 변경해 가면서 학습을 했기 때문에 아래 그래프와 같이 평가 및 검증 단계에서 모든 α에 대한 결과를 확인할 수 있고 이는 앞에서 언급한 것과 같이 최적의 가중치를 찾기위해 retraining 과정이 생략될 수 있음을 보여준다. Figure 3.(a)에서는 LDF가 가장 좋은 성능을 보임을 확인할 수 있다. 하지만 Figure 3.(b)에서 LDF는 verification ratio(검증 데이터셋에서 rule을 어기지 않았음에 대한 정확도)가 절반이다. 실제로는 자연법칙을 적지 않은 횟수로 위반하고 있다는 의미이다. DEEPCTRL의 경우 논문에서 언급하는 α=0.6일 때 어느정도 높은 verification ratio와 낮은 오차를 가질 수 있음으로 최적의 α가 될 수 있음을 언급한다. Figure 3.(c)는 실제 예측값을 시각화 한 것이다. 

Figure 3. Exp. results for the double pendulum task.

 

Case 2) Detail-Sales Forecasting (해당 case의 task는 아래의 정보를 참고)

 데이터는 M5 데이터셋의 일부를 활용한다. rule은 가격 변동량과 판매 변동량 사이에 음의 상관관계가 있다는 경제학 관점의 경향을 기준으로 정의한다. 이는 case1)이 일반적인 물리법칙인 것과 달리 soft rule. 즉, 일반적으로 그러한 경향이 있다는 것을 표현하는 rule이다. 때문에 이 경향성을 위반하는 사례를 포함하여 다른 경향을 가지는 unseen 데이터에 대한 평가도 함께 이루어진다. rule을 손실함수로 표현하기 위해 perturbation 값을 양수로 제한하여 y_p와 y만을 사용한 손실함수를 디자인할 수 있다. NEG0.1은 R < -0.1 (R은 상관계수) 일 때를 의미한다. 

Figure 4. Exp. results for the sales forecasting task (candidate rule testing)
Figure 5. Exp. results for the sales forecasting task (candidate model testing)

Case 3) Healthcare-Cardiovascular Classification (해당 case의 task는 아래의 정보를 참고)

 Rule은 case 2)와 마찬가지로 그 제약이 soft하다. 다양한 관점에서 실험을 하는데 이는 USUAL(rule을 만족하는 sample 집합)과 UNUSUAL(rule을 만족하지 못하는 sample 집합)의 비율을 달리두고 평가하는 것이다.

Figure 6. Exp. results for the cardiovascular classification task

Epilogue (with Conclusion and Societal Impact in this paper)

 Rule로부터 신경망을 학습시키는 것은 신뢰할 수 있는 DNN을 위해 중요한 요소가 될 수 있다. 특히 특정 분야의 데이터를 적용시키고자 할 때, Rule을 손실함수로써 적용할 수 있다면 제안된 DEEPCTRL은 응용 분야에서 활용가치가 높다. 하지만 마지막으로 논문에서는 아래와 같은 문제점이 발생할 수 있음을 언급하면서 논문을 마무리한다.

 

DEEPCTRL has many potential benefits in real-world deep learning deployments to improve their accuracy, to increase their reliability, and to enhance human-AI interaction. On the other hand, we also note the capability of DEEPCTRL in encoding rules in effective ways can have undesired outcomes if used with bad intentions to teach unethical biases.