인공지능 1일차

김찬울·2021년 8월 4일
0

데이터 마이닝

(대량에 데이터에서 새롭고 가치있고 의사결정에 유용한 정보를 찾는것임)

데이터라는 광산에서 광물을 캐내는 것과 같다해서 데이터 마이닝

그래서 이를 통해 나온 지식이 모델링의 데이터가 되어 학습 하는 것이 머신러닝임.

통계(데이터 모델링), 데이터마이닝(데이터전처리), 컴퓨터 사이언스(인공지능)의 교집합이 머신러닝이다.

scipy

scipy는 과학계산 위주임. numpy pandas matplotlib jupyter 사이킷런이 중요하다 분류, 모델선택, 회귀, 클러스터링, 전처리 등등이 모듈로 존재하듯 필요에따라서 모듈단위로 가져온다.
scikit-learn

분류(종류별 분류 옳고그른것등등)

회귀(연속수치 예측)

클러스터링(unsupervised learning의 일부로 비감독 학습 = 지도없이 학습 = 정답없이 학습, 경향을 분석하거나 어떤 특징을 가지는 지 파악하는 기법)

차원축소 (인수분해등을 통한 시리즈형태를 만들거나 한다.)

모델선택 (해당 데이터에 맞는 모델을 탐색해주고 검증하여 비교해준다.)

전처리 (pandas에서 주로하는 NaN등의 처리와 이와같은 데이터 전처리를 하기 용이하다.)

등등의 모듈을 보유하고 있다.

분류 예측 프로세스 붓꽃 데이터
컬럼이 피처로 가는 것이 다수다 그리고 레이블은 분류다. 분류가 정답인데 분류가 정해지면 지도학습 안정해지면 비지도 학습

정답이 정해진 것으로 학습하고
정답이 없는 것으로 테스트를 하는 것이 머신러닝이다.

  • K-최근접 이웃 : 근처값을 받아온다.
  • 선형회귀 : 비레하는 값을 보아서 이게 이러면 저건 저럴 것이다 라는 느낌 경향성을 보고 찾는 듯*
  • 로지스틱 회귀 : 기본은 선형회귀인데 함수를 한번 더 거치는 동안 분류가 되어서 이거냐 저거냐를 찾아서 확률값으로 나타낸다.
  • 서포트 벡터 머신 : 수학적인 모델로 딥러닝 이전에 주로 사용된 수학적으로 탄탄한 머신러닝 알고리즘이다. 다목적이라서 분류와 회귀 모두 가능하다. 후에 딥러닝에 밀렸다.
  • 결정 트리 와 랜덤 포레스트 : 트리의 노드로 의사결정을 통해서 분류, 회귀를 한다., 랜덤포레스트는 앙상블 모델로 단일의 약한 여러가지를 합친 것이 앙상블인데 해당 모델은 그중에서 노드만을 합쳐놓아 강력한 것이 특징이다.
  • 신경망 : 인간의 뉴런을 흉내내어 만든 모델 딥러닝으로 비교적 최근모델

비지도 학습

  • 비지도학습은 레이블(정답)이 없어서 직접 확인하기 전까지올바른지 평가하기 어렵다. 지도학습과 정확도를 찾는법이 다르다.
  • 데이터를 이해하기 위한 탐색적 데이터 분석에도 사용된다.

군집

데이터들을 특징에 따라서 그룹으로 묶는 것이다. 블로그 방문자로 따지면 취미생활, 활동시간, 방문시간 이런 것으로 분리할 수 있다.

차원 축소

상관관계가 있는 특성들을 하나로 만든다.
차의 주행거리 + 연식 -> 차의 마모 이런식으로 비례하는 특성을 모아서 새로운 특성을 만든다

이상치 탐색

평소의 값에 비해서 비이상적으로 튀는 값이 발견한다면 자동으로 제거할 수도 있다.
그 자체로도 판단하는 용도로도 쓰인다.

연관 규칙 학습

대량의 데이터에서 특성간의 흥미로운 관계를 찾음
바비큐 소스와 감자를 구매한 사람이 스테이크도 구매 하는 경향을 파악

규칙기반 학습의 한 종류로 사이킷런에서 제공하지 않는다.

준지도 학습

모든 값에 레이블이 있지는 않고 소수의 데이터에만 레이블이 있다.
해서 군집을 통해서 군집내부 데이터들의 레이블을 파악하여 속성을 부여하는 느낌이다.
가족사진의 구성원 군집에서 a집단이 1, 3, 5... 가 있지만 3이 아들이면 1과 5도 아들일 가능성이 크다는 것이다.

강화학습

매우 다른 종류의 알고리즘

주어진 환경에서 에이전트가 최대의 보상을 얻기위해 최상의 정책을 학습
알파고가 그 예이다.
보상을 얻을 확률이 높은 것들만 찾아나가는 것임.
최적의 해를 찾는다.

배치학습

가용한 데이터를 모두 사용한다. 24시간 혹은 1주일마다 학습 시간 자원 많이 소모

샘플 한개 또는 미니 배치라 부르는 작은 묶음 단위

온라인학습

컴퓨팅 자원이 제한된 경우에 적합

연속적으로 데이터를 받고 빠른 변화에 적응해야 하는 시스템에 적합

빠르고 빙요도 적게들어 데이터가 준비되는 대로 즉시 학습

컴퓨터 한대가 메인메모리에 들어갈 수 없는 아주 큰 데이터 셋을 학습할 때도 사용한다

사례 기반 학습

일반화 방법에따라서 사례 기반과 모델 기반으로 나눈다.

사례를 기억해서 이와 유사도 측정을 통해 새로운 데이터를 일반화

EX) 스팸메일에 가지고 있는 단어와 공통으로 가지고 있는 단어가 많으면 스팸으로 분류한다.해당 유사도 측정은 공통 단어의 수를 세는것!

세모 두개를 갖고있고 네모 하나를 가지고 있으면 세모에 비슷하다고 판단함 최근접 이웃과 다를 가능성이 있다 멀리보고 좁게보느냐의 차이

모델 기반 학습

샘플로 부터 일반화를 시켜서 함수를 만들어 포함되면 이쪽 군집 해당되지 않으면 저쪽 군집 이런 느낌으로 예측한다.

패턴을 통해서 분류하는 함수를 만드는 것이 중요하다

aX+ b = Y 값과 해당 함수의 그래프의 거리가 줄어드는 즉 비용함수의 값이 작아지는 모델 파라미터 (기울기와 절편)을 구해야 한다. 이를 찾는 과정을 훈련 또는 학습이라고 한다.

비용함수

  • 좋은 모델을 고르기 위해서는?

측정 지표를 정해야 함
얼마나 좋은지를 측정하는 효용함수로 정하거나 반대로

profile
코린코린이

0개의 댓글