Chris Choi's Blog

Archive for the ‘Tech’ Category

NVIDIA AI Conference 2018

with one comment

11월 7일, NVIDIA가 ‘NVIDIA AI Conference 2018’을 개최했습니다. NVIDIA는 작년 이맘 때 NVIDIA Deep Learning Day 2017‘이라는 타이틀로 국내에서 처음으로 컨퍼런스를 시작했습니다. 올 해는 3천명이 훌쩍 넘는 개발자들이 참석했습니다.

 

(제가 덧붙은 내용은 Italic으로 표시했습니다.)

 

[Link 1. ‘NVIDIA Deep Learning Day 2017’]

 

오전에는 두 개의 Keynote session, 오후에는 6개 트랙 (Deep Learning & AI, Autonomous Driving, HPC / Supercomputing 등) 47개 Tech session이 진행되었습니다.

 

[Video 1. ‘GTC 2018 – I AM AI’ 출처: NVIDIA Korea YouTube Channel]

 

NVIDIA Korea의 유응준 대표는 오프닝을 선언하면서, AI의 성공 조건 세 가지를 꼽았습니다. 많은 데이터, 데이터를 처리할 수 있는 정교한 Algorithm, 그리고 Algorithm을 실행할 수 있는 GPU Process입니다. 이제 세 가지가 충족되고 있으나, 개발하고 운영할 수 있는 엔지니어어가 부족하고, 지속적인 육성이 필요함을 강조했습니다.

 

마침 비슷한 시기에 Microsoft CEO Satya Nadella 방한했습니다. 그는데이터 확보 중요성을 강조했는데, 데이터가 확보되지 않으면 Algorithm 개발도, 가치 창출도 어려운 시대가 되었다는 것입니다. 생각해 보면 분석의 가치가 있는 대량 데이터를 확보하는 일부터가 결코 쉬운 일이 아닙니다.

 

Accelerated Platforms: The Future of Computing, Marc Hamilton, VP of Solutions Architecture & Engineering

Deep Learning 리서치가 증가하고 있습니다. ‘Tesla V100 Tensor Core’는 Deep Learning과 HPC High Performance Computing 을 위한 가장 강력한 GPU입니다. 5,120개의 CUDA Cores로 구성되어 있으며, Transistor는 211억 개에 달합니다.

Tesla T4 Tensor Core GPU는 CPU에 비해 Inference 성능이 최대 40배 높습니다. TensorRT 5는 Inference optimizer, Compiler 등을 제공하며, NVIDIA Docker 위에서 여러 Inference model을 번거로운 Deploy 없이 수행할 수 있습니다.

 

NVIDIA AI Conference 2018_Image 1.jpg

[Image 1]

 

Porsche 911이 70주년을 맞았습니다. 자동차의 디자인을 위해서는 먼저 컴퓨터 모델을 만들고, 색상과 앵글 등 속성을 바꿔 가면서 디자인을 수정합니다. 문제는 수정된 속성을 실시간으로 확인하기가 어렵다는 점입니다. NVIDIA는 실시간 ‘Ray Tracing’을 가능케 해 Simulation이 마치 영화의 한 장면처럼 구현될 수 있도록 했습니다.

 

[Video 2. ‘NVIDIA Turing Brings Real-Time Ray Tracing to Epic Games Unreal Engine’ 출처: NVIDA YouTube Channel]

 

최근 미국의 ORNL Oak Ridge National Laboratory 은 수퍼 컴퓨터를 만들었습니다. 한 Node 당 6개의Volta GPU를 넣어 총 27,648 GPU를 구성했습니다.

Data Science를 위해 ‘RAPIDS’를 활용할 수 있습니다. In-memory data structure인 Apache Arrow 위에 cuDF, cuML 등을 올려 데이터 분석에도 GPU의 속도를 십분 활용할 수 있도록 했습니다.

 

NVIDIA AI Conference 2018_Image 2.png

[Image 2. ‘Day in the Life of a Data Scientist’ 출처: ‘RAPIDS Accelerates Data Science End-to-End’, NVIDIA Developer Blog]

 

Deep Learning Searches Gravitational Waves, 국가수리과학연구소 오정근 박사

천문학에도 AI와 HPC 활용도가 높아지고 있습니다. 2015년 9월, 최초로 중력파 Gravitational Waves 가 감지되었습니다. 미국이 거대 간섭계를 설치하고, 우주 신호를 10년 간 받은 결과입니다. 블랙홀이 공전하며 중력파를 방출하다가 충돌해 하나의 중력파를 방출하게 됩니다. 블랙홀이 실제로 존재하는 증거가 되었으며, 쌍성으로도 존재함을 알게 되었습니다. 스스로 빛을 내지 않는 블랙홀이 중력파를 방출하지 않았다면 발견하지 못했을 것입니다.

