달력

42024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

인간의 지능적인 특성 중에는 학습이 있습니다. 학습은 배워서 익히는 것입니다. 그럼 어떻게 배울까요? 우리는 경험을 통해 배웁니다. 그래서 우리는 여러 경험을 통해 학습을 얻어내고 그 학습은 다음 행동에 영향을 주도록 변화해왔습니다. 이렇게 우리가 학습하는 특성을 컴퓨터인 기계에 접목한 것이 머신 러닝이고, 딥 러닝입니다.
전통적인 프로그램 방식에서는 프로그래머인 사람이 일일 명시적으로 알고리즘을 설계하고, 코딩해서 컴퓨터가 주어진 입력에 대한 출력을 갖도록 해왔습니다. 그러나 인공지능 기법이 도입되면, 컴퓨터인 기계는 주어진 입력 데이터와 출력 데이터로(혹은 입력 데이터로만) 기계가 자동적으로 명시적인 프로그래밍 없이 학습하여 그 결과 규칙을 적용하게 됩니다. 아래 그림을 보면 쉽게 이해될 것 입니다.

전통적인 프로그램 방식과 인공 지능 방식의 차이

약간 머신 러닝 개념이 너무 복잡한 것 같아서 간단한 요리로 설명하겠습니다. 요즘 뜨고 있는 백선생 조리법(recipe)처럼 『라면을 맛있게 끓이는 요리 기계』를 만든다고 생각해봅시다. 전통적인 방식으로는 요리 기계에 조리법에 대한 프로그램을 입력합니다. 그 프로그램에는 가장 맛있다고 결론 지어진 조리법의 최종 규칙을 입력되어있습니다.  

  • IF (물의 양 = “550 ml” and 끓이는 총 시간 = “4분 30초” and 면 크기 =“부수지 말고 그대로 최대 크기” and 플레이크(후레이크 표기는 잘못. flake)와 분말 스프 투입시기 = “면보다 먼저” and 취향 = “대파 투입” and/or “달걀 투입(풀어서)”)
  • Then (조리법 = “백선생의 맛있는 라면요리“). 

이제 이 규칙을 기계에 넣어주고, 우리는  백선생의 맛있는 라면요리“를 끓여주라고 하면 기계는 상기 규칙대로 끓여서 나올 것 입니다. 이것은 구체적인 정답에 해당하는 규칙이 있어야만 결과적인 맛있는 라면요리가 완성되는 방식입니다.

그러나 상기 IF절에 있는 (물의 양, 끓이는 시간, 면 크기, 스프 투입시기, 취향)을 어떻게 해야 할지 모른다고 가정할 때, 우리는 가르쳐 주는 사람이 없다면, 내 스스로의 경험을 통해서 맛있는 조리법을 터득할 수밖에 없습니다. 끓이는 시간은 얼마로 해야 면이 꼬들꼬들 해질까, 물이 많으면 싱겁고, 물이 적으면 짜고, 면을 잘라서 넣을까 말까, 플레이크와 분말 스프는 언제 넣을까, 달걀은 반숙할 것인가, 풀어서 먹을 것인가, 대파를 넣을 것인가 말 것인가 등을 시행착오하면서 경험이 쌓게 됩니다. 그리고 다음번에는 그 경험을 바탕으로 개선을 해나갑니다. 계속해서 매일매일 끊이다 보면, 결국은 어떻게 하는 것이 가장 좋은 맛을 내는지에 대한 결론이 나오고, 이를 기계에 저장하여 나만의 조리법이 나오게 만들 수가 있습니다. , 경험이 학습되어 그 결과를 맛있는 라면요리 조리법라는 규칙으로 저장해놓는 것입니다. 이렇게 학습을 통해 규칙을 생성해서 기계가 스스로 조리법을 갖게 하는 방식이 바로 머신러닝 / 딥 러닝에 의한 인공지능 방식인 것입니다. 이 방식으로 하면 개인별 취향이 다르다고 해도, 개인별 조리 데이터를 학습시켜 맞춤형으로도 제공할 수 있습니다. 좀더 확장이 유연해진겁니다.

이렇게 인공 지능 방식은 경험, 성능, 작업 목표를 기계 스스로가 데이터를 통해 발전해나가는 방식입니다.

Copyright 2021. 『오드리공주될뻔 블로거  All rights reserved.

