Neural Network

인간 뇌의 기능을 묘사
- data : 자극이 입력기관을 통해 뇌로 입력
- activation : 자극이 들어오면 뉴런이 활성화
- weight : 같이 활성화되는 뉴런들은 강하게 연결된다

Linear Separability : 선형분리가능성

  • 선으로 무엇을 할 수 있을까?

공간을 분할해서 class를 분류할 수 있다

  • 빨간 부분 : y = f(x) > 0
  • 파란 부분 : y = f(x) < 0

이를 구분하는 수식
: x1,x2 값에 w1,w2 가중치를 곱하고 w0(절편)(인터셉트)(바이어스)을 더한다

 

위 수식을 그림으로 설명하면
- x1,x2으로 받아들이는 input값에 w1, w2 가중치를 곱하고
- 해당 값에 w0 절편을 더해서 해당 값이 0보다 크면 위, 작으면 아래로 class를 구분한다

  • 입력이 I개, 가중치 또한 I개, 절편은 1개
  • 연산이 된 값들이 더해져서 Weighted summation(가중합) 된다

가중합이 된 상태에서 어느 영역에 속하는지 판단한다 == Activation function(활성함수) = 공간을 분할한다

 

 

'학부과정 > 머신러닝' 카테고리의 다른 글

Train, Test, 교차검증  (0) 2022.11.09
과대적합, 과소적합  (0) 2022.11.09
MSE, MAE  (0) 2022.11.09
머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11

Train, Test 데이터 셋을 분리시키는 이유

  • Train 데이터로 학습한 후, Test데이터로 실험을 해봄으로써 지표를 확인한다
    (70:30 정도)

교차검증이란?

  • Train 데이터 셋을 나눈다
    ex) 5개정도로 나눈다고 가정(Fold 1 ~ 5)

    1번째 학습에서는 Fold2 ~ 5까지 학습
    2번째 학습에서는 Fold1,3,4,5를 학습
    3번째 학습에서는 Fold1,2,4,5를 학습
    4번째 학습에서는 Fold1,2,3,5를 학습
    5번째 학습에서는 Fold1,2,3,4를 학습
  • 각각의 학습에서 빠지는 Fold는 Validation, 즉 검증 데이터셋이 되는 것
  • 4개의 학습 데이터셋으로 학습을 시키고, 남은 1개의 Fold를 활용해서 성과지표를 임시로 만들어냅니다.
    그렇게 성과지표 1,2,3,4,5가 만듭니다

    임시적인 성과지표의 평균을 내서 대략적인 성과지표를 만든다.

교차검증을 하는 이유

  • Test 데이터셋을 넣어서 학습을 시킬 때 나오는 성과지표가 안정적으로 확보할 수 있도록 다양한 방식으로 
    학습을 시키는 것

 

'학부과정 > 머신러닝' 카테고리의 다른 글

Neural Network  (0) 2023.01.03
과대적합, 과소적합  (0) 2022.11.09
MSE, MAE  (0) 2022.11.09
머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11

과대적합(Overfitting)

  • 모델이 학습데이터에 과도하게 치우쳐져 학습이 진행된 것
    사례 ex) 2017,2018년도 기출문제를 완벽하게 알고있지만, 2019년도에서는 전년도 기출문제에서 나오지 않으면?

과소적합(Underfitting)

  • 성과자체가 너무 좋지 않은 것
    사례 ex) 기출문제도 모르는 상태로 시험을 푼다

'학부과정 > 머신러닝' 카테고리의 다른 글

Neural Network  (0) 2023.01.03
Train, Test, 교차검증  (0) 2022.11.09
MSE, MAE  (0) 2022.11.09
머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11

회귀 성과 지표

1. MSE

  • +, - 오차가 서로 상쇄되는 것을 방지하기 위해 오차에 제곱을 하고 나눈다

단점

  • + 오차가 클 경우, 제곱을 하면 오차가 너무 커지는 나머지 전체 오차를 왜곡할 수 있다

해결방안

  • MSE 전체에 루트를 씌운다 == RMSE

2. MAE

  • 제곱을 하지 않고 전체 오차에 절대값을 씌워 모든 오차를 +로 만들고 나누는 것

'학부과정 > 머신러닝' 카테고리의 다른 글

Train, Test, 교차검증  (0) 2022.11.09
과대적합, 과소적합  (0) 2022.11.09
머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
준지도&자기지도 학습  (0) 2022.10.11

