본문 바로가기
  • 문과생의 백엔드 개발자 성장기

|Playdata_study/AI8

210813_DeepLearning(Neural Net) Neural Net FCN (Fully Connected Network) FCN, CNN, RNN, ANN, DNN 등 모든 것을 지칭하는 의미 Epoch Dataset - 6만개가 있다고 가정하자 train - 5만개 ex) 문제집 5만권 validation - 1만개 ex) 모의고사 1만개 → 1 Epoch 이라 한다. 기본적으로 100 Epoch 정도 돌림 Epoch을 돌릴때 마다 Transforms (변형) 을 진행한다. ex) 변형된 문제집, 변형된 모의고사 Training 1) Forward 2) Backward ※ L · R(W) :: Weight, bias 재분배가 일어남 실습 01_Deep_NN 1 Pytorch 에서의 Gradient Descent 머신러닝에서 선형회귀(Linear Re.. 2021. 8. 16.
210812_DeepLearning2(Loss Function) 4. Loss Function (Full Loss) Loss Function (Cost Function = Error) : 모델이 학습을 한 후 결과 예측을 얼마나 잘했는지 정량화한 함수 Loss가 0에 가까울 수록 좋다 즉 가중치 W를 사용해서 나온 예측 점수에 대해 불만족의 정도를 숫자로 나타내는 것이 손실함수이다. 따라서 Loss가 작을 때 그 분류기는 이미지를 잘 분류함을 알 수 있다. 4-1) Hinge Function 예를들어 예측을 했을때 3개 중에 1개를 맞춘경우 이 모델은 33점 짜리라고 할 수 있다. 이런 경우는 확실하게 예측하지 못한다. 문제점을 해결하기 위해 → 극대화 전략이 필요하다. 즉, 값의 극대화와, 평균화가 필요함 Exponential, Nomalization → Softm.. 2021. 8. 12.
210811_DeepLearning1 1. Computer Vision Computer vision : 기계의 시각화 인간의 시각이 할수 있는 일을 머신이 수행하는 자율적인 시스템을 구축하는 학문 학문분야 : Biology, Psychology, Computer Science, Mathematics, Engineering, Physics 2. Classification Edge Detection 알고리즘 Edge는 경계선, 윤곽선을 뜻하는데 영상을 보면 명암의 밝기가 낮은 곳에서 높은 곳으로 혹은 밝기가 높은 곳에서 낮은 곳으로 변하는 지점에 존재하는 부분이 Edge가 된다. 결국 Edge는 영상의 명암도를 기준으로 명암의 변화가 큰 지점이 된다. 이러한 명암의 밝기 변화, 즉 기울기를 검출해야 한다. 기울기 검출방법이 바로 1차 미분법이다.. 2021. 8. 11.
210810_MachinLearning 5 (Gradient Descent, Logistic Regression, Collaborative Filtering) Linear Regression Gradient Descent (경사하강법) Gradient Descent는 학습 알고리즘 중 하나 학습이라 하면 머신러닝 알고리즘의 결과가 좋아지도록 파라미터를 조정하는 것 가중치(weight), 편향(bias)이 파라미터에 포함된다. 즉, 1차 근삿값 발견용 최적화 알고리즘이며 함수의 기울기(경사)를 구하고 경사의 절대값이 낮은쪽으로 계속 이동시켜 극값에 이르기까지 반복시킨다. 곡선의 특성상 초반에는 빠르게 내려간다 (큰폭의 변화률) 보폭을 짧게 내려가면 학습 시간이 오래걸린다. Cost 0 근처에 다가갔는데 큰 폭으로 내려가면 발산의 우려가 있다. Cost가 크면 어떤값을 수정하면 될까? 기울기 = W(weith)값 가중치 실습 1 선형회귀(Linear Regress.. 2021. 8. 11.
210809_MachinLearning 4 (Bagging /Boosting, 회귀- Linear Regression) Random Forest 모델의 이점과 한계점 Decision Tree 의 한계점 Decision Tree 는 Variance(분산)가 큰 모델이다. → overfitting 이 일어난다, 일반적인 학습이 이뤄지기 힘들다. Input이 조금이라도 변하면 모델이 크게 변한다. RandomForest가 이를 극복하는 방법 Decision Tree여러개를 결합하여 Variance(분산, 변동성) 을 낮춘다. → overfitting 을 현저히 줄였다. 대신 학습량도 많고 연산량도 늘려 속도가 늘어난다. Tree처럼 outlier 값을 그대로 따라가지 않고 모함수와 더 비슷해지는 것을 볼 수 있다. Bias VS Variance 머신러닝 모델의 에러는 두가지로 분류 한다. 편향(Bias)과 분산(Variance.. 2021. 8. 9.
210806_MachinLearning 3 (Random Forest, Confusion Matrix) 지도학습 1. 분류 2. 회귀 2.1 Linear Regression 분류모델의 성능평가 (정답 률 맞추기 위함) 1. score () : 내부적으로 predict 사용 (x_test, y_test) → predict, y_test 비교 2. accuracy_score() : 먼저 predict를 사용 후에 비교 분류모델의 성능 평가 지수 1. Accuracy : 일반적으로 Accuracy 가 높으면 precision, Recall 지수도 높아진다. 일반적이지 않은 경우를 위해 정리를 해야한다. 2. precision : 정밀도 3. Recall : 재현율 Decision Tree 엔트로피 지수 : (0~1) 0에 가까울수록 좋다, 엔트로피가 1이면 불순도가 최대 0에 가까울 수록 한 영역에 타깃이 하나.. 2021. 8. 9.
210805_MachinLearning 2 (Decision Tree) 실습 03_ML_SVM_point 선형으로 분리되는 데이터 실습하기 import sys, os import matplotlib.pyplot as plt import pandas as pd import numpy as np from sklearn import svm from sklearn.model_selection import train_test_split, GridSearchCV Custom Funtion Definition red_RGB = (1, 0, 0) blue_RGB = (0, 0, 1) data_colors = [red_RGB, blue_RGB] def read_points_file(filename): points = [] with open(filename, "r") as f: for poi.. 2021. 8. 5.
210804_MachinLearning 1 (정의, 분류 - SVM) Data 분석 Numpy, Pandas 1. 일반적으로 xml, xtml, csv, json 파일을 불러와서 분석 작업을 한다. 2. cloud 환경 (크롤링)에서 데이터 불러와서 분석 작업 한다. ✔ Data Load ✔ 전처리 : Explore Data → Feature Engineering Data 마이닝 → Encoding (mapping) Binning (구간) ✔ 분석 : 머신러닝 , 딥러닝 MachinLearning computers the ability to learn without being explic itly programmed. 기계가 스스로 학습 1. 많은 데이터가 있어야지 학습이 가능하다. 2. computer power 도 좋아야 한다. 3. 수학적 알고리즘 가능해야 한다. 학.. 2021. 8. 5.