Posted by 오드리공주될뻔
|

인공지능에 관한 용어들은 일반인들에게 생소한 경우가 많고 혼동하기 쉽기 때문에 기본적인 차이점을 이해하면 관련내용을 이해하는데 도움이 됩니다. 인공지능분야에서 가장 많이 쓰는 용어는 인공지능, 머신러닝, 인공신경망, 딥 러닝입니다. 이들의 관계는 한마디로 부분 집합과 합집합의 개념으로 쉽게 이해할 수 있습니다.

인공지능 ⊃ 머신 러닝(기계 학습) ⊃ 인공 신경망 ⊃ 딥 러닝(심층 학습)

최근에 많이 활용되는 딥 러닝 안에는 CNN, RNN 등의 여러 가지 형태의 알고리즘이 있습니다. 머신러닝은 기계 학습(機械學習)으로 표기하기도 하고, 영어로는 machine learning약어로는 ML)이라고 표기합니다. 딥 러닝은 심층 학습(深層學習)으로 표기하기도 하고, 영어로는 「deep structured learning」, 「deep learning」 또는 「hierarchical learning」이라고도 합니다. 인공신경망(人工神經網)은 영어로는 artificial neural network(약어로는 ANN)」 이라고 합니다.이를 도식화하여 나타내면 아래 그림으로도 표현할 수 있습니다.

인공지능, 머신 러닝(기계 학습), 인공 신경망, 딥 러닝(심층 학습) 용어의 구분

각각의 개념을 한마디로 요약해서 설명하면, 머신 러닝은 경험을 통해 자동으로 개선하는(혹은 학습하는) 컴퓨터 알고리즘의 연구 분야입니다. 기본적인 규칙만 주어진 상태에서 입력받은 정보를 활용해 스스로 학습하는 것입니다. 머신 러닝의 한 분야인 인공 신경망은 생물학의 신경망(특히 뇌)에서 영감을 얻어 입력과 출력 사이에 있는 인공 뉴런들을 여러 개 층층이 쌓고 연결한 학습 알고리즘입니다.

인공 신경망은 노드들의 그룹으로 연결되어 있으며 이들은 뇌의 방대한 뉴런의 네트워크와 유사하다. 위 그림에서 각 원모양의 노드는 인공 뉴런을 나타내고 화살표는 하나의 뉴런의 출력에서 다른 하나의 뉴런으로의 입력을 나타낸다. [출처 : 한국어 위키백과]

딥 러닝은 인공 신경망을 여러 계층으로 사용하여(그래서 Deep) 원시 입력에서 더 높은 수준의 특징을 점진적으로 추출하는 일종의 인공 신경망 학습 알고리즘입니다딥 러닝을 설명하다보면, 어디까지가 Deep이고, 어디까지가 Shallow이냐는 질문을 많이 받습니다. 여기에 대한 가장 근거 있는 정답은 아래의 deep learning에 관한 영어 위키백과를 참조해야합니다. (애석하게도, 2021년 1월 기준 ‘딥 러닝의 한국어 위키백과에서는 해당내용이 아직 기술되어있지 않습니다.)
The word "deep" in "deep learning" refers to the number of layers through which the data is transformed. More precisely, deep learning systems have a substantial credit assignment path (CAP) depth. The CAP is the chain of transformations from input to output. CAPs describe potentially causal connections between input and output. For a feedforward neural network, the depth of the CAPs is that of the network and is the number of hidden layers plus one (as the output layer is also parameterized). For recurrent neural networks, in which a signal may propagate through a layer more than once, the CAP depth is potentially unlimited. No universally agreed-upon threshold of depth divides shallow learning from deep learning, but most researchers agree that deep learning involves CAP depth higher than 2. CAP of depth 2 has been shown to be a universal approximator in the sense that it can emulate any function. Beyond that, more layers do not add to the function approximator ability of the network. Deep models (CAP > 2) are able to extract better features than shallow models and hence, extra layers help in learning the features effectively.” [출처 : deep learning 영어 위키백과]

