Skip to content

Latest commit

 

History

History
284 lines (140 loc) · 13.4 KB

README_KR.md

File metadata and controls

284 lines (140 loc) · 13.4 KB

⚗️ Curiosity (WIP)

이 프로젝트는 사람의 의식의 인공적 구현 (Artificial Consciousness)이 가능한지를 탐구하기 위해 만들어진 프로젝트로, 기존의 신경망 시스템을 이용하는 것이 아니라 마빈 민스키가 주창한 전문가 시스템 이론에 기반합니다.

개요

기존의 인공지능은 인공신경망을 이용한 통계 모델에 모든 지능의 구현에 의존합니다. 그러나 이러한 기존의 인공지능은 의식의 원리를 탐구하기보다는 통계에 의한 지능이나 의식을 시뮬레이션하는 것과 비슷합니다.

사물을 인식하고 확인하는 것은 지능의 역할이며, 사람이 경험하고 있는 의식의 범주는 논리나 감정 같은 것에 있습니다. 즉, 이 프로젝트는 의식과 지능이 서로 다른 범주에 있다는 가정 하에 시작되었습니다.

이 프로젝트는 사람의 사고 과정을 인위적으로 묘사할때 가장 작은 필수 불가결한 부분을 찾아내는 것을 목표로 하고 있으며, 이렇게 찾아낸 가장 작은 단위의 필수 불가결한 부분을 통해서 실제로 사람의 의식을 묘사하거나 모방해보는 것을 목표로 하고 있습니다.

언어 체계

이 단락에서는 사람이 사용하는 언어체계를 기계적으로 모방하는 방법론에 대해서 기술해나가고 있습니다. 언어 체계는 단어와 단어의 연관성을 명확하고 지속적으로 정의할 수 있는 구조를 확립하는 것을 목표로 합니다.

인공지능에 의해 구성된 언어체계의 대표적 예시로 빅스비나 시리와 같은 것을 예를 들 수 있습니다. 만약 우리가 "사과를 먹었다" 라던지 "이 사과에는 독이 들어있다." 와 같은 글을 해석해서 데이터로 명시한다면 어떠한 규격이 되어야할지는 아직까지 불분명합니다. 사람은 분명 언어를 이용해서 대화하고 사고하지만, 언어의 가장 근본적인 요소들이 무엇인지 그리고 프로그래밍적으로 어떻게 모방가능할 수 있는지는 명확하지 않습니다.

이 프로젝트에서는 사람이 사용하는 언어체계를 본질과 존재로 구분지어서 모방하는 방법에 대해서 기획하고 있습니다. 사람이 사용하는 언어의 대부분은 모두 본질(Essence)이나 존재(Existence)에 대한 정보를 구성하는 매개체 역할로써 작용한다고 가정 가능합니다. 이러한 시도로 본질과 존재에 의해 기계적으로 모방가능한 언어체계의 최소 동작원리를 구성하는 것이 이 프로젝트의 목표입니다.

왜 본질(Essence)과 존재(Existence)에 의한 구분법이 필요한지

우리가 사용하는 언어에는 시공간적 개념이 포함되어 있습니다.

시간적 개념이 포함된 예시를 들면 "도자기는 오늘 금빛도자기 라는 별명이 붙었다." 가 가능한데, 프로그래밍적으로 사람의 모든 언어체계를 이해하기 위해서는 가령 위와 같은 예시에서도 오늘부터 "금빛도자기" 라는 이름이 붙었다는 이유만으로 해당 "도자기" 에 대한 본질적 개념이 달라지는 것일지에 대한 고민이 필요합니다.

공간적 개념이 포함된 언어적으로 이해되어야만 하는 상황의 예시를 들면 "지구 상에서 모든 도자기는 깨어졌고, 도자기는 다시 생산할 수 없게 되버린 경우." 와 같이 공간적으로 더이상 도자기가 존재할 수 없다고 하더라도, 이전에 과거에 시간적으로 존재했던 도자기의 본질적 개념이 사라지는 것일지에 대한 고민이 필요합니다.

따라서 온전히 사람의 언어체계를 이해하기 위해서 본질과 존재에 따라 언어적 표현들을 구분짓는 것에서부터 언어체계를 모방하는 과정을 진행해나갑니다. 모든 과정에서 인지된 시간적 정보가 배제된 모든 정보는 "본질" 로써 구성됩니다. 그리고 이러한 본질들에 시간적 요소가 더해져서 "존재"로써 구분됩니다.

가령 낮엔 초록색으로 변하고, 저녁시엔 빨간색으로 변하는 조명이 있다고 가정한다면, "초록색으로 빛나는 조명" 과 "빨간색으로 빛나는 조명" 두가지의 본질이 구분되어 존재하고, 각 본질은 시간에 의해 구분되는 것으로 가정되어야합니다.

