우리는 결국 weak AI를 만들거예요
그러면 어떻게 만들까❓
CS쪽에서 데이터를 기반으로 학습 > 예측 하는 형태로 진행돼요
=> machine learning
지금까지 우리가 하고 있는 일반적인 program은 Rule Based program, Explicit program(규칙 기반 프로그램)이에요
데이터가 들어가면 학습해서 규칙성을 찾아냄
규칙성이 수식(Model)
으로 도출
✔️Machine Learning 기법
➡️ 정형화된 Data는 일반 머신러닝 기법을 이용해요
➡️ 비정형 Data(이미지, 자연어, 소리 등)는 딥러닝
✔️Machine Learning Type
1) data/label -> program-> 규칙성model => 지도학습
2) data -> program -> clusting -> 비지도학습
3) data -> program -> clusting -> 준지도학습
4) 강화학습 (알파고같은~)
우리가 배울것은 지도학습
: 어떤 데이터에 대해 그 데이터의 영향을 주는 조건들의 영향력을 이용해서 데이터에 대한 조건부 평균을 구하는 기법
ex)
아파트 가격
우리나라의 아파트 가격은 얼마인가요?
(가격에 직접적으로 영향을 주는 요소? 지역, 평수, 학군 등)
💢즉, 조건들의 영향을 받아서 데이터가 생성됨
전체를 통으로 잡기보단 조건들을 고려하여 설정
y(가격) = 평수 8000 + 역세권 3000 + 학군 * 5000
=> 조건에 따른 가중치가 있음. 이러한 조건을 가지고 평균을 내는것
한마디로 평균 구하는거에요
=> 평균은 우리가 대표값을 가장 많이 이용하는 값
(최소값/최대값/평균값/최빈값(빈도높은) 으로 대표값을 설정할건지~~~)
평균은 데이터를 가장 잘 표현하는 값
⭐어떤 데이터에 대해 그 데이터에 영향을 주는 조건들의 영향력을 이용해서 데이터에 대해 가장 잘 표현하는 함수
− 독립변수가 하나라면 우리의 모델은 어떻게 될까?
종속변수(예측치) = 가중치 독립변수 + 상수
⭐y = ax + b
(그래프 그림첨부)
독립변수가 2개일때 -> y = ax1 + bx2 + c 실제 그림을 그리면 평면으로 나옴
우리가 구해야하는 값 => a, b, c 회귀계수
즉, regression은 평균 구하는 기법!
평균으로 데이터를 잘 표현할 수 있는 데이터여야 의미가 있음.
평균을 사용하기 힘든 데이터라면 회귀모델 사용을 고려해봐야함
예를들어 이재용의 월급과 우리의 월급 같은,,,🥲
평균으로 사용하기 적합한 데이터는?
ex) 평균 키(중간이 젤 많은, 편향되지 x)
y = wx + b
이 그래프가 점들을 잘 표현하고 있는지 확인
어떻게 판단할것인지? Error(오차)가 적을수록 good
=> 평균 제곱 오차를 구한다(Mean Squared Error) y = wx + b
모델이 좋은지 나쁜지 판단하는 식을 통칭해서 loss fuction 비용함수 라고 함
위 경우 MSE가 적합
loss function은 '평균 제곱 오차MSE'로 판단
우리 loss는 결국 w b의 2차 함수
그래프로 그려보면 그래프가 U모양으로 그려짐
✔️loss가 낮아야 좋음
식을 어떻게 바꾸느냐?
y = x(입력으로 들어오는 2차원 matrix) * w(내가 구할 2차원 매트릭스) + b(상수)
model -> y = xw + b
loss -> mse(평균제곱오차) 이용
training dataset