인공지능

    [머신러닝] - 로지스틱 회귀 (Logistic Regression)

    1. 분류 분류는 연속적인 회귀와 달리 데이터 출력이 이산적인 경우를 나타냅니다. 분류: 이진 분류(Binary classification) : 출력의 값이 두 개인 분류 다중 분류(Multiclass classification) : 출력의 값이 여러개 2. 로지스틱 회귀 기법 회귀? 분류에서 사용할 수있는 로지스틱 회귀 기법에서 회귀라는 단어가 들어가 있다. 회귀와 분류에서 모두 사용이 가능합니다. 로지스틱 함수 로지스틱 회귀 모델 : 선형회귀의 결과를 로지스틱 함수에 적용하여 분류에 이용 선형 회귀 모델의 결과 z가 들어오면 0~1 사이의 결과값을 출력해 줍니다. 원하는threshold값을 지정하여 해당 값보다 높으면 1 낮으면 0으로 변환하여 이중 분류를 합니다. 로지스틱 회귀 모델 기존 선형 회귀..

    [딥러닝] 딥러닝을 위한 GPU 셋팅 with VSC

    Visual Studio Code에서 딥러닝을 돌리기 위해 GPU 세팅하는 과정입니다. 1. Anaconda 설치 Anaconda | Anaconda Distribution Anaconda | Anaconda Distribution Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine. www.anaconda.com 가상환경을 사용하여 패키지를 관리하는 경우가 대부분이어서 아나콘다를 사용하겠습니다. 다양한 딥러닝 패캐지와 과학 및 머신러닝 쉬운 방법으로 수행 가능하게 해 줍니다. 다양한 가상 환경을 사용 가능하며 win-32로도 ..

    DL - Text Detection (EAST)

    EAST ( Efficient and Accuracy Scene Text detector ) "EAST: an efficient and accurate scene text detector" - MEGVII 기존 많은 프로세스 과정을 거치는 것과는 다르게 2개의 과정을 거치게 된다. FCN Architecture Feature extractor : 특징을 뽑아내는 layer conv와 pooling하며 pooling할 수록 더 크고 직관적인 특징 뽑아낼 수 있다. 초반의 feature map = 작은 크기의 특징 후반의 feature map = 큰 크기의 특징 Feature merging 각각의 feature map을 통해 크고 작은 특징에 모두 잘 동작하는 feature map을 만들기 위해 사용 Out..

    딥러닝 - VGGNet, GoogleNet

    VGGNet 깊이를 깊게할 수록 더 성능에 많은 영향을 끼치는 것을 증명 깊이를 더 깊게하기 위해 conv filter의 크기를 줄였다 (3x3 Convolution) 위 결과를 통해 깊이가 깊어질수록 성능이 좋아지며 LRN(Local Response Normalization)은 성능에 큰 영향을 주지 않았다는 사실을 알게되었습니다. LRN : 가장 강하게 활성화된 뉴런이 다른 특성 맵에 있는 같은 위치의 뉴런을 억제 1x1 Conv Layer : Non-Linearity 증가 하나의 Conv층을 지나면 ReLU함수를 적용시키므로 비선형성이 증가한다. 이는 성능 향상으로 이어진다. 간단하면서 강력한 딥러닝 구조 작은 필터 사이즈도 깊게 쌓으면 충분히 효율적인 특징 추출이 가능 GoogleNet ( Inc..

    딥러닝 - 합성곱 신경망 & AlexNet

    합성곱 신경망 ( Convolutional Neural Networks) 합성곱 층 (Convolutional layer)과 폴링 층(Pooling or Subsampling layer)으로 구성되어 있다. 합성곱 층 가중치가 존재 제로 패딩(Zero padding) : 현재 층의 높이와 너비를 이전 층과 맞추기 위해 가장자리에 0을 추가 스트라이드(Stride) : 합성곱 층에 필터를 적용 시 적용 거리 3 X 3 Filter, st,소ride = 1, 제로패딩 존재 filter 하나의 필터는 하나의 feature map 만든다. 다양한 필터가 존재 Ex) Blurring 필터, Sharpen 필터, Edge필터 등 이들은 훈련하는 동안 합성곱 층이 자동으로 해당 문제에 가장 유용한 필터를 찾는다. H..

    딥러닝 - 다중 퍼셉트론

    MLP(다중 퍼셉트론) 기존 1개일때는 구분하기 힘들지만, 2개 이상이면 3개의 영역으로 구분 가능 입력 층(통과) 1개 + 출력 층(마지막) 1개 + 은닉 층(TLU) 1개 이상 하위 층: 입력 층에 가까움, 상위 층: 출력 층에 가까움 편향 뉴련: 출력 층을 제외하고 전부 존재 feedforward neural network(FNN): 입력에서 출력으로 한 방향으로만 흐른다. DNN(Deep neural network) : 은닉 층을 여러 개 쌓아 올린 인공 신경망 Backpropagation(역전파) 다중 퍼셉트론을 훈련할 훈련 알고리즘, 데이비드 루멜하트, 제프리 힌턴, 로날드 윌리엄스가 공개 네트워크를 정방향, 역방향 1번씩 통과하여 모든 모델 파라미터의 오차를 줄이기 위한 가중치와 편향값의 변..

    딥러닝 - 로지스틱 & 소프트맥스 & 크로스 엔트로피

    로지스틱 회귀 회귀(연속)와 분류(비연속) 모두 포함되는 알고리즘 샘플이 특정 클래스에 속할 확률을 추정 동작방식 : 선형회귀와 같이 각 특성의 가중치의 합에 편향을 더한 값에 로지스틱을 출력합니다. logistic : 0과 1사이의 값을 출력하는 sigmoid function x( logit or log-odds) : 실패에 대한 성공에 로그를 취한 값이다. odds = p / (1-p) ( 양성 클래스 추정 확률 / 음성 클래스 추정 확률 ) log-odds : odds의 로그 값 로그 손실(Log loss) : 각 데이터 세트의 비용 함수( 각 추정 확률 로그값 )를 평균한 값 (p(y) : 성공 클래스에 대한 추정 확률 ) 비용 함수 최적화: 정규방정식 : 존재하지 않음 GD : 경사 하강법으로 ..

    딥러닝 - 다항 회귀

    다항 회귀 비선형 데이터를 선형 모델이 학습할 수 있게하는 기법 각 특성의 거듭제곱을 새로운 특성으로 추가 Ex) PoltnomialFeatures(degree=d)는 (n+d)!/d!n! 만큼 생성 특정 비선형 데이터에 대해 아주 높은 고차원 다항 회귀 모델의 경우 과대적합입니다. 위와 같이 차원이 적을 수록 선형 모델이고 높을 수록 데이터 셋에 과대적합하는 것을 볼 수 있습니다. 과대적합 판별법 훈련데이터의 성능과 검증 성능 비교합니다. 둘다 낮으면 과소적합 훈련데이터는 매우 높지만 검증이 낮다면 과대적합 학습곡선 관찰 훈련세트가 추가하면서 잡음과 비선형으로 데이터와 완전히 같은 선형모델을 만들 수는 없습니다. 또한 훈련세트가 추가되어도 어느 정도까지는 오차가 상승합니다. 검증세트의 경우 적은 수로 ..

    딥러닝 - 머신러닝 기본 프로세스

    머신러닝 프로세스 가설(Hypothesis) : 학습하고자 하는 가설을 수학적 표현식으로 나타낸다. 손실함수(Lost Function) : 가설의 성능을 측정할 수 있는 손실함수 정의 최적화 : 손실함수를 최소화 하는 학습 알고리즘 설계 선형 회귀 모델 가설 y : 예측값, (모델 파라미터W를 사용한 가설 함수) n : 특성의 수 x : 특성에 따른 값, X: 특성 벡터 b : 편향 선형 모델의 기본 형태로 예측값(y)는 입력 특성(x)에 각 가중치(w)를 곱하여 더한 가중치의 합으로 나타낼 수 있다. 손실 함수(Cost Function) 모델의 훈련 모델이 훈련 세트에 가장 잘 맞도록 모델 파라미터를 설정 따라서 모델이 훈련 데이터에 얼마나 잘 맞는지 측정해야 한다. Lost Function : 성능 ..

    딥러닝 기초

    딥러닝(Deep Learning) 머신러닝 기법 중 하나인 인공신경망(Artificial Neural Networks) 기법의 은닉 층(Hidden Layer)을 깊게 쌓은 구조를 이용해 학습하는 기법 장점 : 데이터의 특징을 단계별로 추상화를 높여가면서 학습할 수 있습니다. 얕은 은닉층은 점, 선, 면과 같은 추상화 단계가 낮은 특징을 학습 깊은 은닉층은 얼굴의 눈, 코, 입 등 추상화 단계가 높은 특징 을 학습합니다. 특징 학습(Feature Learning) 은닉 층을 통한 학습으로 표현 학습(Representation Learning)이라고도 부릅니다. Hand-Crafted Feature(손으로 정제한 특징) : 머신러닝 외의 전통적인 기법들은 전문가들의 공식이나 연구로 나온 알고리즘을 통해 추..