2020년 11월 30일 월요일

[통계학 관련 토막글] p-value의 올바른 이해

지난 11월 27일 경향신문에 실린 [전문가의 세계 - 이종필의 과학자의 발상법](10)범죄 현장 DNA와 당신의 것이 일치하는데 범인이 아닐 수도 있을까를 재미있게 읽었다. 범행 현장에 남아있는 인체 유래물(핏자국, 땀, 침, 체모...)에서 DNA를 추출한 뒤 이것이 용의자의 것과 일치하면, 그 용의자를 범인으로 주장할 수 있는 강력한 증거가 된다. 범죄 수사와 반드시 연관된 것은 아니지만 개인 간의 다툼에서 벌어지는 친자확인 검사도 동일한 생물학적 원리에 기초를 둔 것으로 알고 있다. 

나는 분자생물학 전공자이지만 주로 미생물 유전체만을 다루고 있어서 이 분야를 잘 알지는 못한다. 실제로는 어떻게 국내 유전자를 이용한 개인 식별을 하고 있을까? 유전체 분석 업체 중 매우 잘 알려진 마크로젠의 'Human ID 검사 서비스' 웹사이트를 방문해 보았다. 

개인식별 검사 또는 DNA 프로파일링(DNA profiling)은 범죄수사 시 유전자 검사 방법으로 이용되고 있습니다. Human ID는 국제표준화 분석 기법(미국 FBI에서 사용하는 CODIS의 유전자 좌위)을 기반으로 16개의 STR 유전자 좌위를 분석해 개인 식별 검사를 진행하고 있습니다. STR(Short Tandem Repeat)은 사람의 DNA 염기서열 중에 2~7개의 염기가 연속적으로 반복되는 구간을 의미하는 것으로서 분석 방법은 부모로부터 혈액형을 물려받는 것과 유사합니다.

윤지훈 님의 블로그 [두마디 정밀의료]에는 STR과 VNTR(Variable Number Tandem Repeat)을 그림으로 쉽게 설명한 글(링크)이 있다. 미생물의 타이핑에 널리 쓰이는 VNTR은 반복 서열 염기가 수십~수백개 정도로 STR(2~7 염기)보다 더 긴 경우를 일컬을 때 사용한다. 그러나 STR과 VNTR을 나누는 반복 단위 염기의 길이 기준은 그렇게 명확한 것 같지는 않다. 예를 들어 Molecular typing of Mycobacterium tuberculosis by using nine novel variable-number tandem repeat across the Beijing family and low-copy-number IS6110 isolates라는 논문의 표 2를 보면 3, 6, 9, 11, 18, 55 등 다양한 반복 단위를 갖는 것들을 전부 결핵균의 VNTR로 집계했기 때문이다. STR 중에서 특별히 상염색체 위에 있는 것을 A-STR(autosomal STR)이라 하여 법의학 분야에서 널리 쓰인다. 

CODIS(Combined DNA Index System)는 또 무엇인가? 이것은 미 연방수사국, 즉 FBI에서 만들고 유지 관리하는 DNA 데이터베이스의 일종으로, 2017년 1월 현재 20개의 CODIS Core Locus(좌위; 복수형이니 Loci로 적어야 되겠지만)가 정의되어 있다. 

각 STR 좌위에서 일어나는 반복 회수는 개인별로 차이가 심하고(즉 highly polymorphic) 부모에게서 물려받는 것과 동일하다. 마크로젠에서는 최소 15개 이상의 좌위를 PCR로 분석하여 반복 회수의 프로파일을 얻은 다음 두 시료 간의 동일성 여부를 확인한다. 친자확인검사를 제공하는 어떤 기업에서는 24개까지의 STR 좌위를 조사하는 것 같다. 그리고 STR 마커를 사용한다는 점에서는 유사하지만, 판정에 필요한 수치를 제공하는 방식은 범죄를 다루는 문제와 친자를 확인하는 문제에서 다르게 나타난다. 즉, 16개 좌위를 검사했더니 두 샘플이 일치했다(법의학적 문제)고 해서 끝나는 것이 아니다. 인구 집단에서 각 allele(대립유전자)의 실제 빈도가 중요하며, 또한 친자 확인 문제에서는 샘플과 추정부의 allele 각각 두 개씩을 고려해야 한다. 법의학 문제라면 검사법에 문제가 없는 경우 샘플과 용의자의 allele은 동일 좌위에 대해서 당연히 같을 것이다. 

중요한 개념 두 가지를 알아보았으니, 실제 범죄현장에서 수집된 DNA와 용의자 사이에서 검사를 실시한 모든 STR 좌위가 일치하는 반복회수를 나타내는 경우 이를 어떻게 해석해야 하는지를 알아보자. 이것이 이종필 님의 글에서 다루는 주제에 해당한다. 대개는 개인의 운명을 좌지우지할 법률적인 결정이 따르게 되므로 결코 가벼이 다룰 수 없다. 용의자가 여럿인데 어느 하나의 STR 좌위라도 반복 회수가 맞지 않는다면, 즉 DNA profile이 일치하지 않는 사람은 일단 자유의 몸이 될 것이다. DNA profile이 일치하는 용의자가 나왔다면 그 다음으로 할 일은 이러한 유전형을 가진 사람이 인구집단 내에 나올 확률을 계산하는 것이다. 이를 계산하려면 인구집단에 대하여 STR 좌위의 각 allele(반복 회수가 다르게 나타나는 대립유전자) 빈도에 대한 데이터가 필요하고, Hardy-Weinberg의 법칙을 알아야 한다. 다음 2017년도 논문은 2천 명의 한국인에 대한 20개 STR 좌위의 allele frequency에 관한 것이다.

Allele frequency data of 20 STR loci in 2000 Korean individuals. Forensic Science International: Genetics Supplement Series 6 (2017) e65-e68.

실제 계산 사례는 人codom의 동일성지수(identity index) 항목을 살펴보면 된다. 각 좌위에 대하여 용의자의 STR allele이 관찰된 빈도를 Hardy-Weinberg 법칙에 따라 계산한 뒤 이를 전부 곱하면 이는 combined frequency에 해당하며(동일성 지수는 이것의 역수) 매우 적은 숫자가 나오게 된다. 人codom의 사례에서 combined frequency는 2.19 x 10-15로 계산된다. 이 숫자는 무엇을 의미하는가? 지나가는 사람을 아무나 하나 붙들었을 때 이러한 DNA profile이 나올 확률이 이렇게 적다는 뜻이다. 즉, 범죄 현장의 DNA에서 확인된 profile이 특정된 용의자가 아닌, 이번 범죄와 전혀 무관한 사람에게서 나타날 확률을 의미한다. 이 확률이 이렇게 낮기 때문에 범죄현장의 DNA는 바로 그 용의자에서 왔을 수밖에 없다. 이상의 설명은 Nature Education에 실린 Forensic, DNA fingerprinting, and CODIS를 참조하였다. 좀 더 깊은 수준으로 공부하고 싶다면 John V. Planz의 Forensic Statistics(15th Symposium on Human Identification 강연 자료)를 참조하기 바란다. 이런 자료가 국문으로는 잘 제공되지 않는다는 현실이 안타깝다. 몇몇 전문가들만 관여하는 매우 제한된 분야라서 그러한 것 같다.

지금까지는 유전자 감식에 관한 기초적인 사항을 공부한 서론에 지나지 않는다. 이제 본론에 들어가 보자. 이종필 님은 p-value를 설명하기 위해 유전자 감식의 사례를 들었다. p-value는 아주 쉽게 설명할 수도 있고, 어렵게 설명할 수도 있다. 쉽게 설명하자면 이러하다. p-value란, 순전히 우연에 의해 관찰된 차이가 나타날 수 있는 확률이다. 중간 정도의 난이도로 설명한다면, p-value란 귀무가설이 참일 때 관찰된 값 혹은 그보다 더 극단적인 값이 나올 수 있는 확률이다. 그 값이 일정 기준(유의 수준, 보통 5% 또는 1%) 미만으로 나온다면 귀무가설의 상황에서는 일어나기 힘든 상황이 되므로 귀무가설을 기각할 수 있다.

유전자 감식의 문제에서 귀무가설 및 p-value를 적용할 수 있을까? 먼저 이종필 님의 글의 도입부를 살펴보자. DNA 감식 결과로서 주어지는 숫자(99.99999...%)는 질병 진단에서의 특이도(specificity)에 해당한다고 설명하였다. 즉, 감염병에 걸린 사람을 가려내는 진단법의 성능을 나타내는 수치 중 민감도(병에 걸린 사람을 양성으로 판정하는 확률)와 더불어 매우 중요하게 취급되는 지표이다. 진단법 사례에서 특이도란 건강한 사람을 음성으로 판별할 확률이다. 진단법 문제에서는 벤다이어그램으로 설명하기가 아주 쉽다. 


