펌) 정보)이루다 내부는 어떻게 생겼을까?.araboza

(솔직히 이루다 흥행은 디자인부 캐리다. 개귀엽게 그렸음.)


출처: 이루다 개발진 블로그


..와 더불어 이제부터 본 개붕이가 얼마나 전공지식을 쉽고 짧게 풀어쓸수 있는지도 함께 알아보도록 하자.


선 3줄요약:

1. 유저가 문자를 보내면

2. 지금까지의 유저와 이루다간의 대화내용을 전부 스캔하고

a)데이터베이스b)제일 그럴듯한 답변c)딥러닝으로


사실 이 글은 여기서 끝내도 됨. 왜냐고? 진짜 저 세줄요약이 다임ㅋㅋㅋㅋㅋ 나머지는 정확도를 올리기 위한 개발자들의 처절한 몸부림에 불과함


그러나 강건너 불구경이 제일 재밌는 법. 이 개발자들이 이루다를 만들어내기 위해 어떤 수학적 몸부림을 쳤는지 디테일하게 알아볼까?


a) 데이터베이스에서


모델을 학습하기 위해 총 2억 개의 세션(문맥 + 응답)을 선별하였습니다.


일단 이루다가 뭘 보고 학습했는지부터 알아보자. 블로그에서는 자세한 디테일은 알려주지 않고 2억개의 문맥+응답 데이터셋만 선별해서 학습했다고 함. 그러면 우리가 할수 있는건 추론 뿐인데, 다른 블로그 포스트에 따르면


저희가 처음에 루다를 기획했을 때, 루다 페르소나에 대한 여러 고민이 있었어요. 일단 주 사용자층이 넓게는 10~30대, 좁게는 10대 중반~20대 중반으로 생각했기 때문에 가운데인 20살 정도가 사용자들이 친근감을 느낄 수 있는 나이라고 생각했어요.


20대 여성이 주체인 대화



b) 제일 그럴듯한 답변을

원빈과 로버트 패틴슨은 우리 개붕이들과 비교하면 압도적으로 잘생겼다는건 누구나 다 아는 사실이다. 그리고 둘이 각각 "다른 방향으로" 잘생겼다는것도 모두 동의할 것이다. 만약에 "다른 방향"으로 잘생겼다면, 그 방향의 각도는 얼마나 될까? 애초에 수학과 거리가 멀어보이는 사람 얼굴인데 둘 사이에 각도라는게 존재는 할까?


이제부터 슬슬 재밌어지기 시작함. 이루다가 어떻게 제일 그럴듯한 답변을 뽑아내는지 생각해보기 전에, 다음 질문을 한번 고민해보자.


사람 얼굴은 몇차원일까?

데이터를 표현하는데 필요한 숫자의 갯수임


3차원 공간에 있는 점 하나를 표현하기 위해선 x, y, z 숫자 세개가 필요하므로 3차원.


하지만 같은 공간에 있는 삼각형은 점 하나마다 숫자가 3개 필요하니 총 9차원짜리 데이터임.


본 개붕이는 대학을 미국에서 다니고 있어서 한국 수능에 과목이 몇개 있는지는 정확히 모르지만 구글 검색을 해보니 한국사, 국어, 수학, 영어 + 탐구영역 2개 + 제2외국어가 있다고 하니 개붕이들의 수능 점수는 최대 7차원짜리 데이터가 됨.


(이쯤 와서 눈치챈 게이들도 있겠지만 현실에 있는 대부분의 데이터는 초고차원 데이터임. 사람 뇌가 직관적으로 볼수 없는 데이터다 보니 수학의 힘을 빌리는 거. 응용수학에서는 몇십년동안 하고있던걸 요즘 AI라고 포장해서 완전 신기술인거마냥 팔고있는거임.)


사람 얼굴은 숫자 몇개로 표현이 가능할까



해법 1. 단순하게 생각해서 얼굴 사진 안에 얼굴 있잖아? 그럼 표현 된거지? 그러므로 사진을 이루는 픽셀 갯수 = 사람 얼굴 차원 이다!

어거지같지만 이론적으로 틀린건 아니다. 아무튼간에 표현 했으니까 됐지 뭘 더 바람?


하지만 실용적으로는 장점보다 단점이 더 많음. 한번 장단점을 비교해볼까?


장점: 단순함. 이미지로 곧바로 변환 가능함. 모든 얼굴을 표현할수 있음(사진이니까)


10622차원


