DataScience
ObjectDetection이란? 기술, 알고리즘 연혁 알아보기
ObjectDetection이란 ObjectDetection은 컴퓨터비전 분야의 대표적인 기술로 이미지 내에 물체를 인식하고 그 물체가 무엇인지 분류하기 위한 기술이다. 아래 그림으로 자세히 알아보자 이미지를 학습해서 단순히 고양이인지, 강아지인지 구분해주는 모델을 만들면 image Classification 모델을 만든것이고, 두번째와 세번째 사진처럼 물체의 위치를 찾아서 박스(Bounding Box)를 그리고 그 박스 이미지가 어떤건지 Classification해주는 모델을 Object Detection이라고 한다. 그리고 마지막 사진처럼 Bounding Box가 아닌 이미지를 곡선에 맞춰서 자르는 기술은 Image Segmentation 기술이라고 부른다. 1. Bounding Box Boundin..
[통계스터디]1주차_확률이란?
1장 _ 확률이란 목차 수학의 입장 세 개의 문(몬티 홀 문제) - 비행선 시점 세 조합(Ω, F, P) - 신의 관점 확률변수 확률분포 실전용 축약법 Ω는 배후 1.1 수학의 입장 확률이란 무엇인가? → “다음 조건을 충족하는 세 조합(Ω, F, P)를 확률 공간이라고 부른다” 1장의 목표는 우리가 어딘지 모르게 가지고 있는 확률의 이미자와 이 추상적인 정의를 연결시키는 것 1.2 세 개의 문(몬티 홀 문제) - 비행선 시점 문제 설명 아래 그럼처럼 세 개의 문이 있다. 그 중 하나만 정답이고, 문을 열면 고급차가 있다. 나머지 둘은 오답으로 염소가 있다. 도전자는 세개의 문 중에서 하나만 선택할 수 있다. 사회자는 선택받지 못한 문 중에서 오답을 하나 열어 염소를 보여주면서 선택을 바꿀지 안바꿀지 다..
DL _ CNN을 활용한 MNIST 손글씨 분류(VGGNet, ResNet)
신입 연구 과제로 MNIST 손글씨 분류 과제를 진행했는데 과제로 VGGNet 구조로 Layer를 쌓아서 모델을 구현해보았습니다. 그리고 Keras에 내장된 VGG과 ResNet 전이학습 모델을 가져와서 성능을 비교해보는 코드도 작성해보았습니다. 먼저 CNN알고리즘에 대한 설명을 간략하게 정리하고 코드로 구현하겠습니다. CNN 알고리즘 개념 신경망 자체와 마찬가지로 CNN은 생물학, 특히 고양이의 시각 피질의 수용 영역(receptive field)에서 영감을 받았습니다. 이미지는 2차원으로 구성된 데이터이기 때문에 이를 1차원으로 나열하면 이미지의 특성을 알아차리기 어려운 문제가 있었는데 이러한 문제를 해결하기 위해 개발된 모델이 CNN모델입니다. 기본적으로 CNN알고리즘은 이전의 일반적인 DNN, 네..
DL.6 _ 자연어처리, word2vec, fastText, 순환신경망, RNN, LSTM, GRU, Attention
Word2Vec 2013년에 고안된 Word2Vec 말 그대로 단어를 벡터로(Word to Vector) 나타내는 방법으로 가장 널리 사용되는 임베딩 방법 중 하나이다 Word2Vec은 특정 단어 양 옆에 있는 두 단어(window size = 2)의 관계를 활용하기 때문에 분포 가설을 잘 반영하고 있다. Word2Vec에는 CBoW와 Skip-gram의 2가지 방법이 있습니다. - CBoW 와 Skip-gram 주변 단어에 대한 정보를 기반으로 중심 단어의 정보를 예측하는 모델인지 => CBoW(Continuous Bag-of-Words) 중심 단어의 정보를 기반으로 주변 단어의 정보를 예측하는 모델인지 => Skip-gram FastText fastText 는 Word2Vec 방식에 철자(Charac..
DL.5 _ 자연어처리(NLP)
자연어 처리에서 등장하는 용어들 말뭉치(Corpus) : 특정한 목적을 가지고 수집한 텍스트 데이터 문서(Document) : 문장(Sentence)들의 집합 문장(Sentence) : 여러 개의 토큰(단어, 형태소 등)으로 구성된 문자열. 마침표, 느낌표 등의 기호로 구분 어휘집합(Vocabulary) : 코퍼스에 있는 모든 문서, 문장을 토큰화한 후 중복을 제거한 토큰의 집합 전처리(Preprocessing) 토큰화(Tokenization) 차원의 저주(Curse of Dimensionality) 불용어(Stop words) 어간 추출(Stemming) 표제어 추출(Lemmatization) 등장 횟수 기반의 단어 표현(Count-based Representation) 문서-단어 행렬(Document..
DL.4 _ 신경망 용어정리, Keras Hyperparameters
신경망 용어 정의 뉴런(Neuron): 뉴런은 신경계를 구성하는 세포이다. 딥러닝에서는 이러한 뉴런을 모사한 인공 뉴런인 퍼셉트론은 다수의 입력 신호를 받아 하나의 신호를 출력한다. 입력층(Input Layer):입력층(Input Layer)은 데이터 셋으로부터 입력을 받는 층으로 보통 입력변수와 입력 노드의 수를 같게 설정한다. 보통 입력층은 어떤 계산도 수행하지 않고 그냥 값들을 전달하기만 하는 특징을 가지고 있다. 은닉층(Hidden Layer):입력층과 출력층 사이에 있는 층들을 은닉층이라고 부르는데 은닉층은 계산 결과를 사용자가 확인 할 수 없기 때문에 은닉층이라는 이름이 붙었다. 출력층(Output Layer):신경망에서 가장 오른쪽, 마지막 층이 출력층으로 예측하고 하는 클래스를 출력해주는 ..