목록분류 전체보기 (768)
우노
AWS란? AWS(Amazon Web Service)는 아마존닷컴의 클라우딩 컴퓨팅 사업부이다. 현재 클라우드 분야에서 세계1위의 점유율을 차지하고 있다. 간단하게 말하자면 컴퓨터의 모든 기능을 AWS를 이용해 직접 서버나 컴퓨터를 구매하지 않고 간단하게 구현할 수 있다. EC2란? Elastic Compute Cloud — 줄여서 EC2라고 한다. EC2는 AWS 서비스의 핵심으로써 사용자는 아마존의 가상컴퓨터를 임대받아 그 위에 자신만의 컴퓨터 프로그램을 실행해 원하는 기능을 컴퓨터를 따로 살 필요 없이 필요한 성능, 용량만큼 간단하게 구축할 수 있다. 이 서비스는 CPU사용량(연산횟수)으로 결제하는 것이 아닌 인스턴스를 켜 놓은 시간을 기준으로 결제하는 구조다. EC2 인스턴스 생성 AWS 에 접속..
시작하기에 앞서 2013년 등장한 도커(docker)는, 인프라 세계를 컨테이너(container) 세상으로 바꿔버렸습니다. 수많은 애플리케이션이 컨테이너로 배포되고, 도커파일을 만들어 이미지를 빌드하고 컨테이너를 배포하는 게 흔한 개발 프로세스가 되었습니다. 2019년 DockerCon 발표에선 무려 1052억번의 컨테이너 image pull이 발생했다고 합니다. 이러한 도커의 인기와 함께 쿠버네티스(kubernetes)의 인기도 엄청나게 치솟고 있습니다. 클라우드와 관련된 행사에 가면 여기저기서 다음과 같은 이야기를 들을 수 있습니다. 쿠버네티스 클러스터에 Deployment를 배포하고 Ingress를 연결하자. Nginx말고 Traefik Ingress도 좋다던데? AWS에 설치할 땐 kops가 좋..
의사 결정 트리 (Decision Tree) 먼저, 의사 결정 트리 (decision tree)의 개념부터 다뤄보겠습니다. 의사 결정 트리는, 특정 Feature 에 대한 질문을 기반으로 데이터를 분리하는 방법입니다. 사람들이 일상생활에서 어떠한 의사 결정을 내리는 과정과 매우 비슷합니다. 건강 위험도를 결정하는 의사 결정 트리로 예를 들어 보겠습니다. 어떠한 사람에 대한 정보(feature)가 주어졌을 때, “흡연자인지, 몇살인지, 다이어트는 하고 있는지” 등의 질문을 통해, 해당 사람을 논리적으로 분리할 수 있게 됩니다. 랜덤 포레스트 (Random Forest) 이제 Random Forest 에 대해서 다뤄보겠습니다. Forest(숲)은 무엇으로 이루어져 있을까요? 나무입니다. 수많은 나무가 한군데..
SSL(Secure Socket Layer) 프로토콜 SSL은 CA를 통해, 클라이언트와 서버가 암호화된 데이터를 송수신 하는 방식이다. HTTP & HTTPS HTTPS는 HTTP를 안전하게 만드는 방식이며, SSL 프로토콜 위에서 돌아가는 프로토콜을 의미한다. HTTP 클라이언트와 서버 사이에서 정보를 주고 받기 위해 이루어지는 요청/응답 프로토콜(양식과 규칙의 체계) 암호화되지 않은 방법으로 데이터를 전송한다. (악의적인 감청, 데이터 변조의 가능성) HTTPS(Hypertext Transfer Protocol Over Secure Socket Layer) 보안이 강화된 HTTP이며, 모든 HTTP 요청과 응답 데이터는 네트워크로 보내지기 전에 암호화된다. HTTPS는 HTTP의 하부에 SSL과 같..
파이썬에서 입력 값을 받을 때 보통 input()을 이용한다. 하지만 알고리즘에서 input()을 이용할 때 종종 시간 초과가 발생하기 때문에 sys 모듈의 sys.stdin을 사용한다. 단, 이때는 맨 끝의 개행문자까지 같이 입력받기 때문에 문자열을 저장하고 싶을 경우 .rstrip()을 추가로 해 주는 것이 좋다. 여러 줄을 문자열로 입력 받고 싶을 때 import sys lines = sys.stdin.read() 여러 줄을 리스트로 입력 받고 싶을 때 import sys lines = sys.stdin.readlines() 간단한 stdin, stdout 예제 import re from collections import Counter import sys # 파일 입력 받기 document = sy..
오늘은 리눅스의 I/O 재지향(redirection)에 대해서 설명드리겠습니다. 재지향은 파이프(pipe)와 더불어 리눅스의 명령어들을 훨씬 강력하게 무장시켜주는 역할을 하는 핵심 기능입니다. 개요 리눅스 쉘은 항상 아래와 같이 표준 입출력을 파일 형태 로 열고 있습니다. 표준입력 ( stdin: 키보드) 표준출력( stdout: 모니터) 표준에러( stderr: 모니터) 기본적으로 프로그램은 연산 결과를 출력 장치(파일, 모니터, 프린터 등)로 내보내는데요. 이 출력되는 데이터를 임의로 다른 장치로 보내는 것을 재지향(redirection)이라고 합니다. 다시 말하면 파일이나 프로그램, 명령어 등의 출력을 낚아채어 다른 파일이나 프로그램, 명령어의 표준 입력으로 보내는 것을 말합니다. 사용법 표준 입출..
Support Vector Machine 이란? 분류(classification), 회귀(regression), 특이점 판별(outliers detection) 에 쓰이는 지도 학습 머신 러닝 방법 중 하나이다. SVM 의 종류 scikit-learn 에서는 다양한 SVM 을 지원한다. SVC Classification 에 사용되는 SVM 모델을 의미하며, SVM 의 끝문자인 M 을 Classification 의 첫 문자인 C 로 바꾼 것이다. SVR Regression 에 사용되는 SVM 모델을 의미하며, SVM 의 끝문자인 M 을 Regression 의 첫 문자인 R 로 바꾼 것이다. 특이점 판별(outlier detection) 에는 OneClassSVM 이 사용된다. SVC (Support Vec..
패킷 패킷이 LAN과 WAN에서 어떻게 전달되는지 설명하지 못하는 경우가 많다. 이 과정을 이해하면 네트워크 보안의 많은 부분을 이해할 수 있다. 컴퓨터 네트워크에서 패킷은 어떻게 전달되는지 그림을 통해 살펴보자 인터넷 구조 먼저 간단한 구조로 인터넷을 이해해보자 위 그림은 인터넷을 극단적으로 간단하게 그린 것이다. 왼쪽과 오른쪽에 구름형태로 LAN(Local Area Network)이 있다. 왼쪽 LAN PC0의 IP는 192.168.161.230 PC1의 IP는 192.168.161.235 PC2의 IP는 192.168.161.240 오른쪽 LAN PC3의 IP는 192.168.162.230 PC4의 IP는 192.168.162.235 PC5의 IP는 192.168.162.240 가운데의 파란색 네모..
도커와 쿠버네티스 비교 예시 컨테이너를 하나만 띄워서 사용해야지! => 도커 0월 0시에, 100개의 컨테이너를 자동으로 생성해야지! => 쿠버네티스 즉, 도커는 ’이미지를, 컨테이너에 띄우고 실행하는 기술’이고 쿠버네티스는 '도커를 관리하는 툴'이라고 생각하시면 됩니다. 따라서, 도커는 '한 개의 컨테이너를 관리’하는 데 최적화 되어있고, 쿠버네티스는 '여러 개의 컨테이너를, 서비스 단위로 관리’하는 데 최적화 되어있습니다. 도커란? 도커는 '컨테이너 기반의 오픈소스 가상화 플랫폼' 입니다. 그렇다면, 컨테이너란 무엇일까요? 컨테이너는, ‘애플리케이션’과 ‘애플리케이션을 구동하는 환경’을, ‘Host OS’ 로부터 격리한 공간을 의미합니다. 컨테이너는 보통 마..
sklearn에서 boston data 가져오기 import numpy as np import pandas as pd from sklearn.datasets import load_boston boston = load_boston() # boston data로 feature 생성 data = pd.DataFrame(boston.data, columns=boston.feature_names) # boston data의 target 값도 추가 data['MEDV'] = pd.Series(data=boston.target, index=data.index) feature, target 정의 및 훈련, 테스트 데이터 분리 # feature 값 정의 feature = data.drop('MEDV..