2019 Naver ai colloquium

1. No, That’s Not My Feedback,
TV Show Recommendation Using Watchable Interval

  • IEEE 2019 accept
  • Recommennder System의 문제 : 추천해 줄 Item이 너무 많음
  • 추천 알고리즘 종류
    • Content
    • Collaborative filltering(논문은 여기서)
    • Target
    • Hybrid
  • ML Base CF?(Nexflix 우승 알고리즘)
    • rating table의 빈칸을 채우기위해 Matrix factorization을 통해 rating table을 근사함.
  • 기존 Sota는 알고리즘은 Watchable Interval을 고려 안함. rating table을 만들때 실제 시청 가능한 시간에서 실제로 본 시간을 계산함.
  • 요약 : 선호도를 실제로 잘 측정하기 위해 Watchable interval을 도입한것이 포인트 인 듯 함

2. Selection and Interpretation of Embedding Subspace
for Query Intention Classification

  • 질의를 통해 클릭영역을 예측하는 과제
  • 질문 단어 기준으로 embedding space를 쓰면 서로 달라야 하지만 비슷한 영역으로 묶이는 문제가 있음
  • (예) 제주도 비행 -> 여행 , 제주도 비행사고 : 뉴스, 서로 달라야 하지만 embedding공간에서는 비슷함
  • Word embedding
  • 실험절차
    • 전처리 : 질의데이터를 단어 단위로 쪼갬
    • 단어임베딩 : Wiki + 질의 데이터 전처리, fast text사용
    • 질의임베딩
      • Distributed co-occurrence 사용(Disc 모델 : 빠르고 , 해석도 좋음
      • Text는 n-gram으로 임베딩(2gram 사용, 이유는 질의가 길지 않음)
      • Bag of ngram
  • 분류기 : Xgboost사용(Attention을 사용하지 않은 이유는 Boost로 결과 해석하고 싶어서)
    • XGboost parameter 찾기 위해 Bayesian optimiazation 사용
    • SHAP : Shapley 값 기반, 게임이론에서 나옴, 공헌도랑 비슷
  • 결과 : 클릭 영역별로 질의 단어를 Embedding 한 된 벡터에서 중요한 부분 공간이 고유하게 존재
  • 요약 : 딥러닝의 blockbox 문제때문에 해석과 시각화 가능한 xgboost등의 알고리즘을 쓴 것이 인상적

3. Learning to Rank with Partially Labelled Training Set

  • 질의에 대한 결과값의 Rank 문제
  • 검색 결과에서 우선순위를 매겨주는 Ranking 함수를 훈련
  • Rank문제를 순서대로 되어 있으면 적합, 순서대로 안되어 있으면 비적합 으로 바꾸고 Pairwise Learning을 사용
  • 문서의 우선순위를 정하는것은 힘듬. (학습데이터 구축도 힘들고, 쌓여진 데이터도 적음)
  • 우선순위가 정해진 문서를 적합, 나머지 모든 문서를 비적합으로 판단후 훈련
  • 이러면 데이터 노이즈 때문에 하이퍼플랜이 잘못 그려질 가능성이 높음
  • pairwise로 훈련된 모델을 기준으로 비적합 문서중에 리스크가 높은 데이터를 제외
  • 리스크가 높은 데이터가 제외 됨으로써(노이즈가 높은 데이터) 훈련이 잘됨
  • 요약 : Semi supervisored 훈련 형태

4. Smart Around: from Embedding
to POI Recommendation

  • Naver의 새로운 서비스인 Smart Around에서 관심영역을 잘 추천해주는 문제
  • 한 장소(예 강남역)에서 주변 맛집 검색을 누르면 알아서 주변 맛집을 추천해줌
  • 유저의 성향이 다르지만 한장소에 가면 같은 결과만 나옴. 유저의 취향을 반영하고 싶음
  • POI : Point Of Interest 관심지점
  • 문제 1 : 우선 단어 Embedding
    • 지역별, 음식점은 잘 구분 되나, 배달업체는 한곳에 뭉치게 됨
    • 또한 골목과 백종원이 같이 있는 현상도 발견
    • 해결책 : Embedding 학습할때 특정단어를 강제로 거리를 벌려주는 Discriminator를 추가후 학습
  • 문제2 : 유저의도를 파악하기 위해서 feature 추가(체류시간, 가격등)
    • 체류시간은 보통 input vector에 concatenate하지만 elementwise product를 함
  • 문제3 : scale up을 하니 추천대상이 많아 지니 학습 안됨. 적당한 선으로 scale down을 해서 사용
  • 요약 : word embedding, lstm 등 여러 알고리즘을 섞어서 결과를 도출. 검색 결과를 개인화해서 제대로 배치함으로써 매출액 증가에 기여(인공지능을 통한 개인화도 흥미로움)

5. Neural Text Summarization Model

  • Summary 란? : 내용 -> Summarization -> 제목
  • Baseline model : Attentional Sequence 2 Sequence Model
  • Baseline model의 문제
    • out of vocabulary 문제
    • Decoder부분 단어 반복 문제
  • 해결책 : Pointer generator model
    • Out of voca는 본문에 있는 단어를 재사용, 생성과, 본문에서 추출을 확률값으로
    • 반복 문제는 문장 생성시 반복시 Penalty를 주게 설계
  • 요즘 유행하는 Transformer Model로 바꿔봄(Attention is all you need)
  • Feature embedding을 바꿔봄
    • Elmo를 쓰면 근소하게 성능향상됨
    • FastText활용했으나 똑같음
    • Word piece model도 써봤으나 성능이 떨어짐
    • Curriculum learning : (길이가 짧은 데이터 부터 학습하는 방법) 별 효과 없음
    • NLP Metric ROUGE에 대한 생각
  • 지식in의 제목 생성은 잘됨
  • 학습방법 : 57만건으로 pre-training후 품질 좋은 5만건으로 fine tunnung
  • Model의 Encoder부분을 BERT로 할수도 있음.
  • 요약시 본문에서 추출 대신 생성을 많이하면 불안해짐
  • 요약 : 요약도 잘되기 시작함. NLP에서 쓰는 여러 Metric(ROUGE)등이 있는데 평가하기 힘든 듯 함

6. Compositional Word Vectors

  • Subword-level Word Vector Representations for Korean
  • 새로운 word vector를 만들어봄
  • Compositionality
  • 여러 다른 Word vector와 비교
  • 사용된 데이터셋
    • 단어 유사도비교 SL999
    • mturk 등
  • 연구결과로 만든 Word Vector가 좋음( olive word vector라 부름, 검색 안됨)
  • nlp 모델의 끝 Bert, GPT2가 나온 시점에 이런것이 의미가 있는지 회의감이 든다고함(bitter)
  • gpt2 : open ai에서 학습시킨 모델, 성능이 훌륭하여 사회적으로 악용 될것을 우려 공개 안함.
  • Large Language Model이 나오면서 거짓댓글, 가짜뉴스, 기타 text로 악용할수 있는 상황이 발생할 가능성
  • 리처드써튼 : 지금까지의 ai,ml은 introspection을 통해 인간이 데이터를 기계한테 준비해주고 학습시켰는데 이제는 그것조차 없이 많은 양의 데이터만 넣은것으로 최고성능의 랭기지 모델이 나왔다는 점에서 bitter 쓰다 라고 표현
  • 요약 : nlp는 거의 모든 연구가 BERT 한방에 끝난듯 보임. 그리고 이미 gpt2같은 모델로 생성된 가짜뉴스, 가짜 댓글이 이미 인터넷에 활동하고 있지 않을까 싶음

7. 파파고 기계번역 기술 소개

  • 기계번역의 발전과정
    • 규칙기반 기계번역
    • 단어기반의 통계적 기계번역
    • 구(Phase)기반의 통계적 기계 번역
    • 인공신경만 기반 기계 번역
  • 단어기반 통계적 기계 번역의 한계 : 단어의 모호성 해소 실패, 규칙기반이랑 성능이 비슷함. 그러나 통계적 기반의 시초를 마련함
  • 구기반 통계적 기계 번역 : 구글이 서비스 함. 단어기반 통계적을 구 기반으로 늘림. 학문적으로는 동일하나 컴퓨팅파워의 증대로 서비스 가능해졌음, 모호성문제를 해소 했지만 어순구조를 해결못함
  • 인공신경망 기계 번역 : W2V, Autoencoder, S2S, Attention, Transformer model 문장단위 번역 등
  • 그리고 끝판왕 BERT
  • 현재 기계번역의 관심주제 :
    • 이제 기계도 잘 번역 하기 때문에 평가가 어려워짐. 전문가마다 번역 퀄리티가 다름
    • 자동평가기준 개선 필요 : BLEU, characTER
    • 고유명사 문제 : 고래식당 이것은 고래인가? 식당인가? 그냥 이름인가?
    • 소형화 문제 : 현재 language모델은 너무 큼
    • 문맥 번역
    • 높임말 번역
  • 요약 : 기계번역은 잘됨, BERT!

8. Character Region Awareness for Text Detection

  • Character Region Awareness for Text Detection
  • 문자 검출 및 인식에서 SOTA 찍음
  • 문자검출의 어려운 이유
    • 극단적 종횡비
    • 다양성
  • 해결책 : word 단위가 아니고 Character단위로
    • 자소 단위니깐 극단적 종횡비 없어짐
    • 알파벳 정도로 다양성이 축소됨
  • 글자검출의 표현의 문제가 있음
    • bbox로 되어 있고 Binary로 되어 있음
    • 그래서 Annotation을 Bounding box를 hitmap으로 변경
  • Craft Detector
    • Bbox대신 Region을 hitmap으로 리턴함
    • affinity : 박스의 연결점을 리턴함
  • 학습전략 : Synthetic image로 사전학습함 : 문자단위 Annotation 자료 확보하기 힘듬
  • Post Procession : hitmap을 bbox로 변경후 affinity정보에 따라 합침
  • 요약 : OCR계의 끝판왕인듯 보임. 나름 간단한 Idea(단어대신 글짜로 인식)으로 엄청난 성능 향상을 보임

9. CFA-Net: Combination of Multiple Feature Aggregation
Network for Deep Metric Learning

  • 이미지 검색 문제
  • ranking loss, triplet loss, metric learning(Positive sample, negative sample 등)
  • Instance-level image retrieval
  • Image 검색의 기본 : Image -> CNN -> Feature Map -> 대표백터
  • Feature Aggregation method(Aggregating Deep Convolutional Features for Image Retrieval)
  • Deep Image Retrival (DIR)에서 Sota찍음, 논문은 못찾음
  • 보통 훈련은 2-Phase로 함(classification -> Triplet)
  • 그러나 여기는 두개를 동시에 훈련함
  • 핵심은 Multiple backbone + Multiple feature aggregation
  • CNN -> Feature ->Global Average Pooling – BN -> FC -> Classification loss
  • +FC-> L2 -> Triple loss
  • -> 다른 Feature aggregation들(예 Mac)
  • 다 합쳐서 성능좋음
  • 요약 : CNN 마지막에서 다 합쳐서 flatten 하지 말고 다양한 방법을 써서 앙상블하고, 이미지를 비교함

10. Natural Speech Interface

  • 인공지능 스피커 동작방법(Preprocessing -> Speach Recognition -> NLP -> TTS)
  • 인공지능 스피커가 지금은 재미 없으나 나중에는 사람한테 물어보기 시작하면 재미 있을듯
  • 오늘은 Preprocessing에 대해 설명
  • 옛날방식 (싱글마이크)
    1. 마이크
    2. STFT(주파수 도메인으로 변환)
    3. Phase (그대로 사용)
    4. Megnitude의 gain을 사람이면 1, 잡음이면 0으로 설계
    5. IFTF(다시 시간축으로)
    6. SPEAKER
  • 요즘방식 : Deep Learning 사용
    1. 전부동일한데 4번을 Deep Learning으로 학습하여 잡음이면 0 사람이면 1인것을 구분
  • 멀티마이크 방식
    • 마이크와 마이크의 지연시간을 계사나여 특정공간만 gain을 주면 됨
  • TTS Unit Selection(유인나 목소리 예제 이제는 4시간의 데이터만 있으면 목소리 합성가능)
    • 많이 읽고, Unit을 잘 가져와서, 잘 연결시키면 됨, Unit만 훈련시키면 되서 훈련시간 감소
    • 유닛간의 연결을 잘해야 됨
  • End2End Deep Learning Framework가 많음 : Sample RNN, waveNet, Chahr2Wav, Tacotron 등
  • Emotional Embedding도 흥미로운 주제임
  • 요약 : 교수님 멋짐. 딥러닝은 각 학문의 요소요소에 들어가서 성능을 높이고 있음

11. Deep Audio Visual Speech Recognition

  • 음성을 텍스트로 바꿔주는데, 영상을 보고도 바꿀수 있음 Lip reading
  • 여러사람이 동시에 오디오가 물렸을때 영상으로 판단가능
  • 아주 시끄러운 공간에서 영상으로 text를 추출할수 있음
  • 영상과 오디오를 동시에 입력했을때 stt성능이 더욱 높아짐
  • 요약 : 네이버 신버전에 시끄러운 장소에서 음성인식을 할수 있다고 홍보 중

Leave a Reply

Your email address will not be published. Required fields are marked *