장점보다 단점이 너무 커서 다른 방법이 필요함. 다른 방법이 필요한데... 그 해답은 심즈같은 게임들의 커스터마이징에서 찾아볼수 있음.



해법 2. 요즘 게임 커마 보면 대부분의 얼굴 표현할수 있더만? 그러므로 커마 슬라이더 갯수 = 표현하는데 필요한 숫자 갯수 = 얼굴 차원이다!

확실히 이런식으로 표현하니 10622차원에서 많이 줄었음. 근데 단점이 없는건 아님.


장점: 검은사막같은 게임들 커마 슬라이더 갯수 많아봐야 50개~60개 하지 않음? 그러면 ~60차원까지 많이 줄었으니 177배 줄었음. 쌉이득이네?


단점: 대부분의 얼굴이지 모든 얼굴이 아님. 1번 해법으로 하면 모든 얼굴을 표현할수 있지만 이 해법으로는 길가다가 보이는 진짜 창의적으로 못생긴 애들 외모는 표현해내기 힘듬. 


즉, 이 문제는 숫자의 갯수를 최소화시키면서 최대한 많은 얼굴 범위를 커버할수 있는 방법을 찾는 문제임. 근데 공돌이들이 성형외과 의사도 아니고 그걸 어떻게 알어?


어? 근데? 최소화 시키면서 최대화 시킨다? 최적화 문제네? 문제에서 솔솔 나는 미적분의 냄새를 맡은 컴공들은 이걸 수학적으로 발견할 방법을 찾아냈고 그게 뭐냐면



해법 3. ???: 네? 이걸 100배 이상으로 압축시키고 멀쩡하게 복원시키라고요? 제가요?

뭐긴뭐야 인공신경망 딥러닝이지.


오토인코더(Autoencoder)라고 불리는 형태인데 학습 알고리즘은 다음과 같아(비전공자 ver.).


인공 신경망을 위와 같이 중간에 병목이 생기도록(압축을 시키도록) 디자인을 한다

해법 1의 이미지를 통째로 신경망에 집어넣는다(위 사진에서는 28x28=784차원 이미지)

그리고 신경망보고 최대한 원래 이미지를 복구시키라고 한다

그러면 이 신경망은 복구를 최대한 잘해내기 위해서 제일 효율적인 압축법을 터득한다

병목 부분에서 주어진 차원에 맞는 제일 효율적인 데이터 표현법이 등장하게 된다


이런식으로 만들어진 표현법은 설계를 제대로 했으면 이런것도 가능함

GIF


벡터


그래서 사람 얼굴은 몇차원짜리 데이터냐?


인공지능 말에 따르면 대략 100차원임. 숫자 100개 이내로 거의 모든 사람 얼굴을 정확하게 표현해낼수 있었음.


얼굴을 벡터처럼 다룰수 있다니까

얼굴끼리 더하거나

서로 뺄수도 있고

당연히 여러개를 동시에 더하고 뺄수도 있고

내적도 쌉가능하고.. 어? 내적? 내적을 구할수 있으면 각도도 구할수 있지 않나?


맞아. 얼굴끼리의 각도는 이렇게 구할수 있어.

얼굴 두개 사이의 거리를 계산해서 유사도를 측정할수도 있고

(대부분 딥러닝을 이용한 연예인 닮은꼴 찾기 웹사이트가 이렇게 작동함)


어..유사도? 유사도면


3. a)데이터베이스에서 b)제일 그럴듯한 답변을 c)딥러닝으로 찾은뒤 답장한다.


제일 '그럴듯한'(=거리가 가깝거나 각도가 비슷한) 답변을 찾는데 쓸수 있지 않나?


맞아. 



c) 딥러닝으로 찾은뒤 답장한다

*실제 이루다 내부 모델은 이거보다 더 복잡하나 기본적인 형태는 이거랑 거의 똑같다. 궁금하면 블로그에 가보도록


여기까지 따라왔으면 위에 있는 다이어그램이 어느정도 이해가 될거야.


1) A(유저가 친 채팅)와 B(이루다가 친 채팅)을 합쳐서 대화 문맥 인코더에 집어넣어서 벡터 표현으로 바꾼뒤에


2) 데이터베이스에 있는 (최대 2억개의) 답변 후보들의 벡터 표현을 전부 비교를 한 뒤


3) 두 벡터의 각도가 제일 좁은(=현재 문맥과 제일 비슷한 방향을 가지고 있는) 답변을 내놓는거임.

이런식으로. 


