2016.09.01

'자율주행, 머신러닝, 인공지능…' 이름에 낚이지 말아야 할 최신 기술

Paul Rubens | CIO
투명 망토라는 용어는 그 자체로 흥미를 불러일으킨다. 심지어 정말 존재하기까지 한다. 그러나 적어도 지금 상태에서는 사람들이 상상하는 환상적인 것과는 거리가 멀다.

일단 이 '투명 망토'는 군사 용도로 고안됐다. 일반적인 은폐 기술을 사용해서 차량의 적외선 패턴을 차량 뒤의 지형 패턴과 일치시키거나, 전파를 흡수 또는 굴절시켜 열 감지기와 레이더에 거의 탐지되지 않도록 하는 것이 가능하다고 한다. 매우 효과적인 기술이지만 해리 포터의 투명 망토 같은 것을 상상했다면 아마 실망할 것이다.

작년 10월 14일 테슬라가 오토파일럿(Autopilot) 소프트웨어를 모델 S와 모델 X 차량에 무선 업데이트로 제공하기로 결정한 이후 자율 운전 기술에 대한 대중의 관심도 폭발적으로 증가했다.

자율 운전이 가능한 자동차라고 하면 차 안에 누가 있든 없든, 자동차 소유자가 원하는 곳까지 차량 스스로 갈 수 있는 차가 연상된다. 이는 미국 고속도로 안전 위원회가 2013년에 정의한 다음과 같은 레벨 4 완전 자율 운전 자동화에 해당된다.

차량은 전체 이동 중에 모든 안전 운전 기능을 수행하고 도로 상황을 모니터링하도록 설계된다. 이러한 설계는 운전자로부터 목적지 또는 이동 경로에 대한 입력을 받을 수는 있지만, 이동 중 언제든 차량을 통제할 수 있는 운전자가 있다고 간주해서는 안 된다. 여기에는 유인 및 무인 차량이 모두 포함된다.

그러나 사실 테슬라의 오토파일럿과 같은 시스템은 이러한 형태의 자율 운전에 한참 미치지 못한다. 테슬라는 오토파일럿이 활성화된 상태에서도 운전자가 "계속 주시하며 상황을 인지할 것"은 물론 운전자가 "운전대에 계속 손을 올려놓고 있을 것"을 요구한다. 테슬라를 비롯해 BMW, 메르세데스를 포함한 자동차 브랜드가 제공하는 기술은 자율 운전이라기보다는 높은 수준의 운전자 지원 기술이라고 표현하는 편이 더 정확하다. 목적지까지 자동차가 알아서 운전하는 동안 뒷자리에 앉아 편히 쉬거나 책을 읽고 싶은 사람이라면 이 현실에도 마찬가지로 실망할 것이다.

이 두 가지 예는 CIO에게 중요한 메시지를 전한다. '새로운 기술은 비즈니스에 가치 있는 이점을 제공할 수 있지만 내가 기대하는 이점은 제공하지 못할 수 있다'는 메시지다.
최근 많은 주목을 받고 있는 새로운 기술, 인공 지능과 머신 러닝에 이 메시지를 적용해 살펴보자.

불편한 현실
공상 과학 소설의 AI는 컴퓨터와 센서 네트워크에 연결되어 방대한 양의 데이터를 처리할 수 있고, 언제든 마음만 먹으면 사람보다 한 수 앞서 생각한다. 그러나 현실의 AI는 단순하다. 비교적 정교한 인공 지능 소프트웨어도 존재하지만 일부 전문가들은 IT 부서에서 이러한 소프트웨어를 사용한다 해도 단기적으로 큰 효과를 발휘할 가능성은 높지 않다고 지적한다.

액센추어 테크놀로지(Accenture Technology)의 글로벌 기술 연구 개발 담당 이사인 마크 카렐 빌라드는 CIO와의 인터뷰에서 "AI는 ERP 시스템과 같은 또 다른 소프트웨어 조각"이라면서 "CIO가 사용할 수 있는 도구 중 하나가 될 것이며 IT 환경에 통합되고 레거시 환경에 연결되어야 한다"고 말했다.

