분류 전체보기 81

도커(Docker)란?

도커: 컨테이너 기술을 기반으로 한 일종의 가상화 플랫폼, 개방형 애플리케이션 개발 프레임워크 데이터 또는 프로그램을 격리시키는 기능을 한다. *가상화: 물리적 자원인 하드웨어를 효율적으로 활용하기 위해서 하드웨어 공간 위에 가상의 머신을 만드는 기술 *컨테이너: 실행에 필요한 모든 파일을 포함한 전체 실행(runtime) 환경에서 애플리케이션을 패키징하고 격리할 수 있는 기술 도커 컨테이너는 도커 런타임이 설치된 모든 OS 호환 호스트(리눅스 또는 윈도우)에서 실행할 수 있다. 장점: 캡슐화, 격리, 이동성, 통제, 크기가 작고(수 MB) 즉각적으로 실행, 보안, 운영 https://www.samsungsds.com/kr/insights/docker_container.html 변화하는 비즈니스 환경에 ..

[ML] 05. Support Vector Machine(SVM)

1. SVM 작동원리 데이터를 가장 잘 구분하는 최적의 하이퍼플레인을 찾는 알고리즘 * 기본조건을 만족하는 하이퍼플레인은 무수히 많을 수 있음 → 하이퍼플레인 최적 판단 기준 필요 각 클래스 데이터가 하이퍼플레인에서 최대한 멀리 떨어져있게!! Margin이 최대가되게! 조건: 클래스를 구분 $y^{i}(w*x^{i}+b)>=1$을 만족 목적: $||w||$ 최소 완화된 조건 힌지 손실, Soft SVM 2. 다중클래스 SVM 클래스 별로 해당클래스와 그 외의 것을 가르는 하이퍼플레인 찾기 1) 일대다 방법: 한 분류기 학습시킬 때 전체데이터 사용, K(K-1)/2 2) 일대일 방법: 대상이 되는 두 클래스에 속하는 데이터만 사용, K 3. Kernel in SVM 비선형문제 → 특성공간 변환 RBF커널

[ML] 04. Decision Tree

목차 1. Decision Tree 동작원리 의사결정 트리 분류기: 의사결정트리 생성하는 학습단계, 데이터 분류하는 분류단계 CART 각 노드에서 분할을 위한 특성과 해당특성의 값의 조합을 탐욕적으로 탐색 (=> Global Optima가 아닌 Local Optima 우선고려) 2. 트리 분할 측정 척도 1) 지니불순도 데이터가 클래스 별로 고르게 분포되어 있는지! 편중될 수록 값이 작고, 고를수록 값이 크다 (Impurity) $$Gini=1-\sum_{k=1}^{K}p_{k}^{2}$$ ex) 두개 클래스가 존재할때, 한클래스에만 속한다면 지니불순도 $1-(1^{2}+0^{2})=0$ & 두클래스에 반반 속하면 지니불순도 $1-(0.5^{2}+0.5^{2}=0.5)$ $$G(X_{p},f)=\sum_..

[ML] 03. Evaluation

목차 1. 성능평가척도 0) Confusion Matrix 1) 정확도 Accuracy → 올바르게 예측한 케이스의 비율 $$Accuracy=\frac{TN+TP}{\textbf{ALL}}$$ 2) 정밀도 Precision → 양성 예측 중 실제 양성 비율 $$Precision= \frac{TP}{TP+FP}$$ 3) 재현율 Recall → 실제 양성 중 예측을 맞춘 비율 민감도(Sensitivity), True Positivie Rate(TPR) $$Recall(=Sensitivity)= \frac{TP}{TP+FN}$$ 4) 특이도 Specificity → 실제 음성 중 예측을 맞춘 비율 True Negative Rate(TNR) $$Specificity= \frac{TN}{TN+FP}$$ ※) 성능..

[ML] 02. Text Data

목차 1. 텍스트 데이터 - 말뭉치 (Corpus) → 잘 정리된 텍스트 데이터셋 2. 텍스트 전처리 종류 토큰화, 품사태깅, NER, 어간추출, 표제어추출, 숫자&특수문자 처리 1) 토큰화 텍스트 시퀀스를 여러개 조각으로 나누는 것 n-gram: 토큰이 n개 연속된 조각으로 구성 기본적으로 Unigram 으로 하고, 추가하는 식으로 진행 2) 품사태깅 주어진 각 토큰에 적절한 품사태그를 붙이는 것 3) NER 단어나 구문을 명확한 카테고리에 지정하고 식별하는 것 ex) 서울→지역, $5.1billion→money 4) 어간 추출 Stemming 파생된 단어를 원형으로 되돌리는 작업 ex) machines → machin 5) 표제어 추출 어간 추출보다 더의미있는 형태로 추출 ex) machines → ..

[ML] 01. Naïve Bayes (나이브베이즈)