그러나 유전자 감식 문제는 이러한 그림으로 표현하기가 어렵다. 모집단을 어떻게 정의해야 하는가? '검사'라는 행위로 타원을 둘러칠 표본점을 정의하기도 쉽지 않다. 또한 99.9999..%하는 수치도 그러하다. 유전자 감식에서 주어지는 수치는 combined frequency로서 0에 매우 가까운 수이다. 다시 말하자면 주어진 인구 집단에서 범죄와는 아무런 상관도 없는 사람이 범죄 현장에서 발견된 범인(의 것이 확실시되는)의 DNA와 같은 allele profile을 나타낼 확률을 의미한다. 수십억 분의 1과 같이 작은 값이 나오는 것이지, 99.9999...%와 같이 1에 가까운 값이 나오지는 않는다. 혹시 1 - (combined frequency)를 의미하는 것일까? 그렇게 순진하게 계산한 값은 아닐 것이다.

친부확률(POP, probability of paternity)

이 검사에서는 99.9% 또는 99.99% 등으로 표현되는 친부확률이 주어진다. 범죄 문제에서도 이러한 확률이 실제로 주어지는지, 혹은 언론에서 일반인이 알기 쉽게 감정 결과의 신뢰도를 이러한 수치(확률)로 표현하는 것인지는 잘 모르겠다. CPI, 즉 combined paternity index에서 POP를 계산하려면 베이즈 정리를 응용한 계산이 필요하다. 그러면 Probability of identity도 정의되어야 하지 않나?

p-value의 문제

또 이 글에서는 "(용의자) '놀부'가 무죄이다"를 귀무가설로 하였다. 이러한 가정 하에서 사건 현장에서 확인된 DNA와 놀부의 DNA profile이 같을 확률을 p라 할 수 있다('p'가 combined frequency와 완전히 동치인가에 대해서는 고민이 필요하지만). 그 확률이 매우 낮다면 우연하게 일어날 사건의 가능성이 매우 낮음에 해당하므로 사건 현장의 DNA가 놀부의 것이라고 판정하게 되는 것이다. p값을 이렇게 비유하여 설명해도 되는 것인지는 아직 확신하기 어렵다.

p값은 만능 열쇠가 아니다. 법과학에서 p값을 남용하는것을 경계하는(그래도 가끔은 쓸모가 있다는) 글을 찾았기에 소개해 본다.

p-values are rarely used in forensic science. That is (not) too bad - 아이오와 주립대 Alicia Carriquiry

이종필 님의 기고한 글의 주제는 p-value를 오남용하지 말자는 것이다. 이를 둘러싼 문제점이 너무나 심했기에 2016년 미국 통계학회에서는 p-value의 해석과 이용에 관한 여섯 가지 원칙을 제시했다고 한다. 기고문에 실린 글을 그대로 인용해 보면 다음과 같다.

  1. p값은 특정 통계모형과 데이터가 얼마나 양립불가능한지를 나타낼 수 있다.
  2. p값은 검토 중인 가설이 참일 확률, 또는 데이터가 무작위적인 우연에 의해서만 만들어졌을 확률을 측정하지 않는다.
  3. 오직 p값이 특정한 문턱값을 넘었는지 여부에만 기초해서 과학적 결론과 사업 또는 정책적 결정을 내려서는 안 된다.
  4. 적절한 추론을 하려면 완전한 보고와 투명성이 필요하다.
  5. p값 또는 통계적 유의성은 어떤 효과의 크기나 결과의 중요성을 측정하지 않는다.
  6. p값 자체는 모형이나 가설과 관련된 증거를 제대로 측정하지 못한다. 
미국 통계학회지에 실린 원문은 The ASA statement of statistical significance and p-values: context, process, and purpose(The American Statistician 70, 2016 - Issue 2)이다. ASA란 American Statistical Association을 의미한다. 원문은 Mount Holyoke College의 명예교수인 George Cobb이 ASA 토론 포럼에 올린 질문에서 이 문제가 비롯되었음을 밝히고 있다.
  • [Q] 왜 그렇게 많은 학교에서 p = 0.05를 가르치는 건가요?
  • [A] 학계와 논문 편집자가 그렇게 쓰기 때문이지요.
  • [Q] 왜 그렇게 많은 사람이 p = 0.05를 사용하나요?
  • [A] 그렇게 배웠으니까요.

이종필 님이 p-value를 쉽게 설명하기 위하여 든 사례는 어쩌면 과학적으로 정확하지 않을 수도 있다. 그러나 일반인에게 통계의 개념을 쉽게 소개하기 위하여 쓴 글이므로 정확성을 약간 희생하는 것은 있을 수 있는 일이다.

유전자 감식 문제를 미생물(세균)로 확장하면 어떻게 될까? 사람의 유전자 감식에서처럼 STR을 이용한 감식은 쉽지 않은 것으로 여겨진다. 왜 그럴까? 우선 세균은 mutation rate가 사람보다는 높다(최근의 연구 결과에 따르면 그렇지 않을 수도 있으며, 이에 대해서는 나중에 논하겠음). 따라서 출처가 같은 미생물이라 해도 검사를 하는 시점에는 몇 개의 변이가 이미 발생했을 수 있다. 유전자의 수평적 전달이 매우 흔하게 일어난다는 것도 미생물의 정확한 계보를 파악하기 어렵게 만드는 요인이 되기도 한다. 그러나 이 현상은 검사대상 미생물이 최근까지 실험실에서 인공적으로 배양된 것이라면 일어나기 힘드므로 오히려 동일 기원을 부정하는 용도로 쓰일 수 있다. 출처가 자연계라면 유전적으로 균질한 집단이라는 보장이 없으니 해석은 좀 더 까다로와진다. 그리고 STR allele에 대한 집단 내 빈도가 일반적으로 알려져 있지 않다. 그런 것이 존재한다고 해도 특정 strain에 국한될 것이 뻔하다. 그리고 strain과 strain 사이의 유전적 차이는 그야말로 엄청나다. 아주 중요한 감염병을 일으키는 세균이 있어서 그에 대한 STR DB가 마련되었다 해도, 모든 좌위를 PCR하여 검사하느니 차라리 whole-genome sequencing(WGS)을 하는 것이 더 낫다. 

사람의 유전자 감식에서는 예를 들어 16개의 STR 좌위가 일치하는 결과가 나왔는데 우연의 일치로 이러한 값이 나올 확률을 논한다. 반면 미생물의 경우라면 WGS을 통해서 얻은 몇 개의 SNP를 가지고서 이것이 동일 출처에서 온 것인지 또는 아닌지를 결정해야 하는데, 여기에 대해서 POP와 같은 지수를 제시하기는 어렵다. 그러나 SNP의 대략적인 차이, 그리고 균주 특이적 염기서열(최소한 몇 kb를 넘는)로서 확신을 가지고 이야기할 수 있다.




2020년 11월 26일 목요일

기업에서 인문학(자)에 대한 수요가 늘었다고 하여 마냥 좋아할 일은 아니다

어제 쓴 글 [독서기록] 인공지능에게 대체되지 않는 나를 만드는 법 - 에이트(Eight)에서는 점점 많은 기업들이 인문학적 소양을 갖춘 사람을 뽑게 되었다고 하였다. 인공지능의 지시를 받는 무기력한 인간이 아니라, 인공지능에게 명령을 내리는 인재가 되려면 공감능력과 창의적 상상력이라는 무기로 무장해야 하고, 그러기 위해서는 인문학적 소양이 필요하다는 것이 중요한 결론이었다. 스티브 잡스가 아이패드 2 출시 행사에서 했다는 말이 이럴 때 항상 단골로 등장한다.

출처: https://www.goodreads.com/quotes/3191123-it-is-in-apple-s-dna-that-technology-alone-is-not
그런데 말이다.

인문학은 어떤 쓸모, 특히 경제적인 쓸모로 인하여 추구하는 학문은 아닌 것으로 알고 있다. 학문에 몰두하고 탐구하는 과정 자체가 의미를 주는 것이지, 어떤 연구 성과를 냈으니 100억원의 경제적 효과가 발생하기를 기대하는 것은 아니라는 뜻이다. 

기업이 인문학을 원재료의 하나로 찾게 된 것은 된 것은 그렇게 함으로 인하여 일반 대중(즉 소비자)의 관심을 끌고 만족도를 높일 수 있는 새로운 제품이나 서비스를 만들 수 있기 때문이다. 이러한 세태 변화를 발빠르게 읽은 사람들에 의해 몇년 전부터 반짝 인문학에 대한 관심이 높아지고, 일반인을 위한 강좌가 늘어나며, 이 책 하나만 읽으면 동서양 고전 100권을 읽는 것과 마찬가지라는 갖가지 입문서가 넘쳐나는 것은 사실이다. 이러한 분위기를 이끈 사람들이 진정으로 인문학을 사랑하는 사람이었을까? 물 들어올 때 열심히 노를 젓는 사람일 것이다.

멋진 음악, 멋진 영화, 멋진 풍경, 맛있는 음식... 이것을 직접 체험하지 않고 소개 책자를 통해 간접적으로 경험한다고? 이것은 전부 과정이 중요한 활동들이다. 단지 배고픔을 잊기 위해 음식을 먹는가? 코와 혀로 느껴지는 음식의 맛과 향, 씹을 때의 느낌, 그리고 드디어 침과 뒤섞여 잘게 으깨어진 음식이 목구멍을 통해 비로소 몸 속으로 들어갈 때의 쾌감... 그 중요한 과정을 다 생략하고 배만 부르면 무슨 재미가 있겠는가? 인문학도 마찬가지일 것이다. 책 한권을 읽는 것으로 인류가 수천 년 동안 쌓은 지적 유산을 손쉽게 소화하는 단기 완성 전략이 통한다면, 그건 진정한 학문이 아니다.

