본문 바로가기
반응형

프로그래밍 이야기/Python9

선형 회귀 분석에서 신뢰 구간(Confidence Interval)과 예측 구간(Prediction Interval) 작성 및 수정 기록 2022년 08월 25일 - 작성 및 공개 목차 들어가며 1. 신뢰구간(Confidence Interval)과 예측구간(Prediction Interval)의 의미 2. 신뢰 구간과 예측 구간의 수학적 표현 1) 신뢰 구간 2) 예측 구간 3) 정리 4) 그래도 부족한 부분 3. 신뢰 구간과 예측 구간 그리기 1) 수식 활용하기 2) 함수 활용하기 4. 참고 문헌 들어가며 파이썬으로 배우는 통계학 교과서로 통계 스터디를 하고 있었습니다. 같이 공부하시는 분 중에 항상 허를 찌르는 질문을 해주시는 분이 계신데 아래의 그래프를 보시고 "왜 신뢰구간에 대한 그래프는 곡선이에요?"라고 질문을 하셨습니다. 문제가 생겼습니다. 저도 그 이유를 모른다는 거였습니다. 그래서 한번 열심히 공부해서 왜.. 2022. 8. 25.
[Python] type과 instance의 차이 그리고 type으로 클래스 메서드 사용하기 어느 날 고전 컴퓨터 알고리즘 인 파이썬 책을 보는데 type(인스턴스 A).method_name(인스턴스 B) // (인스턴스 A, B는 동일 클래스로부터 생성)라고 작성된 코드를 발견하게 됩니다. 이게 대체 뭔가요? 클래스의 메서드를 단순히 호출하는 것도 아니고 type을 사용하고 메서드에 다른 클래스를 넣어서 실행을 한다고요? 이 글의 코드 몇 줄에 대한 궁금증으로 시작하여 type과 instance 그리고 type으로 클래스 메서드(class method)를 사용하는 방법에 대해서 공부하고 정리한 글입니다. 1. 클래스 그리고 상속 간단한 예제를 만들어 보겠습니다. 클래스 상속에서 흔히 등장하는 컴퓨터, 데스크톱, 그리고 랩탑을 가지고 예시를 만들어 보겠습니다. 1) 부모 클래스인 Computer.. 2022. 7. 18.
[TensorFlow] cannot import name 'dtensor' from 'tensorflow.compact.v2.experimental' 에러 해결하기 컴퓨터 실행 환경 - 운영체제: 윈도우 10 - Python 버전: 3.9.7 - TensorFlow 버전: 2.6.0 TensorFlow를 버전을 지정하고 설치 했을때 오류가 발생하기도 합니다. 저는 아래와 같이 2.6.0 버전을 설치하였습니다. pip install tensorflow==2.6.0 이때 발생한 에러는 다음과 같습니다. ImportError: cannot import name 'dtensor' from 'tensorflow.compact.v2.experiment' ... 이는 TensorFlow와 Keras의 버전이 맞이 않아서 발생하는 에러입니다. Keras를 삭제한 후 다시 설치해주시면됩니다. pip uninstall keras pip install keras==2.6.0 Keras.. 2022. 6. 20.
[TensorFlow] from tf.keras는 되고 from keras는 안되는 이유 TensorFlow를 사용한 딥러닝 모델을 사용하다 보다 보면 from keras import ...와 from tf.keras (혹은 tensorflow.keras) import ... 모두가 등장하곤 합니다. 하지만 어떨 때는 오류 없이 실행되고 어떨 때는 오류가 발생합니다. 이번 글은 이에 관한 이야기입니다. - 컴퓨터: M1 맥북에어 - 아나콘다 버전: conda 4.12.0 - Python 버전: 3.9.7 - TensorFlow 버전: 2.6.0 1. 분명 예제에서는 실행되었는데 다음의 예제를 한번 봐보겠습니다. from keras.utils import to_categorical train_labels = to_categorical(train_labels) test_labels = to_ca.. 2022. 5. 14.
[Python] TypeVar 그리고 Generic 이해하기 1. 데이터 타입의 일반화 파이썬 코드를 보다 보면 T = TypeVar(‘T’)과 Generic이라는 표현을 종종 보게 됩니다. T = TypeVar(‘T’)를 먼저 살펴보면 T는 형 변수(type variable)이고 ‘T’는 형 변수의 이름(variable name)입니다. TypeVar로 정의된 T는 어느 자료형이든 될 수 있는 변수가 됩니다. 기본 자료형인 int, string 부터 사용자가 만든 class까지 무엇이든 될 수 있습니다. 그래서 데이터 타입의 일반화입니다. 2. TypeVar을 알기 위한 type hints 파이썬에서는 typing (support for type hints) 이라는 패키지가 있습니다. 파이썬 개발자가 프로그래밍할 때 전달되는 인자 및 반환 값이 어떤 자료형이었으.. 2022. 4. 17.
[Python] 함수 호출 횟수 계산 시 알아둬야하는 Local, Enclosing, Global, and Built-in scopes (LEGB) 규칙 함수의 호출 횟수를 계산하는 코드를 짠다고 해보겠습니다. 아래의 예제와 같이 cnt를 선언할 경우 분명 선언 및 초기화를 해주었음에도 불구하고 변수가 선언되지 않았다는 오류가 발생합니다. 저는 개인적으로 이런 식으로 전역 변수를 사용하는 것을 좋아하지 않습니다. cnt: int = 0 def test_func(): cnt += 1 # cnt = cnt + 1 # 동일 에러 발생 if __name__ == "__main__": test_func() Exception has occurred: UnboundLocalError local variable 'cnt' referenced before assignment 자 그럼 왜 이런 오류가 발생할까요? 파이썬 공식문서를 확인해보겠습니다. 파이썬의 함수 내에서 참.. 2022. 4. 7.
[TensorFlow] Apple Silicon (M1) MacBook 에서 TensorFlow 버전 지정하여 설치하기 - 컴퓨터: M1 맥북에어 - 아나콘다 버전: conda 4.12.0 - Python 버전: 3.9.7 (급하신 분은 (설치 방법) 정리하면 다음과 같습니다. 만 보시면 됩니다!) Apple Silicon 맥북에서 버전을 지정하고 TensorFlow를 정상적으로 설치하는 방법에 대해서 간략하게 소개하려고 합니다. 친절하게도 아래의 링크에 가면 설치 방법이 나와있습니다. 하지만 조금 부족한 부분이 있어서 이에 대한 코드 1~2줄을 추가적으로 설명하는 짧을 글을 써보려고 합니다. https://developer.apple.com/metal/tensorflow-plugin/ Metal - Apple Developer Find presentations, documentation, sample code, and .. 2022. 4. 4.
[TensorFlow 2.8] Import "tensorflow.keras" could not be resolved Pylance(reportMissingImports) 경고 해결하기 - 컴퓨터: M1 맥북에어 - 아나콘다 버전: conda 4.12.0 - Python 버전: 3.9.7 - TensorFlow 버전: 2.8.0 (기존) > 2.6.0 (변경) 어느 순간부터 tensorflow를 사용하는데 경고가 뜨기 시작했습니다. 정상적으로 설치된 것을 확인했고 코드가 정상적으로 실행되니 그냥 써도 상관은 없지만 신경 쓰여서 해결 방법을 좀 찾아봤습니다. 발생하는 경고는 다음과 같습니다. tensorflow.keras를 통해서 import를 하는 대상들에 대해서 경고를 띄웁니다. (글 작성 시점 2022년 04월 04일) Import "tensorflow.keras.preprocessing.image" could not be resolvedPylance(reportMissingImpo.. 2022. 4. 4.
[Python] 타입 힌트에서 List와 list의 차이 목차 1. 대문자와 소문자 2. 자료형이요? 3. What's New In Python 3.9 1. 대문자와 소문자 파이썬에서 타입 힌트를 자주 사용하다보니 궁금했던 사항이 있었습니다. 대문자로 시작하는 List는 소문자로 시작하는 list와 무엇이 다를까요? 오늘은 이 질문에 대한 짧은 글을 써보려고 합니다. 2. 자료형이요? list는 자료형입니다. 간단하게 타입이 무엇인지 출력해보면 그냥 간단하게 '타입(type)'이라고 나옵니다. 비교를 위해서 int에 대한 출력도 첨부했습니다. from typing import List print(f"type(list): {type(list)}") print(f"type(int) : {type(int)}") print(f"type(List): {type(List.. 2022. 4. 3.
반응형