인공 지능과 긴밀하게 연계된 분야, 머신러닝 역시 마찬가지다. 목표가 주어지면 그 목표를 달성하기 위한 최선의 방법을 스스로 찾아내는 시스템이라는 개념은 충격적이고 두려움을 주기까지 한다. 물론 곧이곧대로 들어서는 안 된다. 현재의 머신 러닝은 스스로 심사숙고한 끝에 문제에 대한 최선의 접근 방법을 제안(논문을 읽고 화이트보드에 쓰며 해결책을 찾는 학자와 같은 모습)하는 것이 아니라 수동식 시스템에 가깝다. 머신러닝은 수행을 통해 학습하는데, 개선을 위해서는 학습할 새로운 데이터를 계속 주입해 주어야 한다.

고도로 복잡한 게임인 바둑을 두도록 설계된 시스템, 알파고(AlphaGo)를 만든 구글의 딥마인드(DeepMind) 인공 지능 연구원들을 통해 이러한 머신 러닝의 대표적인 예를 볼 수 있다.

알파고는 바둑에 능하지만 실력을 높이기 위해서는 자신이 플레이하는 게임을 통해 어떤 전략이 효과적이고 효과적이지 않은지를 학습해야 한다. 또한 사람과 같은 피로함이 없으므로 이론적으로는 매일 수백만 번이라도 바둑을 둘 수 있다. 얼핏 매우 빠르게 실력이 향상될 것처럼 느껴진다. 그러나 여기에 한 가지 문제가 있다. 알파고의 학습은 알파고를 상대하는 사람이 둘 수 있는 바둑의 수에 의해 제한된다는 것이다.

비즈니스 환경에 적용해서 생각해 보면 머신 러닝 시스템의 업무 처리 능력은 향상될 수 있지만 이는 새로운 데이터가 끊임없이 생성되는 영역에 한정된 이야기다.

학습의 원리
5세 어린이도 언어를 배울 수 있는데, 컴퓨터 시스템이라면 3~4가지 언어를 학습하고 그 언어들을 상호 번역할 수 있지 않을까? 인류는 지난 40년 동안 컴퓨터에게 문법을 코드화해 가르치고 언어 번역을 위한 충분한 어휘를 제공하기 위해 시도했지만 성공하지 못했다.

결국 구글과 같은 기업은 통계적 번역 방법으로 불리는, 일종의 전수 탐색(brute force) 기계 번역 방식으로 노선을 바꿨다. 이 방식은 "병렬 말뭉치(parallel corpora)", 즉 한 언어에서 다른 언어로 이미 번역되어 있는 텍스트 덩어리를 활용한다. 시스템은 텍스트를 분석해서 한 언어의 구문과 다른 언어에서 해당 구문의 동시 발생을 찾고 이러한 동시 발생을 "구문 테이블"에 저장한다.

새 텍스트를 번역하게 되면 구문을 잘게 쪼갠 다음 이렇게 쪼갠 구문을 구문 테이블에서
조회하고, 가능한 선택안이 여러 개 있거나 단어의 나열 순서에 의문점이 있는 경우 통계를 사용해서 가장 올바르다고 판단되는 형태를 결정한다. 옥스포드 대학의 강사이자 기계 번역 연구원인 필 블런섬은 "기본적으로 최선의 해결책을 찾기 위한 가능성을 사용하는 번역"이라면서 "컴퓨터는 언어를 이해하지도, 문법을 알지도 못하지만 통계를 사용해서 'dog the'보다는 'the dog'이 맞을 가능성이 더 높다고 판단하는 것"이라고 말했다.

납득할 만한 번역을 얻기 위해서는 약 100만 개의 문장이 필요하지만 시스템은 번역 실력을 높일 수 있다. 단, 학습할 새로운 병렬 말뭉치가 계속 주입된다는 조건이 필요하다. 새로운 데이터가 없으면 머신 러닝도 없다.

경계의 메시지
기대에 미치지 못한다는 것의 의미는 여러 가지다. 가끔은 만든 사람이 의도한 것보다 훨씬 더 많은 것(때로는 전혀 다른 것)을 제공하는 경우를 의미하기도 한다.