인문학에 대한 세속적인 관심은 많이 늘었지만 대학의 현실은 답답하다. 인문학이 기업 활동에 도움을 줄 수는 있고, 분명 그것은 바람직한 기대 효과 중 하나일 것이다. 그러나 자본에 종속된 인문학은 분명 바람직하지 못하다.

2년쯤 전에 읽었던 책 ≪反기업 인문학≫ 이 생각난다.

[한겨레신문] 인문학은 자본권력의 도구인가?

성역 없는 비판 정신이 인문학을 인문학답게 만드는 태도라고 믿는다.

블로그에서 특수문자 입력하기

어떤 문서편집기를 쓰든지간에 자판에 없는 특수문자를 입력하는 것은 매우 성가신 일이다. 특히 내부적으로는 html로 작성되는 블로그는 더욱 그러하다. 가장 까다로운 것은 바로 부등호(<>) 표시이다. 수식에서 쓰는 것이 아니라 일반 문서에서 쓰고자 함이니 홑화살괄호라고 부르는 것이 더 정확할 것이다. 

더욱 엄밀하게 말한다면 부등호와 홑화살괄호 - 인용을 위해 쓰는 - 는 다르다. 자판에 있는 것은 부등호가 맞을 것이다.  부등호와 홑화살괄호는 HTML 엔티티도 다르다(화살괄호, 겹화살괄호 참조)

자판에 있는 특수문자라고 해서 별 생각 없이 그대로 입력하다가는 &lt; 또는 &lt;으로 표시되기 일쑤이다. 제목줄에 넣으면 아예 이것 사이에 있는 글자가 아예 나타나지 않을 때가 있다. 요즘 구글 블로그의 편집기는 '새 글 작성 보기' 모드에서 <>를 그냥 입력해도 되는 것 같다. 중간점(·)은 하도 자주 쓰다보니 'HTML 보기' 모드로 설정한 다음 &middot;라고 치면 된다는 것을 외어 버렸다. HTML 엔티티가 생각나지 않는 특수문자는 여기에서 복사하여 붙여넣을 때도 있다.

국문에서 책 제목을 쓸 때는 겹화살괄호(≪ ≫)를 널리 사용한다. 이것 역시 화살괄호와 마찬가지로 '아주 크다 혹은 적다'를 나타내는 특별한 부등호와는 다르다.

(「」)와 겹낫표(『』)도 책의 제목 등을 나타낼 때 널리 쓰인다. 그런데 이것은 가로쓰기에 좀 더 어울렸던 부호로 여겨진다.  헷갈리는 문장부호 바로알기 #2에서 이들 문장 부호의 정확한 용법을 알 수 있다.

그건 그렇고, TV 프로그램에서 너무 자막을 남발한다. 공공장소에 설치된 TV는 큰 소리를 내기 어려우니 자막은 분명히 도움이 된다. 그러나 음성으로 출력되는 것을 그대로 옮긴 자막과, 프로그램에서 일부러 입힌 자막은 분명히 다르다.

또한 신문 기사 등에서 너무 따옴표를 많이 남발하는 것도 시각적 공해이다. 다른 사람이 말한 것을  인용하였음을 정확하고 공정하게 밝히기 위한 것이라면 모르겠지만, 강조를 위해 따옴표를 너무 많이 쓰는 것은 시각적 공해에 가깝다.

2020년 11월 25일 수요일

[독서 기록] 인공지능에게 대체되지 않는 나를 만드는 법 - 에이트(Eight)

어제 동료와 점심을 먹다가 인공지능이 앞으로 대체하게 될 직업에 대해 이야기하였다. '병아리감별사'가 화제에 올랐다. 실무에 쓰일 정도로 병아리 감별에 숙련되려면 많은 시간이 걸리고, 현직 감별사에게는 죄송스런 말씀이지만 그 일이 굉장히 까다로우면서도 지루한 일이므로 인공지능에게 더 적합한 일이라는 생각이 들었다. 다치기 쉬운 어린 생명체를 로봇팔이 섬세하게 잡아 올리는 것을 구현하는 것은 숙제로 하자. 

갑사 입구의 식당에서 만난 토종닭의 위풍당당한 모습. 이들은 자기들의 운명을 얼마나 잘 알고 있을까?

인공지능이 어떻게 병아리를 감별하면 좋을까? 우선 사람이 병아리의 암수를 감별하는 방식을 그대로 따르는 방법이 있을 수 있다. 병아리의 항문과 생식기 부분(조류에서는 이것을 '총배설강'이라 하여 한 데 붙어 있다고 들었다)을 카메라로 찍은 다음 인공지능이 암수를 순식간에 판별하여 두 그룹을 서로 갈라놓는다. 수컷 병아리는 곧바로 '분쇄' 처리가 된다는데 요즘은 동물 복지 차원에서 어떻게 달라졌을지 모르겠다. 목숨이 붙은 상태에서 곧바로 쓰레기처럼 취급되는 수컷 병아리 때문에 감별사의 스트레스도 남다를 것이다.

내가 생각한 구현 방법은 조금 달랐다. 행동 패턴이나 직접적으로 측정 가능한 바이오 지표(체온, 체취 등)에 대한 빅데이터가 충분히 모이면 병아리의 꽁무니를 들어서 까뒤집지 않아도 암수 구별이 가능하지 않을까? 물론 시각적인 표지를 일부러 달지 않고도 개별 병아리를 식별하고 추척하는 고급 기술이 실현되어야 한다. 인간은 다른 인종을 개인 단위로 구별하는데 매우 서투르다. 하물여 알에서 갓 깨어난 병아리들은 더욱 어렵지 않을까? 그러나 빅데이터나 인공지능은 어떻게 해서든 해결할 것으로 상상해 보자.

각 개인 병아리에 대해서 암수를 구별할 데이터가 충분히 쌓이고 결정의 순간이 되면 이들을 갈라 놓아야 한다. 병아리들을 줄지어 지나가게 하면서 암수 그룹으로 나뉜 방으로 밀어 넣을 수도 있고, 비윤리적이지만 드론으로 요인이나 테러범을 암살하듯이 사육장에서 자유롭게 노니는 병아리에게 레이저를 쏘아서 숫놈만 처리(?)를 한 뒤 로봇팔로 치워버릴 수도 있다. 이웃 병아리가 입을 트라우마에 대해서는 따로 고민하도록 하자. 상상력을 좀 더 발휘해 보자. 암수 병아리의 행동 패턴에 대한 빅데이터가 충분히 쌓였다면, 이들을 조종할 수도 있을 것이다. 조종이 아니라 심지어 훈련까지도 가능하지 않을까? 즉 어떠한 유인책을 사용하여 서로 분리된 공간에 암수가 자발적으로 나뉘어 들어가게 한다...

이런 상상을 한 사람은 나 말고도 많이 있었다.

병아리 감별사 AI 이것은 시각 기술을 이용하여 감별한다는 미래 상황을 상상한 것이다.

김성민 ORNIS 대표 "병아리 암수구별 인공지능 기술 해외 진출 목표" 일주일 전인 2020년 11월 18일 기사이다. 학생 스타트업으로 보인다.

수정란 상태에서 달걀을 감별하는 기술도 이미 존재한다. 호르몬 채취라는 침습적 방법을 쓴다. 수정 후 신경계가 어느 정도 갖춰진 7일차 배아부터는 병아리도 아픔을 느낀다 하니 그 전에 감별을 하는 것이 관건이다. 이에 대해서는 [강석기의 과학카페] 달걀 감별하는 시대에 소개되었다. 내가 상상한 인공지능 병아리 감별 기술에 비한다면 '달걀 감별'이 훨씬 현실적이다.

닭과 인간의 관계(경제적, 영양학적, 그리고 정서적? 닭이 반려동물의 위치에는 아직 이르지 못하였으니...)를 논하는 것이 오늘 글을 쓰는 목적이 아니므로 닭 이야기는 그만 하자.

인공지능라는 낱말을 들었을 때 떠오르는 미래는 그다지 낭만적이지 않다. 반면 6-70년대에 상상했던 미래는 매우 낭만적이었다. 미래를 보는 만화가, 이정문 화백 인터뷰(2017년)를 클릭해 보자. 기술은 신나는 미래를 만드는 원천이었다. 그런데 인공지능은 어떠한가? 현재 직업의 대부분이 20년 이내에 소멸해 버릴 것이라는 암울한 생각이 먼저 드는 것이 사실이다. 

이지성(본명 고요셉)의 책 『에이트(Eight)』에서는 앞으로 인간은 두 부류로 나뉠 것이라 한다. 인공지능에게 지시를 내리는 그룹(이를 초엘리트라고 부르자), 그리고 인공지능의 지시를 받아서 그럭저럭 보람도 없이 살아나가는 그룹. 기왕이면 첫번째 그룹에 속하는 사람이 되어야 하지 않겠는가? 인공지능 기술을 아는 것도 중요하지만, 핵심은 공감과 창조적 상상력이라는 능력, 즉 아무리 인공지능이 발달해도 그들이 가지기 어려운 능력을 익히는 것이며 그 근본은 인문학에 있다는 것이다.

