본문 바로가기

ML공부🖥️

파이토치 트랜스포머를 활용한 자연어 처리와 컴퓨터비전 심층학습 chapter1

  • 지도 학습 : 훈련 데이터와 레이블의 관계를 알고리즘으로 학습시키는 방법. 입력 데이터와 출력 데이터로 구성. ex) g회귀분석, 분류
    • 회귀 분석 : 둘 이상의 변수 간의 관계를 파악함으로써 독립 변수인 X로부터 연속형 종속변수인 Y에 대한 모형의 적합도를 측정하는 통계적 분석 방법. 선형 회귀와 비선형 회귀로 나눌 수 있다.
    • 분류 : 새롱누 데이터를 대상으로 할당돼야 하는 카테고리 또는 범주를 스스로 판단. 새롱누 데이터를 대상으로 참인지 거짓인지 분류할 수 있다면 이진분류, 세 개 이상의 카테고리로 나눠 분류할 수 있다면 다중분류
  • 비지도 학습 : 지도 학습과는 다르게 훈련 데이터에 레이블을 포함시키지 않고 알고리즘이 스스로 독립 변수 간의 관계를 학습하는 방법. 레이블이 존재하지 않기 때문에 특정한 규칙을 지정하여 패턴이나 상관관계를 찾는 모델을 생성 ex) 군집화, 이상치 탐지, 차원 축소
    • 군집화 : 입렵 데이터를 기준으로 비슷한 데이터끼리 몇 개의 군집으로 나누는 알고리즘. 
    • 이상치 탐지 : 이상치와 이상 탐지가 있다. 밀도가 높은 지역의 데이터는 정상치, 밀도가 낮은 지역의 데이터는 이상치
    • 차원 축소 : 고차원 데이터의 차원을 축소해 저차원의 새로운 데이터로변환하는 것. 특징 선택과 특징 추출이 있다.  
  • 준지도 학습 : 레이블을 사용하는 지도 학습과 레이블을 사용하지 않는 비지도 학습의 중간에 있는 학습 방법. 
    • 평활도 가정 : 특징이 비슷한 데이터는 동일한 레이블을 가질 가능성이 높다.
    • 저밀도 가정 : 데이터의 확률 밀도가 높은 곳에는 결정 경계가 생기지 않는다.
    • 다양체 가정 : 고차원 공간의 데이터 특징을 잘 표현하는 저차원 공간이 존재
  • 강화 학습 : 크게 환경, 에이전트, 상태, 행동, 보상, 정책으로구성
    • 마르코프 결정 과정 : 이산 시간 확률 제어과정. 시간에 따른 시스템의 상태 변화를 의미. 강화학습에서 중요한 가정 중 하나는 환경이 마르코프 결정 과정의 마르코프 속성을 가진다. 과거 상태와는 별개로 현재 상태에 의해서만 결정된다는 의미. 지속적으로 상태가 변화하는데, 어떤 상태에서 다음 상태로 변화하는 것을 전이라고 한다. 
    • 가치 함수 : 어떤 상태 St에서 정책에 따라 행동할 때 얻게 되는 기대보상.
    • 모델 기반 & 모델 프리 : 강화 학습에서의 모델을 데이터와 결괏값에 대한 규칙 (f(x))이 아닌, 환경에 대한 가정을 모델로 간주. 에이전트가 환경의 모델에 상태 전이와 보상을 예측
  • 머신러닝 파이프라인 프로세스
    • 데이터 준비 : 데이터를 수집하고 수집된 원시 데이터를 학습에 적합하게 준비하는 단계
      • 데이터 수집 : 머신러닝 시스템에 필요한 데이터를 모으는 프로세스. 최대한 많은 데이터를 확보해 데이터 레이크를 구축.
      • 데이터 정제 : 데이터의 품질을 보장하기 위해 오류를 수정하고 누락된 데이터를 채우며 불필요한 데이터를 제거. 정리된 데이터는 일관성 과 무결성이 유지 돼야 한다. 정제된 데이터는 데이터베이스나 데이터 웨어하우스를 구축해 관리
      • 데이터레이블링 : 정제된 원시 데이터를 식별하고 데이터 가공 도구를 활용해 하나 이상의 정보를 태깅하는 과정.
      • 분석 및 시각화 : 데이터 수집부터 데이터 레이블링까지 완료됐다면 탐색적 데이터 분석을 진행. 데이터 준비는 지속적으로 진행하는 프로세스이므로 핛브 데이터의 불균형이나 데이터 드리프트가 발생할 수 있다. 
    • 모델링 : 다양한 알고리즘 기법을 적용해 특정 유형의 패턴을 인식하도록 학습된 시스템을 구축하는 것. 
      • 피처엔지니어링 : 데이터세트에서 머신러닝 모델 학습에 포함될 변수나 특징을 추출하고 변환하는 작업.
        • 특정 선택 : 학습에 사용할 데이터만 선별하는 과정
        • 특징 샘플링 : 선별된 데이터의 분포를 균등 분포로 추출하거나 계층적 샘플링 등으로 추출하는 과정
        • 특징 변환 : 샘플링된 데이터를 숫자형 데이터로 변환하는 과정
        • 특징 추출 : 특징을 더 작은 차원으로 축소하면서 원래 데이터의 속성을 유지하도록 변환하는 과정
        • 특징 구성 : 기존 특징을 활용해 새로운 특징을 생성하는 과정
      • 모델 설계 : 현재 구축하려는 시스템에 적합한 알고리즘이나 모델을 설계하고 구현하는 단계. 구조 설계가 완료됐다면 비용함수를 비롯해 하이퍼파라미터등을 정의하고 모델학습을 진행.
      • 모델 학습 : 최적의 모델을 선정하고 학습을 통해 최적화된 모델 매개변수를 찾아내는 과정. 
    • 모델 평가 : 머신러닝 아키텍처에 있어서 가장 중요한 프로세스. 
      • 모델 검증: 모델을 학습시킨 이후 모델의 성능을 확인하고 서비스 목적에 부합하는지 판단하는 프로세스. 
      • 성능 개선 : 크게 데이터 중심 개선과 모델 중심 개선이 있다. 데이터 중심 개선 방법은 학습에 사용되는 데이터의 수나 특징의 수를 늘려 학습 데이터를 개선. 기준 모델이 어느 정도의 성능을 보여준다면 데이터나 특징의 증가를 통해 확실하게 성능을 증가시킬 수 있다. 모델 중심 개선 방법은 인공 신경망의 구조를 변경하거나 모델 매개변수를 확장해 더 고도화된 예측을 할 수 잇게 모델을 변경하는 과정. 또한 하이퍼파리미터 최적화를 통해 성능을 개선할 수 있다. 
    • 모델 배포 : 머신러닝 시스템을 서비스화하거나 상용화 하는 단계
      • 배치 인퍼런스 : 입력 데이터를 배치로 묶어 한 번에 추론하는 방법. 
      • 온라인 인퍼런스 : 클라우드 환경이나 내부 서버 망에서 RESTfull API 기반으로 요청이 올 때마다 즉시 예측값을 제공하는 방법. 
      • 에지 인퍼런스 : 내부 환경이 아닌 하드웨어에 직접 배포돼 추론하는 방법을 의미한다.