별이 수축하면 별 전체의 구성 물질이 중성자인 중상자별을 만듭니다. 중성자별이 쌍성이 되어 충돌하면 중력파와 함께 빛도 방출됩니다. 주기율표 상 57번 이상의 무거운 원소들이 어떻게 생성되었는지 그 기원을 최근까지 알지 못했습니다. Kilonova를 분석해 보니 중성자 구성이 높았습니다. Kilonova와 GRB Gamma Ray Burst 가 별개 현상이 아닌 하나의 천체 현상임을 알게 되었습니다.

LIGO 분석은 전파 간섭, 지진 같은 환경 잡음으로부터 신호를 추출해 내는 것이 관건이었습니다. Classification으로 상관성을 분석해 진짜 신호 여부를 확인했습니다. ANN, Random Forest 등의 기법을 활용했습니다.

 

Deep Learning in Healthcare: Myths and Realities, 경희사이버대학교 정지훈 교수

Google의 ‘Diabetic Retinopathy Diagnosis’는 AI를 의학에 활용한 대표적 사례입니다. 우리가 생각하는 것보다 AI가 적용되는 Healthcare 도메인의 범위가 넓습니다. 즉, 다루는 문제도, 데이터도, 기술도 다르므로 다양성이 필요합니다. 유전자 데이터는 그래프를, 이미지는 CNN을, Diagnosis prediction은 RNN을 주로 활용할 수 있습니다.

‘HealthData.gov’ 등 공개 데이터가 많습니다.

 

NVIDIA AI Conference 2018_Image 3.png

[Image 3. 출처: HealthData.gov]

 

“Why 98% of Digital Health Startups Are Zombies And What They Can Do About It”

 

Forbes의 기사 제목처럼한 두 가지 기술로 모든 문제를 해결할 수 없습니다. 엔지니어들만으로 문제를 해결하고 의사들의 생각을 바꿔 놓기도 어렵습니다.

David Sontag 교수는 Healthcare가 다른 영역에 비해 어려운 점들을 다음과 같이 설명하고 있습니다.

 

  • Life or death decisions
  • Many questions are about unsupervised learning
  • Very little labeled data
  • Lots of missing data, varying time intervals, censored labels

Machine Learning for Healthcare: Introduction, David Sontag, Clinical Machine Learning Group, MIT

 

좋은 데이터를 고객에게 먼저 제공하면 고객은 활용 가능한 양질의 데이터를 주기 마련입니다. 그런 데이터가 모이면 리서치를 수행할 수 있습니다. 즉, 고객이 누구인지, 이해 당사자가 누구인지를 잘 알고 사업을 진행해야 합니다.

 

Evolution of Artificial Intelligence Robots and Social Change, 한양대학교 한재권 교수

최근 로봇 영역 논문 중 상당 수는 Machine Learning 활용을 다루고 있습니다. 초기 단계라 아직은 많은 연구와 노력을 필요로 합니다.

 

2016년에 한재권 교수님의 강연을 재미있게 들었던 적이 있었습니다. 이번 강연에서도 ‘DARPA Robotics Challenge’ 다루셔서 정리했던 글로 대신합니다.

 

[Link 2. ‘로봇이 변화시킬 세상을 말하다’]

 

실업 문제에 관해서는 새로운 일을 어떻게 제공하는가가 중요합니다. 노동자의 시각에서 이 문제를 바라봐야 합니다. 직업은 변화하고 있습니다. AI, 로봇과 경쟁이 아닌 협업을 해야 합니다.

 

NVIDIA Autonomous Driving Platform Update, NVIDIA 차정훈 상무

NVIDIA 자율 주행 기술인 ‘NVIDIA DRIVE’ Hardware, Software, Simulation으로 구성되어 있습니다. 각각 NVIDIA DRIVE AGX, NVIDIA DRIVE Software (DRIVE AV, DRIVE IX, DRIVE AR), NVIDIA Drive Constellation입니다.

 

NVIDIA의 자율 주행 플랫폼은 DRIVE AGX입니다. 핵심 칩인 Xavier는 자율 주행용 프로세서로, 90억개의 트랜지스터가 있습니다.

 

DRIVE Constellation은 두 가지 서버에서 수행됩니다. 하나는 DRIVE Sim software를 실행하게 되는데, 카메라, Lidar, Radar 같은 센서를 Simulation 합니다. 또 다른 하나는 Simulation 한 센서 데이터를 Input으로 받아 Processing 하는 역할을 수행합니다.

 

GTC

