본문 바로가기

분류 전체보기

섹션 3 에 접어들면서 뒤돌아본다... 횡설수설 이해 부탁... 너무 어려워써여....이번 섹션 코드스테이츠 부트캠프를 시작한지 벌써 3개월에 접어든다, 특히 이번 섹션 3의 프로젝트 시작하는 시점에서 글을 쓰자니 너무나도 울컥울컥한다. 원래 하던일이 인문학에 가까운 예술분야이다보니 기술에대한 니즈가 강했고 데이터 엔지니어에 대한 공부도 좀 열심히 해보고싶어서 이번 섹션 3는 정말 기대가 컸는데 망충멍충한 내머리가 안따라줘서 매일매일 울면서 지치면서 보낸 하루 한달이었다. 그래도 지금 돌아보니 어느덧 익숙해진 CLI와 VSC가 떡하니 내앞에 차려져있었다. 아직 프로젝트 전이기는 하지만 그것만으로도 큰 수확이었네.... 싶은 한달이었다. 같이 공부하는 동기들이 우리 기수는 하차인원이 제일 기수가 되자는 서로의 초심을 잡아주면서 서로 공부하는것에 사기를 돋우는 분위기라서 너무 감사하고 고마운 세번째달이.. 더보기
[Python] CLI로 사용하기 Terminal, git bash, Command line Command Line Interface (CLI) Terminal 혹은 Command line, Power Shell과 같이 문자로 명령하는 인터페이스 (할미시절 ms-dos, C++ 같은 느낌의 인터페이스같은것) Graphic User Interface(GUI) windows os, mac os처럼 그래픽을 클릭하면서 명령하는 인터페이스 https://youtu.be/hNdAQQeqkYU Terminal vs. Bash vs. Command-line 차이 terminal emulator is the window bash is the language that runs in most terminal emulators (zsh , bash , shell= langauge) visual studio code.. 더보기
[Python] 파이썬에서 Github 사용하기 (ft.잔디농사를하자git commit) Git, Github git : 버전관리도구 like as 사진기, 블랙박스 git clone vs pull : git clone은 리모트 설정을 자동으로 해주는 초기 다운로드에 사용하고git pull은 리모트 설정이 이미 되어있을 떄 업데이트 사항 등을 다운로드 할 떄 사용한다고 github : git을 이용한 협업도구 git init : 깃시작 ------- git clone https://저장소path : 원격저장소를 로컬로 끌어올 수 있음. 이 경우에 git init은 하지않아도 된다. ------------ # git 처음 시작할때 git config user.name git config user.email --------- git reset "돌아갈 commit 번호" --hard : 완전히 .. 더보기
[Python] Conda 가상환경만들기 (+ 패키지 확인하기 저장하기 설치하기 requirements.txt) 파이썬에서 작업을 시작 하기전 가상환경을 왜 만들어야 할까? 모두의 컴퓨터 환경이 다르고 각 코드들이 요하는 설치 버전이 다르기 때문에 콘다 가상환경을 통하여 각각에 맞는 버전및 요구되어지는 파일을 설치하고 작업을 시작한다. 콘다 가상환경을 만들때 가상환경명은 알아보기 쉽고 이해가 직관적으로 만들어 주는것을 권장한다. conda --version : conda 버전 확인 conda create -n 환경명 python=버전 : 가상환경 생성 conda env list : conda의 가상환경 리스트 확인 conda remove -n 환경명 --all : 가상환경 삭제 activate 가상환경명 : 가상환경 실행 conda deactivate : 가상환경 비활성화 콘다 가상환경을 만들고 설치된 패키지 파일.. 더보기
[Python] Basic Collection - list[], tuple(), dict{} 기본자료형 vs 컬렉션 자료형 기본 자료형(문자열, 숫자, bool)등은 특정 하나의 값만 사용. 컬렉션은 여러개의 값을 저장 할 수 있다. 컬렉션 자료형의 특징에 따라 리스트, 튜플, 셋, 딕셔너리로 구분. List [ ] 컬렉션 자료형에서 가장 많이 쓰이는 자료형태로; 딘순자료형이 아닌 자료구조의 형태를 취함 리스트는 가변 가능함 (=동적이다) ; 인덱스와 메소드를 활용, 값의 수정 및 정렬이 쉽다. cheeses = ['Cheddar', 'Edam', 'Gouda'] numbers = [123, 456] empty = [] print(cheeses, numbers, empty) # ['Cheddar', 'Edam', 'Gouda'] [123, 456] [] print('numbers[1] :',nu.. 더보기
[Machine Learning] Model Selection - Hyper-parameter 하이퍼파라미터 튜닝 (Randomized Search CV, GridSearchCV) 하이퍼파라미터튜닝 만드는 모델의 최고성능을 내기 위해서 하는것, 학습과정을 직접 컨트롤할 수 있는것. >> 랜덤서치는 더 쉽게 더 넓은 범위를 찾는다. 그러니 먼저 하는것이 좋음. GridSearchCV: 검증하고 싶은 하이퍼파라미터들의 수치를 정해주고 그 조합을 모두 검증. RandomizedSearchCV: 검증하려는 하이퍼파라미터들의 값 범위를 지정해주면 무작위로 값을 지정해 그 조합을 모두 검증. Randomized Search CV 1) 하이퍼파라미터를 직접 지정 1. 라이브러리 불러오기 from sklearn.model_selection import RandomizedSearchCV 2. pipe라인을 이용하여 모델 학습(예시는 릿지회귀) from sklearn.pipeline import m.. 더보기
[Machine Learning] 교차검증(Cross-validation) 모델선택(Model selection) 문제 우리 문제를 풀기위해 어떤 학습 모델을 사용해야 할 것인지? 어떤 하이퍼파라미터를 사용할 것인지? 데이터의 크기에 대한 문제, 모델선택에 대한 문제를 해결하기 위해 사용하는 방법 중 한 가지가 Cross-validation(교차검증). 참고: 교차검증은 시계열(time series) 데이터에는 적합하지 않음. 교차검증을 사용하는 이유는 train/test set로만 나누면 고정된 test set을 가지고 모델의 성능을 확인하고 파라미터를 수정하는 이 과정을 반복하면서 결국 내가 만든 모델은 test set에만 잘 동작하는 모델이되며 이는 Overfitting(과적합)문제를 일으킨다. 이를 해결하기 위해 cross-validationㅇㄹ 사용. Cross-val.. 더보기
[Machine Learning] 분류 모델의 성능 평가 지표- Confusion Matrix( 혼동행렬), 정확도, 정밀도, 재현율, F1, AUC, 임계값(thresholds) Confusion Matrix 구현 Python fig, ax = plt.subplots() pcm = plot_confusion_matrix(pipe, X_val, y_val, cmap=plt.cm.Blues, ax=ax); plt.title(f'Confusion matrix, n = {len(y_val)}', fontsize=15) plt.show() 정확도(Accuracy): (TP+TN) / Total 전체 범주를 모두 바르게 맞춘 경우(True값 전체)를 전체 수로 나눈 값 >>> 종속변수의 비율이 불균형할때 가치가 낮아진다. 정밀도(Precision): TP / (TP+FP) Positive로 예측한 경우 중 올바르게 Positive를 맞춘 비율 >>>정밀도가 중요한 경우는 실제 False를 .. 더보기