반응형

 

PyTorch:
연구에서 product 사용까지 원활한(seamless) 경로를 제공하는 오픈 소스 딥 러닝 프레임워크

  • 모듈:
    Python 정의 및 명령문을 포함하는 단일 파일
    종종 관련 함수 또는 클래스 그룹과 같은 관련 기능을 함께 그룹화하는 데 사용됨
    모듈을 다른 Python 스크립트로 가져올 수도 있으므로 코드 재사용 및 모듈화가 가능
  • 패키지:
    동일 목적을 가진 관련 모듈의 모음
    쉽게 설치하고 Python 프로젝트로 가져올 수 있음
    종종 버전 정보 및 종속성 정보와 같은 추가 메타데이터가 포함됨
    대규모 코드베이스를 구성하고 관리하기 쉽게 만드는 방법을 제공
  • 라이브러리:
    특정한 목적을 위한 패키지의 모음
    해당 목적을 이루기 위해 다른 서브패키지의 설치를 걱정하지 않도록 준비됨
    일반적으로 프레임워크보다 더 유연하며 다양한 유형의 프로젝트에서 사용할 수 있음
  • 프레임워크:
    라이브러리의 모음
    개발 작업을 위한 아키텍처, 개발자가 따라야 할 일련의 규칙과 지침을 제공
    특정 유형의 애플리케이션 개발을 안내하는 더 크고 독단적인(opinionated) 구조
  • 유틸리티:
    파일 압축 또는 데이터 유효성 검사와 같은 특정 작업을 수행하는 작은 코드 또는 도구
    종종 독립 실행형 프로그램 또는 스크립트이지만 더 큰 라이브러리 또는 프레임워크의 일부로 포함될 수도 있음
  • 도구(tool):
    특정 작업 또는 일련의 작업을 수행하는 데 사용되는 소프트웨어 또는 하드웨어
    소프트웨어 개발, 데이터 분석 또는 네트워크 관리와 같은 다양한 목적을 위해 사용할 수 있음
    명령줄 인터페이스, 그래픽 사용자 인터페이스 또는 웹 기반 인터페이스일 수 있음
  • 도구 대 유틸리티:
  • 도구는 특정 작업을 수행하는 데 사용되는 모든 소프트웨어 또는 하드웨어를 참조할 수 있는 보다 일반적인 용어
    유틸리티는 하나의 특정 작업을 수행하는 데 중점을 두는 특정 유형의 도구
    도구는 유틸리티일 수 있지만 유틸리티는 항상 도구

 

기계 학습 프로세스:
데이터를 분석 및 이해하고 명시적으로 프로그래밍하지 않고 예측 또는 결정을 내리기 위해 알고리즘 및 통계 모델을 사용하는 프로세스
데이터 처리 -> 모델 생성 -> 모델 파라미터 최적화 -> 학습된 모델 저장

 

torch: numpy의 ndarrays와 유사한 다차원 배열을 제공하는 PyTorch 패키지
계산을 위해 GPU를 활용하는 기능이 추가됨

 

torchvision:
데이터 세트 로드 및 사전 처리와 같은 이미지 및 비디오 조작을 위한 도구를 제공하는 PyTorch 패키지

tensor:
일반적으로 딥 러닝에 사용되는 GPU를 사용하여 처리할 수 있는 다차원 배열

dataset:
기계 학습 모델을 교육하거나 테스트하는 데 사용되는 이미지 또는 텍스트와 같은 데이터 모음

dataloader:
기계 학습 모델을 교육하는 동안 데이터 세트에서 데이터를 로드하고 일괄 처리하기 위한 PyTorch 유틸리티

 

numpy:
Python 프로그래밍 언어용 라이브러리
대규모 다차원 배열 및 행렬에 대한 지원을 추가하고 이러한 배열에서 작동하는 대규모 고급 수학 함수 모음을 제공

ndarray :
동종 데이터(예: 정수 또는 부동 소수점 값)의 큰 배열을 저장하고 조작하는 데 사용되는 Numpy의 다차원 배열

자동 미분:
함수의 기울기가 자동으로 계산되는 프로세스
신경망 훈련을 위해 Pytorch에서 사용됨

Tensor API :
GPU에서 처리할 수 있고 Pytorch의 기본 구성 요소인 다차원 배열인 Tensor를 만들고 조작하는 Pytorch API

  • API(Application Programming Interface): 
    소프트웨어 응용 프로그램을 구축하고 상호 작용하기 위한 일련의 규칙 및 프로토콜
    서로 다른 소프트웨어 구성 요소가 상호 작용하는 방식을 정의
    서로 다른 시스템 간의 통신을 허용

 


