s5unnyjjj's LOG
[s5unnyjjj's Review] Deep learning doesn’t need tobe a black box 본문
[s5unnyjjj's Review] Deep learning doesn’t need tobe a black box
s5unnyjjj 2024. 10. 10. 21:58Link: https://bdtechtalks.com/2021/01/11/concept-whitening-interpretable-neural-networks/
기사 제목: Deep learning doesn't need to be a black box
기술 동향에 관하여 소개하는 것으로 알려진 TechTalks에 소개된 기사를 읽고 작성한 내용입니다.
1. Introduction
* Deep neural networks can perform wonderful feats thanks to their extremely large and complicated web of parameters. But the innerworkings of NNs are often a mystery
* In tadndem with the expansion of deep learning in various domains and applications, there has been a growing interest in developing techniques that try to explain neural networks
* “Concept whitening” can help steer neural networks toward learning specific concepts without sacrificing performance
Additional Explanation
심층 신경망은 매우 크고 복잡한 구조 덕분에 놀라운 업적을 수행할 수 있습니다. 그러나 복잡성 때문에 신경망의 내부 작동은 종종 미스터리입니다. 따라서 다양한 영역과 응용분야에서 딥러닝이 확대됨에 따라 신경망의 결과와 학습된 매게변수를 조사하여 신경망을 설명하는 기술 개발에 대한 관심이 높아지고 있습니다. 그러나 이러한 설명은 종종 잘못되고 에러의 소지가 있으며 훈련 중 딥 러닝 모델에 포함된 에러를 수정하는 데 지침을 거의 제공하지 않습니다. Nature Machine Intelligence에 발표된 논문 에서 Duke University의 과학자들은 성능 저하 없이 특정 개념을 학습하도록 신경망을 조정하는 데 도움이 되는 기술인 "Concept Whitening"을 제안합니다. “Concept Whitening”은 수백만개의 훈련된 매개변수에서 답을 찾는 대신 딥러닝 모델에 해석 가능성을 적용하는 것으로 이 기술은 좋은 결과를 보여줍니다.
2. Features and latent space of DL
* Given enough quality training examples, a deep learning model with the right architecture should be able to discriminate between different types of input
* For instance, in the case of computer vision tasks, a trained neural network will be able to transform the pixel values of an image into their corresponding class
* Each layer of NN encodes specific feature from the input image
* In general, the lower layers of a multilayrs CNN will learn basic features (corners and edges)
* The higher layers of the NN will learn to detect more complex features (faces, objects, full scenes, etc)
Additional Explanation
양질의 훈련 사례가 충분하다면 올바른 아키텍처를 갖춘 딥 러닝 모델은 다양한 유형의 입력을 구별할 수 있어야 합니다. 예를 들어, 컴퓨터 비전 작업의 경우 훈련된 신경망은 이미지의 픽셀 값을 해당 클래스로 변환할 수 있습니다.
훈련 중에 딥 러닝 모델의 각 계층은 훈련 이미지의 특징을 일련의 숫자 값으로 인코딩하고 매개변수에 저장합니다. 일반적으로 다층 컨볼루션 신경망의 하위 계층은 모서리 및 모서리와 같은 기본 기능을 학습합니다. 신경망의 상위 계층은 얼굴, 물체, 전체 장면 등과 같은 더 복잡한 기능을 감지하는 방법을 학습합니다.
* Deep learning models are prone to learning the most discriminative features, even if they’re the wrong ones
Additional Explanation
이상적으로 신경망의 latent space는 감지하려는 이미지 클래스와 관련된 개념을 나타냅니다. 하지만 딥러닝 모델은 잘못된 기능일지라도 가장 구별되는 기능을 학습하는 경향이 있습니다.
예를 들어 다음 데이터 세트에는 오른쪽 하단 모서리에 로고가 있는 고양이 이미지가 포함되어 있습니다. 사람은 작업과 관련이 없는 로고를 쉽게 무시할 것입니다. 그러나 딥 러닝 모델은 고양이와 다른 동물을 구별하는 가장 쉽고 효율적인 방법일 수 있습니다. 마찬가지로, 훈련 세트에 있는 양이 있는 이미지가 녹색 목초지를 많이 포함하고 있는 경우 신경망은 양이 아닌 녹색 농지를 감지하는 방법을 학습할 수 있습니다.
이러한 이유로 딥 러닝 모델이 훈련 및 테스트 데이터 세트에서 얼마나 잘 수행되는지는 제외하고 어떤 개념과 기능을 탐지하기 위해 학습했는지 아는 것이 중요합니다.
3. Post hoc explanations of NN
* Many deep learning explanation techniques are post hoc
- Post hoc means they try to make sense of a trained neural network by examining its output and its parameter values
* Deep neural networks (NNs) are very powerful in image recognition but what is learned in the hidden layers of NNs is unknown due to its complexity
- Lack of interpretability makes NNs untrustworthy and hard to troubleshoot
- There are the dangers of trusting black-box explanation techniques and had shown how such methods could provide erroneous interpretations of neural networks
*The goal of concept whitening is to develop neural networks whose latent space is aligned with the concepts that are relevant to the task it has been trained for
Additional Explanation
많은 딥러닝 설명 기술은 post hoc입니다. 즉, 출력과 매개변수 값을 검사하여 훈련된 신경망을 이해하려고 합니다. 예를 들어, 신경망이 이미지에서 보는 것을 결정하는 한 가지 인기 있는 기술 은 입력 이미지의 다른 부분 을 마스킹 하고 이러한 변경이 딥 러닝 모델의 출력에 어떻게 영향을 미치는지 관찰하는 것입니다. 이 기술은 신경망과 더 관련이 있는 이미지의 기능을 강조 표시하는 히트맵을 만드는 데 도움이 됩니다. 이러한 방법은 기능과 잠재 공간 간의 관계에 대한 힌트를 찾는 데 도움이 될 수 있습니다. 이러한 방법이 유용하기는 하지만 여전히 딥 러닝 모델을 블랙박스와 같이 취급되고 신경망 작동에 대한 명확한 그림을 그리지 않습니다.
하지만 딥 뉴럴 네트워크(NN)는 이미지 인식에서 매우 강력하지만 NN의 숨겨진 레이어에서 학습한 내용은 복잡성으로 인해 알려져 있지 않습니다. 해석 가능성의 부족은 NN을 신뢰할 수 없게 만들고 문제를 해결하기 어렵게 만듭니다. 또한 이전에 블랙박스 설명 기술을 신뢰하는 것의 위험성에 대해 경고 했으며 그러한 방법이 어떻게 신경망에 대한 잘못된 해석을 제공할 수 있는지 보여주었습니다. 그러므로 concept whitening 목표는 학습된 작업과 관련된 개념과 잠재 공간이 정렬된 신경망을 개발하는 것입니다. 이 접근 방식은 딥 러닝 모델을 해석 가능하게 만들고 입력 이미지의 기능과 신경망 출력 간의 관계를 훨씬 더 쉽게 파악할 수 있도록 합니다.
신경망의 계산은 이해하기 매우 어렵습니다. hidden layer 내부를 확인하려는 시도는 위험성이 뒤따르기에 앞서
신경망 사후 분석 대신 Concept whitening이라는 매커니즘을 도입하여 해당 계층까지 이어지는 계산을 더 잘 이해할 수 있도록 네트워크의 주어진 계층을 변경하게 됩니다. Convolution Neural Network에 Conecept whitening을 추가하면 latent space가 특정 개념으로 정렬되게 됩니다. Concept whitening은 예측 성능을 손상시키지 않고 네트워크의 모든 계층에서 사용할 수 있습니다.
4. CW into NN
* While the NN tunes its overall parameters to represent the classes in the main task, concept whitening adjusts specific neurons each layer to align them with the classes included in the concept data set
* The result is a disentangled latent space, where concepts are neatly separated in each layer and the activation of neurons correspond with their respective concepts
Additional Explanation
Deep neural network은 image recognition에서 높은 성능을 보입니다. 하지만 latent space를 해석할 수 는 없습니다. 일반적으로 아래 그림과 같이 벡터들은 유사한 방향을 가리키거나 다른 길이를 가질 수 있으며, 축에 정렬하는 것을 불가능하게 만듭니다. 각 축은 뉴런을 나타내는데 개념들이 축에 정렬되지 않으면 정보가 분리되지 않습니다. 만약 개념들이 축에 정렬되어 있다면, 오직 해당 뉴런만이 개념을 나타내게 됩니다. 따라서 개념에 대한 모든 정보는 오직 그 뉴런을 통해 흐르게 됩니다. 이를 위한 대안책으로 소개된 것이 Concept Whitening입니다. CW 모듈이 추가된다면 latent space 축은 개념과 정렬되게 됩니다. 또한 concept whitening을 통해 딥 러닝 모델은 두 개의 병렬 교육 주기를 거칩니다. 신경망이 주요 작업의 클래스를 나타내기 위해 전체 매개변수를 조정하는 동안 concept whitening은 각 계층의 특정 뉴런을 조정하여 개념 데이터 세트에 포함된 클래스와 정렬합니다. 그 결과 각 층에서 개념이 깔끔하게 분리되고 뉴런의 활성화가 각각의 개념에 해당하는 얽힌 잠재 공간이 생성됩니다. 이러한 분리를 통해 네트워크가 계층을 통해 개념을 점차적으로 학습하는 방법을 훨씬 더 명확하게 이해할 수 있습니다.
Additional Explanation
해당 기술의 효과를 평가하기 위해 레이어에 Concept whitening이 삽입 된 딥러닝 모델을 통해 일련의 검증 이미지가 실행된 후 각 레이어에서 활성화된 개념 뉴런을 기반으로 이미지를 정렬했습니다. 그 결과 하위 레이어에서 concept whitening 은 개념과 관련된 색상 및 질감과 같은 낮은 수준의 특성을 캡처합니다. 예를 들어, 네트워크의 하위 계층은 흰색 물체가 있는 파란색 이미지가 "비행기" 개념과 밀접하게 연관되어 있고 따뜻한 색상의 이미지가 "침대" 개념을 포함할 가능성이 더 높고 밀집한 texture의 이미지는 “사람” 개념을 포함할 가능성이 더 높다는 것을 학습할 수 있습니다. 상위 계층으로 갈수록 네트워크는 개념을 나타내는 객체를 분류하는 방법을 학습합니다.
* One of the benefits of concept disentanglement and alignments is that the NN becomes less prone to making obvious mistakes
Additional Explanation
개념 풀기 및 정렬의 이점 중 하나는 신경망이 명백한 실수를 저지르는 경향이 줄어든다는 것입니다. 이미지가 네트워크를 통과할 때 상위 계층의 개념 뉴런은 하위 계층에서 발생할 수 있는 오류를 수정합니다. 예를 들어 아래 이미지에서 신경망의 하위 레이어는 파란색과 흰색 픽셀이 밀집되어 있기 때문에 이미지를 "비행기" 개념과 잘못 연결했습니다. 그러나 이미지가 더 높은 계층을 통해 이동함에 따라 개념 뉴런은 결과를 올바른 방향으로 조정하는 데 도움이 됩니다.
5. Conclustion
* With deep learning models becoming larger and more complicated every year, there are different discussions on how to deal with the transparency problem of neurl networks
* One of the main arguments is to observe how AI models behave instead of trying to look inside the black box
* Deep learning models concept whitening modules provide interpretability without a significant drop in accuracy on the main task
Additional Explanation
딥러닝 모델이 매년 커지고 복잡해짐에 따라 신경망의 투명성 문제를 처리하는 방법에 대한 다양한 논의 가 있었습니다. 그 중 블랙박스 내부를 들여다보는 대신 AI 모델이 어떻게 작동하는지 관찰하고자했지만 신경망에 해석 가능성 설계 제약을 부여하려는 모든 시도는 모델의 성능을 떨어뜨리는 결과를 초래할 것이라고 하였습니다. 이에 반박하여 Concept whitening은 더 나은 해석 가능성을 제공하고 정확도에 있어서 어떠한 성능 저하도 없으며, 사용하기 쉽다는 장점이 있습니다.
>> 위 내용은 필자가 읽고 작성한 내용입니다.
>> 부족한 점이 많을 수 있기에 잘못된 내용이나 궁금한 사항이 있으면 댓글 달아주시기 바랍니다.
>> 긴 글 읽어주셔서 감사합니다.
'Review (Paper, Code ...) > Etc Review' 카테고리의 다른 글
[sunnyjjj's Review] Sequence Models & Attention Mechanism (1) | 2024.10.10 |
---|---|
[s5unnyjjj's Review] Measuring Internet Speed: Current Challenges and Future Recommendations (0) | 2024.10.10 |