올 해는 좀 더 다양한 영역의 이야기들을 들을 수 있어서 매우 흥미로웠습니다. 이제는 NVIDIA, GPU, Deep Learning이 영역을 불문하고 그 쓰임을 확대해 나가는 것을 분명히 볼 수 있습니다. NVIDIA의 성장세는 이변이 없는 한 멈추지 않을 것 같습니다. 언젠가 기회가 된다면 GTC에 참석해 보고, NVIDIA 견학도 해 보고 싶다는 생각이 들 정도로 매력 있는 Conference였습니다.

Advertisements

Written by Chris Choi

November 8, 2018 at 7:20 pm

Posted in Tech

Tagged with ,

Machine Learning with TensorFlow

with one comment

Development Environment

Mac에서 TensorFlow 1.0.1, Python 3.7.0과 Anaconda를 사용했다. Anaconda는 Spyder 등의 Tool을 제공한다.

 

 

TensorFlow의 Version은 다음과 같이 확인할 수 있다.

—————————————————————————————————————————-

import tensorflow as tf

 

print (“TensorFlow Version: “, tf.__version__)

—————————————————————————————————————————-

TensorFlow Version:  1.0.1

—————————————————————————————————————————-

 

Python Basics

Python Version 2.X에서 Version 3.X의 함수들을 사용하기 위해서는 다음과 같이 선언한다.

—————————————————————————————————————————-

from __future__ import

—————————————————————————————————————————-

 

TensorFlow Basics

TensorFlow의 기본 문법은 다음과 같다.

—————————————————————————————————————————-

import tensorflow as tf  #1)

 

hello = tf.constant (“Hello, TensorFlow!”)  #2)

 

sess = tf.Session ()  #3)

print (sess.run (hello))  #4)

sess.close ()  #5)

—————————————————————————————————————————-

 

1) TensorFlow Library를 Import 한다.

2) 수행할 Node를 정의한다.

3) Session을 생성한다.

4) Node를 수행한다.

5) Session을 닫는다.

 

‘Hello, TensorFlow!’라는 문자열을 화면에 출력하는 ‘hello’는 하나의 Node이다. Node는 TensorFlow가 수행하는 동작이라고 보면 된다. Node와 Node 사이를 움직이는 데이터는 ‘Edge’ 혹은 ‘Tensor’라고 부른다.

‘with’를 사용하면 ‘with’를 나갈 때 알아서 Session을 닫아주므로 명시적으로 ‘close ()’를 선언하지 않아도 된다.

—————————————————————————————————————————-

# sess = tf.Session ()

# print (sess.run (hello))

# sess.close ()

with tf.Session () as sess:

print (sess.run(hello))

—————————————————————————————————————————-

 

연산을 수행할 수 있다.

—————————————————————————————————————————-

import tensorflow as tf

 

node1 = tf.constant (3.0, tf.float32)  #’constant’로 상수를 선언한다

node2 = tf.constant (4.0)  # 위 라인처럼 명시적으로 ‘float32’를 선언하지 않아도 된다.

node3 = tf.add (node1, node2)  # node3 = node1 + node2

 

sess = tf.Session ()

print (“node3: “, sess.run(node3))

sess.close ()

—————————————————————————————————————————-

 

Node 실행 전에 상수를 할당하는 대신, Node 실행 시 값을 입력할 수 있다. ‘placeholder’로 입력할 값을 미정인 상태로 두고, Node 실행 시 ‘feed_dict’를 Input으로 설정한다.

—————————————————————————————————————————-

import tensorflow as tf

 

a = tf.placeholder (tf.float32)  #a = tf.placeholder (tf.float32, shape=(None)

b = tf.placeholder (tf.float32)

adder_node = a + b  # tf.add (a, b)

sess = tf.Session ()

print (sess.run (adder_node, feed_dict = {a: 3, b: 4.5}))

print (sess.run (adder_node, feed_dict = {a: [1, 3], b: [2, 4]}))

sess.close ()

—————————————————————————————————————————-

 

Linear Regression

‘Linear Regression’은 Input x와 Output y의 값이 주어지는 경우, 두 조합을 학습 Training 해 다른 x 값에 대한 y 값을 예측 Inference 하는 것이다. 결과 값인 y가 Training data set 내의 ‘Label’로 주어진다는 점에서 Supervised Learning의 일종이다.

학습을 통해 가설 Hypothesis 을 세운다. W와 b의 값에 따라 다양한 선이 가능하다.

—————————————————————————————————————————-

H(x) = Wx + b

—————————————————————————————————————————-

 