목차 1. 분류 특성을 보고 해당 데이터를 적절한 카테고리에 올바르게 매핑시키는 것 대표적인 지도학습 기법 1) 이진 클래스분류 ex) 스팸메일 vs. 정상메일 2) 다중 클래스 분류 ex) 숫자 인식 3) 다중 레이블 분류 2. 베이즈 정리 - 조건부 확률: 어떤 사건이 일어났다는 전제 하에 다른 사건이 일어날 확률 베이즈정리 조건부확률 계산 식. 기존의 믿음으로 대표되는 P(A), 새로운 증거 P(B)를 보고 기존의 믿음을 더 알맞게 업데이트하는 식임. 사전확률로부터 사후확률을 구할 수 있다! 3. Naïve Bayes (나이브베이즈 분류기) m개의 특성을 지닌 샘플 데이터 x가 주어졌을 때, 나이브 베이즈의 목표는 이 샘플 데이터가 k개의 클래스($y_{1}$~$y_{k}$) 중 하나에 속할 확률 ..

[ML] 00. Overview

목차 1. 기계학습(ML) 컴퓨터가 데이터를 이용해 학습과정을 거쳐 자동으로 규칙을 찾는 기법 데이터→정보 →지식 →지혜 2. 기계학습을 위해 필요한 것들 1) 입력(특성) Feature: 하나의 데이터(Instance)는 그것을 표현하는 여러 특성으로 구성될 수 있음 Feature Engineering: 힌트 뽑아내기, 특성을 생성하고 개선해 가는 방법, 과정 결측값 처리, 원 핫 인코딩, 정규화, 다항형 특성, 파워 변환, 비닝 효율적인 학습 가능 2) 기대출력(타겟값) 기대출력에 따라 기계학습 문제가 달라짐 → 분류, 회귀, 그룹핑(클러스터링) 3) 기계학습 알고리즘 지도학습 Supervised learning 출력(결과)데이터를 함께 주며 학습. Labeled data 회귀(집 값 예측), 분류(..

[ML] 목차

목차 00. Overview 더보기 AI, ML, DL 1) 특성 2) 타겟값 3) 알고리즘 4) 성능측정방법 01. Naive Bayes 더보기 조건부확률과 베이즈정리 Naive Bayes 동작원리 02. Text Data 더보기 자연어처리 NLP 텍스트전처리 텍스트 특성 03. Evaluation 더보기 성능평가척도 Confusion Matrix Accuracy, Precision, Recall, Specificity 성능척도간의 Trade-off 종합성능척도 → F1 Score, AUC(ROC Curve) 04. Decision Tree 더보기 트리분할측정척도 →지니불순도, IG(정보이득) 트리분할알고리즘-CART 05. Support Vector Machine (SVM) 더보기 SVM Soft S..

HTTP(HTTP VS. HTTPS, 웹페이지 접속과정)

목차 HTTP HTTP VS. HTTPS 웹페이지 접속과정 HTTP TCP/IP 4계층 中 응용계층 ① 인터넷에서 데이터를 전송하기 위한 클라이언트-서버 구조의 통신 프로토콜 • 비연결성: 서버에서 응답을 받으면 연결을 끊음 • 무상태: 서버가 클라이언트를 식별하지 못함 ② HTTP Keep Alive로 비연결성 단점 보완 & 쿠키와 세션을 통해 무상태의 단점 보완 • 쿠키: 클라이언트 로컬에 저장되는 키와 값이 들어 있는 작은 데이터 파일 • 세션: 서버에 저장되는 연결 관련 정보 HTTP VS. HTTPS HTTP와 달리 HTTPS에는 보안 계층의 암호화 프로토콜인 SSL/TLS가 있어서 전송하려는 데이터를 암호화해 보호함. HTTP는 80번 통신 포트를 사용 HTTPS는 443번 통신 포트를 사용 ..

REST API에 대해

목차 REST REST API HTTP 메서드 (PUT VS. PATCH) REST 리소스(웹 페이지나 파일 등)를 URI로 나타내고 HTTP메서드를 이용해 연산(CRUD)을 수행하고 리소스의 상태를 주고받는것 HTTP기반이라 별도 인프라 필요 ❌ 동작이 한정적 REST API REST를 기반으로 한 인터페이스 HTTP 메서드 POST: 생성 GET: 조회 PUT: 갱신 DELETE: 삭제 ※ GET, PUT, DELETE는 여러번 호출해도 결과가 같은 반면(멱등성O), POST는 매 호출마다 새로운 데이터가 추가된다(멱등성X). PUT vs.PATCH PUT 데이터를 일부만 전달할 경우, 나머지는 NULL이나 DEFAULT값으로 처리됨 해당 리소스를 완전히 교체 PATCH 새롭게 바뀐 부분만 반영되고,..