이 책은 인터넷 신문에서 책 소개의 글을 보고 쿠팡으로 어제 구입하여 오늘 아침 새벽 배송을 받았으며, 출근길과 점심시간을 이용하여 다 읽었다. 읽은 다음에야 저자에 대해서 알아보았다. 저자를 미리 확인하고 책을 주문한 것이 아니라서 오늘 아침까지 그의 이름조차 몰랐고, 그가 인문학(또는 자기계발서?) 분야의 스타 작가라는 것은 더욱 알지 못했다. 어제까지만 해도 눈에 그렇게 잘 뜨이던 책 소개 글의 원문을 오늘은 도저히 찾지를 못하겠다. 진지한 기사는 아니었고, 요즘 흔히 뜨이는 카드뉴스 비슷한 형식의 글이었다. 지금 생각해보니 기사가 아닌 광고였나 싶기도 하다.

새벽에 받은 책의 포장을 풀고 나서 처음 느낀 것은 '이렇게 얇은 책을 뭐하러 하드 커버를 씌웠나'였다. 레이 커즈와일의 『특이점이 온다』라든가 앨빈 토플러의 책, 제러드 다이몬드의 책 정도로 두툼하지는 않더라도, 말컴 글래드웰 정도는 되어야 하는 것 아닐까. 예전 활판 인쇄 시절에 나온 책들에 비하면 요즘 책은 줄 간격도 너무 넓다. 그리고 본문 속에 본인이 쓴 이전 책을 너무 자주 소개한다는 생각도 들었다.

그래도 저자가 전하려는 메시지는 명확하다. 심지어 절박하기까지 하다. 인공지능에 밀려 두려움에 도태되지 말고, 인공지능을 제어할 수 있는 주인, 즉 초엘리트가 되자는 것이다. 다들 부동산과 주식에 정신이 팔려 있는 이 상황에서 한적한 산사를 찾아 선인들의 숨결을 느끼고 지금까지 한국 전통적 질서의 근간을 이루고 있는 유학(儒學)의 부정적 영향에 대해 한숨을 쉬며 유튜브로 재즈와 클래식·크로스오버 국악을 찾아 듣는 나는 비현실적인 사람인가, 아니면 어떤 기준으로는 초엘리트로 자라날 싹을 지니고 있는 것인가?

『에이트』라는 책 제목은 인공지능에게 대체되지 않기 위한 여덟 가지 실천 방안을 뜻한다.

  1. 디지털을 차단하라.
  2. 나만의 '평생유치원'을 설립하라.
  3. '노잉'을 버려라. '비잉'하고 '두잉'하라.
  4. 생각의 전환, '디자인 씽킹'하라.
  5. 인간 고유의 능력을 일깨우는 무기, 철학하라.
  6. 바라보고, 나누고, 융합하라.
  7. 문화인류학적 여행을 경험하라.
  8. '나'에서 '너'로, '우리'를 보라.

인공지능이 더욱 발전하여 철학을 하게 될 날도 올 것이다.

'나(인공지능)는 어디에서 비롯되었나?'

'나는 무엇 때문에 살아야 하는가?' 

'왜'라는 질문을 무시한 채 인공지능 자체의 생존만을 목표로 설정하여 인간을 없애야 할 대상으로 여기는 - 마치 영화 터미네이터의 스카이넷처럼 - 시대가 오거나, 아니면 자신들의 창조자인 인간과의 평화로운 공존을 꾀하는 시대가 오거나 중의 하나일 것이다. 하지만 인공지능이 스스로를 복제할 수 있게 된다면? 더 이상 창조자로서 인간의 의미는 없어진다. 아, 끔찍하다.

나는 영화 인터스텔라의 TARS와 같은 동반자를 원한다. 지나치게 낭만적인가?

2020년 11월 24일 화요일

Academia.edu는 도대체 무엇을 하는 곳인가?

얼마 전부터  Academia.edu라는 곳에서 지메일 계정으로 메일이 오기 시작하였다. '프로모션'으로 자동 분류되는 것을 보니 고상한 의도로 보내는 소식 같지는 않다. 메일 하나씩 오는 이 메일 중에서 가장 최근의 것의 제목을 보자.

Then name "Haeyoung JEONG" is mentioned in a PDF uploaded to Academia by someone interested in Microbiology and molecular genetics. 

미생물학과 분자생물학 분야에 관심이 있는 사람이 Academia에 올린 PDF에 내 이름이 있다는 뜻이다.  연구자라면 내 논문이 얼마나 인용되었는지 당연히 알고 싶을 것이다. 요즘은 Google Scholar에서 이를 할 수 있고, 좀 더 공식적으로는 SCOPUS나 Web of Science를 참고하면 될 것이다. Academia는 더 많은 정보를 제공하는 것일까? 메일 메시지 하단에는 'View your Mentions'라는 버튼이 있다. 클릭을 해 보자. 학계에서 나를 어떻게 'Mention'하고 있는지를 알려면 업그레이드를 하라는 것이다. 한 달에 8.25 달러! 그러면 그렇지...

위키피디아에 의하면 Academia는 원래 학술 저널 기사의 무료 공개 저장소로 시작하였기에 .edu 도메인을 얻었지만, 이제는 수수료를 부과한다고 한다. 말하자면 학계를 위한 상업 소셜 미디어이다. diggit magazine이라는 곳에 실린 기사는 다소 비판적이다. 공익을 위한 변화가 아니라 이윤을 위한 변화이다. 그 기사의 제목은 이러하다.

The end of Academia.edu: how business takes over, again

정말 쓰기 싫은 낱말이지만, 과학계의 관종이 있다면 Academia.edu를 적극적으로 활용할 수 있을 것이다.

Academia에서 보낸 메일임에도 불구하고 용케 프로모션으로 자동 분류되지 않은 메일도 있다. Genome sequences of Escherichia coli B strains REL606 and BL21(DE3) 논문(PubMed)의 첫 쪽을 보여주면서 이런 도발적인 문구를 보인다.

Want fewer recommendations like this one?

이 논문처럼 적은(fewer) 추천을 계속 원하느냐는 뜻처럼 보인다. 클릭을 해 보았다.

그 무엇을 선택하든, 내 논문인 대장균 유전체 논문의 명예를 저자가 직접 떨어뜨리는 행위가 된다.

다음 중 적합한 것을 선택하여 나를 위한 추천을 더욱 개선하라는 뜻으로 보인다. 그러나 선택 항목 중에서 좋은 것은 하나도 없다. 그 어느 것을 선택하든, "Genome sequences of Escherichia coli.." 논문을 수준 이하의 것으로 선언을 해 버리라는 뜻이 된다. 도대체 무슨 말인지를 모르겠다. 이 논문은 내가 제1저자로 쓴 논문이고 나의 평생 업적 중 하나로 여길만큼 중요한 것인데... 가치에 비해서 추천수가 적으니 설정을 최적화하면(다시 말해 유료 회원으로 업그레이드를 하면) Haeyoung JEONG이라는 이름에 대한 추천이 올라갈 것이라는 것이 이런 종류의 서비스를 제공하는 메일에서 당연히 해야 하는 제안이 아닐까? Want fewer recommendations for this one?에 대한 반응이라면 이 논문이 가치가 낮다고 스스로 평가를 하겠지만 말이다.

Want fewer recommendations like this one?에 담긴 뉘앙스를 내가 제대로 파악하지 못한 것인지... Want fewer/more recommendations than this one?이라고 물었다면? 아주 짧은 문장인데 그 의도를 파악하기가 어렵다. 내 영어실력을 탓하는 것이 낫겠다.

잠자리에 들 시간을 늦추면서 괜히 나의 소중한 관심을 낭비했다. Unsubscribe 버튼을 눌러버렸다.


2020년 11월 23일 월요일

그래프 기반의 pangenome 군집 도구, panaroo와 bacterial GWAS