가설 상의 값과 실제 값의 차이가 가장 작은 가설을 선택하게 된다. 이를 위해 ‘Cost Function’ 혹은 ‘Loss Function’을 구현한다. Cost Function은 W와 b의 값을 약간씩 바꿔 가면서 가설 상의 값과 실제 값의 차이를 제곱 하고, 그 값을 합한 후 평균을 계산한다.

—————————————————————————————————————————-

Cost (W, b) =

—————————————————————————————————————————-

 

차이를 제곱 하는 이유는 양수와 음수가 서로 상쇄하지 않도록 하기 위함이다. 제곱하면 값이 커지는 효과가 있으나, 차이가 소수일 경우 제곱 값이 오히려 작아지기도 한다.

Cost를 최소화 하기 위해 ‘GradientDescentOptimizer’를 사용한다. 경사를 따라 내려가면서 Cost를 최소화 하는 W를 계산한다.

 

Binary Classification

‘Binary Classification’은 ‘Logistic Regression’이라 불리기도 한다. ‘스팸 메일이 맞나요, 아닌가요?’, ‘Fraud가 맞나요, 아닌가요?’ 처럼 Yes/No를 판단하는 것이다.

 

Multinominal Classification

 

CNN

CNN Convolutional Neural Network 은 Image processing에 주로 사용된다. CNN은 Feature를 추출하는 Convolutional Layer와 분류를 수행하는 Neural Network로 구성된다. Convolutional Layer는 ‘Filter’ (‘Neuron’ 혹은 ‘Kernel’이라 부르기도 한다) 와 Activation Function으로 구성되는데, Filter는 행렬로서 특징이 데이터에 존재하는지 여부를 확인하는 역할을 한다. 연산이 가능하도록 Filter의 Depth는 Input의 Depth와 동일해야 한다. Input과 Filter는 Multiply 연산을 한다. 특징이 존재하지 않으면 결과는 0에 수렴하며, 특징이 뚜렷할수록 결과 값이 커진다. 여러 가지 특징을 확인하기 위해 복수 개의 Filter가 사용된다. Filter의 개수만큼 Activation Map (중간 Image) 가 생성된다.

Filter는 ‘Stride’ 값을 갖는데, Filter가 움직이는 간격의 크기다. Stride의 값이 크면 데이터 유실 가능성이 높아진다.

Filter 처리 시 데이터의 유실이 없도록 입력값 주위에 ‘0’을 두를 수 있는데, 이것이 ‘Padding’이다. 이를 통해 Overfitting을 방지할 수 있다.

—————————————————————————————————————————-

conv2d = tf.nn.conv2d (… padding = “SAME”)  #Padding 적용

conv2d = tf.nn.conv2d (… padding = “VALID”)  #Padding 미적용

—————————————————————————————————————————-

 

Activation Function은 ‘sigmoid’ 대신 ‘ReLu’를 사용한다.

Convolutional Layer를 거치면 ‘Feature Map’ (혹은 ‘Activation Map’) 이 생성된다.

‘Pooling’ (‘Subsampling’) 을 통해 크기가 작아진다. 주로 Max Pooling을 사용하며, 성능이 좋고 큰 값이 특성을 잘 설명해 준다. 평균값을 사용할 수도 있다.

Neural Network의 Softmax를 통해 Classification이 수행된다.

 

CIFAR-10

‘CIFAR-10’은 10개의 Category로 분류된 32X32의 이미지 6만 개를 학습하고 예측하는 것이다. 5만 개의 이미지는 Training에, 나머지 만 개의 이미지는 Evaluation에 사용된다.

 

ImageNet

AlexNet, GoogLeNet

 

TensorBoard

TensorBoard는 TensorFlow가 제공하는 Visualization tool이다.

 

References

Written by Chris Choi

July 21, 2018 at 12:54 pm

Everybody Lies

with one comment

맞다! 우리는 쉴 새 없이 거짓말을 한다. 어디에? Facebook에, Instagram에, Twitter에! 하지만 솔직한 말을 내뱉는 곳도 있다. 바로 Google Search다. 아내에게 하지 않는 말을 Google Search에는 한다. 거짓말 많은 데이터에 속아서는 안 된다.

 

[Image 1, 2]

Written by Chris Choi

July 17, 2018 at 12:16 pm

Posted in Tech

Tagged with

청소년 스마트폰 중독

leave a comment »

(내가 꼰대인지도 모르겠다. 성인도 마찬가지지만, 청소년 스마트폰 사용은 중독 수준에 이르렀다고 생각한다.)

 

청소년 스마트폰 중독은 원인도, 예방책도 짐작하기 어려울 정도다. 다만 한 가지 꼭 실행했으면 하는 일은, 초등학생들 과제를 카톡이나 밴드 등으로 수행하거나 공유하는 것을 금지하는 것이다. 그것 때문에 어쩔 수 없이 부모가 자녀에게 스마트폰을 사 줘야 하기 때문이다.

 