오래된 기술이라고 해서 예외는 아니다.

구글에서 제로 데이 공격을 추적하는 프로젝트 제로 팀의 보안 연구원 타비스 오만디는 최근 보안 소프트웨어 업체 시만텍(Symantec)의 기업 및 소비자용 제품 상당수에 시만텍 소프트웨어를 실행하는 시스템을 공격에 매우 취약하게 만드는 보안 문제가 있음을 발견했다.

오만디는 블로그를 통해 "최악의 취약점이다. 아무런 사용자 상호 작용도 필요 없으며, 기본 구성에 영향을 미치고, 소프트웨어는 가능한 최고 수준의 권한으로 실행된다"고 설명했다.

시만텍은 현재 이 문제를 수정했지만 이 사건에서 생각해봐야 할 문제는 보안 소프트웨어에 심각한 취약점을 가진 업체는 시만텍 외에도 더 있을 것이 거의 확실하다는 점이다. 안티바이러스 소프트웨어는 일반적으로 컴퓨터의 운영 체제에 깊이 통합되므로 이러한 소프트웨어의 취약점은 심각한 결과를 초래할 수 있다.

안티바이러스 소프트웨어가 실질적으로 컴퓨터를 더 안전하게 해줄까? 오만디는 그다지 확신하지 않는다. 오만디는 "네트워크 관리자는 안티바이러스를 배포하기로 결정할 때 이와 같은 시나리오를 염두에 두어야 한다. 안티바이러스는 공격 표면을 더 늘린다는 측면에서 중요한 타협 요소"라고 말했다.

달리 말하자면 보안 소프트웨어는 보안 침해로부터 사용자를 보호할 수 있지만 보함 침해의 원인이 될 수도 있다는 것이다. 즉, 그 명칭(안티바이러스)이 주는 기대와 상이한 결과를 제공할 수도 있는 기술의 대표적인 예라고 할 수 있다.  

*Paul Rubens는 IT전문 저널리스트로 BBC, CIO닷컴 등에 칼럼을 기고하고 있다. editor@itworld.co.kr
 
2016.09.01

'자율주행, 머신러닝, 인공지능…' 이름에 낚이지 말아야 할 최신 기술

Paul Rubens | CIO
투명 망토라는 용어는 그 자체로 흥미를 불러일으킨다. 심지어 정말 존재하기까지 한다. 그러나 적어도 지금 상태에서는 사람들이 상상하는 환상적인 것과는 거리가 멀다.

일단 이 '투명 망토'는 군사 용도로 고안됐다. 일반적인 은폐 기술을 사용해서 차량의 적외선 패턴을 차량 뒤의 지형 패턴과 일치시키거나, 전파를 흡수 또는 굴절시켜 열 감지기와 레이더에 거의 탐지되지 않도록 하는 것이 가능하다고 한다. 매우 효과적인 기술이지만 해리 포터의 투명 망토 같은 것을 상상했다면 아마 실망할 것이다.

작년 10월 14일 테슬라가 오토파일럿(Autopilot) 소프트웨어를 모델 S와 모델 X 차량에 무선 업데이트로 제공하기로 결정한 이후 자율 운전 기술에 대한 대중의 관심도 폭발적으로 증가했다.

자율 운전이 가능한 자동차라고 하면 차 안에 누가 있든 없든, 자동차 소유자가 원하는 곳까지 차량 스스로 갈 수 있는 차가 연상된다. 이는 미국 고속도로 안전 위원회가 2013년에 정의한 다음과 같은 레벨 4 완전 자율 운전 자동화에 해당된다.

차량은 전체 이동 중에 모든 안전 운전 기능을 수행하고 도로 상황을 모니터링하도록 설계된다. 이러한 설계는 운전자로부터 목적지 또는 이동 경로에 대한 입력을 받을 수는 있지만, 이동 중 언제든 차량을 통제할 수 있는 운전자가 있다고 간주해서는 안 된다. 여기에는 유인 및 무인 차량이 모두 포함된다.

