Machine LearningMachine Learning 이란 어떠한 것의 성능을 향상시키기 위해 경험에 근거해서 발전시키는 알고리즘이다. 예를 들어, 체스 게임을 하는 프로그램이 많이 이기기 위한 Machine Learning 알고리즘이 존재한다고 가정해보자.여기서 행위를 세 가지로 분류할 수 있음.T (Task) : 체스를 하는 행위P (Performance) : 상대방을 이길 수 있는 확률E (Experience) : 스스로 체스 게임을 하는 것 체스 게임을 반복하면서 그 수를 놓은 데이터들을 가지고 학습하여 이길 수 있는 수들을 산출하는 것. Traditional Programming 은 다음과 같이 결과를 산출하였음. 그러나, Machine Learning 에서는 다르게 결과가 산출됨. 예를..
데이터 분석에서 80%의 시간이 데이터를 준비하는 데 소요됨,, 데이터를 이용하는 목적은 다양하다. 1. Business Intelligence (BI) : 경영상의 의사결정에 도움이 됨. Data Discovery (데이터 시각화)2. Data Mining : 통계 / ML Algorithm을 사용하며, 데이터로부터 가치 있는 정보를 찾는다. 그렇다면 왜 Big Data가 정착되었는가에 대해서부터 설명하고자 한다. 1. 분산 시스템에 의한 데이터 처리의 고속화빅데이터 라는 단어가 자주 등장하게 된 이유이다. 빅데이터가 취급이 어렵다는 이야기를 많이 듣고 실제로도 그렇다. 이유는 무엇일까? 1. 데이터의 분석 방법을 모름2. 데이터 처리에 수고와 시간이 걸림 두 가지 이유가 존재하는데, 두 번째 이유에 ..
DockerGo 언어로 작성된 Linux container 기반으로 하는 오픈 소스 가상화 플랫폼Docker 0.9 이상부터는 직접 개발한 libcontainer container 사용함 그렇다면 가상화를 왜?컴퓨터의 성능을 더욱 효율적으로 사용하기 위해서 등장하였고, 사용하게 되었음. Container란?가상화 기술 중 하나로 대표적으로 LXC(Linux Container) 가 있음. VM (Virtual Machine) 보안적 측면에서 유리하고, 완벽하게 Host OS와의 분리가 가능함. 하지만, Host OS의 메모리를 잡아먹는다는 단점이 있음. Docker 가상화 플랫폼 Docker Engine 위에 Application 실행에 필요한 Binary만 올라가게 됨. 장점Host 커널을 공유하는 데..
FastAPI Post 에 대해 알아보기 전에, HTTP Get 과 Post의 차이점에 대해서 우선 언급하고자 한다. HTTP Get 과 Post의 차이Get 과 Post 둘 다 HTTP 방법이며, 둘 다 브라우저가 서버에 "요청" 하는 행위이다. Get Server 에서 Data를 받아오기 위해 자주 활용요청할 때 데이터 전송 시 URL 주소 끝에 Parameter Value로 전송되며 이를 Query String 이라고 함Ex) https://devidas.tistory.com/640?name=김병찬 과 같이 제공하는 것HTTP Body에 담아서 전송하지 않음PostResource를 Create/Update 하도록 설계된 방법필요 데이터를 HTTP Body에 담아 전송하므로 URL로 데이터가 노출되지..
Deep Learning Model 을 Back-end Server에 배포하기 위해 FastAPI를 알아보기 시작했다.FastAPI란? FastAPI는 공식 홈페이지에는 이렇게 적혀있다."현대적이고 빠르며 (고성능), Python 표준 타입에 기초한 Python 3.6+의 API를 Build 하기 위한 Web Framework"즉, FastAPI 라는 것은 Python 3.6+ version 에서 API를 Bulid 하기 위한 web framework 라는 것이고 빠르다는 것이 주요 장점이라고 할 수 있다. 공식 홈페이지에 나온 주요 특징들을 보면 이렇다.빠름 : Nodejs 및 Go 와 대등할 정도로 매우 높은 성능빠른 코드 작성 : 개발 속도 증가적은 버그직관적 쉽고 짧은 코드표준 기반 : OpenA..
Face Recognition System대부분의 사진이 얼굴에만 있지 않아서 face detection 을 통해 얼굴만 crop 함face alignment 로 정면을 보게 위치를 조절Augmentation 효과를 주는 Face Preprocessing 과정을 거쳐 모델 Input 으로 들어감Train 과정에서는 CNN Network를 통해 얼굴의 Feature 를 뽑고 task 에 맞는 loss를 학습한다. Closed-set Face DetectionFace detection은 Closed-set 과 Open-set 으로 나뉘어짐. Closed-set 은 train-set 에 test-set label 이 포함되어 있는 경우로 특정 회사 얼굴 인식을 생각하면 됨. Deep Learning 에서 C..