본문 바로가기

분류 전체보기43

Kullback-Leibler divergence (KL Divergence) KL Divergence를 이해하기 위해서는 우선 Entropy와 Cross Entropy에 대해서 이해해야 한다. 1. Entropy Entropy의 정의 열의 이동과 더불어 유효하게 이용할 수 있는 에너지의 감소 정도나 무효 에너지의 증가 정도를 나타내는 양 정보를 내보내는 근원의 불확실도를 나타내는 양 정보량의 기대치를 이르는 말 표준국어대사전에는 위와 같이 entropy를 정의 하였다. 컴퓨터 과학 측면에서는 entropy를 “한 메세지에 들어갈 수 있는 정보량의 비트 수”로 정의 한다. 또한 후술 할 설명에 의하면 entropy는 최적의 정보 전송을 위해 필요한 질문 개수에 대한 기댓값을 의미한다. 조금씩 그 정의에서 차이를 보이긴 하는데, 종합해보면 AI 분야에서의 entropy는 어떤 정보의.. 2023. 11. 23.
연속형 확률분포 - 감마 분포 (Gamma Distribution) 감마 분포의 정의 위키피디아에 감마 분포를 검색하면 아래와 같이 나온다. 💡 감마 분포는 연속 확률 분포로, 두 개의 매개변수를 받으며 양의 실수를 가질 수 있다. 이 설명으로는 이해가 쉽지 않다. 연속 확률 분포라는 것은 알겠고 두 매개변수는 $\alpha$ 와 $\lambda$ 이다. 감마 분포의 확률 변수(Random Variable) $X$는 💡 $\alpha$ 개의 이벤트가 발생할 때 까지 시간 으로 정의 할 수 있다. 따라서 감마 분포는 $\alpha$ 개의 이벤트가 발생할 때 까지의 대기 시간의 분포로 이해할 수 있다. 다시 매개변수로 돌아가보면 여기서 $\alpha$ 는 그 시간의 간격을 변동시키는 매개변수이고 $\lambda$ 는 그 시간에서 발생할 확률을 변동시키는 매개변수이다. 상세한.. 2023. 8. 31.
AutoEncoder(AE) AutoEncoder(오토 인코더)의 개념 AutoEncoder(AE)는 대표적인 비지도학습(Unsupervised-Learning) 신경망 모델이다. 기본적인 구조는 아래 그림과 같이 인코더(Encoder)와 디코더(Decoder)로 구성되어 있다. Input data에 대해 인코딩(압축)한 후 다시 원래 Input data로 디코딩(복원)하는 개념이다. 아래 그림에서 보면 Input data $x$에 4라는 이미지 값이 들어와 있고, 이 input을 인코더로 압축하여 $z$를 생성한다. 이 때, 이 $z$를 Latent Vector라고 부르며 Latent Vector는 input data를 압축하여 차원을 축소한 것으로 볼 수 있다. Input data의 차원이 잘 축소되었는지 확인하기 위해서 이를 .. 2023. 8. 25.
plot_model 에러 (pydot, graphviz, pydotplus) keras에서 모델을 그림으로 보여주는 plot_model을 사용하는 도중에 에러가 발생하였다. from tensorflow.keras.utils import plot_model 모듈을 불러오고 모델을 만든 후 plot_model을 생성하였는데 아래와 같은 오류가 발생했다. 구글에서 검색했을 때에는 관련 패키지 전부 삭제 (pydot, graphviz, pydotplus) 후 conda 명령어로 설치하면 된다는데 나는 아나콘다를 쓰지 않기 때문에 관계가 없었다. 위 오류에서 알려준 https://graphviz.gitlab.io/download/ 사이트에 가서 직접 다운 받은 후 패키지(graphviz)를 설치하면 해결 가능하다. 다만 어떤 stackoverflow 에서는 윈도우 10 환경에 아나콘다를 .. 2023. 8. 14.
pycocotools 패키지 설치 오류 coco dataset을 확인하기 위해서 pycocotools 라는 패키지가 필요하다. 그런데 해당 패키지를 설치하는 도중 에러가 발생하였다. 해결책1. git을 통해서 다운로드 가장 많이 나오는 해결책이다. 아래 명령어를 통해서 패키지를 받는다. 하지만 나는 여기에서도 오류가 발생하였다. pip3 install "git+https://github.com/philferriere/cocoapi.git#egg=pycocotools&subdirectory=PythonAPI" 해결책2. pip install pycocotools-windows 윈도우 환경에서 사용하기 때문에 이런식으로 설치하는 것이다. 하지만 나는 이것도 실패… 해결책3. github 파일 수정 git clone https://github.co.. 2023. 8. 7.
coco-dataset 다운로드 오류 coco dataset을 활용한 코드를 확인해보고자 해당 데이터셋을 다운로드 하는 방법을 구글링하였더니 아래와 같이 해야 한다고 찾을 수 있었다. wget http://images.cocodataset.org/zips/train2017.zip 그러나 이 방법으로 진행 했을 때, 다음과 같은 에러가 출력되었다. 'wget'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 이것은 윈도우 환경에서는 wget을 직접 설치해줘야 하기 때문에 발생하는 에러이다. 아래 사이트에서 본인 환경에 맞는 최신 버전을 다운받아주면 된다. wget.exe 파일은 실행하지 않고, C드라이브-Windows-System32 폴더 안으로 이동시키면 된다. https://eternallybored... 2023. 8. 7.
연속형 확률분포 - 정규 분포(Normal Distribution) 정규 분포란? 정규 분포(Normal distribution) 또는 가우스 분포(Gaussian distribution)는 연속 확률 분포의 하나이다. 정규분포는 2개의 parameter를 가지며 (평균 : $\mu$, 표준편차 : $\sigma$) 이 때의 분포를 $N(\mu, \sigma)$로 표기한다. 특히, 평균이 0이고 표준편차가 1인 정규분포 $N(0, 1)$을 표준 정규 분표(Standard normal distribution)라고 한다. 정규 분포의 확률 밀도 함수 (PDF, Probability Density Function) 정규 분포의 확률 밀도 함수는 아래와 같다. $x$는 무한한 값을 가지며 평균과 표준편차를 알고 있을 때, 그 값을 알 수 있다. 위 정규 분포의 그림에서 $f(x.. 2023. 8. 7.
머신러닝 프로세스 다변량 데이터 다변량 데이터에서 보통 X값은 원인, Y값은 결과로 볼 수 있으며 경우에 따라서 그 이름은 아래와 같이 다양하게 쓰인다. X(원인): 독립변수, 예측변수, 입력변수 Y(결과): 종속변수, 반응변수, 출력변수 예측 모델링 아래 그림과 같이 X1, X2와 Y가 포함된 데이터 테이블이 있다고 가정하자. 어떤 모델, 즉 함수는 X라는 input을 받아 Y라는 output을 내뱉는 형태를 띄게 된다. 데이터 테이블에 따르면 X1 = 0, X2 = 2를 넣었을 때 Y는 2가 나온다. 또한 X1 = 1, X2= 3을 넣으면 Y는 4가 나온다. 따라서 Y=X1+X2라는 함수를 만들 수 있고 이것이 예측 모델링 방법의 기초가 된다. X1 X2 Y 0 2 2 1 3 4 2 4 6 3 5 8 $Y = X_1 .. 2023. 8. 1.
728x90