머신러닝
: 학습을 통해 특정 업무를 실행할 수 있는 인공지능

종류
1. 지도학습
- 입력변수, 출력변수가 주어진 것

2. 비지도 학습

  • 입력변수만 있고, 출력변수는 없다
  • 모델 스스로 학습

ex) 자동차의 디자인, 사양을 넣고 컴퓨터에게 이 자동차를 분류해보라 라고 명령하는 것

3. 강화 학습

  • 지능을 가진 agent가 특정한 행동을 선택하는 것

Predictive modeling(예측 모델링)

1. Decision

  • Yes or No를 예측

ex) 스팸메일인지, 아닌지 예측
사과인지 사과가 아닌지 예측

2. Estimates

  • 연속변수인 출력변수를 예측
    (출력변수 == target)

    ex)자동차 가격, 주택 가격처럼 연속적인 숫자로 변하는 타겟변수를 예측

3. Ranking

  • 여러 대안중에서 가장 효과가 좋은 대안을 선택하는데 쓰임

'학부과정 > 머신러닝' 카테고리의 다른 글

과대적합, 과소적합  (0) 2022.11.09
MSE, MAE  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
준지도&자기지도 학습  (0) 2022.10.11
비지도 학습(Unsupervised Learning)  (0) 2022.10.11

강화학습(Reinforcement Learning)

  • 행동 결과에 따른 보상(혹은 벌점)을 레이블로 줌
    [체스 승리 or 패배]
  • 주어진 환경(enviornment)에서 에이전트(agent)가
    최대의 보상(reward)을 얻기 위해 최상의 정책(policy)을 학습
  • 딥마인드의 알파고(Alpha Go)
    아타리(Atari)게임

Batch 학습(Offline 학습)

  • 학습 데이터를 모두 모은 후 한꺼번에 학습 : 배치(batch)학습
  • 새 데이터가 추가되면 이전 학습데이터와 합쳐 새로 학습함
  • 일반적으로 시간과 자원이 많이 소모됨
  • 훈련과 모델 런칭을 자동화할 수도 있다
    ex) 새 데이터를 추가해서 내가 원하는 시간대마다 자동으로 학습
 

온라인(online) 학습

  • 데이터가 실시간으로 추가됨 : 실시간 학습
  • 데이터 한 개 또는 미니배치(mini-batch)라 부르는 작은 묶음 단위로 훈련
    --> 추가학습(incremental learning)이 더 올바른 표현
  • 학습 단계가 빠르고 데이터가 준비되는 대로 즉시 학습할 수 있음[ ex) 주식 or 코인..?]
  • 사용한 샘플을 버릴수도 있고 보관할 수도 있다

온라인 학습 주의사항

  • 학습률(learning rate)로 데이터에 얼마나 빠르게 적응할지 제어
  • 나쁜 데이터가 모델 학습에 주입되면 성능이 조금씩 감소됨
  • 시스템 모니터링이 필요하고 성능 감소가 감지되면 학습을 중지하고 이전 버전으로
    되돌리거나 비정상적인 데이터를 찾음
 
 

'학부과정 > 머신러닝' 카테고리의 다른 글

MSE, MAE  (0) 2022.11.09
머신러닝_1  (0) 2022.11.09
준지도&자기지도 학습  (0) 2022.10.11
비지도 학습(Unsupervised Learning)  (0) 2022.10.11
지도학습(Supervised Learning)  (0) 2022.10.10

준지도 학습(Semi-supervised Learning)

  • 대부분 데이터에는 레이블이 없고 일부 데이터에만 레이블이 있음
  • 군집을 통해 데이터를 분할하고 소수 레이블을 이용해 전체 그룹을 인식
  • Google Photos, Facebook 사진 태그
  • 제한된 볼츠만 머신(RBM)으로 구성된 심층 신뢰 신경망(DBN)
 

자기지도 학습(Self-supervised Learning)

  • 오토인코드(Autoencoder)-15장
  • 입력과 레이블이 동일함
  • 일반적인 레이블이 없기 때문에 비지도 학습
    자기자신이 타깃이기 때문에 자기지도 학습
    어쨌든 타깃이 있으므로 지도 학습으로도 부른다

'학부과정 > 머신러닝' 카테고리의 다른 글

