728x90

Cost function 은 예측값과 실제 결과 값의 차이를 나타내는 함수입니다. 

예측을 하는 데이터를 바꾸면서 실제 결과 값과 차이를 그래프로 나타내어 최소화 된 값을 구한는것이 cost function입니다.

Cost function 을 이용하여 Logistic Regression 에 해당하는 그래프를 그리면 아래와 같이 U 자 가 아닌 굴곡이 가득한 그래프가 보일것이다. 

Gredient descent algorithm 을 통해 최소값을 구하는데 굴곡점에서 컴퓨터는 최소화된 값이라 생각하여 학습을 멈추게 될것입니다. 따라서 가설을  바꾸어 cost function 도 New cost function for logistic 이 생겨났습니다. 

cost function 은 데이터에 대한 평균을 나태내는데 c라는 함수에 대한 평균으로 나타낼수 있습니다. 

Logistic Regression 의 경우 바로 이 C라는 함수가 달라지는데 결과 값인 y 에 따라 다른 함수를 대입시킵니다. 

log 에 대한 값이 들어간 이유는 e에 대한 값 처리를 하기 위해섭니다. 

실제 결과값은 0과 1사이에만 가질수있습니다. 

실제값이 1일때 그래프를 그려보게 되면 예측밧이 1에 가까워질수록 cost function 의 값은 집니다. 반대인경우 0에 가까워지면 cost function 의 값이 무한대로 증가되어 예측이 틀렸다는것을 보여줍니다. 

y 가 0일때도 마찬가지입니다. 

간혹가다 특별한 경우 예를 들어 병원 에서 암진단 관련으로 나올때는 평균값을 0.5가 아닌 0.4혹은 다른 평균값을 낼수 있습니다.

예측값을 0.4로 낮추었을때 

728x90

'ML > 머신러닝' 카테고리의 다른 글

Hierarchical clustering 소개  (0) 2022.07.20
머신러닝 - logistic classificaction  (0) 2022.06.20
머신러닝 Minimize cost  (0) 2022.06.20
머신 러닝 - 기본 용어 및 개념  (0) 2022.06.16
728x90

logistic classification  - Classification 알고리즘 중에서도 가장 정확도가 높은 알고리즘으로 알려져있습니다. 

그중에서도 Binary Classification 으로 둘중에 무엇에 속하는지를 판별하는 알고리즘으로 생각할수있다. 

대표적인 예시로 받은 이메일이 스팸인지 아닌지 판별이 필요하다. 또한 페이스북에서 나의 친구들의 모든 타임라인을 보여주는것이 아닌, 내가 좋아요 혹은 특정정보를 Follow 하여 생긴 것들을 판별하여 나의 피드에 띄어주는 학습 그리고 이때 쓰이는것이 encoing 할때 0 과 1이 사용된다

Binary Classfication 으로 값을 구할떄 linear regression 으로 구할수도있다. 단 단점이 너무 극명해진다. 

0~ 1 사이에 0.5를 기준으로 pass or fail 을 주는 알고리즘으로 생각해보자. 

2시간 공부해서 패스한 사람과 4시간 공부해서 패스한사람이 있고 0.5로 나누었을대 둘다 예를 들어 패스라고 가정하고 다른 학생이 50시간 공부해서 패스했다고 치면 평균의 값이 0.5가 아닌 1로 되어버려 학습이 되어버리고 2시간 혹은 4시간 공부한 사람들은 패스를해도 학습을 통한 머신은 불합격처리를 해줄수있다.

이러한 문제 점 때문에 sigmoid 함수를 이용하여 linear Regression 값을 사용하여 logistic Hypothesis 가 탄생하게 된다.

 

