본문 바로가기

인공지능60

[논문리뷰]CLIP : Learning Transferable Visual Models From Natural Language Supervision Motivation & Contribution 종래의 CV task들에 대해서는 사전에 정의된 category에 대해서만 훈련되어왔다. 이런 방법은 확장성이 적어 새로운 category에 대해서는 데이터를 새로 모아야 된다는 어려움이 있으며 일반성을 저해한다. CLIP은 웹 상에서의 Image-Text 쌍을 이용한 4억개 규모 데이터 셋을 활용하여 이미지의 caption으로 학습한다. 이를 통해 자연어로 통제가능한 멀티모달 모델을 가능하게 해 zero-shot이 가능해졌다. Approach Natural Language Supervision supervision learning이 가능하도록, 자연어 자체를 label로 두었다. 이 방법은 추가적인 labeling을 안해도 된다는 장점과 더불어 이미지와 텍.. 2022. 7. 1.
[논문리뷰]Dall-E : Zero-Shot Text-to-Image Generation 해당 페이지에서는 Dall-E의 수학적인 개념(ELB, KL 등)은 제외하고 컨셉에 대해서만 기술하였습니다. High-level idea Transformer를 활용하여 Text2Img를 Auto-regressive하게 모델링 한다. 이렇게 한다고 자연어로 통제 가능할까? → 데이터로 해결하자. 2억 5천만개의 이미지-텍스트 쌍에대해서 학습했다. 모델이 2억 5천만개를 학습할만한 구조를 갖고 있는가? → 120억개의 파라미터를 가지고있다. Motivation & Contribution 텍스트-이미지 생성은 전통적으로 고정 데이터 세트에 대해 더 나은 모델링을 찾는 데 초점을 맞췄다 → 이러한 시도들은 구조를 복잡하게 만들고, 손실함수를 덕지덕지 붙이고, segment mask와 같은 부차적인 정보들을 사.. 2022. 7. 1.
[논문리뷰] CoCa: Contrastive Captioners are Image-Text Foundation Models CoCa: Contrastive Captioners are Image-Text Foundation Models 개요 BERT와 같은 사전학습된 large-scale pretrained foundation models 기반으로 자연어처리 분야에서 괄목할 발전을 이루어 냈습니다. 최근에는 CV에서도 문제를 해결해나가고 있습니다. CoCa에서는 비전분야에서 적용할 수 있는 foundation models을 제안합니다. 해당 모델은 Representation learning에서 효과적인 성과를 내었던 Contrastive loss와 멀티모달 모델을 위한 Captioning loss를 적용하였습니다. 이렇게 훈련시킨 CoCa 모델은 CV 분야에서 다양한 Task(datasets)에 대해서 SOTA를 달성하였습니다.. 2022. 6. 6.
인공지능이 만드는 폰트 [ HAN2HAN : Hangul Font Generation] 인공지능이 만드는 폰트 HAN2HAN : Hangul Font Generation 서대문형무소서 보낸 서신 위 그림은 이연호 선생님이 서대문 형무소에서 보낸 서신을 '그새 학교잘 다니냐','나는 잘있다' 두 문장을 발췌하여 폰트를 생성한 예시글이다. 발췌한 문장에서 글자는 13글자이지만, '잘'과 '다'가 중복되어 사실 상 모델이 활용할 수 있는 글자는 11글자이다. 이연호 선생님 글씨체는 부드럽게 흘리는 것 같으면서도 깨끗한 느낌을 주는 것이 특징이다. 생성된 '8호 감방의 노래 '를 보면 그 특징이 잘 살아있는 것을 확인할 수 있다. 특히 초성에서는'ㅎ'과 'ㅇ'이 특징을 잘 살린 것을 확인 할 수 있고,중성 및 종성에서 'ㄹ'과 'ㄴ'받침또한 특징을 잘 잡았다고할 수 있다. 반면 초성 'ㄷ'는 흐려.. 2021. 11. 13.
GAN에서의 미분 (Pytorch) GAN에서의 미분 (Pytorch) https://pytorch.org/tutorials/beginner/dcgan_faces_tutorial.html Pytorch에서 제공하는 DCGAN Tutorial에서 훈련스텝은 아래 코드와같다. for epoch in range(num_epochs): # For each batch in the dataloader for i, data in enumerate(dataloader, 0): ############################ # (1) Update D network: maximize log(D(x)) + log(1 - D(G(z))) ########################### ## Train with all-real batch netD.zero.. 2021. 10. 13.
[논문리뷰]CoMemNN : A Cooperative Memory Network for Personalized Task-oriented Dialogue Systems with Incomplete User Profiles CoMemNN : A Cooperative Memory Network for Personalized Task-oriented Dialogue Systems with Incomplete User Profiles https://arxiv.org/pdf/2102.08322.pdf 문제제기 (1) 모든 사람이 사생활 문제로 인해 자신의 프로필을 노출하지 않으려 하는 경우도 있고, (2) 사용자 프로필은 너무나도 많은 속성(예: 성별, 나이, 취향 등)을 포함할 수 있다. 해결할 과제 (1) 불완전한 사용자 프로필의 누락된 속성 값을 추론하는 방법 (2) 개인화된 프로필을 강화하기 위해 프로필을 사용을 해서 TDS(Task-oriented Dialogue)를 개선하는 방법 핵심개념 대화가 진행됨에 따라 사용자 프.. 2021. 8. 18.
[논문리뷰]Results & Analysis 페이스북의 챗봇 레시피 Recipes for building an open-domain chatbot [Results & Analysis] paper url : https://arxiv.org/pdf/2004.13637.pdf 1. Automatic Evaluations Retriever 검색모델을 평가하는 데 있어서는 2가지 크기모델을 비교하였으며 결과는 파라미터가 큰 것이 대부분의 데이터셋에서 성능이 좋았다. Generator Generative Model은 3가지 크기로 만든 것을 확인할 수 있다. PPL은 성능지표이며 낮을 수록 좋은 성능을 의미한다. 당연하게도 90M 파라미터를 가진 모델보다 2.7B, 9.4B의 성능이 더 좋았다. 90M는 파라미터를 줄인 대신 Vocabulary size를 키웠다. 인코더의 갯수보다.. 2021. 8. 8.
[논문리뷰]모든 대화 스킬을 한번에 ! Blended Skill Talk, Can You Put it All Together: Evaluating Conversational Agents’ Ability to Blend Skills Can You Put it All Together: Evaluating Conversational Agents’ Ability to Blend Skills https://arxiv.org/pdf/2004.08449.pdf Being engaging, knowledgeable, and empathetic are all desirable general qualities in a conversational agent. Open-domain 챗봇은 단순히 하나의 특성만 띄어서는 안되고 Engaging과 Knowledgeable, Empathetic 측면에서 골고루 좋은 성능을 보여야한다. 본 연구에서는 단순히 모델을 통합시키는 것 부터 Multi-task까지 다양한 시도를 하였고, 세가지 특성을 모두 훈련 시킬.. 2021. 8. 8.
[논문리뷰]페이스북의 챗봇 레시피 : Recipes for building an open-domain chatbot Recipes for building an open-domain chatbot paper url : https://arxiv.org/pdf/2004.13637.pdf 본 논문은 Facebook에서 발표한 Open Domain Chatbot에 관한 내용이며, 구글에서 발표한 Open Domain Chatbot인 Meena를 많이 의식하고있는 것 같다. 흥미로웠던 점은 단순히 대답을 하는 것에 초점을 맞춘 것에서 벗어나 '좋은 대화'가 무엇인지부터 논의했다는 점이다. 데이터셋이 모델의 먹이라면, 좋은 대화를 만들어내기위해 정말 다양하면서도 질 좋은 먹이를 준다. 그리고 이 먹이를 어떻게 잘 섞는지 방법도 소개한다. 문장을 생성하기위해 크게 두가지 방법을 사용했다. 검색모델과 생성모델이 그 것인데, 이 둘의 .. 2021. 8. 6.
YOLOv3를 이용한 턱스크찾기 프로젝트 YOLOv3를 이용한 턱스크찾기 프로젝트 마스크 / 턱스크 / 마스크를 쓰지않은사람을 찾아내고 분류하기 소개 실시간으로 마스크 쓴 사람과 쓰지 않은 사람을 구분할 수 없을까하는 생각에 이 프로젝트를 진행하고 되었고, 마스크를 제대로 쓰지 않은 사람까지 구별해 보자가 이 프로젝트의 목표입니다. 방법은 이미지에서 사람의 얼굴이 어디 있는지 탐지하고 그 다음에 분류를 하면 될 거라고 생각했습니다. 저는 마스크를 쓴 사람을 0 마스크를 제대로 쓰지 않은 사람을 1 마스크를 쓰지 않은 사람은 2로 분류했습니다. 그리고 이 분류가 초당 30장씩 가능하다면 실시간으로 가능하겠죠 사용한 알고리즘과 환경 그래서 객체탐지에서 매우 빠르고 정확하다는 욜로라는 알고리즘을 사용했고, 코랩 기반으로 진행했습니다. 기존에 학습된 .. 2021. 5. 1.
객체탐지 (Object Detection) 2. YOLO !! (v1~v3) 객체탐지 (Object Detection) YOLO !! (v1~v3 간단리뷰) YOLO Joseph Redmon에 의해 개발된 YOLOv3는 Github에서 다크넷을 클론해서 쓰는 방식으로 굉장히 편리하게 사용할 수 있습니다. 구글 코랩에서도 쉽게 작동합니다. YOLO가 정확하면서도 빠르다보니 군사목적으로 많이 사용이 되었는데, 이 때문에 더 이상 CV를 멈추신다는 글을 남기셨습니다. 논문도 굉장히 재밌고 유머러스하게게 쓰시던 분이었는데 안타깝습니다. YOLO는 Alexey라는 분이 이어서 개발을 진행중이시고 이후에 나온 욜로도 성능이 굉장히 뛰어납니다. Github보시면 포크된 것을 볼 수 있고, v4는 이 곳에 업데이트 되어 있습니다. 물론 v3로 함께 사용할 수 있습니다. YOLO v1 YOLO에.. 2021. 5. 1.
객체탐지 (Object Detection) 1. YOLO 이전 까지 흐름 객체탐지 (Object Detection)YOLO 이전 까지 흐름 컴퓨터 비전의 과제 컴퓨터 비전의 과제는 크게 세 가지로 볼 수 있습니다. Classification(분류)과 Object Detection(객체탐지), Instance Segmentation입니다. 예를 들어 Classification은 고양이사진을 받았을 때 컴퓨터가 이게 고양인지 아닌지 분류할 수 있어야 하고, Object Detection은 Classification과 Localization이 합쳐진 개념인데 고양이가 어디에 위치해 있는지 알아낼수있어야합니다. 마지막으로 Instance Segmentation은 사실상 궁극적인 형태로 개를 개의 형태로 개라고 인지할 수 있어야합니다. 이 포스트에서는 Object Detection의 .. 2021. 5. 1.