(시력 떨어져 가면서, 써가면서 스마트폰을 쓴다. 무엇이 효용인지 알면서 쓰면 그나마 다행이겠지만…)

Written by Chris Choi

June 2, 2018 at 4:46 pm

Posted in Tech

NVIDIA Deep Learning Day 2017

with 2 comments

올 해 놓쳐서 아쉬운 주식 종목들이 여럿 있었습니다. 대표적인 종목을 하나씩 꼽아 보자면 한국은 삼성전자, 미국은 NVIDIA입니다. 그 만큼 그 기업들은 거침 없이 성장한 한 해였습니다. 특히 Machine Learning, Deep Learning의 성장세의 중심에는  NVIDIA가 있다고 해도 과언이 아닙니다. NVIDIA의 소식에 항상 귀를 기울이고 있어야 할 이유입니다.

NVIDIA의 최신 동향을 공유하는 ‘NVIDIA Deep Learning Day 2017’에 천 명을 훌쩍 넘는 개발자들과 Tech 업계 종사자들이 모였습니다. NVIDIA가 큰 주목을 받고 있는 이유를 충분히 이해할 수 있었습니다.

 

NVIDIA Deep Learning Day_Image 1.jpg

[Image 1]

 

[Video 1. ‘GTC 2017: I Am AI Opening in Keynote’ 출처: NVIDIA YouTube Channel]

 

각국을 순회하며 개최하고 있는 GTC 2017 GPU Technology Conference 에 사용되고 있는 Intro 영상입니다. 다양한 영역에서 NVIDIA가 펼치고 있는 활약이 집약되어 있습니다. 이 영상을 보고 있으니 영화 “Transcendence”의 한 장면이 떠올랐습니다. 몇 년 전만 해도 우리가 미처 상상하지 못했던 일들이 실현되고 있는 듯한 느낌이 강하게 들었습니다. 마치 신세계 같았습니다.

인상 깊었던 Shanker Trivedi SVP와 장병탁 교수의 강연 내용을 전해 드립니다.

 

Keynote, Shanker Trivedi (SVP of Enterprise Business)

PC, Mobile, Cloud를 거쳐 이제 AI의 시대가 왔습니다. 한 사람 당 한 대의 PC, 한 사람 당 여러 대의 모바일 기기를 거쳐 이제는 수 천 억 개, 수 조 개의 디바이스가 AI를 활용하게 될 것입니다.

AI 급성장에는 두 가지 변화가 있습니다. Deep Learning 자체는 꽤 오래된 것입니다. 그러나 과거에 데이터가 충분하지 않고 Computing power가 부족해 Algorithm을 효과적으로 사용하지 못했습니다. 이제는 데이터 급증과 Computing power의 성장으로 인해 Algorithm을 본격적으로 사용할 수 있게 되었습니다.

‘무어의 법칙’은 2-3년마다 CPU 성능이 100% 증가한다는 것입니다. 그러나 최근 10년을 보면 성장율이 한 자리 수로 줄었습니다. 이제는 GPU가 성능을 극적으로 상승시키고 있습니다. 5~10년 후면 전통적 CPU Architecture보다 몇 천 배 성능이 좋아질 것입니다. GPU는 CPU의 가속화를 방해하기는 커녕, CPU가 주어진 일을 더 잘 하게 하는 역할을 합니다. 초기에 그래픽 처리에 한정되었던 GPU가 범용적 목적으로 사용을 확대해 가고 있습니다. GPU 개발자 수도 5년 전보다 15배 증가했습니다. NVIDIA는 개발자를 위한 GPU Platform인 CUDA를 제공하고 있으며, 그 영향력이 커지고 있습니다.

GPU Core는 수학을 잘 합니다. 대부분의 수퍼 컴퓨터들은 GPU를 사용하고 있습니다. 기술의 민주화를 위해 합리적 비용으로 대학들이 GPU를 사용할 수 있도록 하고 있으며, 과학적 발견 속도가 빨라지는 데 기여하고 있습니다. ‘Detection of gravitational waves’와 ‘Cryogenic Electron Microscopy’로 2017년 노벨 물리학상과 화학상을 수상한 분들도 NVIDIA의 고객입니다.

 

NVIDIA Deep Learning Day_Image 2.jpg

[Image 2]

 

