- 2020년 1월 3일 오후 3:31
- 조회수: 4045
REFERENCES
INFORMATION
- 2020년 1월 3일
- 오후 1시 ~
- 고려대학교 신공학관 218호
TOPIC
OVERVIEW
장소 : 고려대학교 신공학관 218호
주제 : Recent Advances in Open Set Recognition
발표자 : 백승호
발표자 후기
Open Set Recognition에 대한 주제로 세미나를 진행하였다. Open Set에 대한 정의와 해결하고자 하는 목표 그리고 가지고 있는 Data의 종류별 해결 idea에 대해 논의하였고 추가적으로 DOC(Deep Open Classification)이라는 하나의 방법론을 정하여 구체적인 idea에 대하여 논의하는 것으로 세미나를 마무리하였다. DOC는 multi-class를 갖는 복잡한 분류 모델에서 가지고 있는 범주를 정확히 분류하는 동시에 범주에 해당하지 않는 표본을 분류해 냄을 목표로 하는 분류 모델이다. 기존의 multi-class 분류기가 각 범주별 확률을 계산하여 최대 확률을 갖는 범주로 할당하는 softmax 함수를 기반으로 구성되어 있다면 DOC는 multi-class 각각의 범주에 대하여 해당 범주가 맞느냐 아니냐를 binary로 판단하는 sigmoid 함수를 기반으로 구성되어 있다는 차이점이 있다. 이를 통해 어려가지 범주의 특징을 동시에 가지는 표본을 찾을 수 있으며 추가적으로 어떠한 범주의 특징도 가지지 않는 표본을 찾아낼 수 있다는 장점을 가진다. DOC 논문에서는 훈련에 참가하지 않은 unseen 표본에 대해서도 강건한 모델을 만들기 위해 sigmoid 함수의 임계값을 조절하는 방법을 추가하였다. 임계값 산출의 핵심은 첫째, 훈련에 참여한 표본의 분류 확률 분포를 구한다. 둘째, 구해진 확률을 1을 기준으로 대칭하여 복제시킨다. 예를 들어 두개 표본의 분류 확률이 0.97과 0.95를 갖는다면 복제점은 1.03과 1.05의 값을 갖게 되는 방식이다. 이렇게 하면 평균을 1로 갖는 정규 분포를 갖게 되는데 여기서 산출된 표준편차(θ)에 3을 곱한 3θ를 1에서 빼는 방식으로 임계값을 산출한다. 예시로 설명하면 분류 성능이 낮아 높은 표준편차(ex: θ=0.3)를 갖는 범주는 0.7 (1- θ=0.3)을 분류 임계값으로 갖고 분류 성능이 높아 낮은 표준편차(ex: θ=0.1)를 갖는 범주는 0.9 (1- θ=0.1)를 분류 임계값으로 갖게 되는 방식이다. 이를 통해 학습된 범주별 성능을 고려한 분류 임계값을 개별 설정할 수 있게 된다. 분류 임계값을 정하는 것은 모든 표본을 학습 데이터로 가질 수 없는 Open Set 문제에서 중요한 문제이자 DOC 논문의 핵심 아이디어였지만 이를 세미나 시간에 정확하게 전달하지 못한점이 못내 아쉬웠던 세미나였다. 하지만 한편으로는 열띤 토론을 통해 세미나 시간 안에서 스스로 깨닳음을 얻는 모습에 세미나의 필요성과 세미나에 참석하는 자세에 대해 다시 깨우침을 주는 뜻 깊은 세미나였다. 다음 세미나에서는 좀 더 노력하여 DMQA 연구원들 모두가 업그레이드 될 수 있는 시간을 갖는 세미나를 준비하도록 해야겠다. 부족한 세미나였지만 집중해서 참석해 주고 많은 토론을 열어준 동료 연구원들과 교수님께 감사하다고 말씀드리고 싶다.
청취자 후기
최근 다양한 분야에서 이슈가 되고 있는 Open set classification에 대한 세미나를 들을 수 있었다.
1. Open set classification의 개념을 적절한 예를 통해 쉽게 설명해 주었다.
2. 연관지어 one-shot learning 과 zero-shot learning에 대해서도 잠깐 소개를 했는데 그들과 open set classification과의 차이를 명확하게 설명하지 못한 점은 아쉽다.
3. 기존 open set classification의 한계점을 실제 반도체 웨이퍼 불량 예를 통해 설명한 것 까지는 좋았는데 이를 해결할 수 있는 deep open classification 방법론을 설명할 때 적절하게 이어지지 못한 점은 아쉬웠다.
4. Deep open classification 방법론의 핵심 설명이 그리 어렵지 않았음에도 불구하고 직관적인 설명으로 이어지 못한 점은 많이 아쉽다.
5. Macro F1 같은 생소한 개념은 보다 쉬운 예제로 설명 했으면 더 좋을 것 같다.
6. 논문 소개 시 저널 (혹은 학회), 출판년도, 저자 (소속포함) 정보 등은 반드시 명시하자.
오늘 전체세미나는 "Open Set Recognition"이라는 주제로 승호형이 진행하였다. 먼저 Open Set Recognition은 알려지지 않은 Label, 즉 "Unknown class"를 예측하는 것을 목적으로 한다. 오늘 세미나에서는 Unknown label을 예측하는 방법론에 대해 설명해주었다. 범주 분류(classification) 문제에서 예측모델을 구축하면 각 label에 대한 예측확률을 도출할 수 있다. 여기서 각 클래스에 대한 예측확률이 모두 불확실할 때, Unknown 클래스로 예측하고자 하는 방법론이 Open set recognition이다. 이 방법론은 이미지, 텍스트 등 다양한 데이터 셋에 적용될 수 있고 오늘은 텍스트 분류문제에 적용한 사례를 소개해 주었다. 오늘 세미나를 듣고 Open set recognition 방법론을 이상탐지에 적용하면 어떨 지 생각해보았다. 이상탐지 문제는 두 개의 범주를 분류하는 문제에서 하나의 범주가 극단적으로 많을 때 적용하는데, 이상탐지방법론중 하나가 one-class classification으로 접근하는 것이다. Open set recognition에서 예측하고자 하는 Unknown class를 이상탐지 문제에서 적은수의 데이터로 보고 one-class classification으로 접근할 수 있을 것 같다. zero-shot, one-shot learning 과 같은 개념도 Open set recognition과 연관지을 수 있는데, 앞으로 우리 연구실에서 많이 연구될 이상탐지 문제에 적용해 볼 수 있을 것 같다. 오늘 승호형이 Open set recognition에 대해 전반적인 개념을 소개해준 덕분에 다양한 아이디어를 펼쳐볼 수 있을 것 같다. 승호형은 웨이퍼 불량 패턴 이미지에 이중 패턴을 탐지해볼 계획이라고 말해주었는데 좋은 접근으로 생각하고 유의미한 연구 성과로 이어지길 기대한다.
금일 세미나는 open set recognition을 주제로 승호형이 진행하셨다. 일반적인 분류 문제에서는 데이터와 해당 데이터의 레이블이 존재하는 closed set 내에서 분류 모델을 구축하는 것을 목표로 한다. 하지만 경험하지 못한(레이블을 모르는) 데이터의 유형이 존재하는 경우, 레이블이 존재함을 경험적으로 알지만 해당 레이블을 갖고있는 데이터를 확보하지 못했거나 데이터가 부족한 경우 이를 일반적인 분류 문제로는 해결할 수 없다. 이러한 데이터의 제한이 있는 경우에서의 분류를 수행하기 위해 다양한 방법론들이 연구되어왔으며, 특히 오늘 중점적으로 소개해준 Deep open classification(DOC) for Text Documents는 Open set recognition 방법론 중 매우 직관적인 방법으로 open set 분류문제를 수행한다. 모델 자체는 일반적인 분류모델을 사용하나, loss 계산 시 softmax-cross entropy loss를 사용하는 것이 아니라 각 레이블에 대하여 sigmoid 확률값을 계산하고 이를 기반으로 loss를 계산한 후 sum을 하는 방식으로 loss를 계산하는, 일종의 multi-task model의 학습 방식을 사용하는 방법론이다. 세미나를 들으면서 DOC 방법론이 승호형이 연구하는 웨이퍼 빈 맵의 복합적인 이상 패턴을 검출하거나 새로운 이상유형을 검출하는 데 적절하다는 생각이 들었다. threshold를 레이블 마다 계산하는 방식을 연구에서 제시하는 방식으로 꼭 할 필요는 없을 것 같고, 이를 보완해서 좋은 여구를 해보셨으면 한다. 작년에 프로젝트를 하면서 DOC 방법론을 적용해본 적이 있었는데, 여기저기 다양한 연구나 프로젝트에 적용하기에 좋은 방법론이라고 생각이 든다. 기회가 되면 open set 연구를 해보고 싶다는 생각이 들었다. 세미나를 잘 진행해준 승호형에게 감사하다는 말을 전한다.
금일 세미나는 승호 오빠가 ‘Open set recognition’이라는 주제로 진행해 주셨다. 전통적인 데이터 분석에서는 각 객체에 범주(class)를 할당하고 그들을 일종의 ‘closed set’으로 취급하여 해당 범주에 대해서만 문제 상황을 규정해왔다. 그러나 현실에서는 기존에 존재하지 않던(아직 할당되지 않은)범주들이 새로 신생 되기도 하고, 새로운 객체가 발생하는 경우가 존재한다. 따라서 기존의 문제 범위였던 ‘closed set’에서 ‘unknown/unseen’범주를 추가하여 문제의 범위가 확장된’open set classification’가 활발히 시도되고 있다. 즉, 모델 학습에 사용되지 않았던 객체에 대해서는 기존에 할당되었던 범주 중 일부로 분류하는 것이 아닌 모르는 범주(unknown)로 할당하는 것이 해당 연구의 목표라 할 수 있다. 승호 오빠가 ‘open set recognition’과 동일한 목표로 기존해 진행하신 연구는 multi class classification 문제상황에서 기존에 학습에 사용되지 않은 신불량패턴을 기존의 범주가 아닌 범주로 별도로 관리하기 위해 각 클래스에 대한 softmax output값에 임의의 임계치를 기준으로 ‘unknown’범주로 할당하였다. 이러한 접근법은 softmax function특성상 오분류의 경우에도 높은 confidence로 예측할 수 있기 때문에, 개선의 여지가 필요하며 추가적으로 여러 불량 패턴이 하나의 제품에 발생된 multi-label 문제 상황을 관리할 수 없다는 한계가 있다. 이러한 상황을 open set recognition의 방법론 중 하나인 DOC를 적용하면 성능뿐만 아니라, multi-label 문제 상황에 대해 적용가능하다는 점에서 해당 연구를 리뷰해 주셨다. 각 class노드마다 sigmoid function을 사용하고, 옳게 분류한 train set의 sigmoid function 출력값인 일종의 확률값의 분포를 사용하여 threshold를 정의한다. 예를 들어, 상대적으로 sigmoid function 출력값이 낮은(예를 들어 0.65) class에 대해서는 좀더 낮은 rejection threshold를 규정하고, sigmoid function 출력값이 높은 (예를 들어 0.99)class에 대해서는 좀더 높은 rejection threshold를 규정하게 되며, 최종적으로 각 class별 rejection여부로 unknown인지 아닌지를 판별하게 된다. 비교적 간단한 구조로 우수한 성능이 입증된 DOC구조에서 activation map의 형태, regression문제로의 전환 등 파생 가능한 연구가 다양할 것으로 예상되며, 최근 보다 고도화된 연구들에 대해서도 궁금증이 남게 되었다. 나는 continual learning의 하위 영역으로 소개된 Incremental class문제에 대해 관심이 있어왔는데 그러한 문제와도 밀접한 영역인 것 같아 흥미롭게 들을 수 있었다. 지난 한화시스템분들의 주 관심 영역이었던 챗봇 unknown범주 문제상황에서도 느꼈던 것과 같이 이러한 현실에서 발생하는 부수적인 문제들이 최근 현업에서 많은 관심을 갖고있는 것 같고, 지속적으로 시도해야 진정한 의미의 self-training model들이 발전하지 않을까 싶다. 흥미로운 주제를 다뤄준 승호오빠께 감사한 마음을 전한다. 새해 복 많이 받으세요!
금주 세미나는 open set recognition에 대한 내용으로 진행되었다. 일반적인 classifier는 모든 input에 대해 사전에 정의된 (학습 데이터에 주어진) class 중 하나 만을 출력한다. 하지만 테스트 단계에서는 사전에 정의되지 않은 class에 해당하는 데이터가 주어질 수도 있다. 일반적인 classifier는 이런 상황에서도 사전에 정의된 class 중 하나를 선택하게 된다. Open set recognition은 이런 경우, 사전에 정의되지 않은 class는 모르는 class라고 답할 수 있는 classifier (또는 recognition system)을 만드는 것을 목표로 한다. 세미나에서는 open set recognition을 포함해서, open set recognition과 비슷한 주제들에 대해 간단히 설명하였다. 해당 주제들을 설명하기 위해 known known classes (KKC), known unknown classes (KUC), unknown known classes (UKC), 그리고 unknown unknown classes (UUC)에 대한 개념을 함께 설명했는데, 이 네 가지에 대해 좀 더 자세하게 설명했다면 좋았을 것 같다. 짧은 시간 안에 내용을 전달해야 하는 세미나 특성상 설명하려고 했던 논문의 많은 내용을 커버할 수 없었는데, 나중에 시간을 내서 해당 논문을 자세히 읽어보는 시간을 가지면 classification과 관련된 주제들에 대해 많은 인사이트를 얻을 수 있을 것이라고 생각한다.
오늘 세미나 주제는 Open set recognition으로 이루어졌다. 몇 명의 연구원들과 함께 스터디를 진행중에 있어서 흥미롭게 들었다. 연구원들의 이해를 돕기 위해 예시를 들어 설명을 준비해 주셔서 더 가벼운 마음으로 들을 수 있었다. 세미나 후반에는 Deep Open Classification of Text Documents라는 논문에 사용된 DOC방법을 설명해주었다. 기존에 진행하던 연구를 통해 한계점을 생각하고 이를 DOC를 통해 어떻게 해결할지 연결하려 시도한 점이 좋았다. 하지만 DOC방법론에 대한 설명이 자세하지 않아 많은 연구원들이 이를 궁금해하고 이 과정에서 토론을 하게 되었다. 토론의 분위기가 험악(?)해서 뜨억하는 부분이 있었다. 다양한 배경지식을 가진 사람들이 모여서 세미나를 하는 자리인 만큼 모르는 것에 대해서 자유롭게 물어볼 수 있는 분위기가 될 수 있도록 나부터도 노력해야겠다는 생각을 하였다. 마지막으로 승호오빠가 현재 진행 중인 WBM 분류연구에 DOC가 적용된 결과를 나중에 꼭 확인해 보고싶다. DOC가 unknown class에 대한 분류 뿐 아니라 multi-label에 대한 분류도 가능하게 함으로 실제 WBM 분류에 굉장히 효과적으로 적용될 것이라 예상이 된다.
오랜만에 진행한 연구실 논문 세미나는 open set recognition을 주제로 이루어졌다. 최근 개인적으로도 관심을 갖고 있는 분야이기도 하기 때문에 더욱 흥미롭게 청취할 수 있었다. 일반적으로 우리가 해결하고자 하는 문제는 학습 데이터와 평가 데이터의 클래스가 모두 동일한 closed set 상황을 가정하고 있다. 하지만 실제 문제 상황에서는 알지 못하는 클래스가 새롭게 평가 데이터에 포함될 수 있는 가능성도 언제나 있으며, 이를 해결하고자 하는 시도가 바로 open set recognition이다. 지금까지 우리가 다루지 않았던 문제이기 때문에 이를 설명하기 위해 known/unknown - known/unknown class 4가지 조합에 대한 설명부터 시작해서, Deep Open Classification (DOC) 알고리즘을 해결 방법의 하나로 설명해주었다. DOC는 일반적인 분류 모델처럼 softmax를 사용하는 것이 아니라, multi-label 문제처럼 각 클래스별로 sigmoid activation을 적용한다. 클래스별로 산출한 확률값을 사용해서 평균을 1로 갖는 정규분포의 절반(왼쪽부분)을 피팅한다. 여기에서 3-sigma를 threshold로 하여 rejection을 수행하고, 모든 클래스에서 기각되면 이를 unseen class로 할당한다. 간단했지만 open set classification 문제를 해결하고자 하는 접근 방법이 꽤 명확했다고 느꼈다. 최근 리뷰하고 있는 논문들을 세미나에서 다루고 청취자들이 궁금한 점들을 서로 토론해가면서 놓쳤던 부분도 명확하게 확인할 수 있었던 것이 가장 좋았다.
이번주 세미나의 주제는 " Open Set Recognition" 에 관한 주제였다. 기존에는 데이터 분석에 있어서 범주를 하나를 잡고 그것을 일종의 "close set" 으로 만들어 그것만 학습하는 방향이었다면 최근의 방향은 할당하지 않은 범주들까지 어떻게 해야 하느냐 라는 것이다. 그래서 더 나아가서 known/seen, unknown/seen, known/unseen, unknown/unseen 까지 4가지 범주가 되어 open set classification의 영역까지 다루어지는 연구가 진행되고 있다. 이번 세미나에서는 모델 학습에 사용하지 안았던 객체에 대해서 기존의 분류로 나뉘어 지는것이 아닌 unknown 으로 분류가 되어 지고 이것이 새로운 분류가 되는것을 설명해주었다. 이 방법으로 진행한 연구는 반도체 웨이퍼 불량 패턴을 softmax 를 사용하여 임계치 값을 주어 이 임계치가 넘어가지 않은 경우를 unknown 으로 지정하고 따로 패턴을 구분하는 연구 방법을 보여 주었다. 이 연구방법은 이중 패턴 이상이 한 웨이퍼에서 발생할 경우 구분을 하지 못하는 한계점이 있어 이를 보안하고자 DOC( Deep Open Classification)을 보여주었다. 기존의 분류를 위한 softmax 를 사용하는것이 아니라 multi-label 문제처럼 각 클래스별로 sigmoid activation을 적용하여 클래스별로 산출한 확률값을 사용하여 평균을 1로 갖는 정규분포의 절반을 피팅한 후 그와 미러되는 반대쪽을 그대로 만들고 이를 이용하여 각 클래스별로 다른 임계치를 설정하여 unknown 으로 구분하는 방식이다. 이를 이용하면 기존에 하나만 class 를 할 수 있었던 것에서 벗어나 2중 패턴도 구분이 가능할 수 있게 되었다. 최근 zero shot / few shot 이런 내용들로 논문들이 많이 발표 되고 있는데 잘 모랐던 내용을 알게된 유익한 세미나였다. 특히 명확하지 못했던 부분을 토의를 통해 잘 알게 되어서 더 좋았다.
금일 세미나는 'Open Set Recognition' 이라는 주제로 승호형이 진행을 하였다. 전통적인 분류(Classification)은 사전에 정의된 범주가 필요하다. 사전에 정의한 범주가 아닌 새로운 범주가 발생하지 않을 것으로 가정한다. 하지만 현실에서는 해당 가정에 위배되는 상황이 많이 발생한다. 이러한 상황에 적용하기 위해, 새롭게 등장한 범주를 'Unknown' 범주로 분류하는 방법론에 대한 소개였다.
형이 진행하는 연구에서도 특정 임계값을 지정하여, 'Unknown' 클래스로 분류하는 방법을 사용하였다고 했다. 추후 연구 방향으로 사전에 정의한 범주별로 Sigmoid 함수를 이용하여 비용 함수를 정의하고, 이를 구현해보고자 하였다. 해당 방법을 사용함으로써, 이중 패턴(ex, Edge+Donut)을 검출 가능하다는 장점을 설명해주었다. Open Set Classification에 대해 많은 관심을 가지고 있었는데, 해당 분야에 대한 정의를 알기 쉽게 예시를 통해 설명해주어 쉽게 이해할 수 있었다. 또한 발표 내용 중, Deep Open Classification of Text Documents에 대해서도 읽어보아야 겠다는 생각을 하였다. 간단한 아이디어지만 매우 유용할 것이라는 생각을 하였다. 세미나를 위해 준비해준 승호형에게 감사를 표한다.
금일 세미나는 승호형이 ‘Open Set Recognition’이라는 주제를 가지고 진행하였다. 기존의 분류 모델은 데이터에 레이블이 존재하는 데이터를 가지고 분류를 진행한다. 하지만 Open Set Recognition은 레이블이 존재하지 않는 데이터가 들어왔을 때 모른다고 답을 하는 분류 모델을 만드는 것이 목표로 한다. 나아가 Deep Open Classification(DOC) 알고리즘에 대해서도 설명을 해 주었는데 기존의 분류 모델과 다르게 각 클래스 별로 sigmoid function을 적용하고 확률 값을 얻는다. 여기서 나온 확률 값이 가우시안 분포의 반을 따른다고 가정하고 미러링이라는 개념을 사용하여 나머지 분포의 반을 만들게 되고 이를 사용하여 임계치를 얻게 되는 방식이다. 이러한 임계치를 가지고 알려지지 않은 클래스에 대해 분류할 수 있고 2중패턴도 분류할 수 있게 된다. 예제를 이해하기 쉽게 설명해준 승호형에게 감사를 표한다.
오늘은 Open Set Recognition을 주제로 백승호연구원이 발표하였다. 일반적으로 많이 듣던 비지도학습/지도학습의 범주를 벗어나 우리가 알지 못하는 케이스였다. 데이터는 있지만 아직 라벨을 부여하지 않은 Knowns Unknowns, 라벨은 있지만 데이터를 확보하지 못한 Unknowns Knowns, 데이터도 라벨도 없는 존재 자체도 알 수 없는 Unknowns Unknowns, 등의 케이스를 어떻게 학습하고 정의하는지에 대한 연구들을 소개하였다. Open Set의 정의와 대표적인 연구 방법들( One-class Classification, One-shot Learning, Zero-shot Learning)을 알 수 있었다. 백승호연구원이 연구하던 Wafer Bin MAP Classification에서도 새로운 패턴으로 인하여 오분류율이 높던 기존 방법에 Open Set개념을 도입하여 신규 라벨을 추가하니 정확도도 올라가고 오분류율이 줄어드는 것을 확인할 수 있었기에 하나하나 배운 것을 나의 연구에도 적용해보는 것이 좋다는 것을 새삼 느낄 수 있었다.