상기 영문내용에 있듯이, deep을 정확히 이해하려면 CAP(credit assignment path, 입력에서 출력으로의 변환 체인. 머신 러닝의 일종인 강화학습에서의 credit assignment problem은 과거에 있었던 일들 중에서 현재 내가 받은 reward에 기여한 것을 할당하는 문제임)의 개념을 이해해야하고, 간단히 말하면, 인공신경망(Artificial Neural Network, ANN)을 구성할 때 입력 층(input layer)과 출력 층(output layer) 사이에 여러 개의 은닉 층(hidden layer)들로 이뤄진 형태로 구성하는 데, 여기서 출력 층을 포함한 은닉 층의 수가 CAP 값입니다. 즉, 노드간의 연결이 순환하지 않는 순방향 신경망(順方向神經網, feedforward neural network)과 같은 구조에서 통상의 CAP 값은 은닉 층+1의 값입니다. 따라서 딥(Deep)이란 통상 CAP > 2이상의 값, 즉 은닉 층이 2개 이상인 경우를 말하는 것입니다. 많은 분들이 Deep을 구분하는 은닉 층(Hidden Layer) 수가 1개 이하면 Shallow, 2개 이상이면 Deep라고 하는 것이 여기서 기인한 것이라 볼 수 있습니다.

Love 1
 Love 2

이제는 사랑도 인공 신경망으로 자동판별될 수 있습니다.

Copyright 2021. 『오드리공주될뻔 블로거  All rights reserved.

Posted by 오드리공주될뻔
|

인공지능과 로봇은 엄연히 다른 의미입니다. 한마디로 인공지능은 인간의 소프트웨어(정신적인) 측면을 강조한 것이고, 로봇은 인간의 하드웨어(육체) 측면을 강조한 것입니다. 로봇은 사전적 의미로는 「인간과 비슷한 형태를 가지고 걷기도 하고 말도 하는 기계 장치」 혹은 「어떤 작업이나 조작을 자동적으로 하는 기계 장치」를 말합니다. 즉, 로봇은 기계적 장치의 일종입니다. 로봇에게 인공지능을 탑재할 수도, 탑재 하지 않을 수도 있습니다. ‘로봇'이란 용어는 체코슬로바키아의 극작가 ’카렐 차페크(Carel Čapek, 체코 작가)‘가 1920년에 발표한 희곡 "R.U.R.(Rossum's Universal Robots)"에 쓴 것이 퍼져 일반적으로 사용되게 된 단어입니다. 물론 그 개념은 이미 수 천년 전부터 있었습니다. 

인공지능과 로봇의 결합

로봇(robot)이라는 말은 단어 자체로 '노예', 비유적으로 '고된 일'을 뜻하는 체코어와 슬로바키아어 로보타(robota)에서 온 말입니다. 이 단어의 어원은 고 교회 슬로바키아어 라보타(rabota →노예 상태, 현대 러시아어로 '노동')이며, 이는 인도-유럽어족 어원 orbh-에서 유래하였습니다. 아르바이트(독일어: Arbeit →일, 노동)와 같은 어원입니다. 차페크는 R.U.R.에서 모든 작업능력에서 인간과 동등하거나 그 이상이면서 인간적 “감정”이나 “혼”을 가지고 있지 않은 로봇이라고 불리는 인조인간을 등장시키고 있습니다. 카렐 차페크의 정의로 보면 로봇은 “일할 수 있는 능력은 있어도 생각할 수 있는 능력이 없는 인간을 닮은 것”입니다.(출처 : 위키백과)

로봇 단어를 최초로 도입한 카렐 차페크 [출처: 영어 위키백과]
I, Robot의이 표지는 로봇 공학의 세 가지 법칙을 모두 처음으로 나열한 "Runaround"이야기를 보여줍니다. [출처 : 영어 위키백과]

이런 기계 장치인 로봇에게도 윤리에 관한 원칙이 있었습니다. 그 시작으로 미국의 작가 아이작 아시모프(Isaac Asimov)의 로봇공학의 3원칙(Three Laws of Robotics 혹은 Asimov의 법칙)이 있었습니다.  이것은 아이작 아시모프가 로봇에 관한 소설들 속에서 제안한 로봇의 작동 원리입니다. 

1. 로봇은 인간에 해를 가하거나, 혹은 행동을 하지 않음으로써 인간에게 해가 가도록 해서는 안 된다.
2. 로봇은 인간이 내리는 명령들에 복종해야만 하며, 단 이러한 명령들이 첫 번째 법칙에 위배될 때에는 예외로 한다.
3. 로봇은 자신의 존재를 보호해야만 하며, 단 그러한 보호가 첫 번째와 두 번째 법칙에 위배될 때에는 예외로 한다.