몬트리올 대학의 컴퓨터 과학자들이 2012년 ImageNet Competiton에서 GPU와 Deep Learning을 사용해 85%의 정확도를 달성했습니다. 1년만에 10%를 개선한다는 것은 기적과 같은 일이었습니다. 그 후 ImageNet Competition에서는 예외 없이 GPU를 사용하고 있습니다. Deep Learning  관련 논문 수는 3년 새 열 배 증가했습니다. 이미지, 동영상, 사운드, 보이스, 텍스트, 지도 등 여러 가지 데이터를 Input으로 사용하고 있기 때문에, 기존과는 전혀 다른 문제 해결법을 사용하고 있습니다.

그렇다면 얼마나 더 큰 Computing을 필요로 할까요? 2012년 ImageNet Competition에 사용된 AlexNet에 비해 새로운 Inception-v4는 350배 더 큰 Computing power를 필요로 합니다. CPU만으로 처리할 수 없는 수준이기 때문에 GPU가 필요합니다. 신경망 처리는 GPU가 훨씬 효과적입니다.

Tensorflow, theano, Caffe2 등 다양한 Machine Learning Framework가 존재합니다. NVIDIA의 AI Platform인 NVIDIA Inception에 2천 개가 넘는 Startup이 참여하고 있습니다. AWS의 P3는 NVIDIA의 Volta를 사용합니다. GPU가 이제 Cloud를 통해 제공되는 것입니다. 더불어 NVIDIA GPU Cloud를 통해 Multiple CPU 상에서 Tensorflow를 사용하는 등의 작업이 더욱 쉬워질 것입니다.

많은 데이터를 Input으로 이용해 신경망 Training을 하면서 심화 신경망 모델이 나오며, Inference도 추출할 수 있습니다. 센서와 모바일 기기, 로봇, 무인자동차 급증으로 인한 Inferencing의 폭발적 증가가 예상됩니다. 하드웨어만으로는 수요를 해결할 수 없습니다. 실시간 Inferencing을 더욱 빠르게 하기 위해 TensorRT가 있습니다. Training 결과를 TensorRT에 넣으면 Inference graph를 최적화 해 줍니다. 그 Graph를 Target device에 전달합니다. 데이터 센터 서버로 확대하면 전력과 비용도 엄청 절감할 수 있습니다.

화물 트럭, 택시, 비행기도 자율 주행을 하고 있습니다. RADAR, RIDAR, Camera, HD Map 등이 DRIVE AV 위에서 작동합니다. DRIVE WORKS SDK를 제공해 자율 주행차를 스스로 만들 수 있도록 합니다. 내년 초 공급 예정인 PEGASUS는 자동차 번호판 크기로, Level 5 주행 차량 협업에 활용될 것입니다.

 

[Video 2. ‘NVIDIA DRIVE Autonomous Vehicle Platform’ 출처: NVIDIA YouTube Channel]

 

Powering AI Robots with Deep Learning, 서울대학교 장병탁 교수

 

AlphaGo는 아직 반쪽인 AI입니다. 몸이 없는 마음은 반쪽입니다. ‘Embodied Mind’를 갖출 때 온전한 AI가 될 수 있습니다. 최근의 시도들을 볼 때 이제는 Embodied Mind를 점점 갖춰 가고 있습니다.

프로그램 기반으로 데이터 처리를 따라갈 수 없는 수준이 되었습니다. Deep Learning과 AI가 필수적입니다. 따라서 AI Robot은 하나의 신사업입니다. 사람처럼 생각하고 행동하는 인공 지능 연구는 외부 인식, 행동 제어, Interaction, Computing power 연구를 수반합니다.

기존의 Machine Learning은 Feature Extraction 등을 인간이 수행했습니다. 이제는 따로 분리하지 않고 입출력만 주면 기계가 알아서 수행합니다. 이것은 일종의 혁명입니다. Algorithm을 스스로 짜기에 가능한 일입니다. Computing power가 좋아졌고, Deep Learning 기술이 발전했음을 보여 주는 대목입니다. Facebook의 DeepFace는 C 코드로 구현할 수 없습니다.

대니얼 카너먼은 사고의 형태를 System 1과 System 2로 구분했습니다. 직관적, 감성적으로 빨리 생각하는 System 1이 의사 결정을 더 잘 할 때가 많다는 것입니다. 인공지능을 이러한 관점에서 살펴 보면 지금까지는 주로 System 2를 구현했습니다. System 1의 구현은 이제 시작입니다. AlphaGo가 큰 의미를 부여했습니다. 기본적으로는 System 2의 기술이지만, 그것만으로는 바둑 문제를 풀 수 없습니다. Machine Learning을 통해 System 1을 살짝 더한 것입니다.

뇌의 구조처럼 AI도 굉장한 수준의 병렬 처리가 필요합니다. GPU의 발전을 통해 가능해지기를 바랍니다.

 

인공지능과 의료의 만남, 그리고 공존, 서울 아산병원 김남국 교수

