목록Note (462)
Note
문제 Hello World!를 출력하시오. print("Hello World!")
Java Script Object Notation, JSON 경량의 데이터 교환 형식으로 프로그래밍 언어가 아닌 단순히 데이터를 표시하는 표현 방법. 자료형으로 string, number, true, false, null, object, array 가 올 수 있다. key (문자열) : value (기본 자료형, 객체, 배열)의 형태를 가지고 있다. { "나이" : 28, "이름" : "WJ", "취미" : ["축구", "음악"] } object는 중괄호{}, array는 대괄호[] key : value는 비순서, array는 순서 장점 내용이 함축적이므로 최소한의 정보만을 가지고 있으며, 용량이 적고 속도가 빠르다. 언어에 독립적이며 사용하기가 쉽다. 단점 함축적인 내용으로 의미 파악이 어렵다. 대용량..
Surprise는 추천 시스템 구현 패키지이다. 설치방법 1) pip install scikit-surprise 2) conda install -c conda-forge scikit-surprise ( Anaconda 환경 추천 ) random_pred.NormalPredictor 학습 데이터의 분포가 정규분포라고 가정한 상태에서 평점을 무작위로 추출하는 알고리즘 baseline_only.BaselineOnly 사용자의 평점평균과 아이템의 평점평균을 모델화하여 예측하는 알고리즘 knns.KNNBasic 기본적인 이웃을 고려한 CF 알고리즘 knns.KNNWithMeans 사용자의 평가 성향을 고려한 CF 알고리즘 knns.KNNWithZScore 사용자의 평가 성향을 표준화시킨 CF 알고리즘 knns.K..
역전파 과정에서 입력층으로 갈수록 기울기가 점차적으로 작아지는 현상이 발생할 수 있다. 입력층에 가까워질수록 가중치 업데이트가 잘 이루어지지 않는 것을 기울기 소실 ( Gradient Vanishing ) 이라고 한다. 반대의 경우를 기울기 폭주 ( Exploding ) 라고한다. 1. ReLU와 Leaky ReLU 시그모이드 함수를 사용할 때, 역전파 과정에서 기울기가 점차 사라져 제대로 작동하지 않는 기울기 소실이 발생할 수 있다. 1) 은닉층의 활성화 함수로 시그모이드를 사용하지 않는다. 2) Leaky ReLU를 사용하면 모든 입력값에 대해 기울기가 0에 수렴하지 않는다. 2. 그래디언트 클리핑 ( Gradient Clipping ) 기울기 값을 임계값이 넘지 않도록 잘라내어 임계치만큼 크기를 감..
1. 데이터 양 증가 학습하고자 하는 모델 데이터 양이 적을수록, 학습 데이터의 특정 패턴이나 노이즈까지 쉽게 학습되므로 과적합 발생 확률이 증가한다. 즉, 데이터 양이 많을수록 학습 데이터의 일반적인 특성을 학습할 수 있으며, 과적합 확률이 줄어든다. 이미지 데이터는 데이터 증식을 많이 사용한다. 여기서 데이터 증식이란, 기존 학습시킬 데이터를 변형하거나 노이즈를 추가하여 학습 데이터의 양을 늘리는 것을 말한다. 2. 모델 복잡도 조절 회귀분석에서 독립 변수가 많을수록 모델의 설명력은 좋아질 수 있지만 과적합이 발생할 수 있다. 독립 변수간 다중 공산성이나 차원의 저주가 발생할 수 있기 때문이다. 이를 해결하기 위해 차원 축소를 실행하여 모델의 복잡도를 줄인다. 인공신경망에서는 은닉층의 갯수나 파라미터..