또한 존재는 가장 최신의 것이라면 이전의 본질이 무엇인지를 알 수 있게 이전에 참조하였던 본질이 기억되어야하며, 존재가 과거의 것이라면 그다음으로 변화된 본질은 무엇인지에 대한 참조가 데이터 상에 명시되어야 합니다.

고급적인 문법 분류에 대하여

사람이 표현하는 언어는 보어, 보조사, 보격조사 등 전달하고자 하는 논리 외에 여러 표현을 덧담고 있습니다. 우리가 언어체계를 모방하는 과정에서 가장 기본이 되는 표현을 구성하기 위해선 이러한 대화를 위한 여러 표현들을 모두 배제하고, 최소한의 관계로 이뤄진 논리의 유형만이 정리되어야합니다.

따라서 이러한 "본질" 적인 표현을 가능하게 하는 최소 문법들의 유형들을 파악하는 것에서부터 시작하며, 이 "본질"적인 표현을 "존재" 적인 표현으로 연관시키는 것까지가 최소적인 과정이며, 이러한 논리적 표현들을 사람이 이해할 수 있게 모방하여 대화와 묘사를 이루는 것은 별개의 작업인 것으로 가정합니다.

본질 (Essence)

본질은 바뀌거나 사라지지 않고, 가장 근본적이고 독특한 정보입니다. 주체 또는 객체가 존재할때에 에는 본질에 기반해야 합니다.

본질의 요소
상태 (State)
  • Ex. AB 라는 말은 **거짓말(상태)**입니다.
유형 (Type)
  • Ex. AB(유형) 입니다.
관계 (Relation)
  • Ex. A 는 B와 가족(관계) 입니다.
본질의 특성

모든 본질의 요소들은 아래 특성에 의해 제한될 수 있습니다.

조건 (Condition)
  • A는 B와 토요일마다 낚시를 같이 가는 사이입니다. (관계 + 조건)

존재 (Existence)

존재는 본질에 시간이 추가된 개념입니다. 본질이 바뀔 때마다 새로운 본질이 등장하며, 모든 본질은 개별적으로 구별되는 고유한 정보입니다.

존재의 요소
  • 본질 (시간이 지남에 따라 변화하는 과거의 본질입니다.)
Q. 왜 존재가 과거에 참조하였던 본질들을 기억해야합니까?

Essence is a unique being that cannot be changed. Just a new Essence is created and replaced within the Existence. Remembering this becomes information that remembers the state of the past. While it may be necessary not to remember the past artificially, additional development can be made only by remembering the past.

본질은 바꿀 수 없는 고유한 존재입니다. 존재의 필요에 의해서 새로운 본질이 만들어지고 교체됩니다. 이것을 기억하는 것은 과거의 상태를 기억하는 정보가 됩니다. 인위적으로 과거를 기억하지 않는 것이 필요할 수도 있지만, 과거를 기억해야만 이전 본질이 어떻게 생겨났는지가 성립될 수 있습니다.

Q. 본질의 특성으로 조건이 존재하는 이유는 무엇입니까?

존재로 하여금 다른 본질을 다시 참조하게 하는 조건은 본질 자체 내에 있어야 합니다.

Q. 왜 언어 모듈은 기존의 명사나 형용사와 같은 기존의 분류들을 사용하지 않으려 합니까?

기존의 형태소 분석기들이 만능일 수 없었던 이유는 피상적인 단어의 관계에 집착했기 때문이라고 생각합니다. 단어의 관계를 분류하기 전에, 그 단어가 가리키는 가장 근본적이고 핵심적인 최소 특성을 분류한 다음, 그 위에 단어 체계를 형성하여 프로그램에 의한 언어 해석이 이루어질 수 있도록 단계별 접근법이 이루어져야 한다고 생각합니다.

Q. 이 언어 모듈은 범용 문법(UG)을 목표로 합니까?

아니요, 이 모듈을 단독으로 구현할 수 없습니다. 이 모듈은 단어의 상관 관계를 논리적으로 구분하는 필수 구성을 찾는 것을 목표로 합니다.

논리적 학습 계획

유도 과정을 통해 기본적인 논리 학습을 가능하게 하기 위해 얼마나 많은 기본 논리가 필요한지 알아보는 것이 목표입니다.

  1. 본질에 대한 학습
    • 본질의 하위 구성요소(상태, 유형, 관계)를 정의합니다.
  2. 존재에 대한 학습
    • 여러 존재의 관계를 정의합니다.

논리

이 프로젝트에서는 논리적 사고를 통하여 여러 기본 논리를 통하여 다른 논리들을 추론해내는 사람의 사고 과정을 모방할 수 있는 방법들을 서술합니다. 존재로부터 본질을 유추하거나, 본질로부터 새로운 존재를 정의하거나, 조건의 참된 거짓을 결정하는 일련의 과정입니다.

추론 (Deduction)