의료의 인공지능 개발은 굉장히 어렵습니다. 병원마다 의료 환경이 달라 표준화가 어렵기 때문입니다. 법적, 윤리적 제약과 수가 장벽 등도 어려움을 더하고 있습니다. 환자에게 실험하는 것은 의사만이 할 수 있는 일이라, 개발 사이클을 온전히 수행하기도 쉽지 않습니다.

다만 모멘텀은 존재합니다. 점점 더 오래 살고, 당뇨 환자가 급증하고 있습니다. 데이터는 넘쳐납니다. 병원들이 Big Data를 외치는 이유입니다. 하지만 대부분 비정형 데이터입니다. AI를 활용한 Big Data 분석이 필요합니다.

Google은 Google Tends를 기반으로 Flu Trends를 제공합니다. Facebook을 이용해 약물 중독 환자를 선별하는 시도도 행해지고 있습니다.

 

[Link 1. ‘Flu Trends, 데이터로 독감 따라잡기’]

 

병원 데이터의 상당 부분은 이미지입니다. 그 중에 가치 있는 데이터가 매우 많습니다. 의사들 역시 정확한 이미지 판별에 어려움을 겪을 때가 있습니다. 기계가 의사 평균 수준 이상으로 이미지를 판별할 수 있다면 전체적인 수준을 끌어올릴 수 있습니다. 속도 면에서는 기계가 훨씬 빠릅니다.

 

Eco System

발표를 들으면서 ‘Eco System’이라는 단어가 강하게 떠올랐습니다. Amazon, Facebook, Google을 넘어서는 거대 AI Eco System이 NVIDIA에 의해 형성되는 것은 아닐지 궁금해집니다. 기술적 Roadmap도 훌륭하지만, 여러 분야의 선두 업체들과의 협업이 굉장히 인상적이었습니다. NVIDIA와 손 잡지 않고는 AI 시대를 헤쳐나가기 어렵겠다는 생각이 들 정도였습니다. 2018년의 NVIDIA GTC도 기대가 됩니다.

Written by Chris Choi

December 16, 2017 at 11:52 am

낯선 인공지능과 살아가기

with 2 comments

AI에 관한 논의가 다양한 관점으로 다뤄지고 있습니다. 기술적 관점, 경제적 관점 등과 더불어 철학적 관점으로도 AI를 살펴보려는 시도가 있습니다. 한양대학교 철학과 이상욱 교수님의 강연을 통해 낯선 인공지능과 어떻게 공존해야 할 것인지 생각해 볼 수 있었습니다.

 

4 산업 혁명

영화 “The Imitation Game”. 경찰이 Alan Turing에게 생각하는 기계가 가능하냐고 물어봅니다. Turing은 물론 가능하지만, 인간과 똑같이 생각하지 않는다고 답합니다. 이 점을 강조하지 않으면 얘기치 않은 결과가 나올 수 있다는 메시지를 읽을 수 있습니다.

‘4차 산업 혁명’은 급격한 변화를 이끌게 될까요? 일부의 예측과는 달리 여러 이유로 완만한 변화가 될 가능성이 높습니다. 1차와 2차 산업 혁명은 역사적으로 잘 확립된 개념입니다. 반도체와 PC 등을 기반으로 하는 3차 산업 혁명은 역사적으로는 애매하나 경제학적으로는 의미가 있습니다. 이에 비해 Davos Forum의 Agenda로 등장했던 4차 산업 혁명은 동력이나 디지털 기술의 혁신과 연결이 잘 되지 않아 학술적 근거는 부족합니다. Klaus Schwab의 “The Fourth Industrial Revolution”을 보면 4차 산업 혁명의 긍정적, 부정적 영향 외에 불확실한 영향에 관한 언급이 너무 많습니다. 4차 산업 혁명의 근거가 부족함을 스스로 인정하는 것이 아닐까요? 오로지 기술만이 사회 파급 효과를 결정하는 것이 아닙니다. 제도, 사람들의 반응, 문화적 관습 등이 사실상 기술에 의한 변화를 결정하기 때문입니다. 4차 산업이 자동화의 연장선상일 것이라는 의견이 존재하는 이유입니다.

 

Performance without Awareness

기계는 기가 막힌 Performance를 낼 수 있습니다. 그러나 Awareness는 가지지 못합니다.

 

[Video 1. ‘Bach style chorale Emmy David Cope’]

 

