본문 바로가기

메모장221

SQLite3 / DBeaver / ElephantSQL / NoSQL SQL 특징을 설명할 수 있어야 합니다. 데이터베이스 관계를 설정할 수 있어야 합니다. SQL 싱글 테이블 관련 문법을 활용할 수 있어야 합니다. Database의 필요성 1. In-Memory 제일 먼저 파이썬에서 데이터를 다룰 때에는 프로그램이 실행될 때에만 존재하는 데이터가 있습니다. 파이썬에서 변수를 만들어 저장한다고 해도 프로그램 실행이 종료가 되는 순간 해당 프로그램이 사용하던 데이터도 같이 없어짐. 그 뜻은 데이터가 프로그램에 의존한다는 것입니다. 이렇게 된다면 원하는 데이터를 원하는 시간에 꺼내오기가 힘들어지고 데이터의 수명이 프로그램의 수명에 의존하게 됩니다. Data가 Program에 의존 프로그램 실행 종료 --> 해당 프로그램 데이터 없어짐 2. File I/O ( Input / O.. 2021. 7. 14.
Docker CLI 가 무엇인지 말할 수 있다 Docker Hub에서 Docker Image 를 검색한 뒤 사용할 수 있다. 한 개의 Docker Image를 이용해서 Container 를 구축할 수 있다. 두 개 이상의 Docker Container를 이용해서 Container 를 구축할 수 있다. Docker LifeCycle 을 통해 오늘 배우지 않은 부분이 무엇인지를 알 수 있다. Docker 다른 장치에서 동작하는 게임을 PC 에서 동작시킨다는 것 ==> 프로그램 실행을 위해 Linux 환경을 쉽게 구성하기 위한 도구 == docker #어플리케이션 실행 환경을 코드로 작성할 수 있고 OS를 격리화하여 관리하는 기술# image = container 실행에 필요한 파일과 설정값들을 포함 ( 변하지않는 파일 .. 2021. 7. 14.
git , 가상환경 터미널 등 CLI 를 접근하고 사용할 수 있다. 파이썬 가상환경을 만들고 사용할 수 있다. 파이썬 가상환경이 왜 필요한지 설명할 수 있다. 깃에 대한 설명을 할 수 있다. 깃을 사용해 프로젝트 관리를 할 수 있다. 깃헙과 같은 사이트를 통해 깃 레포 관리를 할 수 있다. Anaconda 가상환경 프로그램 -개발 당시에 작동이 되었다면 배포 환경에서도 개발 환경과 비슷하게 만들어 최대한 잘 작동을 할 수 있도록 도와주는 역할 *많은 언어들과 동일하게 파이썬도 패키지, 모듈 등을 저장하고 불러오는 방식이 존재 패키지들이 저장되는 방법 (HOW) 패키지들이 저장되는 장소 (WHERE) - standard library, system packages, site packages 파이썬을 설치하게 될 때 같이 설치.. 2021. 7. 14.
Train / Validation / Test Train / Test - > 답지를 보고 훈련을 하게되면 다른 학습데이터가 들어와도 제대로 맞출 수가 없다, train_test_split 함수는 데이터를 랜덤하게 섞은 후, 인덱스 기반으로 train set과 validation set으로 나누는 함수 - 배열의 형태가 들어갈 수 없음 * training set중 몇개를 따로 빼내서(hold out) test error를 직접적으로 추정하는 방법. hold-out은 데이터셋을 훈련셋과 테스트셋으로 분리 예를들어, 데이터셋의 80%를 훈련셋으로 삼아 모델을 훈련시키고, 나머지 20%를 테스트셋으로 이용해서 성능을 평가 그런데 훈련셋과 테스트셋으로만 나눠서 모델의 성능을 평가하다보면, 테스트셋이 모델의 파라미터 설정에 큰 영향 ==> 모델이 테스트셋에 오.. 2021. 7. 7.
정규화( Normalization, Standardization, Regularization ) Generalization : 통계에서 말하는 일반화를 말한다. 기계학습에서는 일반화 성능을 향상시킨다는 말이 많이 나오는데, Train data에 너무 overfitting 되지 않고, 좀 더 일반적인 모델을 만드는 것을 의미한다 == 학습된 모델이 새로운 데이터에서 얼마나 좋은 실행이 일어나는지의 정도 출처: https://jkook.tistory.com/23 [JinKook] Normalization 값의 범위(scale)를 0~1 사이의 값으로 바꾸는 것 학습 전에 scaling하는 것 머신러닝에서 scale이 큰 feature의 영향이 비대해지는 것을 방지 딥러닝에서 Local Minima에 빠질 위험 감소(학습 속도 향상) ==> normalization 하지 않으면 중요한 특성임에도 다른 특.. 2021. 7. 4.
n234 Interpreting ML Model( X-AI ) 부분의존도그림(Partial dependence plot, PDP)을 시각화하고 해석할 수 있습니다. 개별 예측 사례를 Shap value plots을 사용해 설명할 수 있습니다. black box model이란? * X-AI - 모델이 어떻게 이런 예측을 했는지를 확인하기 위한 ( 예측모델 설명 ) *Partial Dependence Plots( PDP ) - ICE곡선들의 평균(= ICE 곡선은 하나의 관측치에 대해 관심 특성을 변화 시킴에 따른 타겟값 변화 곡선 ) 복잡한 모델 -> 이해하기 어렵지만 성능이 좋다. ( 특성중요도가 긍정인지 부정인지 파악 어려움 ) ==> so, PDP사용 = feature 가 target의 어떻게 영향을 미치는지 파악 가능 단순한 모델 -> 이해하기 쉽지만 성능이 .. 2021. 6. 26.
n233 Feature Importances/ bagging, boosting 특성 중요도 계산 방법들(permutation importances, Feature importance, ...)을 이해하고 사용하여 모델을 해석하고 특성 선택시 활용할 수 있다. gradient boosting 을 이해하고 xgboost를 사용하여 모델을 만들 수 있다. *특성 중요도( Feature Importances ) 보통 가지에서 몇번 등장하는지, 혹은 불순도를 얼마나 낮추는 지에 대한 지표 기본 특성 중요도는 빠르지만 특성 종류에 따라 부정확한 결과가 나올 수 있어 주의가 필요합니다. = 트리 모델에서 feature_importances_를 사용하면 cardinality가 높은 특성은 분기에 이용될 확률이 높아 중요도가 높게 나오는데, 따라서 모델이 과적합될 위험 and 문제점은 (-)영향을.. 2021. 6. 26.
n232 Data Wrangling(랭글링) / merge / groupby prior['product_id'].mode() = 최빈값으로 가장 많이 나온 값이 나옴 prior['product_id'].value_counts() In [24]: df3 = pd.DataFrame({"X": ["A", "B", "A", "B"], "Y": [1, 4, 3, 2]}) In [25]: df3.groupby(["X"]).get_group("A") Out[25]: X Y 0 A 1 2 A 3 In [26]: df3.groupby(["X"]).get_group("B") Out[26]: X Y 1 B 4 3 B 2 2021. 6. 26.