전체 글 102

Elastic Stack 활용 서울시 상권 매출 대시보드 구축 - (1) elastic search, kibana

데이터 파이프라인 구축 (1)에서 csv 파일의 텍스트 전처리가 필요했다. 해당 부분부터 이어서 kibana 대시보드 작업까지 진행한다. 지난 글에서 작성했지만, 작업환경과 파이프라인 flow도 다시 보자. """ 작업 환경: Macbook Pro 2019 - i9, 16GB GCP 가상 머신 4대 할당(e2-small 3대 + e2-medium 1대) 가상 머신 1대에 클러스터 1개 배치(클러스터당 노드도 1개씩) filebeat 설치(Local) logstash 설치(Local) elastic search 설치(e2-small 3개 각각 설치) kibana 설치(e2-medium 1대에 설치) 데이터: 서울시 상권 추정 매출(서울시 열린 데이터 광장 제공) 구축할 데이터 파이프라인 Flow: Beat..

pandas - reset_index()

reset_index(drop=True) 자꾸 까먹어서 적어놓는다. 데이터전처리가 끝난 후, 혹은 중간에 데이터 정리가 필요한 경우 reset_index()는 유용하게 사용된다. reset_index() 는 마치 엑셀, 구글스프레드시트의 고정된 index 번호처럼 0부터 순서대로 index를 정리해주는 함수다. 아래와 같은 과일의 특징을 정리한 데이터프레임이 있다고 해보자. print(df) x1 x2 x3 x4 Apple 1 1 0 0 Banana 1 0 1 1 Kiwi 0 1 1 0 reset_index() 함수를 사용해보면, 인덱스가 다시 정리되고 기존의 index는 새로운 '열'로 추가된다. print(df.reset_index()) index x1 x2 x3 x4 0 Apple 1 1 0 0 1..

sklearn - numeric encoding

Encoder LabelEncoder OneHotEncoder LabelBinarizer *reference : kaggle, Heart Attack Prediction_95.4% accuracy, Avinash Bagul* 머신러닝 프로젝트 실행-3, cyan91 1. LabelEncoder object 타입의 label을 숫자형으로 변환 머신러닝 모델은 모든 컬럼의 값을 숫자형으로 통일시켜줘야 하는데(혹은 categorical column은 제거해야 하는데) 이는 확률 모델이기 때문에 그렇다(+수식 계산이 가능해야 미분을 통한 학습이 이루어질 수 있다) 예시 코드 from sklearn.preprocessing import LabelEncoder le = LabelEncoder() X_encoded ..

Docker 명령어 모음

reference : 도커(Docker) 입문편 [Docker]Docker File을 이용하여 Docker Image 만들기 vi/vim 편집기 명령어 정리 (단축키 모음/목록) 위 레퍼런스의 예시 명령어 요약 도커 저장소로부터 centos:latest image를 받아와 아래 기본 명령어들을 경험해본다. docker run -it centos:latest bash docker ps docker ps -a docker restart docker attach ubuntu:bionic image를 받아와 git을 설치해보고, 아래 명령어들을 통해 버전관리를 경험해본다. docker pull ubuntu:bionic docker run -it ubuntu:bionic bash /# git --version d..

git - branch

terminal에서 폴더를 돌아다니다보면 git의 branch가 변하는 것을 볼 수 있다. remote 할 때 origin을 어느 브런치로 지정하였는지에 따라 현재(default) branch 이름이 바뀐다. TIA_main [main] git status 현재 브랜치 main 브랜치가 'origin/main'에 맞게 업데이트된 상태입니다. 커밋할 사항 없음, 작업 폴더 깨끗함 TIA_main [main] cd .. TIA [master] git status 현재 브랜치 master 브랜치가 'origin/main'에 맞게 업데이트된 상태입니다. 커밋할 사항 없음, 작업 폴더 깨끗함 현재 브런치와 Github Repository의 브런치가 일치하지 않는다면 git push가 불가능하다. 이 때는 아래와 ..

딥러닝 Multiple-Object Detection

Multiple-Object Detection - Type A reference : Multiple-Object Detection (1) : R-CNN Multiple-Object Detection (2) : SPP-Net Multiple-Object Detection (3) : Fast R-CNN 갈아먹는 Object Detection [1] R-CNN 갈아먹는 Object Detection [2] Spatial Pyramid Pooling Network 갈아먹는 Object Detection [3] Fast R-CNN 갈아먹는 Object Detection [4] Faster R-CNN Multiple Object Detection의 동작 방식은 Region Proposal과 Classificatio..

Elastic Stack 활용 서울시 상권 매출 대시보드 구축 - (1) beats, logstash

Step 0. 실습 전 확인 사항 Elastic Stack은 Elastic Search를 중심으로 Beats, Logstash, Kibana를 활용해 데이터파이프를 구축하는 일련의 설계 방식이다. 이번 실습은 아래의 순서로 진행된다. 서울시 상권 추정 매출 데이터를 Beats로 읽어들여서, Logstash로 보내 문자열 처리를 거친 다음, Elastic search로 적재하고, Kibana로 대시보드를 그려보는 것 먼저, 실습 전에 나의 작업 환경은 아래와 같다. 동일하게 세팅할 필요는 없으며, 클라우드를 사용하지 않고 개인 로컬 환경에서도 충분히 실습이 가능하다. 작업 환경: Macbook Pro 2019 - i9, 16GB GCP 가상 머신 4대 할당(e2-small 3대 + e2-medium 1대)..

linux - 파일 인코딩 변경

로컬 서버에서 지정된 인코딩 정보와 파일의 인코딩 정보가 일치하지 않는 경우 terminal에서 해당 파일을 읽을 때 아래와 같이 한글이 깨질 수 있다. 해당 파일의 인코딩 정보는 $file -I filename 으로 확인할 수 있다.(윈도우는 $file -bi filename) 해당 파일의 charset은 iso-8859-1이다. 일반적으로 맥 서버의 한글 인코딩 설정은 utf-8로 되어있다. 이렇게 인코딩 정보가 다르면 한글을 정상적으로 읽을 수 없기 때문에 vim으로 파일을 열어서 인코딩 형식을 변경해준다. 그러고나서 다시 인코딩 정보를 확인하면 utf-8로 변경된 것을 확인할 수 있고, 한글도 정상적으로 출력된다.

Kibana - 모니터링 멈추기

키바나를 elastic search와 연동하여 실행시 default로 실시간 데이터가 적재된다. 만약 테스트를 위한 작은 VM을 띄우고 실습한다면, 용량에 부담을 주고 ssh 서버 접속이 제한될 수 있으니 경우에 따라 제한할 필요가 있다. - 실행시 데이터 적재되는 모습 메모리 용량 조절을 위해 모니터링하지 않을때는 데이터가 쌓이지 않도록 Dev-Tools 탭에서 elastic search 명령으로 초기화할 수 있다. _cluster/settings에 persistent -> null 명령어를 실행해주면 아래와 같이 데이터 수집이 중단된다(붉은 선 기점으로 중단)