AI/Concepts

[AI/Concepts] 05. Knowledge

lumana 2024. 11. 19. 21:31

AI Concepts


지식 (Knowledge)

  • 인간은 기존의 지식(existing knowledge)을 바탕으로 추론하여 결론을 도출(draw conclusion)합니다.
    • Reason: Thinking rationally
    • 사고과정이 knowledge에 기반하여 이루어진다.
  • 지식을 표현하고 그로부터 결론을 도출하는 개념은 인공지능(AI)에서도 사용됩니다.

지식 기반 에이전트 (Knowledge-based Agents)

  • 지식의 내부 표현을 바탕으로 추론하는 에이전트.
  • "지식을 기반으로 추론하여 결론을 도출한다 (“reasoning based on knowledge to draw a conclusion)”의 의미는 무엇인가요?

예시: 해리 포터 사례

  1. 비가 오지 않았다면, 해리는 오늘 해그리드를 방문했다.
  2. 해리는 오늘 해그리드나 덤블도어 중 한 명을 방문했지만, 둘 다 방문하지는 않았다.
  3. 해리는 오늘 덤블도어를 방문했다.
  4. 해리는 해그리드를 방문하지 않았다.
  5. 오늘 비가 왔다.

Q. 오늘 비가 왔나요?


문장 (Sentence)

  • 문장은 지식 표현 언어로 세계에 대한 assertion(주장)을 나타냅니다.
  • 문장은 AI가 지식을 저장하고 이를 사용해 새로운 정보를 추론하는 (infer new information) 방식입니다.

명제 논리 (Propositional Logic)

  • 명제 논리는 참이거나 거짓인 세계에 대한 진술을 기반으로 합니다.
  • 명제 기호는 P, Q, R로 표시되며, 예를 들어 P는 "비가 온다"를 나타냅니다.

논리적 연결자 (Logical Connectives)

1. 부정 (Not, ¬)

  • 명제의 진리값을 반전시킵니다.
    • 예: P가 "비가 온다"일 때, ¬P는 "비가 오지 않는다"를 의미합니다.

2. 논리곱 (And, ∧)

  • 두 명제를 연결하여, P ∧ Q는 P와 Q가 모두 참일 때만 참이 됩니다.

3. 논리합 (Or, ∨)

  • P ∨ Q는 P 또는 Q 중 하나라도 참일 때 참이 됩니다.

4. 함축 (Implication, →)

  • P가 참일 때 Q가 참이 되는 구조를 나타냅니다.
    • 예: P가 "비가 온다"이고 Q가 "나는 실내에 있다"라면, P → Q는 "비가 오면 나는 실내에 있다"를 의미합니다.
    • P는 전제(antecedent, 조건절), Q는 결론(consequent, 결과절)이라고 합니다.
    • 전제 조건이 False면 결과절과 상관없이 명제는 무조건 True입니다.

5. 쌍방향 함축 (Biconditional, ↔)

  • 양방향으로 조건이 성립되는 논리입니다.
    • P ↔ Q는 P → Q와 Q → P를 함께 고려한 것입니다.
    • 양쪽이 모두 True 또는 모두 False여야 명제가 True입니다.

모델 (Model)

  • 각 명제에 진리값을 할당하는 것입니다.
    • 예: P가 "비가 온다", Q가 "오늘은 화요일이다"
    • 하나의 모델: {P = 참, Q = 거짓} → 비가 내리지만 오늘은 화요일이 아님.
  • 명제의 개수에 따라 모델의 수는 2의 거듭제곱으로 결정됩니다.
    • 예: 명제가 2개면 2² = 4개의 가능한 모델이 존재합니다.

지식 기반 (Knowledge Base, KB)

  • Knowledge Base는 지식 기반 에이전트가 알고 있는 문장들의 집합입니다.
  • “안다(Known)”는 것은 어떤 명제가 참인지 나타냅니다.
  • 이 지식은 명제 논리 문장(propositional logic sentences) 형태로 AI에 제공되며, 이를 통해 추가적인 추론(inference)이 가능합니다.

