본문 바로가기
728x90
728x90

전체 글155

[혼공머신] Chapter 07 딥러닝을 시작합니다 07-1 인공 신경망 Tensorflow 구글이 2015년 11월 오픈소스로 공개한 딥러닝 라이브러리 Keras tensorflow의 고수준 API Artificial Neural Network (ANN, 인공 신경망) 생물학적 뉴런에서 영감을 받아 만들어진 머신러닝 알고리즘 매컬러-피츠 뉴런1943년 워런 매컬러와 월터 피츠가 제안한 뉴런 모델 Neuron (= Unit) 선형 방정식을 계산하는 단위 Activation Function (활성화 함수) 뉴런의 선형 방정식 계산 결과에 적용되는 함수 Input layer (입력층) Dense layer (밀집층) 가장 간단한 ANN의 layer 뉴런들이 모두 연결되어 있기 때문에 fully connected layer(완전 연결 층)라고도 부름 Outpu.. 2022. 3. 8.
[혼공머신] Chapter 06 비지도 학습 06-1 군집 알고리즘 Unsupervised Learning train set에 target이 없는 학습 방법 외부의 도움 없이 스스로 유용한 무엇인가를 학습하는 방법 Clustering (군집) 비슷한 sample끼리 하나의 그룹으로 모으는 대표적인 unsupervised learning Clusterclustering으로 모은 sample 그룹 Dimensionality Reduction (차원 축소) 원본 data의 feature를 적은 수의 새로운 feature로 변환하는 unsupervised learning 06-2 k-평균 k-means 알고리즘 작동 방식 무작위로 k개의 cluster center(= centroid) 설정 각 sample에서 가장 가까운 cluster center를 찾아.. 2022. 3. 7.
[혼공머신] Chapter 05 트리 알고리즘 05-1 결정 트리 Decision Tree 예/아니오 에 대한 질문을 이어나가면서 정답을 찾아 학습하는 algorithm 비교적 예측 과정을 이해하기 쉽고 성능도 뛰어남 Root node Leaf node Impurity (불순도) decision tree가 최적의 질문을 찾기 위한 기준 Gini impurity (지니 불순도)$지니불순도 = 1 - ({음성 클래스 비율}^2 + {양성 클래스 비율}^2)$ Entropy impurity (엔트로피 불순도)$음성클래스비율 \times log_2 (음성클래스비율) - 양성클래스비율 \times log_2 (양성클래스비율)$ Information Gain (정보 이득) 부모와 자식 노드 사이의 impurity 차이 decision tree algorithm.. 2022. 3. 6.
[혼공머신] Chapter 04 다양한 분류 알고리즘 04-1 로지스틱 회귀 Multi-class Classification (다중 분류) target data에 2개 이상의 class가 포함된 문제 Logistic Regression (로지스틱 회귀) 이름은 regression이지만 classification model linear regression과 동일하게 linear equation을 학습 이진 분류 sigmoid function 사용 $\phi = \frac{1}{1+e^{-z}}$ z값이 음의 무한대로 갈수록 0에 수렴 z값이 양의 무한대로 갈수록 1에 수렴 다중 분류 softmax function 사용 $s_n = \frac{e^{z_n}}{\sum e^{z_i}}$ 여러 개의 선형 방정식의 출력값을 0~1 사이로 압축하고 전체 합을 1로 만.. 2022. 3. 5.
[혼공머신] Chapter 03 회귀 알고리즘과 모델 규제 03-1 k-최근접 이웃 회귀 Regression (회귀) data를 class로 분류하는 Classification(분류)과는 달리 임의의 숫자를 예측하는 방법 k-Neighbor Regression (k-최근접 이웃 회귀) 예측하려는 sample에 가장 가까운 sample k개를 선택하여 그 수치들의 평균으로 예측하는 알고리즘 Coefficient of determination (결정계수, $R^2$) $$R^2 = 1 - \frac{\sum(Target - Prediction)^2}{\sum(Target - Average)^2}$$ 과대적합 (Overfitting) train set에서는 높은 점수(정확도)인데 test set에서는 낮은 점수(정확도)인 경우 (= train set을 지나치게 학습한.. 2022. 3. 4.
[Baekjoon] 15596 : 정수 N개의 합 (C++) Baekjoon Online Judge 15596번 : 정수 N개의 합 문제 정수 n개가 주어졌을 때, n개의 합을 구하는 함수를 작성하시오. 작성해야 하는 함수는 다음과 같다. C, C11, C (Clang), C11 (Clang): long long sum(int *a, int n); a: 합을 구해야 하는 정수 n개가 저장되어 있는 배열 (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000) n: 합을 구해야 하는 정수의 개수 리턴값: a에 포함되어 있는 정수 n개의 합 C++, C++11, C++14, C++17, C++ (Clang), C++11 (Clang), C++14 (Clang), C++17 (Clang): long long sum(std::vector &a); a: .. 2022. 3. 3.
[Baekjoon] 15552 : 빠른 A+B (C++) Baekjoon Online Judge 15552번 : 빠른 A+B 문제 본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다. C++을 사용하고 있고 cin/cout을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다. Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. Buff.. 2022. 3. 3.
728x90
반응형