(Linear  Regression 형태의 식이 간단하고 좋지만 0 1 사이로 함축해주는 것이  z 축을 넣으면 좋을 거 같다 해서 나온 함수: 0~1가 나오는 함수 ( numpy에서 np.exp(-z) 로 쉽게 계산이 가능하다. )

 

728x90

'ML > 머신러닝' 카테고리의 다른 글

Hierarchical clustering 소개  (0) 2022.07.20
머신 러닝 - cost Function  (0) 2022.06.20
머신러닝 Minimize cost  (0) 2022.06.20
머신 러닝 - 기본 용어 및 개념  (0) 2022.06.16
728x90

Cost Function  

앞서 배운것 linear Regression 의 목표는 우리가 가지고 있는 W,b를 가지고 cost minimize 하는것이다. 

 

간단한 hypothesis 를 만드는 식을보자 

그러다면 cost(W) 는 어떻게 보일까? 

 

 

 

 

Gradient descent algorithm 

수식:

최소화 하는데 있어서 가장 많이 쓰이는 알고리즘이다. 

 

 

 

주어진 cost function 에 minimize 를 사용한다. 

아무지점이나 시작할수 있다. 

W가 0일때 시작할수도 있다. 

W를 조금 바꾸면서 cost 를 줄일수있다.

그 과정을 반복하는것이다. 

어떠한 점에서 시작하는 간에 최저점에 도달할수있는 과정이다. 

 

Convex function  : cost(w,b) 식으로 쓴다면 어느 시점에 시작을 하더라도 항상 답을 찾아서 가져다 준다. 

코스트펑션을 설계할때 무조건적 convex function 이 되는지 확인해야한다. 

linear 을 하기전에 cost 가 convext function 인지 보고 확인을 하고 문제없이 gradien descent algorithm 을 사용할수 있다. 

 

728x90

'ML > 머신러닝' 카테고리의 다른 글

Hierarchical clustering 소개  (0) 2022.07.20
머신 러닝 - cost Function  (0) 2022.06.20
머신러닝 - logistic classificaction  (0) 2022.06.20
머신 러닝 - 기본 용어 및 개념  (0) 2022.06.16
728x90

Machine Learning - 기계를 스스로 학습 시키는것

 

Supervised learning(지도학습)
  •   data(데이터) 와 label(값) 으로  학습 시킨 머신러닝 
  • ex) 사람들이  고양이가 있는 사진(data) 에 고양이라고표시(label) 을 넣어주어 학습시킨다(엄청나게 많은 사진이 필요함)
Unsupervised learning (비지도학습)
  • label(값)이 없는 상황속에서 데이터만 보고 스스로 학습시키는것
  • ex) 각종의 뉴스(정치,경제,스포츠 등...)을 자동적으로 그룹핑 시키는것 google news grouping 이 대표적이다. (컴퓨터보고 스스로 그룹핑해봐' 라고 시킨것) 

 

supervised learning

 

일반적으로 ML에서 주로 사용되는 것이다. 

 

ex)

  • Image labeling : 각각의 이미지에 맞는 label을 붙여서 학습 시킨 결과
  • Email spam filter : 이미 데이터화된 스팸메일을 통해 스팸인지 햄인지 구별해서 학습시킨 결과
  • Prediction exam score : 축적되어있는 성적 데이터를 통해서 시간대비 성적을 알려주는 학습. 

 

Training data / lebel 을 알아보자!

1)data 와 label 을 통해 학습을 시키고 2)임의 의 데이터값을 주었을때 3)결과(label)의 값을 가져오는 결과.

 

Types of supervised learning 

1)Regression ( 회귀) : 입력한 data에 대한 연속적인 수치를 예측하는것이다. 

 ex) 공부시간에 따른 점수(0~100점) 예측

 

예측 범위가 넓어서 classification 보다 regression 으로 볼수있다. 

 

2)Classification (분류) 

입력한 data 를 각각의 label로 분류하는것

-binary classification : 두단계로 분류 (ex) 공부시간에 따른 P or F

-multi-label classification : 여러 단계로 분류 (ex) 공부시간에 따른 A/B/C/D/F 등급

 

728x90

'ML > 머신러닝' 카테고리의 다른 글

Hierarchical clustering 소개  (0) 2022.07.20
머신 러닝 - cost Function  (0) 2022.06.20
머신러닝 - logistic classificaction  (0) 2022.06.20
머신러닝 Minimize cost  (0) 2022.06.20

+ Recent posts