1-2. 인공지능의 개념
728x90

AI(Artificial Intelligence)

인공지능의 정의

- 작은 목적을 달성하기 위한 복합체

- 단순 입력 수치를 계산하는 SW는 AI가 아니다

- 입력한 데이터를 기반으로 스스로 새로운 대답을 창출할 수 있는 것

 

인공지능의 역사

제1차 인공지능 열풍(1956년)

- 대화할 수 있는 컴퓨터 ELIZA

>> 음성이 아닌 문자로 대화할 수 있는 컴퓨터

>> 치료사 역할의 대화 시뮬레이션 Doctor

>> 단순한 패턴에 맞춰서 대화를 구현하는 프로그램

- 대화형 컴퓨터의 성능을 측정하는 튜링 테스트

>> 컴퓨터의 성능을 측정할 때 사용하는 방법

>> 상대방이 보이지 않는 상태에서 인간이 인공지능 또는 제3의 인간과 대화하게 한 후 상대방이 인공지능인지 인간인지 구분하게 만드는 테스트(2014년 최초로 통과)

 

제2차 인공지능 열풍(1980년)

- 전문가 시스템의 등장

>> 호텔 예약 시스템: 인간처럼 복잡하게 생각하지 못하는 단순한 시스템

 

제3차 인공지능 열풍

- 머신 러닝(기계학습)의 등장

>> 데이터에서 패턴과 규칙을 컴퓨터 스스로 추출하는 기술

>> 이전과 달리 유연한 대응이 가능해짐

>> 규칙에 없는 값을 입력해도 컴퓨터가 생각해서 응답함

- 딥러닝 VS 머신러닝

>> 딥러닝 기술을 적용한 알파고의 등장

>> 머신러닝: 미리 제공된 다양한 정보를 학습한 후 결과를 이용하여 새로운 것을 예측하는 기술

>> 딥러닝: 신경망을 추가하여 스스로 판단하고 학습하여 앞으로의 상황을 예측하는 기술

 

인공지능의 장점과 단점

인공지능이 잘하는 일

- AI는 분류를 잘한다

>> 방대한 데이터에서 특정 규칙과 유형을 찾아내는 일을 잘함

>> 미리 배우지 않은 모르는 것도 예측하여 분류할 수 있다

인공지능이 못하는 일

- AI는 창조적인 일을 못한다

>> 0에서 1을 만들어내지 못함

>> 정보가 없는 상태에서 아무것도 하지 못함

>> 데이터 사이언스: 데이터를 모은 후 가공하여 처리하고 컴퓨터에 집어넣는 일은 사람이 해야 함

- AI는 정확한 답을 알지 못한다

>> 정보의 신뢰성을 판단하지 못함

>> 결론을 내리고 의사결정을 해 주는 것은 사람

 

인공지능과 일반 프로그램

일반 프로그래밍 #General Programming

def eval(x):
	return 3*x+1
    
# 다음 입력을 하여 함수의 값을 계산한다
x = int(input('원하는 값을 넣어 주십시오: '))
print(x, '일때 값은', eval(x))

"""
result
원하는 값을 넣어 주십시오: 8
8일때 값은 25
"""

머신 러닝 프로그래밍 #Machine Learning

# 머신러닝
# 패키지
import sklearn
import numpy as np

# 학습데이터
x_train = np.array([1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0], dtype = float).reshape(-1, 1)
y_train = np.array([4.0, 7.0, 10.0, 13.0, 16.0, 19.0, 22.0], dtype = float)

# 알고리즘 = 선형회귀 적용(LinearRegression)
model = Sklearn.linear_model.LinearRegression()

# 실제학습
model.fit(x_train, y_train)

# 학습된 모델에 실제 입력값을 주고 예측한 값을 생성
print(model.predict([[8.0]]))

"""
result
[25.]
"""
728x90

'교육 > 수학으로 푸는 자율주행 AI' 카테고리의 다른 글

1-3. 자율주행의 개념  (0) 2022.04.11
1-1 인공지능과 수학과의 관계  (0) 2022.04.08