인간은 사회성을 가진 동물이다. 그러므로 합의하려고 한다. 모든 합의는 단위가 있다. 그런데 단위는 어떻게 정의될까? 수학에서 단위는 계와 원소다. 가령 자연수라면 자연수라는 계와 각각의 수라는 원소가 정의된다.
문명에 대한 현재의 단위는 대개 국가다. 물론 기업이나 스타의 성장사를 보면 알 수 있듯이 단위의 정의는 문명의 전파에 따라 재조정된다. 한물간 NBA라도 중국시장이 열리자 재조명되는 것이다. 오죽하면 NBA 스타가 홍콩에 대한 중국의 결정을 긍정할까.
위키를 보자. “원자는 화학반응을 통해 더 쪼갤 수 없는 단위를 말한다“고 한다. 문제는 쪼갤 수 없다가 아니라 화학이다. 그런데 그 화학은 언제적 화학인가? 시험관과 비커에 불붙이던 연금술 시절의 화학이다.
그런데 21세기가 되자 화학의 정의가 바뀌기 시작한다. 초고압초고온을 다루게 되자 더이상 이 화학은 그 화학이 아니다. 과학자들은 화학이란 말 대신 뉴턴의 물리를 다시 꺼내든다. 근데 물리는 원래 운동 다루던 거시적 개념아냐? 아냐 임마.
과학자들도 다 알고 있다. 열역학 다룰 때부터 이미 계의 개념이 중요하다는 것을 잘 알고 있었다. 통계학을 만들더라도 모집단과 원소 두 가지를 말해야 한다. 즉 인간은 단위가 필요하다. 원자가 이렇다. “화학 > 원자“ 그런데 열역학이 발전하고 원자핵과 전자 등이 나오면서부터 곤란해지는 것이다. 범위가 달라지자 기존의 말은 궁색해진다.
인간은 본능적으로 전제를 건드리는 것에 민감해한다. 필자가 인공지능 바닥에서 속성에 대해 부정하는 토론을 몇몇 사람들과 해본 적이 있다. 어떻게 됐을까? 99대 1로 공격당한다. 미친놈 취급은 순식간이다. 하도 미친놈 취급을 많이 당해서 이젠 익숙할 정도다. 가장 진보적인 학문을 다루는 바닥에서조차 속성에 대한 전제는 건드리기 없기다.
그런데 어느날 word2vec이라는 머신러닝 기법이 구글에서 나왔다. 간단히 말해 워드(단어)의 설명을 주변에 분포하는 다른 워드의 빈도(횟수)로 해보자는 것이다. 가령 왕과 왕비라는 단어가 등장하는 문서에서 그 단어의 주변에 분포하는 단어의 종류와 빈도는 유사할 것이라는 가정을 해보는 거다.
왕과 왕비가 각각 등장하는 문서에서 공통적 등장하는 단어는 보나마나 “권력”, “영국”, “왕자”, “결혼”.. 뭐 대충 이럴 거 같지 않은가? 대신 “했다”, “먹었다” 등처럼 꼭 왕과 왕비 아닌 문서에서도 나올 수 있는 단어는 제외한다.
그리고 왕과 왕비 각각의 문서도 차이를 가지는데, 이는 왕과 왕비가 나온 문서와 그것이 아닌 제3의 문서와 입체적인 비교로 가능해진다. 아무래도 왕은 남자와 관련된 단어가, 왕비는 여자와 관련된 단어가 많이 나올 것이다.
이런 식으로 특정 명사나 동사등의 단어의 유사성을 비교해 볼 수 있는 개념이 word2vec이다. word는 단어를, 2는 to를, vec는 벡터를 의미하며, 각 단어가 각 벡터축(좌표명)이 되어 사전에 등재된 모든 단어가 다른 모든 단어에 대해 상대적인 공통등장빈도를 조사하는게 word2vec의 방법론이다.
이때 계의 범위가 중요한데, 타겟단어의 설명단어와의 문장내부에서 거리가 계의 범위다. 흔히 윈도우 사이즈라고 한다. 앞뒤로 1~2단어까지만(아래 그림에서는 4이다). 이런 알고리즘은 대충 생각해도 그럴듯하지만, 실제로 머신러닝 연구자들이 이 개념을 이해하는 비율은 1%도 되지 않는다는 게 문제다. 그들은
1) 계의 개념이 희미하고
2) 원소와 계와의 연관성 개념이 희미하며
3) 유사하다의 개념이 희미하다
이후 해당 알고리즘은 발전하여 Attention알고리즘으로 또한 BERT알고리즘으로 지속 발전했다. Attention(주목) 알고리즘은 구글번역기로, BERT는 현재 가장 핫한 자연어처리 알고리즘으로 사용된다.
요즘엔 BERT로 이러고 논다. 원래 본문은 영어이지만 필자가 한글로 번역한 것이다. 지문과 질문을 주고 답변하도록 훈련시킨 알고리즘이다. 이미 인간의 정확도는 아득히 뛰어넘었다. 참고로 BERT는 word2vec과 달리 문장을 계로 설정하고 통계 조사를 실시한다. Attention은 a언어 문장과 b언어 문장을 연결하여 번역하고. 그래서 구글번역기를 쓰면 문장 안에서는 맥락이 반영되지만 문장간에는 그 맥락이 전혀 반영되지 않는 현상을 관찰할 수 있다.
근데 이게 구조론과 무슨 상관?
구조론이 다루는 것은 주로 전제다. 즉 계다. 사람들은 원소에 관심이 있고, 그것이 고유할 것이라고 생각하지만, 실제로 원소를 정의하는 것은 그것의 바탕인 계다. 우리는 미터라는 단위만을 보지만 과학자는 미터와 빛의 속도를 연동시켜 정의한다. 모든 계는 계와 계 아닌 것의 연동으로 정의되는 것이다.
과학의 모든 정의도 마찬가지이다. 시대가 바뀌면 어떤 원소의 정의도 바뀐다. 데모크리토스의 원자는 우리가 아는 그 원자가 아니다. 물리학자가 다루는 원자와 화학자가 다루는 원자도 다르며, 그것은 시대에 따라서 또 달라진다. 왜냐하면 그것의 바탕인 계가 시대와 연동되어 바뀌기 때문이다.
나는 원자 개념이 틀리다고 생각하지 않는다. 다만 그것을 바라보는 인간의 시선이 원자에만 꽂힌게 문제다. 아는 사람은 원자가 아니라 계를 보고, 깨달은 사람은 계가 아니라 계의 성립을 본다. 구조론자라면 마땅히 계의 성립을 봐야할 것이다.