전체 글 94

신뢰수준 95%의 의미

신뢰수준(confidence level)은 아마도 고교 통계 시간에서부터 접하는 개념으로, 데이터 사이언스 분야에서는 파라미터의 추정치에 관하여 신뢰할 수 있는 정도를 알고자 할때 사용되곤 하는 것 같다. 그런데 여기서 신뢰(confidence)라는 것은 사실은 묘한 뉘앙스인 것이 정확(precise)과 믿을 수 있는(reliable)것의 중간적인 성격이다. 신뢰수준이라는 개념을 배울때 처음에 반드시 헷갈리는것이 "신뢰수준 95%의 의미는 신뢰구간에 95%의 확률로 모평균이 포함될것이다." 라는 해석을 내놓는 것이다. 이 말의 의미를 조금 더 살펴보면, 95%확률이라는 것은 대게 100번중 95번은 모평균이 저 신뢰구간에 포함될 수 있다는 말인데, 어떻게 결정된 값인 모평균이 확률적으로 저 구간에 포함될..

파이썬 클래스 메서드(classmethod)와 정적 메서드(staticmethod)

기본적으로 파이썬 클래스의 메서드들은 첫번째 인자로 'self' 매개변수를 포함시키는게 일반적이다. 'self'는 메서드가 호출될 때 해당 인스턴스 자체를 자동으로 참조하는 역할을 한다. 이를 통해 메서드 내에서 해당 인스턴스의 속성(attribute)이나 다른 메서드에 대해 접근할 수 있다. 그런데 이와는 달리, 첫번째 인자로 'self'가 아닌 'cls'를 받는 메서드가 존재한다. 바로 클래스 메서드(clasmethod)이다. 클래스 메서드의 경우, 'self'가 아닌 'cls'를 필수적으로 포함해야 한다. 1. 클래스 메서드 - 클래스 메서드는 메서드 선언시에 @classmethod의 데코레이터를 달아주어 정의하게 된다. - 클래스에서 직접 호출하는 점 때문에 인스턴스 객체를 수정할 수 없다. 클래..

%cd와 !pip install 명령어의 '%'와 '!'는 무엇일까?

'%cd'와 '!pip'에서 사용되는 '%'와 '!'는 IPython(주피터 노트북에서 주로 사용되는 Python 인터랙티브 쉘)의 특수 명령어 접두사다. 각각은 다른 목적과 기능을 가지고 있다. 1. '%' (매직명령어)'%'는 IPython의 매직 명령어를 나타내며, IPython 자체에 의해 처리된다. 이러한 명령어들은 일반적인 Python 코드와는 다르게 IPython환경을 위해 특별히 제작되었다. 예를 들어, '%cd'명령어는 현재 작업 디렉토리를 변경하는 IPython 매직 명령어이다. 매직 명령어는 IPython에 의해서만 인식되고 실행되며, Python 스크립트상에서는 사용할 수 없다. 2. '!' (시스템명령어)'!'는 주피터 노트북에서 시스템 쉘 명령어를 실행할 때 사용된다. 예를들어,..

파이토치 에러 핸들링 - TypeError: cross_entropy_loss(): argument 'input' (position 1) must be Tensor, not NoneType

loss = nn.CrossEntropyLoss()(preds, label.to(device)) 에러 메세지 : TypeError: cross_entropy_loss(): argument 'input' (position 1) must be Tensor, not NoneType 해당 에러 메세지는 학습 루프안의 loss를 계산하는 과정에서 발생하였고,사유는 첫번째 포지션 인자인 preds가 NoneType이라는 에러였지만, 원인은 모델의 forward 메서드에서 리턴값이 누락된 경우였다.

파이토치 텐서의 기본 구성요소

파이토치(Pytorch)의 기본 데이터 구조인 텐서(Tensor)는 데이터와 gradient계산을 위한 메타데이터를 포함하고 있다. 기본적으로 텐서는 다음과 같은 주요 속성을 갖는다. 1. data 텐서의 주요 구성 요소로, 실제 수치 정보를 저장한다. 데이터는 다양한 차원을 가질 수 있으며, 신경망에서는 주로 벡터, 행렬 또는 더 높은 차원의 배열로 사용한다. 2. dtype 텐서에 저장된 데이터 타입을 정의한다. 예를 들어, 'torch.float32'; 'torch.int64'등이 있다. 3. device 텐서가 어떤 장치(CPU,GPU)에 할당되어 있는지를 나타낸다. 4. requires_grad 이 속성이 'True'로 설정되어 있으면, 텐서에 대한 모든 연산은 자동 미분 시스템에 의해서 추적되..