Loading...
2023. 6. 17. 01:48

object detection 모델인 RetinaNet과 DETR(DEtection TRansformer) 핵심 아이디어

1. RetinaNet 구조 backbone인 ResNet에서 feature를 뽑아감 low level feature와 high level feature를 모두 활용하기 위한 3단? Feature pyramid network 활용 심지어 multi scale object detection에 더욱 잘 대응하기 위해 각 단계에서 모두 detection을 사용 각 단계에서 2가지 branch로 들어가는데 각각 object classification과 box regression을 수행한다 ResNet에서 feature를 뽑아가면서 마지막 단계의 feature부터 low level feature를 다시 합쳐나간다 합쳐나가는건 concat이 아니라 더하기 심지어 각 단계에서 모두 object classificati..

2023. 5. 8. 03:08

NLP에서 language model의 역사 훑어보기

1. language model 앞의 주어진 문맥을 활용해 다음에 나타날 단어를 예측하는 모델 사람의 언어를 이해하는 것은 쉬운 일은 아니지만 통계적 관점, 딥러닝적 관점에서 문맥이 주어질 때 다음 단어를 잘 예측했다면 언어의 패턴을 잘 학습한 것이다. 2. 확률적 관점 언어 모델은 문장에 대한 확률을 부여하는 task 조건부확률을 이용하여 생성확률을 부여 ’오늘은 햇살이 좋다’라는 문장에 대한 확률은 ‘오늘은’이 먼저 나올 확률에 ‘오늘은’이 주어질때 ‘햇살이’가 나타날 확률에 ‘오늘은 햇살이’ 주어질 때 ‘좋다’가 나타날 확률을 곱한 것 3. RNN을 활용한 예측 x는 input이고 y는 현재 시점의 예측값, h는 각 시점에서 모델이 기억하는 잠재적인 정보 U,V,W는 RNN의 parameter 이전..

2022. 12. 27. 01:17

비전공자도 이해할 수 있는 AI지식 -구글은 어떻게 언어를 숫자로 바꿨는가-

1. Word2Vec, 언어를 숫자로 바꾸다 2013년 구글은 단어의 의미를 벡터로 표현하는 매우 획기적인 방법을 발표합니다. 그 방법의 이름은 Word2Vec으로, 단어를 벡터로 바꾼다는 매우 직관적인 이름입니다. 무엇보다 놀랍도록 정교하게 단어의 의미를 표현해내 많은 이가 깜짝 놀랐습니다. 이처럼 단어를 벡터라는 숫자로 표현하는 것은 단어 각각의 특징을 추출해 수치화하는 것과 비슷합니다. 예를 들어 '단맛', '크기', '둥근 정도'라는 3가지 특징으로 단어 '캐러멜', '호박', '태양'을 표현해보죠. 관련이 전혀 없다면 0.01, 관련이 매우 높다면 0.99까지 가중치를 준다고 해봅시다. 단어 단맛 크기 둥근 정도 캐러멜 0.92 0.06 0.02 호박 0.23 0.29 0.62 태양 0.01 0..

2022. 12. 26. 02:14

비전공자도 이해할 수 있는 AI지식 -숫자로 표현한다는 것이 얼마나 중요한가-

1. 좌표, 기하학을 숫자로 바꾸다 17세기 이전까지 수학은 크게 기하학과 대수학으로 나뉘었습니다. 원의 넓이 같은 도형의 성질을 다루는 수학이 기하학이고, 2차방정식 같이 문자와 수를 다루는 수학이 대수학이죠. 이전까지는 둘을 서로 다른 영역으로 취급했습니다. 그러던 어느 날, 르네 데카르트는 침대에 누워 있다가 천장에 붙어 있는 파리를 보았습니다. 그리고 재미있는 생각을 떠올렸습니다. '어떻게 하면 파리가 천장의 어느 위치에 붙어있는지, 정확하게 표현할 수 있을까?' 그리고 데카르트는 좌표(coordinates)라는 개념을 고안합니다. 이는 서로 다른 분야로 여겨지던 기하학과 대수학의 개념을 하나로 합쳐낸 혁신적인 발상이었습니다. 데카르트는 좌표의 개념을 에 공개합니다. 이 책에는 '나는 생각한다. ..

2022. 12. 21. 00:46

비전공자도 이해할 수 있는 AI지식 -컴파일러, 인간의 언어를 이해하다-

1. 컴퓨터, 만능 기계의 모습을 갖추다 기계가 인간의 언어를 이해한다는 개념은 가장 먼저 컴파일러(compiler)에서 찾아볼 수 있습니다. 컴퓨터와 프로그래밍에 대해 조금이라도 배경지식이 있는 분은 컴파일러에 관해 한번쯤은 들어본 적이 있을 거에요. 컴파일(compile)이란 한 언어를 다른 언어로 바꿔주는 과정입니다. 예를 들면 영어를 한국어로 바꾸는 과정이 컴파일입니다. 컴퓨터에 비유하면 인간이 이해하는 고수준 언어(C++, 자바, 파이썬)를 기계가 이해하는 저수준 언어(기계어)로 바꾸는 과정을 칭하죠. 컴파일러 개념은 컴퓨터 역사에서 아주 중요한 의미를 지닙니다. 왜냐하면 컴파일러가 등장하면서, 비로소 컴퓨터는 계산기를 넘어 비즈니스에도 활용할 수 있는 만능 기계의 모습을 갖추었기 때문이죠 2...

2022. 12. 19. 23:37

비전공자도 이해할 수 있는 AI지식 -이루다는 왜 2주만에 서비스를 멈췄는가-

1. 컴퓨터와 대화할 수 있을까 이루다는 국내 스타트업이 개발한 챗봇입니다. 자유 주제 대화시스템(Open Domain Dialogue System)을 기반으로 어떤 주제로든 자유롭게 대화할 수 있는 인공지능을 이루었다는 의미로 이름 지은, 스무 살의 소녀로 설정된 챗봇입니다. 십수년 전에 '심심이'라는 챗봇이 큰 인기를 끈 적이 있었습니다 수백 가지 규칙을 입력한 챗봇은 규칙에 맞게 질문이 들어오면 이에 해당하는 대답을 해주었습니다. 규칙 기반의 챗봇은 한계가 분명 있었지만, 심심이는 나름대로 풍부한 규칙으로 이름처럼 심심치 않게 대화를 이어나갈 수 있었고, 많은 사람이 대화에 빠져들게 됩니다. 1966년 MIT의 컴퓨터 과학자 요제프 바이첸바움은 세계 최초의 챗봇 일라이자(ELIZA)를 개발합니다. ..