함의 (Entailment, ⊨)

  • 만약 α ⊨ β(α는 β를 함의)한다면, α가 참인 모든 세계에서 β도 참입니다.
    • 예: α: "오늘은 1월의 화요일이다", β: "오늘은 화요일이다" → α ⊨ β
    • 함의는 α가 참일 때, 그로 인해 β가 참이 되는 관계를 의미합니다.

논리적 귀결

예시: 해리 포터 사례

  1. 비가 오지 않았다면, 해리는 해그리드를 방문했습니다.
  2. 해리는 해그리드나 덤블도어 중 한 명을 방문했지만, 둘 다 방문하지 않았습니다.
  3. 해리는 덤블도어를 방문했습니다.
  4. 해리는 해그리드를 방문하지 않았습니다.
  5. 오늘 비가 왔습니다.

Q: 오늘 비가 왔나요?


추론 (Inference)

  • Knowledge Base에서 새로운 sentence를 얻는 과정
  • 추론은 기존 문장에서 새로운 문장을 도출하는 과정입니다.
  • 예를 들어, 해리 포터 사례에서는 문장 4와 5가 문장 1, 2, 3에서 추론되었습니다.

추론 예시

주어진 정보:

  • P: 오늘은 화요일이다.
  • Q: 비가 온다.
  • R: 해리는 달리기를 할 것이다.

지식 기반 (KB):

  • ((P ∧ ¬Q) → R)
  • (P)
  • (¬Q)

추론:

  • (R) (결론)

모델 확인 알고리즘 (Model Checking Algorithm)

KB ⊨ α인지 확인하려면:

  1. 가능한 모든 모델을 열거합니다. ((2^{명제수}))
  2. 각 모델에서 KB가 참인지 확인합니다.
  3. KB가 참인 모든 모델에서 α도 참이면, KB는 α를 함의합니다.
  4. 그렇지 않으면, KB는 α를 함의하지 않습니다.

지식 공학 (Knowledge Engineering)

개요:

  • 지식 공학은 인공지능에서 명제와 논리를 표현하는 방법을 구체화하는 과정입니다.

Clue 게임

  • 한 사람이 특정 도구를 사용하여 특정 장소에서 살인을 저질렀습니다.
  • 사람, 도구, 장소가 카드로 표현됩니다.
  • 단서를 통해 봉투 안에 들어 있는 내용을 추리합니다.

명제 기호 (Propositional Symbols):

  • 각각의 카드가 명제를 나타냅니다.

추론 규칙 (Inference Rule)

효율적 추론:

  • 모델 검사는 모든 가능한 모델을 고려해야 하므로 비효율적입니다.
  • 추론 규칙을 사용하면 모든 모델을 고려하지 않고도 기존 지식에서 새로운 정보를 생성할 수 있습니다.