그럼 이 방법론의 품질을 좌지우지하는거는 인코더인데... 얘네들이 뭘 썼냐면

사실 지금 구글 검색도 버트 기반 벡터 유사도 검색으로 바뀐지 1년쯤 됐음


(근데 버트가 무슨 비법소스마냥 감춰져있는건 아니고 오히려 무료배포중임. 개붕이들도 지금 당장 파이썬 깔고 버트 라이브러리 다운로드해서 쓰는거 쌉가능함.)


그리고 개발자 블로그 들어가서 읽어보면 알겠지만 지금까지 내가 설명한게 커다란 빅픽쳐쯤 되고 여기에 더불어서 hard negative니 하는 학습법을 써서 훨씬 더 성능을 끌어올렸음. 하여간 대단해... AI 트렌드에 늦게 탑승했는데도 이런 회사가 나오긴 하는구나.



결론+내생각


요즘 뭐 이루다 성희롱이다 뭐다 하는 이슈가 많이 올라오는데 글을 읽어봤으면 알겠지만 이루다는 결국엔 행렬 연산 집합체일 뿐인데다가 그 근본은 구글 검색과 다를게 없음ㅋㅋㅋ 현재 기술력으로는 감정 이입해도 안쪽팔릴만한 기계학습 모델은 없고 무엇보다도 성희롱 관련 논란은 "야동을 보면 변태가 된다"나 "게임을 많이하면 폭력적이게 된다"라는 논지와 전혀 다를게 없다고 생각함. 


그리고 개인적으로 수학이 정말로 중요한 학문이고 앞으로 훨씬 더 중요해질 거라는걸 개붕이들이 느꼈으면 좋겠음. "뭐 씨 미적분 기벡 배워서 뭐에다 쓰냐?" 이런데 쓴다...  특히 급식개붕이들은 수학공부를 학부시절에 피똥싸기 싫으면 일찍 준비하는게 좋을거라 생각해.


그럼 이만!


출처



비전공자도 쉽게 이해할 수 있게 쓰여졌길래 가져와봅니다. 요즘 여러모로 핫한 이루다의 내부. 궁금하셨죠?

Cards you may also be interested in
인스타 스토리 몰래보기 꿀팁 소개합니다
leem1011
1
0
0
Worried about which store to rely on for getting your Gadgets repaired?
Trending
1
0
0
댕댕 어질리티 대회 1등 vs 꼴등
Voyou
40
4
3
GIF
줌 사용법 따라만 하시면 됩니다!
leem1011
3
1
0
당신은 로또같은 사람~    어느날 와이프가 남편 눈을 바라보며 조용히 속삭이며 말했다.    여보~ 당신은 내게 로또같은 사람이예요.."    아내의 칭찬같은 말에 남편의 귀가 번쩍 뜨였다.    내..내가.. 증말~~??"    그러자 아내가 남편을 향해 속삭이 듯 말했다. ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ ㆍ   응! 하나도 안맞아..! ㅋㅋㅋ
www1369987
32
3
1
GIF
선 넘은 그 시절 광고.jpg
zatoichi
29
4
3
윈도우10 설치법 및 포맷하는 방법!
007overmen1
32
81
0
돈 많은 낮져밤이 존재였던 우리나라 도깨비형
M0ya
11
4
0
노트북 배터리 수명확인하는법, 이런 방법이?
007overmen1
22
48
0
짤줍 0228
goalgoru
30
1
1
엑셀강의 3분이면 끝나~ 3분엑셀
nnit
21
69
0
3D 프린터를 이용한 패션 디자인 (경이로움 주의)
CtrlZ
11
3
2
내가 생각하는 프로그래머의 삶.txt
n0shelter
39
8
4
[3분엑셀 3강] 특수문자입력, 메모삽입 [누나IT]
nnit
26
53
0
울산 어린이들의 순수함.jpg
ggotgye
24
1
0
컴퓨터 모니터 신호없음 해결방법 5가지!
007overmen1
24
67
0
결혼식 날 댕댕이의 마음을 담은 사진 8장
GGoriStory
20
3
0
짤줍 0227
goalgoru
36
3
0
야생속에서 죽은 금수저
Voyou
34
14
7
2018.3월 추천 데스크톱 견적! 사무용 ~ 프리미엄 총 7가지 소개
007overmen1
22
44
5
4.7 Star App Store Review!
Cpl.dev***uke
The Communities are great you rarely see anyone get in to an argument :)
king***ing
Love Love LOVE
Download

Select Collections