그러나 사실 테슬라의 오토파일럿과 같은 시스템은 이러한 형태의 자율 운전에 한참 미치지 못한다. 테슬라는 오토파일럿이 활성화된 상태에서도 운전자가 "계속 주시하며 상황을 인지할 것"은 물론 운전자가 "운전대에 계속 손을 올려놓고 있을 것"을 요구한다. 테슬라를 비롯해 BMW, 메르세데스를 포함한 자동차 브랜드가 제공하는 기술은 자율 운전이라기보다는 높은 수준의 운전자 지원 기술이라고 표현하는 편이 더 정확하다. 목적지까지 자동차가 알아서 운전하는 동안 뒷자리에 앉아 편히 쉬거나 책을 읽고 싶은 사람이라면 이 현실에도 마찬가지로 실망할 것이다.

이 두 가지 예는 CIO에게 중요한 메시지를 전한다. '새로운 기술은 비즈니스에 가치 있는 이점을 제공할 수 있지만 내가 기대하는 이점은 제공하지 못할 수 있다'는 메시지다.
최근 많은 주목을 받고 있는 새로운 기술, 인공 지능과 머신 러닝에 이 메시지를 적용해 살펴보자.

불편한 현실
공상 과학 소설의 AI는 컴퓨터와 센서 네트워크에 연결되어 방대한 양의 데이터를 처리할 수 있고, 언제든 마음만 먹으면 사람보다 한 수 앞서 생각한다. 그러나 현실의 AI는 단순하다. 비교적 정교한 인공 지능 소프트웨어도 존재하지만 일부 전문가들은 IT 부서에서 이러한 소프트웨어를 사용한다 해도 단기적으로 큰 효과를 발휘할 가능성은 높지 않다고 지적한다.

액센추어 테크놀로지(Accenture Technology)의 글로벌 기술 연구 개발 담당 이사인 마크 카렐 빌라드는 CIO와의 인터뷰에서 "AI는 ERP 시스템과 같은 또 다른 소프트웨어 조각"이라면서 "CIO가 사용할 수 있는 도구 중 하나가 될 것이며 IT 환경에 통합되고 레거시 환경에 연결되어야 한다"고 말했다.

인공 지능과 긴밀하게 연계된 분야, 머신러닝 역시 마찬가지다. 목표가 주어지면 그 목표를 달성하기 위한 최선의 방법을 스스로 찾아내는 시스템이라는 개념은 충격적이고 두려움을 주기까지 한다. 물론 곧이곧대로 들어서는 안 된다. 현재의 머신 러닝은 스스로 심사숙고한 끝에 문제에 대한 최선의 접근 방법을 제안(논문을 읽고 화이트보드에 쓰며 해결책을 찾는 학자와 같은 모습)하는 것이 아니라 수동식 시스템에 가깝다. 머신러닝은 수행을 통해 학습하는데, 개선을 위해서는 학습할 새로운 데이터를 계속 주입해 주어야 한다.

고도로 복잡한 게임인 바둑을 두도록 설계된 시스템, 알파고(AlphaGo)를 만든 구글의 딥마인드(DeepMind) 인공 지능 연구원들을 통해 이러한 머신 러닝의 대표적인 예를 볼 수 있다.

알파고는 바둑에 능하지만 실력을 높이기 위해서는 자신이 플레이하는 게임을 통해 어떤 전략이 효과적이고 효과적이지 않은지를 학습해야 한다. 또한 사람과 같은 피로함이 없으므로 이론적으로는 매일 수백만 번이라도 바둑을 둘 수 있다. 얼핏 매우 빠르게 실력이 향상될 것처럼 느껴진다. 그러나 여기에 한 가지 문제가 있다. 알파고의 학습은 알파고를 상대하는 사람이 둘 수 있는 바둑의 수에 의해 제한된다는 것이다.

비즈니스 환경에 적용해서 생각해 보면 머신 러닝 시스템의 업무 처리 능력은 향상될 수 있지만 이는 새로운 데이터가 끊임없이 생성되는 영역에 한정된 이야기다.

학습의 원리
5세 어린이도 언어를 배울 수 있는데, 컴퓨터 시스템이라면 3~4가지 언어를 학습하고 그 언어들을 상호 번역할 수 있지 않을까? 인류는 지난 40년 동안 컴퓨터에게 문법을 코드화해 가르치고 언어 번역을 위한 충분한 어휘를 제공하기 위해 시도했지만 성공하지 못했다.

