분류 전체보기 55

[GAN 시리즈] CGAN(Conditional Generative Adversarial Nets) 간단 정리

GAN이 나온 2014년 이후 이미지 생성 모델 분야는 한 동안 GAN의 변형 모델들이 주름잡았다. ​ GAN의 아쉬운 점이라 한다면 다양한 이미지를 생성함에 있어서는 성공을 거두었지만 의도된 이미지를 생성하지는 못하였다는 점이라 할 수 있다. ​ 입력 데이터 자체에 conditional한 부분이 존재하지 않았기 때문이다. ( 특정 경향성을 지니는 이미지를 모델이 내뱉게 시키기 위해서는, 입력에 그 경향성에 대한 정보를 추가적으로 전달해 주면 된다. ) ​ ​ 의도된 이미지 생성 영역에 발을 내민 시도는 2014년 11월 Mehdi Mirza 등이 발표한 Conditional Generative Adversarial Nets 에서 확인할 수 있다. ​ ​ cGAN cGAN이라고 불리는 이 모델의 아이디어..

Computer Vision 2023.01.22

Recent trends of text-to-image translation models [2/4] ( UNIST 유재준 교수님 ) / 학습 데이터

앞선 포스트를 통해 아래와 같은 내용을 정리했다. ​ 이미지 생성 모델이 왜 요즘 핫한가 현재 이미지 생성 모델이 좋은 성능을 냄에도 불구하고 부족한 점 이런 부족한 점을 채우기 위해 모델을 controllable하게 만들 필요가 있음 이제 그 방법론 중에 Conditional Image Synthesis의 Text control에 대해 집중적으로 다뤄 보고자 한다. text-to-image (T2I) synthesis ​ 이 분야는 어떤 datasets을 다룰까? ​ 대표적으로 쓰이는 것이 아래 3가지 정도 된다. ​ ​ | Oxford-102 Flowers(Nilsback& Zisserman, 2008) | CUB-200 Birds(Wah et al., 2011) 10k개 정도의 이미지가 존재하는 상..

Recent trends of text-to-image translation models [1/4] ( UNIST 유재준 교수님 ) / 텍스트-이미지 생성 모델 개요