Roary('the pan genome pipeline)는 늘 쓰는 도구이고, 새로운 시도를 해 보고 싶어서 pan-genome-wide association study용 도구인 Scoary를 쓰기 위해 프로그램 설치를 하고 이러저러한 궁리를 해 보다가 Panaroo라는 이름의 소프트웨어를 접하였다. Sanger Institute에서 병원체 게놈 연구를 리드하던 Julian Parkhill이 저자 중 한 사람이니 믿고 봐야 할 논문이 되겠다.

Producing polished prokaryotic pangenomes with the Panaroo pipeline. Genome Biology (2020) 21:180 https://doi.org/10.1186/s13059-020-02090-4

출처: https://github.com/gtonkinhill/panaroo Panaroo는 캥거루를 닮은 상상의 동물?
  
Pan genome을 구성하는 방법은 이론적으로는 비교적 단순하지만 실제 생활에서는 그렇지 않다. Ortholog clustering이라는 것은 결국 유전자 예측의 정확성에 크게 의존하는데, genome assembly의 완성도라든가 오염 여부, gene family 등의 상황이 이를 까다롭게 만들기 때문이다. 논문에서는 'error introduced during the annotation of prokaroytic genome assemblies'라고 하였지만 더욱 근본적인 이유는 상위 단계인 genome assembly의 불완전성에서 오는 것이라고 보는 것이 맞다. PacBio와 ONT 기법이 널리 쓰이면서 세균의 complete genome sequence를 아주 쉽게 얻을 수 있는 세상이 되었지만 세부적으로 들여다보면 그렇게 정확하지만도 않다.

Panaroo의 기존 작동 모드는 conservative이다. contamination과 error에 의한 영향을 줄이는 실행 모드라 한다. 만약 매우 드문 plasmid 유래 서열을 다루어야 한다면, 이것이 contamination으로 오인되어 분석 대상에서 제외되는 것을 방지하기 위해 sensitive mode로 실행할 것을 권장한다.

실행 방식과 출력물의 이름은 Roary의 것을 많이 닮았다. Roary가 등장하기 이전에도 ortholog clustering 용도의 소프트웨어는 적지 않게 있었다. 그러나 Bacterial pan genome analysis의 대중화에 Roary가 매우 큰 역할을 했음을 누구나 인정할 것이다. 서두에서 소개한 Scoary 역시 Roary와 이름이 비슷함을 물론, Roary의 입력 파일을 그대로 이용한다.

Panaroo의 결과물은 pangenome association analysis용 도구인 Pyseer의 입력물로도 쓸 수 있다고 한다. Pyseer가 발표된 Bioinformatics 2018년도 논문에서는 Scoary(Genome Biology 2016)를 전혀 언급하지 않았다. 미처 몰랐을 것 같지는 않고, 경쟁 관계에 있는 그룹이라 의도적으로 인용하지 않은 것이라는 내멋대로의 상상을 해 보았다. Scoary에서는 accessory gene을 주요 대상으로 하였다는 점에서 Pyseer는 이를 자기네가 만든 도구와 동등하지 않다고 여긴 것 같다. 하지만 Scoary의 최신 버전에서는 VCF를 입력물로 사용함으로써 SNP도 고려하게 되었다.

나의 상상이 사실에 기반한 것일까? Pyseer는 k-mer 기반의 GWAS 소프트웨어인 SEER(Nature Communications 2016 링크)을 python으로 구현한 것이니 같은 연도에 논문이 나온 Scoary의 존재를 미처 알지 못했을 것 같다. 따라서 나의 상상은 억측이었다. SEER는 sequence element enrichment analysis를 의미한다.

Genome sample은 제한되어 있는데 갑자기 사용해야 할 소프트웨어의 후보가 많아지고 많았다. 본격적인 분석을 하기 전에 pyseer의 제1 및 교신 저자인 John A. Lees가 소개한 bacterial GWAS 입문용 자료인 'The background of bacterial GWAS(figshare 링크)'를 읽어보자.

2020년 11월 17일 화요일

세균을 위한 최적의 SNP calling 방법

몇 메가염기쌍도 되지 않는 세균의 유전체 시퀀싱 데이터를 다루는 것은 흔히들 '간단한 일'로 인식하기 쉽다. 썩 틀린 말은 아니다. 그러나 여러 isolate의 변이체 분석을 하는 것은 인간 게놈을 다루는 것보다 더 까다로운 측면이 있다. 연구 대상 종에 따라 적용되는 biology가 전부 다르고, 같은 종에 속하는 isolate만을 다룬다 해도 최적의 reference genome을 선정하는 문제도 쉽게 풀리지는 않기 때문에 체계적인 벤치마킹은 인간 변이체에 대한 것보다도 그 사례가 더 적다고 보는 것이 맞을 것이다.

나는 습관적으로 CLC Genomics Workbench를 쓰고 있지만 이러저러한 사정으로 2018년에 마지막 업데이트를 하였다. 벤치마킹 사례에서 상용 소프트웨어에 대한 성능은 잘 다루어지지 않는다. 

Sequencing read로부터 phylogenetic analysis에 쓸 수 있는 alignment(core or SNP) 자료를 뽑고자 종종 snippy를 사용한다. Prokka, abricate, abricate 등 정말로 쓸만한 소프트웨어를 만들어 내는 Torsten Seemann(GitHub)을 존경한다!

그때 그때 기분에 따라서 snippy나 harvest suite를 쓰다가, 좀 더 새로운 시도를 해 보자는 마음을 먹었다. 이 부류의 종합 프로그램으로는 비교적 역사가 오래 된 NASP(Northern Arizona SNP Pipeline)이나, 아주 최근에 나온 PhaME 등을 검토하다가 일본 연구자들이 개발한 BactSNP라는 것을 만나게 되었다.

Evaluation of SNP calling methods for closely related bacterial isolate and a novel high-accuracy pipeline: BactSNP. Microbial Genomics 2019:5 [PubMed]

지금은 없어졌지만, 전주 영화의 거리에 [맛집 찾다가 내가 차린 집] 혹은 이와 비슷한 이름의 식당이 있었다. BactSNP가 개발된 배경도 그러하다. 기존의 도구로는 outbreak의 조사처럼 매우 가깝게 연관된 isolate를 비교할 때 false-positive SNP가 많이 나오는 것을 극복하기 어려워서 아예 파이프라인을 새로 만들었다는 것이다.

이 소프트웨어는 Platanus(PLATform for Assembling NUcleotide Sequence - 어떻게 여기에서 Platanus라는 acronym을 생각해 냈을까!) assembler를 개발한 팀에서 만든 것 같다. Platanus assembler 웹사이트에 BactSNP가 같이 소개되어 있기 때문이다. 중국의 SOAPdenovo, 러시아의 SPAdes, 홍콩(이제는 중국이구나!)의 idba, 일본과 중국의 합작품인 MEGAHIT... 이런 유명한 소프트웨어와  BactSNP가 어깨를 나란히 한다고 생각하니 문득 우리나라에서는 곧바로 떠오르는 생명정보학의 killer app이 없다는 현실이 서글프게 느껴졌다. 

내가 과문해서 그런가... 그렇다면 다행이고.

BactSNP에 관심을 갖는 것은 실행 명령어가 너무나 단순하기 때문이었다. 일루미나 read만을 사용한다면 snippy-multi에서 정의한 input.tab 파일을 그냥 써도 된다. 아시아서 만들어진 프로그램이 보통 그렇듯이 사용 설명은 그렇게 친절하지 않다.

SRA에서 다운로드한 raw data 몇 개를 넣고 테스트 러닝을 시작하였다. read의 트리밍을 하는가 싶더니 조립을 한다! 왜지? 처음부터 매핑을 하지 않고 조립이라니? BactSNP의 세부적인 방법은 Supplementary Material에 설명이 되어 있다. Simulated dataset의 생성과 다른 소프트웨어의 비교를 위한 명령행까지 아주 친절하게 잘 수록해 놓아서 공부하기에는 아주 좋다. GitHub 사이트의 다소 부실한(?) 설명이 이것으로 보상이 된다.

Supplementary Material의 설명에 의하면 각 샘플의 read를 조립(platanus 이용)하여 contig를 생성한 다음, nucmer를 사용하여 이를 reference 위에 1-to-1으로 위치시킨 뒤 pseudogenome을 만든다. 다음의 그림을 참조하면 pseudogenome이 어떻게 만들어지는지를 쉽게 이해할 수 있다. Reference의 coordinate를 뼈대로 하되 실제 염기서열은 sample read에서 조립된 contig인 것이 pseudogenome이다. Reference와 contig는 서로 차이가 나는 곳이 존재하므로, 세부적으로 고려할 곳이 생긴다. 예를 들어 reference 서열에 대한 insertion은 무시되고, Contig가 cover하지 않는 곳은 '-'으로 치환된다. Contig가 reference와 대하여 잘 align하다가 어느 위치부터 맞지 않게 된다면(contig 특이적인 insertion이 아닌 경우)? 그런 복잡한 사항은 supplementary material을 잘 읽어보라.


이어서 BWA-MEM으로 reference에 대한 read mapping을 실시한다. PCR 과정에서 만들어진 duplicated read는 MarkDuplicates로 제거하고, 신뢰하기 어려운 allele은 pseudogenome에서 가려진다. 결정된 SNP 정보는 snps_w_ref.tsv와 snps_wo_ref.tsv라는 tab-delimited file에 기록된다. w_ref와 wo_ref는 각각 reference 서열을 포함하거나('w' for with) 포함하지 않음('wo' for without)을 의미한다. 파이프라인 초기 단계에 작성된 pseudogenome에서 ambiguous base로 남아있던 위치는 snps_wo_ref.tsv에서 결정된 SNP로 대체된다. replaced의 의미는 바로 이것이었다. 계통발생학적 분석(예: gubbins와 tree inference 등)은 바로 이 replaced_pseudo_genomes_wo_ref.fa를 이용하면 된다. 

Method 페이퍼라서 그런지 전체 방법에 대한 간략한 설명과 결과만 본문에서 강조하고 상세한 설명은 전부 별도의 파일로 돌려 놓은 것이 아쉽다. 왜 요즘 논문은 인쇄한 몇 페이지의 본문을 읽는 것으로 해결이 되지 않을 정도로 점점 대형화하는지.. 저자도 많아지고 공동 주저자도 많아지고...


2020년 11월 15일 일요일

[독서 기록] - ≪다산의 마지막 습관≫

코로나 시대의 세계 동향과 재테크 관련 서적이 신간 코너를 가득 채우고 있는 가운데 함초롬히 놓인 책 ≪다산의 마지막 습관≫(조윤제 지음)을 선택하였다. 사실 따지고 보면 이 책도 벽면 서가에서 앞 표지가 드러나게 하여 두 칸을 차지할 만큼 진열되어 있었으니 판매처 입장에서는 잠정적인 구매자의 눈에 뜨이도록 상당히 신경을 쓴 것이라 할 수 있다. 그리고 그 마케팅 전략은 나에게는 먹혀 들어간 셈이다.

24쪽에서 ≪소학(小學)≫이 어떤 책인지를 다음과 같이 소개하였다.

소학은 남송 시기 사람인 주자와 그의 제자 유청지가 함께 만든 책이다. 주자는 우리가 잘 아는 성리학을 집대성했던 대학자다... 소학은 그가 쉰이 넘은 나이에 펴낸 아동교육서의 완결판이라고 할 수 있다. 주자는 논어, 맹자, 예기 등 백여 권의 고전에서 아이들에게 꼭 필요한 내용을 추려낸 다음 교육, 인간의 길, 수양, 고대의 도, 아름다운 말, 선행의 여섯 편으로 묶었다

말하자면 '어른의 학문'인 ≪대학(大學)≫에서 가르치는 '수신제가치국평천하(修身齊家治國平天下)'의 근본이 되는 것을 '어린이의 학문'인 소학에서 익혀야 한다는 뜻이다. 그런데 조선의 대학자 다산에게 갑자기 소학이라니? 한때 임금의 총애를 받으며 요직을 두루 거치던 그였지만, 신유박해와 더불어 그의 집안은 풍비박산이 되고 그는 강진에서 18년 간의 유배 생활을 하게 된다. 그의 마음이 어떠했을까?

나는 잘못 간직했다가 나를 잃은 자다. 어렸을 때 과거가 좋게 보여서 과거 공부에 빠져 지낸 세월이 10년이었다. 마침내 처지가 바뀌어 조정에 나아가 검은 사모에 비단 도포를 입고 미친 듯이 큰길을 뛰어다닌 세월이 12년이었다. 또 처지가 바뀌어 한강을 건너고 조령을 넘어, 친척과 분묘를 버리고 곧바로 아득한 바다의 대나무 숲에 달려와서야 멈추게 되었다. 이때는 나도 땀이 흐르고 두려워 숨도 제대로 쉬지 못하면서, 나의 발꿈치를 따라 함께 이곳에 오게 되었다. 나는  나에게 이르기를, '자네는 무엇 때문에 여기에 왔는가? 여우나 도깨비에 끌려서 온 것인가? 아니면 해신이 부른 것인가? 자네의 가정과 고향이 모두 조천에 있는데, 어찌 본고장으로 돌아가지 않는가? 물었다. 끝끝내 나라는 것은 멍한 채로 움직이지 않으며 돌아갈 줄을 몰랐다. 그 얼굴빛을 보니 얽매인 곳이 있어서 돌아가고자 하나 가자 못하는 듯했다. 마침내 붙잡아서 함께 이곳에 머물렀다.(23쪽)

그는 유배지에서 철저히 '나를 찾'기 위해 노력하였고, 그 힘이 된 것이 바로 소학에 담긴 '수신(修身)'이었던 것이다.

그런데 말이다.

이 책은 내가 평소에 유학에 대해 갖고 있었던 비판적인 자세에 더욱 불을 당기는 꼴이 되고 말았다. 저자가 내세우는 주장이 억지스럽다거나, 앞뒤가 맞지 않는다는 뜻은 아니다. 전쟁 상황은 아니지만 새로운 감염병의 창궐로 인해 기존 질서가 철저히 붕괴되고 있는 지금,  ≪소학≫과 ≪수신≫이라니? 이제 갓 천자문을 익힌 어린 아이들에게 가르치는 소학이란, 성리학적 지배 이념을 뼛속 깊숙하게 새겨 넣는다는 첫 작업이라는 생각밖에 들지 않는다. 

유학 또는 성리학에 대한 나의 지식은 지극히 단편적이고, 그에 대한 비판 의식 역시 아직은 낮은 수준에 머물러 있다. 아직은 공부가 부족함은 부정할 수 없다. 그러나 유학적 세계관은 인(仁)과 예(禮)를 올바른 길로 강조하며 그 질서에 순응하는 사람을 길러내기에 급급했던 것은 아닐까? 어지럽고 늘 뒤바뀌는 세상을 주도할 수 있는 변혁적인 인재상과는 거리가 멀다고 느껴진다.

책은 일주일 전에 다 읽었지만 이제 기록을 남기게 된 것은 유학과 관련한 나의 고민을 좀 더 다듬고 필요한 자료를 찾아보느라 시간이 걸렸기 때문이다. 아직 이를 글로 쓸 만큼 정리가 되지는 않았다. 오늘 쓰는 글은 앞으로 이런 주제에 관심을 갖고 공부를 하겠노라는 선언적인 의미가 크다. 앞으로 조윤민의 책을 몇 권 읽어야 되겠다.

“백성 피땀으로 지은 宮… 권력 유지 위한 통치수단” [차 한잔 나누며]

YES24 조윤민 대표작  ≪두 얼굴의 조선사≫는 이미 읽었다(링크).


2020년 11월 11일 수요일

LMT1876 앰프 새로 꾸미기

문구점 또는 다이소와 같은 생활용품점에서 적당한 플라스틱 수납함을 구입하여 앰프를 꾸미는 일은 며칠 소일거리로는 매우 적당하다. 재질이 단단하지 않아서 가공이 매우 쉽고, 규칙적으로 구멍이 뚫려 있는 경우가 많아서 볼륨 포텐셔미터나 단자, 전원 스위치와 같은 부품을 고정하기 위해서는 있는 구멍을 조금 더 넓히고 칼로 다듬는 것으로 쉽게 마무리가 된다.


그러나 이러한 공작 작업에는 결정적인 단점이 하나 있으니, 그것은 바로 '수고는 했지만 어디까지나 임시방편으로 만든 것이다'라는 생각에서 벗어나기가 참으로 어렵다는 것이다. 뚜껑이 없어서 먼지가 쌓이기 쉽고, 절연 처리를 했지만 220V 전선이 그대로 노출된 모습을 보면 언젠가 제대로 된 케이스를 씌워야 한다는 강박감에 시달리게 된다. 나무판(도마가 이런 용도로 쓰기에 적당함) 위에 부품을 대충 고정하여 만든 프로토타입에 비하면 완성도가 높지만 말이다.

이번에 꾸민 앰프는 완전히 새로 만든 것은 아니다. 전에는 나무 쟁반에 고정했던 전원 트랜스포머와 LM1875 앰플 보드를 떼어내고, 여기에 OP amp를 사용한 프리앰프 보드를 연결하였다. 작지만 프리부와 파워앰프부가 별도로 구성된 알찬 앰프라고나 할까?


위 사진에서는 두 개의 보드를 필요한 때에는 개별적으로 쓰기 위한 꼼수가 담겨 있다. 파란 LED가 환하게 빛나는 아래의 보드가 프리앰프, 위쪽이 파워앰프 보드이다. 오른편에 있는 RCA 단자에서 입력 신호가 프리앰프로 들어간다. 배선이 워낙 짧아서 스테레오 실드 케이블을 쓰지 않은 곳이 몇 군데 보인다. 프리앰프의 출력은 세 개의 적/흑/백 단선을 통해 위쪽의 파워앰프 입력으로 들어간다. 이 세 가닥의 연결선을 잘 보면 프리앰프 커넥터쪽에서 스테레오 실드 케이블을 연결한 것이 보일 것이다. 이것은 앰프 오른쪽의 RCA 단자로 연결된다.

이 두번째의 RCA 단자는 프리앰프의 출력을 외부 파워앰프로 보내기 위한 용도로 쓸 수도 있고, 외부의 소스기기를 내부 파워앰프로 직접 보내기 위한 용도로 쓸 수도 있다. 만약 이 기기의 프리앰프 기능만을 쓰고자 한다면, 스피커 연결을 해제한 다음 내장 파워앰프의 자체 볼륨 폿을 최소로 줄이면 된다.

이번에는 프리앰프를 쓰지 않고 내장 파워앰프에 신호를 직접 넣는 경우를 가정해 보자. 별도의 절환 스위치를 달지 않았으니 외부 신호가 프리앰프의 출력단에도 전달될 것이다. 이것이 프리부에 안 좋은 영향을 줄까? 혹은 내장 파워앰프로 들어가는 입력 신호를 왜곡할까? 별로 그럴 것 같지는 않다. 프리앰프부의 전원을 아예 끊으면 더욱 안전할까? 그건 나도 잘 모르겠다. 내가 택한 연결 방식이 100% 정석인 것은 아니겠지만, 부품 수를 줄여서 앰프의 구성을 간단히 만든다는 측면에서는 별로 문제가 될 것이 없다. 최악의 상황이 벌어진다 해도 앰프를 망가뜨린 것에 대한 경제적 부담은 크지 않으니까 말이다.

반대로 이 기기의 프리앰프만을 쓰는 경우에는 놀고 있는 파워앰프에 전혀 부담을 주지 않을 것이라고 확신할 수 있다.

+/- 12VAC의 전원 트랜스포머를 쓰는 상황이라서 파워부의 출력은 그렇게 높지 않다. LM1876 칩이 채널당 최대 20와트의 출력을 뽑을 수 있다고는 해도, 그러려면 전원 전압도 더욱 높아야 하고 게인 조정을 위한 저항의 선택도 달라야 한다.

프리앰프의 게인은 1이 조금 안되는 것 같다. 왜냐하면 프리앰프 없이 소스 기기를 파워부에 직결하면 소리가 조금 더 커지기 때문이다. 이 기기에서 프리앰프는 신호의 증폭이 아니라 음량 조절 및 출력 임피던스 고정의 역할을 한다고 보아야 한다. 

잡음은 없다고 보아도 되고, 소리 성향은 진공관 앰프에 비하여 건조하고 차갑다는 느낌이 든다. 그렇다고 하여 음악적 만족감이 현저히 떨어지는 것은 아니다.

이것으로 2020년 오디오 자작의 여정을 마치게 될까? 전혀 알 수 없다.

2020년 11월 10일 화요일

에스티로더의 인종차별과 관련한 최근 논란에 대한 나의 생각

온라인 매장에서 화장품을 주문했더니 판매처 측에서는 동양인에게는 지나치게 밝아서 어울리지 않는, 호불호가 분명한 제품이라며 임의로 좀 더 짙은 색깔의 것으로 바꾸어서 물건을 보냈고 이를 설명하기 위해 넣은 쪽지에 적힌 문구가 인종차별 논란을 낳았다고 한다. 이 사건에 대해 에스티로더는 고객에게 공식 사과하는 것으로 끝을 맺었다.

[경향신문] 에스티로더 "동양인에 안 어울린다" 화장품 색상 임의배송했다 '공식 사과'

직접 매장에서 물건을 보면서 구입을 결정했다면 큰 문제가 없이 지나갔을 일이다. 판매처에서는 나름대로 경험에 의거하여 결정을 내린 것인데 그 과정이 너무 일방적이었고, 인종차별적인 표현이 있어서 논란이 되었던 것 같다.

내 생각은 조금 다르다. 분명히 판매처의 행동은 바람직하지는 않다. 그런데 이 사건에 대하여 공감하는 사람들의 마음은 혹시 이런 것은 아니었을까? 

한국인의 피부도 백인만큼 충분히 흰 사람이 있다. 그런데 왜 피부색이 어두운 '인종' 취급을 하는가? (우리는 그들과 다르다...)

피부색을 가지고서 백인의 위치를 가장 바람직한 것으로 기정사실화하고, 그 기준에서 우리 한국인은 바람직한 위치에 충분히 가까우니 그 기준에 못 미치는 사람(피부 색깔이 어두운 사람)으로 감히 취급하지 말라는 경고의 의미가 강하다고 느껴진다. 그 경고는 또다른 차별을 부른다.

제품을 임의로 바꾸어 보내는 이유를 설명하는 쪽지를 아예 준비해 놓은 것을 보면 많은 사람들이 그 제품을 처음에 선택하여 구입했다가 잘 맞지 않는다 생각하고 반품을 많이 한 것으로 보인다. 아마 매장에서는 이런 일을 하도 많이 경험하여 반품 혹은 교환을 처리하느라 시달린다는 느낌을 받았을 것이고 나름대로 능률적으로 일을 하는 방법을 고안했을 것이다.

제품을 임의로 바꾸어서 보내기 전에 전화 통화라도 시도해서 설명을 했더라면 더욱 좋지 않았을까? 바빠서 일일이 고객에게 전화를 할 겨를도 없었다고 한다면 할 말은 없지만.

넷플릭스 드라마 『에밀리, 파리에 가다』를 보면서 한국이라면 충분히 성희롱(심각하게는 성추행 혹은 그 이상?)으로 여겨질 상황이 아주 자연스럽게 연출되는 것을 보고 잠시 가치관에 혼란이 일었다. 드라마라서 과장된 상황을 만든 것인지, 혹은 사랑이 넘치는 나라 프랑스에서는 충분히 용인되는 것인지? 정치적으로 올바름을 추구하는 미국인들을 비꼬는 듯한 프랑스 사람들의 태도가 오히려 신선하게 느껴졌다.

불편을 이야기하는 것과 차별당하고 있다고 느끼고 이를 사회운동화하는 것 사이에는 많은 거리가 있다. 자신이 옳다고 믿는 것을 주장하는 것은 정당하다. 그러나 공론화에는 신중함이 필요하다.


2020년 11월 5일 목요일

이것이 진공관 전력증폭회로의 그리드 전압이다!

오실로스코프의 스크린이 수명을 다 해서 알아보기가 지극히 어렵다. 사진으로 찍은 화면을 여기에 올리는 것이 부끄러울 지경이다.

진공관 회로 공부에서 첫 번째 만나는 장벽은 자기 바이어스 회로를 이해하는 것이다. 캐소드에 대하여 그리드는 더 낮은 전압을 갖게 만들어야 한다. 캐소드와 그라운드 사이에는 상시 전류가 흐르지만, 그라운드와 그리드 리크 저항을 통해 연결된 그리드는 그라운드와 거의 같은 전압을 갖는다. 따라서 캐소드 저항 양단의 전압 강하에 해당하는 전압이 마이너스로 걸리게 된다. 여기에 입력 신호가 더해지면 위의 사진에서 보인 것처럼 음의 값을 기준으로 하여 요동치는 전압이 그리드에 걸린다. 

내가 만든 43 오극관은 10옴 저항을 부하로 연결했을 때 최대 3볼트 정도의 전압 피크치가 나온다. 계산으로는 0.45 W에 해당한다. 입력을 더 높이면 일그러짐이 발생한다. 이것이 출력 트랜스를 지나기 전에는 몇 볼트 범위에서 출렁이는 것일까? 트랜스포머의 임피던스비는 전압비의 제곱에 비례한다. 5K:8은 전압비로는 25:1이다. 따라서 출력 트랜스포머 2차측의 전압 3볼트는 트랜스포머 1차에서는 3 x 25 = 75 볼트에 해당한다. 이것이 플레이트 전압 약 125 볼트에 대해서 위 아래로 출렁이는 것이므로 대충 계산하면 50 ~ 200 볼트 범위에 해당한다. 

위에서 보인 그리드 전압의 변동 범위는 중간을 기준으로 위 아래로 약 2.5 볼트이다. 이것이 25 볼트로 바뀌는 것이므로 이 회로에서는 전압을 약 10배 증폭하는 셈이다.

생각해 보니 이 앰프가 그렇게 형편없을 정도로 출력이 낮은 것 같지는 않다. 지금까지 내가 한 계산이 정말 올바른 것인지는 사실 자신은 없다.

이번에 알리익스프레스에서 구입한 물건은 OP amp를 두 개 사용한 프리앰프 보드로서 채 열흘이 걸리지 않아서 배송이 되었다.  볼륨 놉을 중간쯤 두었을 때 가장 잡음이 크고, 최대로 놓으면 오히려 깨끗하게 들리는 앰프가 있다. 이러한 앰프의 전단에 배치하여 볼륨 조절 용도로 사용하려는 것이다. LM1876 앰프 보드에 연결해 보니 잡음도 없고 매우 깨끗한 소리가 난다.


진공관 앰프를 만든다는 것은 잡음과의 싸움이요, 각종 사고(감전, 화상, 샤시 가공 중에 일어날 수 있는 자잘한 부상)와의 싸움이며, 편견과의 싸움이기도 하다. 진공관 앰프는 무작정 대단한 것이고 소리가 좋을 것이라는 편견, 진공관과 다른 반도체 소자를 섞어서 써서는 안된다는 편견, 케이블이 음질에 대단한 영향을 미친다는 주장 등. 주머니 사정이 넉넉하지 않은 나는 실용의 길을 걸으련다.



2020년 11월 4일 수요일

영화, 소셜 미디어, 그리고 성급하지 않은 관계 맺기

요즘 아내와 함께 넷플릭스에서 에밀리, 파리에 가다(Emily In Paris) 드라마의 시즌 1을 매우 흥미롭게 시청하고 있다. 특히 소셜 미디어를 통해 자기를 나타냄은 물론 마케팅에도 이를 적극적으로 활용하는 모습이 대단히 큰 비중을 차지한다. 시시때때로 '자극적'인 사진을 찍어서 간단한 해시태그와 함께 업로드함은 물론이요, 심지어 파리 시내에서 친구와 함께 노는 모습을 생중계하기도 한다. 숨을 쉬고 음식을 먹는 것과 다를 바가 없는 본능적이고도 즉각적인 행동이다. 10회까지를 다 본 뒤에 느낀 것은 젊은 남녀가 만나자마자 쉽게 사랑에 빠지는 일이 프랑스에서는 어쩌면 이렇게 흔한지 상당한 문화적 충격으로 다가왔다는 점이다. 정확히 말하자면 몸을 섞는 일이다!과연 저렇게까지 자신을 온라인으로 표현하는 것이 중요할까? 소셜 미디어가 마케팅 측면에서는 매우 중요한 도구이기는 하지만, 사진으로 남기기 위해 연출되고 만들어진 상황을 만드는 것이 일상 생활이 되어서는 곤란하다고 본다. 

어제 본 영화 84번가의 연인(84 Charing Cross Road, 번역된 제목은 원제와 너무나 다르다 - 넷플릭스 링크)에서 풍겨지는 2차대전 직후의 미국-영국 사회 모습과는 큰 대조를 이룬다. 대서양을 사이에 두고 미국의 가난한 작가 헬레인 헨프(안 반크로프트)와 영국의 고서적 전문점 매니저 프랭크 도엘(안소니 홉킨스)은 대서양을 오가는 편지를 통해 우정을 쌓는다. 미국에서는 구하기 어려운 영문학 책을 주문하기 위해 잡지 광고를 보고 런던의 고서점 Marks & Co에 편지를 보낸 것이 시작이었다. 84 Charing Cross Road은 이 서점이 위치한 주소다. 그들은 살아 생전에는 한 번도 만나지 못했고(작가는 런던을 가고 싶어 했으나 생활에 치여서 번번이 미루어진다), 전화 통화를 한 적도 없다. 전후 영국의 어려운 식량 사정을 알고 작가는 식료품을 사서 보내주고, 서점 직원들은 그것에 감동하여 서로 개인적인 편지와 선물을 주고받으며 20년 넘게 우정을 이어간다. 작가가 런던을 비로소 방문한 것은 프랭크가 급작스럽게 병으로 세상을 떠나고, 서점도 문을 닫은 다음이었다. 프랭크의 아내 노라(주디 덴치 - 007 시리즈에서 오랫동안 M을 연기한)는 프랭크 사후 헬레인에게 보낸 편지에서 편지를 너무나 즐거이 주고받는 두 사람에게서 질투를 느꼈었다고 실토하기도 하였다.

이 영화는 실제 사실에 기반한 것이다. 헬레인 헨프가 프랭크의 유족에게 양해를 얻어 두 사람 사이에 주고받은 편지를 엮어서 책으로 먼저 출판하였고, 1987년에 영화로 개봉되었다.

전후 1960년대에 이르기까지 대서양을 사이에 두고 편지를 주고 받으려면 얼마나 오랜 시간이 걸렸을까? 조금 전에 보낸 카카오톡 메시지에서 왜 '+1'이 없어지지를 않는지, 혹시 '읽씹'을 한 것이 아닌지, '좋아요' 반응이 왜 빨리 뜨지 않는지에 대해 우리는 너무 안달을 하고 있지 않은가?  

내가 남에게 어떻게 보이는지가 너무나 중요하고, 그것이 경제적 이득과 너무나 밀접한 관계를 맺는 요즘 사회에서 이러한 세태를 뭐라고 비판하기도 어렵다. 나도 구글+ 서비스가 종료된 것을 대단히 아쉽게 생각하고 있다. 사진과 함께 짧은 생각을 올릴 수 있는 소셜 미디어로서 누가 좋아요를 몇번 클릭했는지, 또는 누가 팔로우를 했는지 등에 대해 거의 신경을 쓰지 않아도 좋았기 때문이다.

자기 자신을 나타내고 지식을 전파하기 위한 도구로서 유튜브가 널리 활용되고 있다. 왜곡된 정보를 퍼뜨리기 위한 수단으로도 그만인데, 결국 종착점은 수익 창출, 그 이상도 이하도 아니다. 

유튜브에서 업무와 관련된 동영상을 찾아 보다가 투명한 판을 사이에 두고 판서를 하는 모습을 보았다. 강의자와 카메라 사이에 아마도 아크릴판을 놓은 것 같다. 그런데 카메라에 잡히는 영상에는 글씨가 좌우 뒤집힌 상태가 아니라 바른 모습으로 보인다. '어이쿠, 저 강의자가 글씨를 좌우로 뒤집어 쓰는 연습까지 했나?'라고 생각했다가, 판서는 정상적으로 하되 촬영 후 편집 과정에서 영상의 좌우를 뒤집는 처리를 했을 것이라는 최종 판단을 내렸다. 대단히 현명하다.

CheckM for Genome Consistency(유튜브 링크)


2020년 11월 2일 월요일

앰프의 출력을 안다는 것이 무슨 의미가 있을까

스피커를 울리는 힘이 약간은 부족하다고 느껴왔던 43 오극관 싱글 앰프의 출력을 측정해 보기로 했다. 5와트 10옴 시멘트 저항을 스피커 단자에 연결하고, 입력에는 휴대폰을 연결하여 유튜브에서 1 kHz 사인파를 재생하였다. 휴대폰과 앰프의 볼륨은 전부 최대로 하였다. 출력트랜스의 임피던스와 일치하는 8옴 저항을 쓰는 것이 가장 좋겠지만, 마침 갖고 있는 것은 10옴이 전부였다. 그리고 8.2옴은 구할 수 있어도 단품 저항으로 8옴은 내가 알기로는 존재하지 않는다. 

저항을 연결한 스피커 단자에 오실로스코프의 프로브를 연결하여 측정을 시작하였다.


전압의 피크(VPK)값은 3극관 접속에서 0.4V, 울트라리니어 접속에서 2V가 나왔다. 전력(power)의 공식은 전압 곱하기 전류인데, 전류는 직접 측정하기가 불편하니 전압 나누기 저항이 전류라는 옴의 법칙을 적용하여 식믈 바꾸면 전력 = [전압2/저항]이 된다. 그런데 이 공식은 직류 또는 실효치(VRMS)로 전환한 값에 해당한다. 따라서 측정한 피크치 전압을 실효치로 바꾸어 공식에 대입해야 한다. 그러려면 피크값을 2의 제곱근(1.414)으로 나누거나 0.707을 곱해야 한다. 결과적으로 전력 = [피크전압2/(2*저항)]이 된다. 이해를 돕기 위한 아래 그림은 gnuplot에서 그린 것이다. 

계산을 해 보자. 생각한 것보다 무척 작은 값이 나왔다.
  • UL 접속: (0.4 * 0.4)/(2*10) = 0.008 W, 즉 8 mW!
  • 5극관 접속: (2 * 2)/(2*10) = 0.2 W
자, 이렇게 작은 소리로 듣고 있었단 말인가? 음악 감상시에는 소스와 앰프의 볼륨을 거의 최대로 한 UL 접속 상태로 듣지만, 5극관 접속 상태로는 좀처럼 전환하지 않았다. 사용하는 스피커(JBL FE-M2125 이전 글)의 공칭 임피던스가 6옴이므로 10옴 저항을 부하로 달아서 측정했을 때에 비한다면 훨씬 크게 느껴질 것이다. 

하지만 휴대폰을 소스로 연결해서는 1 와트의 출력을 즐기기가 힘들다는 계산이 나온다. 

두번째의 실험으로서 LM1876 앰프를 입력 단자에 연결하고 마찬가지로 사인파를 재생해 보았다. 출력단자에서는 3V(피크치)를 넘으면서 사인파의 한쪽에서 클리핑이 발생하였다. 계산으로는 0.45 와트에 해당한다. 이게 도대체 말이 되는 이야기인가? 10옴 부하 저항에 대하여 1 와트의 출력에 해당하는 증폭이 이루어졌다면, 4.47V(피크)가 측정되어야 한다. 내 앰프가 이렇게 출력이 작았었나? 그렇다면 1 와트의 출력이라는 것이 얼마나 스피커를 시끄럽게 울린다는 것인가?

일단 출력 트랜스와 출력관의 접속 절환 스위치가 제대로 연결된 것이 맞는지를 확인해 봐야 되겠다(확인 완료 후 본문 수정). 그러고 나서 측정 자체를 제대로 한 것인지, 회로를 개선하여 전원전압을 올리지 않고도 출력을 높이는 것이 가능한지를 궁리해 보자. 내가 이렇게 작은 출력으로 만족을 하면서 듣고 있었다면, 전원트랜스와 출력트랜스는 너무 여유가 크다는 뜻이 된다.

부하 저항으로 사용한 10옴 저항은 출력 트랜스의 2차 권선 임피던스(8옴)에 비하여 25%나 크다. 그러나 사인파 측정으로는 실제 낼 수 있는 것보다 적은 출력이 계산될 것이다. 부품통을 뒤지니 8.2옴 시멘트 저항이 몇 개 나왔다. 아래 사진은 91옴 저항 2개와 10옴 저항 하나를 병렬로 연결하여 만든 합성 저항이다. allaboutcircuits.com의 병렬 저항 계산기로 계산하면 이것도 8.2옴이 나온다.


43 오극관(데이터시트)을 이용하여 출력 1와트에 도전한다! 정말 소박한 목표가 아닐 수 없다.