normalization:
입력 데이터를 표준 형식으로 확장하기 위해 기계 학습에 사용되는 기술
예: 평균이 0이고 표준 편차가 1으로 변환
모델의 성능과 안정성이 향상될 수 있음

transform:
입력 데이터를 신경망에 전달하기 전에 입력 데이터에 적용되는 전처리 단계
크기 조정, 자르기 및 정규화와 같은 작업이 포함될 수 있음

신경망:
인간 두뇌의 구조와 기능에서 영감을 받은 일종의 기계 학습 모델
입력 데이터를 기반으로 학습하고 예측할 수 있는 상호 연결된 노드 또는 인공 뉴런의 레이어로 구성됨

레이어:
이미지 인식 또는 자연어 처리와 같은 특정 작업을 수행하는 상호 연결된 인공 뉴런 집합
계층을 함께 쌓아 더 복잡한 신경망 아키텍처를 형성할 수 있음

모듈:
신경망의 기본 빌딩 블록

텐서를 감싸고 다른 모듈을 포함할 수 있으므로 신경망 구성 요소를 쉽게 조작하고 재사용할 수 있음

 

선형 모듈:
입력 데이터에 대해 선형 연산을 수행하는 신경망 계층
torch.nn 모듈에서 Linear 클래스로 구현됨
Linear 클래스는 입력 데이터에 선형 변환을 적용

입력은 weight matrix에 의해 변환되고 bias 항이 더해짐
신경망 아키텍처에서 간단한 feedforward 계층으로 사용할 수 있음

 

forward:

신경망의 forward pass를 정의하는 함수

입력 데이터를 받아 네트워크의 출력을 반환

순방향 방법은 사용자가 정의하며 신경망의 아키텍처에 따라 다름

 

Feedforward:
입력 데이터가 이전 계층으로 돌아가는 루프나 연결 없이 네트워크를 통해 순차적으로 전달되는 프로세스

입력은 입력 레이어를 통과한 다음 하나 이상의 숨겨진 레이어를 거쳐 마지막으로 출력 레이어를 통과함

이름이 피드포워드인 이유: 한 레이어의 출력이 다음 레이어의 입력으로 사용되므로

Feedback connection: 없이 수행되며 기존 신경망 작동 방식의 기본 메커니즘

 

Feedback connection(피드백 연결):

이전 레이어 또는 이전 time step으로 돌아가는 연결을 의미

정보가 루프로 흐르도록 하여 반복적인 신경망을 생성

피드백 연결을 통해 네트워크는 메모리를 보유하고 과거 정보를 고려하여 결정을 내릴 수 있음
일반적으로 입력 순서가 중요한 자연어 처리, 음성 인식 및 시계열 분석과 같은 작업에 사용됨

순환 신경망(RNN)의 예: LSTM, GRU

 

예측 밀도(prediction density):
주어진 입력에 대해 가능한 출력 값에 대한 확률 분포

예측의 불확실성을 측정하는 것

이것은 예측의 불확실성을 정량화(quantify the uncertainty of the predictions)하고 더 많은 정보에 입각한 결정(informed decision)을 내리는 것 등에서 유용할 수 있음
Bayesian Neural Networks와 같은 일부 방법은 예측 밀도를 명시적으로 모델링
Dropout과 같은 다른 방법도 예측 밀도를 추정하는 데 사용할 수 있음

 

로짓(logit):

이벤트 발생 확률의 로그값
f(x) = log(x/(1-x))

(0,1) 범위의 입력 값을 (-infinity,+infinity) 범위로 매핑

일반적으로 이진 분류 신경망의 출력 계층에 대한 활성화 함수로 사용됨

이진 결과의 확률을 모델링하는 데 사용됨

신경망 훈련을 위한 크로스 엔트로피 손실을 계산하는 데 사용할 수 있음

네트워크의 출력을 확률로 변환하는 데 사용됨


모듈, 함수, 클래스 등 파이토치와 직접 관련된 개념

 

torch.nn:
신경망 구축을 위한 PyTorch 모듈
신경망 모델을 정의하고 훈련하기 위한 일련의 클래스와 함수를 제공

nn.Module:

PyTorch의 모든 신경망 모듈에 대한 기본 클래스

신경망의 forward를 정의하는 방법과 모델의 매개변수를 로드하고 저장하는 기능을 제공


__init__:

Python에서 클래스에서 개체를 만들 때 호출되는 특수 메서드

nn.Module 클래스의 __init__ 메서드는 신경망의 계층 및 기타 구성 요소를 정의하는 데 사용됨

torch.cuda:
CUDA 지원 GPU 작업을 위한 PyTorch 모듈

텐서 및 모델을 GPU로 이동하고 GPU에서 작업을 수행하는 기능을 제공



반응형

+ Recent posts