머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
비지도 학습(Unsupervised Learning)  (0) 2022.10.11
지도학습(Supervised Learning)  (0) 2022.10.10
머신러닝  (0) 2022.10.10

비지도 학습(Unsupervised Learning)

  • 훈련 데이터에 레이블이 없음
  • 블로그 방문자를 그룹으로 묶기(어떻게 40%는 학생, 20%는 성인인 것을 알 수 있을까?)
  • 고객을 자동으로 그룹으로 나누어 각각 다른 홍보자료를 보내기(전자기기, 식료품점, ...)

대표적인 비지도 학습 알고리즘

  • 군집(Clustering)
    - k-평균(k-means)
    - 계층 군집(Hierarchial Clustering), 병합 군집(Agglomerative Clustering)
    - 기댓값 최대화(Expection Macimization)

  • 시각화, 차원 축소
    - 주성분 분석(PCA), 커널 PCA, NMF
    - 지역 선형 임베딩(LLE)

  • 연관 규칙(Association Rule) : 데이터 마이닝
    - 어프라이어리(Apriori), 이클렛(Eclat)
 
 

'학부과정 > 머신러닝' 카테고리의 다른 글

머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
준지도&자기지도 학습  (0) 2022.10.11
지도학습(Supervised Learning)  (0) 2022.10.10
머신러닝  (0) 2022.10.10

지도학습(Supervised Learning)

    • 학습데이터베이스(훈련세트) = (특징, 레이블) 쌀

 

레이블[Label, 정답(ground truth)또는 타깃(target)이라고도 한다]

  • 스팸/스팸 아님 --> 이진분류(binary classification)
  • 개/고양이/새 --> 다중분류(multiclass classification)

 

클래스(class) : Label의 범주

  • 스팸/스팸아님
  • 개/고양이/새

 

특징[feature, 속성(attribute)]

 

분류(classification) / 회기(regression) 문제

  • 문서 내 문자들 --> 스팸/스팸아님 : classification(분류)
  • 영상의 픽셀들 --> 개/고양이/새 : classification(분류)
  • 주행거리, 연식, 브랜드 --> 중고차 가격 : 회기(Regression)

 

 

대표적인 지도(Supervised) 학습 알고리즘

  • k-최근접 이웃(k-Nearest Neighbors)
  • 선형 회귀(Linear Regression) - 회귀 알고리즘
  • 로지스틱 회귀(Logistic Regression) - 분류 알고리즘
  • 서포트 벡터 머신(Support Vector Machine, SWM)
  • 결정 트리(Decision Tree), 앙상블 학습(Ensemble Learning)
  • 신경망(Neural Network), 딥러닝(Deep Learning) : 지도/비지도/강화

'학부과정 > 머신러닝' 카테고리의 다른 글

머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
준지도&자기지도 학습  (0) 2022.10.11
비지도 학습(Unsupervised Learning)  (0) 2022.10.11
머신러닝  (0) 2022.10.10

머신러닝이란?

: 데이터로부터 학습하도록 컴퓨터를 프로그래밍하는 기술

 

머신러닝이 유용한 분야

  • 많은 수동 조정과 규칙이 필요한 문제
  • 전통적인 방법으로 해결하기 어렵거나 알려진 해가 없는 문제
    ex) 음성인식
  • 변화하는 환경에 적응해야 하는 문제
    : 새로운 데이터에 적용할 수 있음
  • 복잡한 문제와 대량의 데이터에서 통찰 얻기(데이터 마이닝)

머신러닝 시스템 종류

  • 사람의 감독여부
    Supervised(지도), Unsupervised(비지도), Reinforcement(강화학습)
  • 실시간으로 점진적 학습인지 여부
    Online(온라인 학습), Batch(배치 학습), Incremental(점진적 학습)

  • 훈련 데이터와 단순 비교인지, 패턴을 찾기 위해 예측 모델을 만드는지
    Instance-based(사례 기반), Model-based(모델 기반 학습)
 

'학부과정 > 머신러닝' 카테고리의 다른 글

머신러닝_1  (0) 2022.11.09
강화&Batch&온라인 학습  (0) 2022.10.11
준지도&자기지도 학습  (0) 2022.10.11
비지도 학습(Unsupervised Learning)  (0) 2022.10.11
지도학습(Supervised Learning)  (0) 2022.10.10

+ Recent posts