주요 추론 규칙:

  1. Modus Ponens (전건 긍정):
    • ((P → Q))와 (P)가 참이면, (Q)가 참이다.
  2. And 제거 (And Elimination):
    • (P ∧ Q)가 참이면, (P) 또는 (Q)도 참이다.
  3. 이중 부정 제거 (Double Negation Elimination):
    • (¬(¬P))는 (P)와 같다.
  4. 함축 제거 (Implication Elimination):
    • ((P → Q))는 (¬P ∨ Q)로 변환된다.
  5. 드모르간 법칙 (De Morgan's Law):
    • (¬(P ∧ Q) = ¬P ∨ ¬Q)
    • (¬(P ∨ Q) = ¬P ∧ ¬Q)

해 (Resolution)

  • 는 논리합(Disjunction)으로 연결된 두 명제를 통해 새로운 문장을 도출하는 강력한 추론 규칙입니다.
  • 상보적인 명제(Complementary literals)를 사용하여 모순을 찾아낼 수 있습니다.

논리곱 표준형 (Conjunctive Normal Form, CNF)

변환 과정:

  1. 쌍방향 함축 제거:
    • ((α ↔ β))를 ((α → β) ∧ (β → α))로 변환
  2. 함축 제거:
    • ((α → β))를 (¬α ∨ β)로 변환
  3. 부정을 내부로 이동 (드모르간 법칙 사용):
    • (¬(α ∧ β))를 (¬α ∨ ¬β)로 변환
  4. 분배 법칙 적용:
    • 가능한 곳에 논리합 분배

결과:

  • 모든 논리 문장을 CNF로 변환한 후, 추론 수행.

해를 통한 추론 (Inference by Resolution)

  • 모델 체킹의 단점을 보완하기 위해 사용됩니다.
  • 과정:
    1. ((KB ∧ ¬α))가 모순(contradiction)인지 확인합니다.
    2. 모순이 발생하면, (KB ⊨ α)입니다.
    3. 그렇지 않으면 함의가 없습니다.

예:

  • (KB:)
    • (A ∨ B)
    • (¬B ∨ C)
    • (¬C)

추론:

  1. (A)를 거짓으로 가정합니다.
  2. ((A ∨ B))가 참이 되려면 (B)가 참이어야 합니다.
  3. ((¬B ∨ C))에서 (B)가 참이므로 (C)가 참이어야 합니다.
  4. 기존 (¬C)와 충돌하여 모순 발생.
  5. 따라서, (A)는 거짓일 수 없으며, (KB ⊨ A)입니다.

드모르간 법칙 (De Morgan's Law)

  • 논리곱을 논리합으로, 또는 그 반대로 변환할 수 있습니다.

예시 1: 곱을 합으로

  • "둘 다 통과하지 못했다"는 사실이 아니다 → 최소 둘 중 하나는 통과했다.

예시 2: 합을 곱으로

  • "해리와 론 중에서 테스트에 통과한 사람이 있다는 건 사실이 아니다" → 둘 다 통과 못했다.

분배 법칙 (Distributive Property)

  • 논리곱과 논리합을 포함하는 명제는 더 작은 단위로 분해할 수 있습니다.
  • 이는 And와 Or로 연결된 작은 단위들로 구성됩니다.

절 및 논리곱 표준형 (Clause & Conjunctive Normal Form)

절 (Clause):

  • 명제들의 논리합입니다.
  • 예: ((P ∨ Q ∨ R))

논리곱 표준형 (CNF):

  • 모든 논리 문장을 CNF로 변환 가능합니다.
  • 예: ((A ∨ B ∨ C) ∧ (D ∨ ¬E) ∧ (F ∨ G))

해를 통한 추론 (Inference by Resolution)

  • 목적: 모델 체킹의 비효율성을 보완합니다.

과정:

  1. ((KB ∧ ¬α))를 CNF로 변환합니다.
  2. 새로운 절을 생성할 수 있는지 확인합니다.
  3. 비어 있는 절(거짓에 해당)을 생성하면 모순이 발생하고, (KB ⊨ α)입니다.
  4. 새로운 절을 추가할 수 없으면 함의가 없습니다.

요약:

  • ((KB ∧ ¬α))가 모순이라면, (KB ⊨ α).
  • 그렇지 않다면, (KB)로 α를 결론지을 수 없습니다.

요약 (Summary)

  1. 지식 기반 에이전트:
    • 인간처럼 KB를 바탕으로 추론하여 새로운 문장을 만들어냅니다.
  2. AI의 지식 저장:
    • 명제 논리 문장 형태로 저장됩니다.
    • 이를 통해 추가적인 추론 가능.
  3. 모델 검사의 한계:
    • 가능한 모든 모델을 고려해야 하므로 비효율적.
  4. 해를 통한 추론:
    • 모든 가능한 모델을 고려하지 않고도 기존 지식에서 새로운 정보를 생성할 수 있습니다.

'AI > Concepts' 카테고리의 다른 글

[AI/Concepts] 07. Optimization  (0) 2024.11.19
[AI/Concepts] 06. Uncertainty  (0) 2024.11.19
[AI/Concepts] Agent and Search  (0) 2024.10.18
[AI/Concepts] Data Processing  (0) 2024.10.18
[AI/Concepts] Data Analysis  (0) 2024.10.18