인공지능 기초
인공기초 - 0604
코드짜는 뉴비
2024. 6. 4. 11:43
인공지능은 문제를 어떻게 해결할 수 있을까?
- 탐색
- 문제의 해답이 될 가능성이 있는 후보 모두를 생성, 표현, 탐색하며 원하는 해답을 찾아내도록 프로그래밍하여 기계가 문제 해결에 필요한 지능을 가지게 하는 방법
- 추론
- 인간의 지식을 기계가 처리할 수 있게 표현하여 추론을 통해 새로운 지식을 생성하며 문제를 해결하게 하는 방법
- 학습
- 인간의 학습 방법을 모방하여 기계가 데이터를 이용해 학습하며 문제 해결을 위한 답을 찾아내는 방법
인공지능과 탐색
- 기계가 문제를 해결할 때 정답을 찾아가기 위해 활용
- 논리적, 절차적으로 표현할 수 있어야 한다는 제약이 있지만, 탐색을 통해 여러가지 문제 해결 가능
- 문제를 논리적, 절차적으로 표현하기에 적절한 분야 중 하나가 게임
- 우리가 즐기는 다양한 게임에 탐색 기법을 이용한 인공지능을 적용
- 2016년, 바둑 기사 이세돌과 대국하여 4승 1패로 이긴 알파고의 핵심 기법은 탐색
인공지능에서 탐색을 위해 필요한 조건
- 상태
- 탐색을 통해 문제의 해답을 찾는 과정에서 거치게 되는 여러 상황들 각각을 상태라고 한다.
- 상태 공간
- 상태를 모아 놓은 공간을 상태 공간이라고 한다.
- 상태 정보
- 어떤 상태에서 다른 상태로 변경되는 데 적용되는 정보나 비용
- 초기 상태
- 문제를 해결하기 시작한 상태를 초기 상태라고 한다.
- 목표 상태
- 목표가 되는 상태를 목표 상태라고 한다.
궁극적으로 탐색은 초기 상태에서 목표 상태에 이르기까지 최적의 경로를 찾는 것으로 정의할 수 있다.
인공지능의 탐색
초기 상태에서 시작하여 상태 정보를 기초로 상태 공간상의 상태들을 살피고 다니며 목표 상태에 이르는 경로를 찾는 것
1) 8-퍼즐 상태 공간
탐색 트리(search tree)
- 컴퓨터에서 그래프는 데이터 간의 관계를 점과 선으로 나타낸 것으로, 점은 데이터를 나타내고 선은 데이터 간의 관계를 나타낸다.
- 트리는 이러한 그래프의 일종으로 나무를 뒤집은 모습과 닮아 있으며, 가계도처럼 계층 구조를 표현할 때 사용한다.
트리 구조
- 트리를 구성하는 각각의 데이터를 노드(node), 두 노드를 연결하는 선을 간선이라고 한다.
- 두 노드가 간선으로 직접 연결되어 있을 경우 상위 노드를 부모 노드, 하위 노드를 자식 노드라 한다.
- 부모가 없는 최상위 노드를 루트 노드(root node), 자식이 없는 노드를 리프 노드(leaf node)라 한다.
- 루트 노드를 제외하면 각 노드의 부모 노도는 하나이지만, 한 노드가 여러 개의 자식 노드를 가질 수 있다.
탐색 트리를 이용한 탐색 방법
- 맹목적 탐색
- 현재 상태부터 목표 상태까지 정해진 순서에 따라 모든 상태를 순차적으로 찾는 방법이다.
- 대표적인 탐색이 깊이 우선 탐색과 너비 우선 탐색이다.
- 경험적 탐색
- 라면을 고를 때 기존에 먹어봤던 경험을 이용해 선택하는 것처럼 이전의 경험을 바탕으로 다음 상태를 선택하는 기법이다. 인공지능도 경험적 정보를 이용하여 탐색하기도 하는데, 경험적 정보를 이용하여 가장 적합해 보이는 상태를 선택하여 확장하는 알고리즘을 최상 우선 탐색 또는 언덕 등반 탐색, A* 알고리즘이라고 한다.
2024.05.16 - [인공지능 기초] - 인공기초 - 0516
인공기초 - 0516
언어 이해를 위한 언어 처리 기술언어 이해의 과정언어 이해의 과정은 보통 4단계로 나뉘며 문장에 사용된 '단어'를 이해하는 과정이 가장 중요하다. 음성 인식 - 언어 이해 4단계(형태소 분석,
conewbie.tistory.com