일정에 적힌 세션 내용은 위의 제목과 같았지만 실제로 교수님께서는 Controllable Image Synthesis라는 주제로 발표를 하셨습니다. ​ 목차는 다음과 같습니다. Controllable Image Synthesis의 개념 및 역사 Controllable Image Synthesis의 지향점 ​​ 옛날부터 Image를 잘 다루는(manipulate) 방식에 대해서는 꾸준한 연구가 있어왔다. ​ 하지만 2014년 GAN이 등장하고 이후 2016년 입력하는 text에 조건부적인 이미지 생성 모델을 다루기 시작함으로써 CV 분야는 의도된 이미지 생성에 있어 혁신을 이루었다. 그렇다면 생성 모델이 무엇인가? 주어진 데이터에 대해 그 데이터 분포를 얻었을 때 확률 모델을 사용해서 그 분포를 근사(ap..

[GAN 시리즈] GAN(Generative Adversarial Networks)에 대한 모든 것

인간은 지금껏 무언가를 생성해냄으로써 발전해왔다. ​ 시간이 흘러 아날로그에서 디지털로 넘어감에 따라 컴퓨터라는 뛰어난 계산기는 드디어 인간을 모방하기 시작한다. ​ 두려움을 느낀 인간은 대비책을 제시해 보았다. " 인공지능(Artificial Intelligence)이 하지 못하는 분야인 독창성(creativity)를 키워야 한다! " ​ 하지만 문제가 있다. 독창성이란 무엇일까? 사람이 진정으로 무(無)에서 유(有)를 만들어 낼 능력이 있을까? ​ 인간이 만들어내는 모든 부산물들은 그 인간이 학습한 지식들에서 나온다. ​ 학습한 지식을 그대로 따라하는 사람이 아닌 학습한 지식들을 합성하여 새롭고 더 탁월한 지식을 만드는 사람을 우리는 독창적인 사람이라고 부르는 것이 아닐까? ​ 하지만 이 독창성의 영..

Computer Vision 2023.01.20

Automatic Differentiation이란

PyTorch가 dynamic auto differentiation(autodif)를 지원한다고 하기에 이 Auto differentiation이 무엇인지 한번 알아보려고 한다. ​ 우리는 Gradient Descent를 이용해 손실함수의 최솟값을 쫓아가면서 가중치들을 업데이트한다. ​ 이때, 가중치를 업데이트 하는 방법은 아래와 같다. ​ 현재 가중치에 Loss를 현재 업데이트하려는 가중치로 편미분한값을 스케일조정(a)해서 빼주는 방식으로 업데이트 한다. ​ Gradient Descent에 대해서는 잘 설명된 글이 넘쳐나기 때문에 이 정도에서 마무리하고 ​ 이때, 저 미분값을 컴퓨터가 어떻게 계산할 것인지에 대해 다뤄보고자 한다. Finite Differencing ​ 가장 먼저, 도함수의 정의를 이용..

토크나이저 정리(BPE,WordPiece,SentencePiece)

https://huggingface.co/docs/transformers/main/tokenizer_summary Summary of the tokenizers Reinforcement learning models huggingface.co 이번 글에서는 BPE(Byte-Pair Encoding), WordPiece, SentencePiece 에 대해 다룰것이다. ​ text를 분할하여 조각을 내는 것(Tokenizing)은 생각보다 어렵다. 예를들어 "Don't you love 🤗 Transformers? We sure do." 위와 같은 문장을 공백기준으로 분할한다 하자. 그럼 다음과 같을 것이다. ​ ["Don't", "you", "love", "🤗", "Transformers?", "We", "s..

카테고리 없음 2022.10.17

keras의 layers.dot([],axes) 벡터 단위로 이해하기

keras의 layers 클래스의 dot 메소드의 구조에 대해 알아보자. 처음 봤을 때에는 바로 계산 방식이 보이지 않았지만 코드를 통해 결과를 보면서 이해를 한 것을 정리한다. 일단 공식 홈페이지는 다음과 같이 간단히 설명한다. https://www.tensorflow.org/api_docs/python/tf/keras/layers/Dot tf.keras.layers.Dot | TensorFlow v2.10.0 Layer that computes a dot product between samples in two tensors. www.tensorflow.org 바로 한눈에 이해하기는 힘들다... 그리고 내가 보았던 코드는 저 axes=-1 이라고 되어있고, 이는 공식 API에서는 확인해볼 수 없었다. ..

Tensorflow 2022.10.17

GPT-1(Improving languague understanding by Generative Pre-Training)란?+벡터 흐름 하나하나 자세하게 설명 및 논문 리뷰

목차 ​ 1. 간단 요약 2. 논문 분석 1. 간단 요약 ​ ​ 최근 2020년에 발표된 GPT-3가 뛰어난 성능을 보여주고 있다. ​ https://twitter.com/i/status/1284801028676653060 트위터에서 즐기는 Paras Chopra “I made a fully functioning search engine on top of GPT3. For any arbitrary query, it returns the exact answer AND the corresponding URL. Look at the entire video. It's MIND BLOWINGLY good. cc: @gdb @npew @gwern” twitter.com 다음과 같이 어떠한 질문을 하든지 척척 답해내..

논문을 통해 XGBOOST 완전히 이해하기(Bagging과 Boosting)

목차 1. 소개 2. XGBOOST 흐름 3. 논문속 수식으로 이해 4. 참고자료 1 . 소개 앙상블(ensemble) 방법이란 티끌 모아 태산이라는 아이디어를 담고있다. 성능이 좋지 않은 분류기를 여러개 모아서 합치면 좋은 성능을 낸다는 것이다. ​ 자세히 말하면, 분류기 하나(A Decision Tree)는 특정 몇개의 특성에 대해서 판단할 수 있지만, 분류기 여러개(Decision Trees)를 사용해 나온 결과를 종합해서 최종 결과를 낸다면 => 모든 분류기에서 사용된 특성 판단 조건들(Decision Nodes)을 모두 어느 정도 사용을 할 수 있어서 => 차원 높은 분류가 가능해진다. ​ 이런 앙상블 방법에는 1. Bagging 2. Boosting 등이 있다. ​ 1. Bagging (boo..

GBM(Gradient Boost Machine)이란? +학습이 되는 원리 자세히 설명

GBM을 알아보자 ​ 2022.10.10 - [머신러닝(기계학습)] - Decision Tree(의사결정나무) https://github.com/pilsung-kang/Business-Analytics-IME654-/blob/master/04%20Ensemble%20Learning/04-6_Ensemble%20Learning_Gradient%20Boosting%20Machine.pdf GitHub - pilsung-kang/Business-Analytics-IME654-: Course homepage for "Business Analytics (IME654)" @Korea University Course homepage for "Business Analytics (IME654)" @Korea Univer..