나중에 아시모프는 《로봇과 제국》을 쓰면서 네 번째, 또는 0번째 법칙을 추가하게 됩니다. 다른 세 법칙도 이 0번째 법칙을 위배할 수 없습니다.

0. 로봇은 인류에게 해를 가하거나, 행동을 하지 않음으로써 인류에게 해가 가도록 해서는 안 된다.


로봇 윤리처럼, 인공지능도 윤리를 다루고 있습니다. 인공지능의 윤리(Ethics of artificial intelligence)는 인공 지능 시스템에 특화된 기술 윤리의 한 가지입니다. 이것은 인간이 인공적으로 지능적인 시스템을 설계, 제작, 사용 및 취급 할 때의 도덕적 행동에 대한 우려되는 관심사와 기계 윤리에 대한 기계의 행동에 대한 우려되는 관심사로 나뉩니다. 또한 추후에 설명할 초 지능 AI로 인한 특이점(singularity) 문제도 여기에 포함됩니다.

인공지능 윤리와 더불어 인공 지능 규제(Regulation of artificial intelligence)는 인공지능을 촉진하고 규제하기 위한 공공 부문 정책 및 법률의 개발을 다루고 있습니다.  AI에 대한 규제 및 정책 환경은 미국, 유럽 연합을 포함한 전 세계 관할권에서 떠오르는 문제입니다. AI를 장려하고 관련 위험을 관리하려면 규제가 필요한 것으로 간주됩니다. 각국별로 여러 가지 가이드라인이 있지만, 그중에서 미국 연방거래위원회(Federal Trade Commission, 간단히 FTC)는 위원회 웹페이지 블로그를 통해 AI 및 알고리즘 사용에 대한 지침을 발표하였습니다(Using Artificial Intelligence and Algorithms : AI 및 알고리즘 사용, 2020.04). 여기서 투명성, 차별금지, 공정성, 피해방지 등을 다루고 있는 것을 보아 앞으로 인공지능 발전과 더불어 우리가 지켜야할 원칙이 무엇인지를 알려줄 것 같습니다.

이와같이 인공지능의 진화와 더불어 각 나라별로 규제와 윤리에 대한 다양한 시도나 지침이 나오고 있습니다. 인공지능 인문학에서도 윤리⋅규범학을 구성해서 전문적으로 윤리분야를 다루고 있습니다. 앞으로도 인공지능으로 많은 시행착오가 있겠지만, 저는 인간 중심의 AI가 정착될 그날을 기다려보렵니다.

Copyright 2021. 『오드리공주될뻔 블로거  All rights reserved.

Posted by 오드리공주될뻔
|

인공지능이란 분야는 매우 큰 분야입니다. 인공지능에 대한 접근은 단순한 소프트웨어적 구현으로만 볼 것이 아니라, 다양한 관점으로 바라보아야합니다. 사람에게는 지능이 있고, 그 지능을 이해하려고 인류는 많은 노력을 해왔습니다. 새가 나는 것을 흉내 내어 비행기를 만들 듯이, 우리는 사람의 뇌를 흉내 내어 인공지능을 구현하고 있습니다. 고대에서부터 철학과 더불어 인간의 사고와 추론방법을 연구해왔고, 다양한 논리를 만들어 지능적 구현물을 만들었습니다. 인공지능의 답을 찾기 위해서, 컴퓨터 공학이외에도 철학, 수학, 심리학, 생물학, 사회학, 언어학, 신경과학 등에서 연구한, 정신과 행동, 지식, 규칙, 학습, 추론, 이익 극대화, 뇌의 정보처리, 심리적 행동과 사고, 제어, 언어적 표현 등에 관한 다양한 질문들에 대하여 우리가 어떤 답을 찾았는지를 살펴봐야합니다. 이들 분야가 인공지능만을 위해 연구된 것이 아니더라도, 해당 분야의 발전이 인공지능의 발전의 토대가 되었던 것은 누구도 부인할 수 없는 사실일 것입니다. 그래서 아래와 같은 다양한 시각으로 인공지능을 살펴보아야할 것입니다.

인공지능의 전지적 참견

Copyright 2021. 『오드리공주될뻔 블로거』  All rights reserved.

Posted by 오드리공주될뻔
|