AI가 하루만에 5천곡을 작곡합니다. 인공지능이 음악 천재라서 그런 걸까요? 인공지능은 계산은 하되, 작곡을 하지 않기에 가능한 일입니다. EMI Experiments in Musical Intelligence 가 만든 곡을 듣고 비평가들은 무언가가 부족하다고 비판했습니다. 그러나 한 Blind test는 놀라운 결과를 보여주었습니다. 바흐의 곡, EMI가 만든 곡, 인간 작곡가가 바흐 스타일로 만든 곡을 들은 사람들은 EMI가 만든 곡을 바흐의 곡으로 꼽았습니다. 심지어 영혼을 울리는 곡으로 평가했습니다.

우리는 기계의 한계를 두는 경향이 있습니다. 기계가 사람을 흉내내므로 영감이 필요한 영역은 계산만으로 할 수 업사 생각합니다. 그런데 위와 같은 일이 생기니 매우 난처해집니다. 네안데르탈인 이후로 유사한 종족의 경제를 받아본 적이 없었기 때문입니다.

 

[Video 2. ‘Robot Lives Matter’]

 

Boston Dynamics는 로봇의 균형감을 강조하기 위해 로봇을 발로 차는 동영상을 공개했습니다. 로봇 학대 논란이 일어나 동영상을 모두 삭제한 상태입니다. 로봇 학대를 막기 위한 단체도 생겨났습니다.

로봇에게는 마음의 상태도, 노예에 관한 관념도 없음을 우리는 잘 알고 있습니다. 그럼에도 불쌍하다는 느낌을 누르기는 어렵습니다. 인간에게는 공감과 상상이라는 내재된 기능이 있습니다. Boston Dynamics의 로봇들을 로봇이 아니라 동물 같이 여기기 때문에 학대라고 생각하는 것입니다. EU는 로봇 윤리 헌장을 준비하고 있습니다. 학대가 일상회되면 마치 게임과 같이 인간과 인간 간의 상호 작용에도 영향을 미칠 수 있다는 판단에서입니다. 적어도 눈에 띄는 학대는 발생하지 않도록 하기 위함입니다.

 

일자리의 상실

전문직 대체에 일정 한계는 존재할 것입니다. 인공지능 개발비는 결코 저렴하지 않습니다. 개발비를 회수 가능한 분야부터 개발이 진행될 것입니다. Goldman Sachs는 체득된 지식을 바탕으로 주식을 거래하는 트레이더의 수를 수 백 명에서 단 두 명으로 줄였습니다. 고연봉의 직원들이므로 AI 개발비는 충분히 상쇄되었을 것입니다. 가사 도우미는 구현이 쉽지 않습니다. 수건 접는 기계도 아직 10분 넘게 소요됩니다. 인간에게 어려운 일이 기계에게는 쉽고, 인간에게 쉬운 일이 기계에게는 어렵다는 모라벡의 역설 Moravec’s Paradox 입니다.

화물 연대가 강해서 자율 주행차 확산이 쉽지 않을 것입니다. 처방전은 의사만이 작성할 수 있습니다. 기술이 좋아져도 의사가 쉽게 대체되지 않을 것입니다. 사회 제도적 맥락에서 어떤 수준의 일자리 대체가 가능할지 고려할 필요가 있습니다.

 

특수 지능 vs. 일반 지능

인간을 전부 대체하는 지능이 등장하지는 않을 것입니다. 대시 인간의 능력을 뛰어넘는 특수 지능은 속속 등장할 것입니다. 특수 지능과의 상호 작용은 어느 수준까지가 최적일까요? 판단이 쉽지는 않습니다.

초기 자연 언어 처리를 개발할 때 언어학자들과의 Coworking을 통해 인간이 문법적으로 언어를 배우는 방법을 분석했습니다. 지금은 문법을 무시하고 Deep Learning을 수행합니다. 인간의 방식을 규명하기가 매우 어렵습니다. 게다가 인간이 모델이 될 필요는 없습니다. 인간의 독특한 특징이 있지만 그것이 항상 보편적 특징인 것은 아닙니다.

 

공존

이상욱 교수님의 강연을 들으면서 ‘공존’이라는 단어가 떠올랐습니다. 가끔은 동료 같이, 가끔은 말동무 같이, 가끔은 애완 동물 같이 그 모습과 역할은 다르겠지만, 인공지능이 진화할수록 공존하며 살아가는 것은 불가피하지 않을까 생각합니다. 여전히 막연한 두려움이 느껴지지만, 어느 새 PC와 스마트폰이 우리 일상이 된 것처럼, 인공지능도 우리 삶 속에서 적절한 위치를 찾아갈 것이라 기대해 봅니다.

Written by Chris Choi

October 30, 2017 at 11:48 pm

Posted in Tech

RPA

leave a comment »

Written by Chris Choi

October 3, 2017 at 1:47 pm

Posted in Tech

Tagged with ,