결국 구글과 같은 기업은 통계적 번역 방법으로 불리는, 일종의 전수 탐색(brute force) 기계 번역 방식으로 노선을 바꿨다. 이 방식은 "병렬 말뭉치(parallel corpora)", 즉 한 언어에서 다른 언어로 이미 번역되어 있는 텍스트 덩어리를 활용한다. 시스템은 텍스트를 분석해서 한 언어의 구문과 다른 언어에서 해당 구문의 동시 발생을 찾고 이러한 동시 발생을 "구문 테이블"에 저장한다.

새 텍스트를 번역하게 되면 구문을 잘게 쪼갠 다음 이렇게 쪼갠 구문을 구문 테이블에서
조회하고, 가능한 선택안이 여러 개 있거나 단어의 나열 순서에 의문점이 있는 경우 통계를 사용해서 가장 올바르다고 판단되는 형태를 결정한다. 옥스포드 대학의 강사이자 기계 번역 연구원인 필 블런섬은 "기본적으로 최선의 해결책을 찾기 위한 가능성을 사용하는 번역"이라면서 "컴퓨터는 언어를 이해하지도, 문법을 알지도 못하지만 통계를 사용해서 'dog the'보다는 'the dog'이 맞을 가능성이 더 높다고 판단하는 것"이라고 말했다.

납득할 만한 번역을 얻기 위해서는 약 100만 개의 문장이 필요하지만 시스템은 번역 실력을 높일 수 있다. 단, 학습할 새로운 병렬 말뭉치가 계속 주입된다는 조건이 필요하다. 새로운 데이터가 없으면 머신 러닝도 없다.

경계의 메시지
기대에 미치지 못한다는 것의 의미는 여러 가지다. 가끔은 만든 사람이 의도한 것보다 훨씬 더 많은 것(때로는 전혀 다른 것)을 제공하는 경우를 의미하기도 한다.

오래된 기술이라고 해서 예외는 아니다.

구글에서 제로 데이 공격을 추적하는 프로젝트 제로 팀의 보안 연구원 타비스 오만디는 최근 보안 소프트웨어 업체 시만텍(Symantec)의 기업 및 소비자용 제품 상당수에 시만텍 소프트웨어를 실행하는 시스템을 공격에 매우 취약하게 만드는 보안 문제가 있음을 발견했다.

오만디는 블로그를 통해 "최악의 취약점이다. 아무런 사용자 상호 작용도 필요 없으며, 기본 구성에 영향을 미치고, 소프트웨어는 가능한 최고 수준의 권한으로 실행된다"고 설명했다.

시만텍은 현재 이 문제를 수정했지만 이 사건에서 생각해봐야 할 문제는 보안 소프트웨어에 심각한 취약점을 가진 업체는 시만텍 외에도 더 있을 것이 거의 확실하다는 점이다. 안티바이러스 소프트웨어는 일반적으로 컴퓨터의 운영 체제에 깊이 통합되므로 이러한 소프트웨어의 취약점은 심각한 결과를 초래할 수 있다.

안티바이러스 소프트웨어가 실질적으로 컴퓨터를 더 안전하게 해줄까? 오만디는 그다지 확신하지 않는다. 오만디는 "네트워크 관리자는 안티바이러스를 배포하기로 결정할 때 이와 같은 시나리오를 염두에 두어야 한다. 안티바이러스는 공격 표면을 더 늘린다는 측면에서 중요한 타협 요소"라고 말했다.

달리 말하자면 보안 소프트웨어는 보안 침해로부터 사용자를 보호할 수 있지만 보함 침해의 원인이 될 수도 있다는 것이다. 즉, 그 명칭(안티바이러스)이 주는 기대와 상이한 결과를 제공할 수도 있는 기술의 대표적인 예라고 할 수 있다.  

*Paul Rubens는 IT전문 저널리스트로 BBC, CIO닷컴 등에 칼럼을 기고하고 있다. editor@itworld.co.kr
 
X