추론의 목적은 주장의 진실성을 검증하는 것이고 전제가 사실이라면 결과는 진실입니다.

요약(Summarize)
  • A=B
  • B=C
  • C=A
설명
  • 원칙 (Principle): Human is a creature.
  • 사례 (Case): Creatures eat food.
  • 결과 (Result): Human should eat food.
예외 사례
  • 결과가 올바르지 않으면 다음을 수행합니다.
    1. 사례에 조건이 불충분하다고 추론합니다.
    2. 아니면 사례가 잘못되었다고 추론합니다.
    3. 원칙이 잘못되었다고 추론합니다.
예외에 조건을 추가하는 예제입니다.
  • 사례1 = 생물은 음식을 먹는다. (조건: 영양분이 부족할 때)
  • 사례2 = 생물은 음식을 먹는다. (조건: 영양분이 과도하게 소비되기 전에)

귀납법

전제의 주장을 넘어 지식을 넓히는 것을 목표로 하고 있습니다. 이것은 그 과정에서 어느 정도 논리가 비약할 수 있습니다. 유도는 개연성 있는 가설을 만들 수 있지만 논리적 필연성을 가지고 있지는 않습니다.

요약(Summarize)
  • A=D
  • B=D
  • C=D?
설명
  • 사례1= 길거리에 있는 고양이는 츄르를 좋아합니다.
  • 사례2= 옆집 고양이는 츄르를 좋아합니다.
  • 추론(Inference) = 모든 고양이들은 츄르를 좋아할 것입니다.
분류
  • 모든 사례가 검증된 경우를 다음과 같이 표현합니다.

    • 완전귀납 (Complete induction)
  • 일부 사례가 검증되지 않은 경우를 다음과 같이 표현합니다.

    • 불완전귀납 (Incomplete induction)
  • 변증법

감정

감정은 어떤 결정이 내려지고 있는지를 분명히 정의하는 과정에 있습니다. 또한 감정은 또한 긍정적인 모델과 부정적인 모델들로 구성되어 있는 것으로 분류될 수 있습니다. 그리고 그 감정이 대상에 적용될 때, 대상의 하위 요소에 따라, 다른 감정들이 동시에 하나의 물체에 작용합니다.

감정 1

+ 행복 (Happiness)

- 슬픔 (Sadness)

감정 2

+ 기대 (Expectation)

- 실망 (Disappoint)

감정 3

+ 사랑 (Love)

- 분노 (Anger)

감정 4

+ 놀람 (Surprise)

- 공포 (Panic)

감정 5

+ 편안 (Comfort)

- 불안 (Anxiety)

감정 6

+ 갈망 (Yearn)

- 혐오 (Disgust)

감정 7

+ 열망 (Desire)

- 수치 (Shame)

결정 (Decision)

  • 서술 전

계층적 분류

사람이 생각하는 것을 모방가능하다고 가정한다면 어디서부터 단계적인 접근이 이뤄져아하는지를 정리하고자 합니다. 이를 위해서 계층적인 구조로 단계적으로 어떠한 요소들이 존재할 수 있는지를 정의합니다.

레이어 시스템

이 프로젝트는 의식을 구성하는 데 필요한 최소 요소를 계층적으로 분류합니다. 이 과정을 통해서 사람의 의식의 가장 낮은 단계의 과정이 어디서 부터 묘사가능한지를 알아내고자 합니다. 레이어 1은 가장 원시적이고 독립적인 모듈로 구성됩니다. 그러나 필요에 따라 레이어 1 요소 간에 서로 참조할 수 있다고 가정합니다.

레이어 0

레이어 0은 일반적으로 범용 컴퓨팅 머신, 컴퓨터 또는 CPU로 구성된다고 가정합니다.

  • 계산

레이어 1

레이어 1은 이 프로젝트에서 개발되는 의식의 가장 기본적인 단계입니다. 의식의 가장 기본적이고 독립적인 구성이 레이어 1에서 구성된다고 가정합니다.

  • 감정 (Emotion)
  • 논리 (Logic)
  • 언어 (Language)
  • 결정 (Decision)

레이어 2

2층은 인간의 의식의 자아처럼 작용합니다. 레이어 2의 각 요소는 레이어 1에 구성된 모든 요소를 기반으로 구성됩니다. 예를 들어, 레이어 1의 모든 요소는 계획 프로세스에 사용됩니다.

  • 계획 (Plan)

  • 행동 (Action)

  • 주의 (Caution)

  • 예상 (Expect)

  • 판단(Judgment)

  • 대화 (Talk)

  • 묘사 (Describe)

레이어 3

계층 3은 스스로 의식을 발전시키고 그 목적을 달성하기 위한 도구 역할을 합니다. 계층 3의 각 요소는 계층 2에 구성된 모든 요소를 기반으로 구성됩니다.

  • 학습 (Learning)
  • 인식 (Recognition)

ㅁA