딥러닝 10

[DL]10. 객체 탐지

딥러닝_10_객체 탐지 객체 탐지: 이미지 내에서 객체(사물, 사람 등)를 감지하는 것 -객체 있으면 찾고 객체가 없으면 찾지 않음 -활용분야: 공항검색대 사람인식, CCTV 위급상황 감지, 자율주행차 차량거리 파악 등 2. 객체 탐지 알고리즘의 역사 1)Traditional Detection Method(전통적) 슬라이딩 윈도우: 고정된 크기의 window로 이미지의 좌상단부터 우하단(이미지의 모든 영역)까지 일일이 객체를 검출하는 방식 문제점: 객체가 없는 영역도 Sliding해야 하며, 여러 scale의 이미지를 스캔하여 검출→수행시간이 오래 걸리고, 검출성능이 낮음, 한 객체를 여러 번 검색 2)Two Stage Detector 영역추정(Region Proposal), 탐지(Detection) 단..

딥러닝 2023.10.04

[DL]9. 네이버 영화리뷰 감성분석

딥러닝_09_네이버 영화 리뷰 감성 분석 *데이터 다운로드: ratings_train, ratings_test https://github.com/e9t/nsmc/ 데이터 불러오기 import pandas as pd train_data=pd.read_table("./data/ratings_train.txt") test_data=pd.read_table("./data/ratings_test.txt") 2. 결측치 제거 결측치 데이터 개수 확인 #결측치 데이터 개수 확인 #True: 결측치, False: 결측치 아님 print(train_data.isnull().sum()) #document에 결측치 5개 있음 결측치 데이터 확인 #결측치 데이터 확인 train_data.loc[train_data.docume..

딥러닝 2023.09.27

[DL]8. 소리데이터 분석

딥러닝_08_소리데이터 분석 [아기울음소리 분류 실습] 목표 librosa 라이브러리를 이용하여 음성처리하는 방법 소리 데이터를 직접 데이터로 입력받아서 소리분류하는 방법 소리데이터를 MFCC로 변환하여 소리를 분류하는 방법 2. 데이터 불러오기 아기 울음소리 데이터셋 -3개의 라벨로 구성(silence, crying, laugh) -훈련데이터 169개, 테스트 데이터 89개로 구성 데이터 압축파일 풀기 #데이터 압축풀기 import zipfile file="./data/baby_sound/baby_sound.zip" #파일 읽기 zip_ref=zipfile.ZipFile(file, "r") #지정한 폴더경로에 압축 풀기 zip_ref.extractall("./baby_sound") #압축풀기 종료 zi..

딥러닝 2023.09.22

[DL]7. 과대적합 제어 및 전이학습

딥러닝_07_과대적합 제어 및 전이학습 [과대적합 제어방법] 데이터 확장(증식) 기존의 데이터에 원래의 특성을 유지하는 선에서 잡음을 추가하거나 데이터를 변형하여 데이터의 양을 증가시키는 방법 데이터의 수가 부족한 경우 간단하게 성능을 개선할 수 있음(과대적합 방지) 1)이미지 데이터 확장방법 rotation_range(360): 0~360° 회전 width_shift_range(0.1): 전체에서 10%내외 수평이동 height_shift_range(0.1): 전체에서 10% 내외 수직이동 -일반적으로 이미지는 수평이동보다 수직이동의 영향을 많이 받으므로 수직이동 값을 작게 설정함 shear_range(0.5): 0.5 radian 내외 시계 반대방향으로 변형 zoom_range(0.3): 0.7~1...

딥러닝 2023.09.21

[DL]6. CNN

딥러닝_06_CNN DNN(Deep Neural Network); 은닉층을 늘려서 학습을 반복하여 최적의 해 도출 -대표적인 알고리즘: CNN, RNN, LSTM, GRU 등 2. CNN(Convolution Neural Network): 이미지 데이터의 특성을 추출하는 알고리즘 과대적합, 기울기 소실문제, 학습시간이 오래 걸리는 문제 해결 기존의 방식: 이미지 패턴의 위치 기반으로 이미지 데이터 학습 CNN 방식: 이미지 데이터의 특징 중 중요한 특성을 추출하여 학습 3. CNN 과정: 이미지→[특성 추출→이미지 크기 줄이기]*반복→여러 작은 특성 이미지 추출→학습→예측 Convolution: filter 연산, 이미지의 특징을 찾기 위해 필터링 수행 *필터 시뮬레이터 https://setosa.io/..

딥러닝 2023.09.20

[DL]5. 오차 역전파

딥러닝_05_오차 역전파 오차 역전파(Back Propagation) 순전파: 입력데이터를 입력층에서부터 출력층까지 정방향으로 이동시키며 출력값을 예측해나가는 과정 역전파: 출력층에서 발생한 오차를 입력층 쪽으로 전파하며 오차에 관여하는 가중치를 수정하여 오차를 줄이는 방향으로 최적의 결과를 학습해나가는 과정 2. sigmoid 함수의 문제점: 역전파과정에서 출력층이 많을수록 미분값이 0에 가까워져 기울기 소실문제가 발생하여 학습이 제대로 되지 않음 3. ReLU: 입력값이 양수일 경우 입력값에 상관없이 미분값이 항상 동일한 값(1)을 유지하여 역전파 과정에서 기울기가 소실되는 문제를 해결 -단점: 입력값이 음수인 경우 미분값이 0이 됨(=데이터 손실), 데이터스케일링 시 사용 x 4. 최적화함수의 종류..

딥러닝 2023.09.15

[DL]4. 다중분류

딥러닝_04_다중분류 다중분류: 분류되는 클래스의 개수가 3개 이상인 분류 활성화 함수: 신호를 활성화 함수를 거쳐 역치 이상의 자극만 다음 계층의 전달함 활성화 함수의 종류: 예측하고 싶은 데이터의 따라 출력층의 활성화 함수가 달라짐 1)연속형 데이터(회귀): Linear 함수(항등함수), y=x -입력값 그대로 출력되지만 활성화 함수를 입력해야 하기 때문에 형식적으로 있는 것 -활성화 함수를 따로 작성하지 않으면 기본값으로 Linear 함수가 적용됨 2)분류: 선형모델의 출력결과는 연속형 데이터, 분류모델의 출력결과는 확률이므로 활성화 함수를 통해 연속형 데이터를 확률로 변환 초기 활성화 함수: step function, 기울기가 없어 경사하강법과 맞지 않음 이진분류: sigmoid 함수, 한 클래스..

딥러닝 2023.09.14

[DL]3. 퍼셉트론, 다층퍼셉트론

딥러닝_03_퍼셉트론, 다층퍼셉트론 [퍼셉트론] 퍼셉트론: 선형모델+활성화 함수 인간의 뉴런은 모든 자극에 반응하는 게 아니라 자극의 크기가 역치 이상일 때 반응함 *역치: 반응을 일으키기 위한 최소한의 자극의 세기 역치의 개념을 활성화 함수로 표현 입력데이터가 활성화 함수를 통해 자극에 반응할 것인지 결정됨 1)Step function(계단함수): 퍼셉트론에 활용되는 활성화 함수. X값이 0 이하면 y는 0(무반응), 0을 초과하면 1(반응) 2)시그모이드 함수(sigmoid 함수): 경사하강법을 사용할 때 필요한 기울기가 있는 함수 경사하강법: 예측값과 정답값 간의 차이인 손실 함수의 크기를 최소화시키는 파라미터를 찾기 위해 최적의 가중치와 절편의 값을 찾는 방법 2. 다층 퍼셉트론(MLP, Mult..

딥러닝 2023.09.11

[DL]2. 딥러닝 개요

딥러닝_02_딥러닝 개요 딥러닝: 인간의 신경망을 모방하여 병렬적 다층구조를 통해 학습하여 예측하는 기술 -기계는 대상을 판단하는 기준이 명확히 정해져 있지만(이분법), 사람은 대상을 판단하는 경계가 느슨하다(추상적). 정해진 기준을 조금이라도 벗어나면 대상이 아니라고 판단한다. 딥러닝 신경망의 구조: 선형모델(y=ax+b)의 종합 →인간이 많은 뉴런의 결과를 종합하여 판단하는 것을 참고하여 선형모델 여러 개를 연결하여 학습시킴 *앙상블모델은 모델끼리 영향을 미치지 않지만, 딥러닝에서는 모델끼리 영향을 미침 딥러닝 모델의 종류: CNN, MLP, 전이학습, RNN 딥러닝의 특징: 병렬적 다층구조를 통해 대량의 데이터에서 복잡한 패턴이나 규칙을 찾아내는 능력이 뛰어남, 머신러닝에 비해 유연한 사고 딥러닝의..

딥러닝 2023.09.09

[DL]1. 텍스트 마이닝

딥러닝_01_텍스트 마이닝 [네이버 영화리뷰 감정분석] 1. 문제정의 영화리뷰데이터를 활용하여 긍정/부정 감성분석 감성분석: 특정 주제를 가지고 글에 대한 감성, 태도를 파악하는 것(긍정/부정) 텍스트 데이터를 다루는 과정 학습 2. 데이터 수집 #파일 불러오는 객체(load_files) from sklearn.datasets import load_files import numpy as np import pandas as pd 1)train 데이터 불러오기 data_url='data/aclImdb/train/' rv_train=load_files(data_url, shuffle=True) #bunch 객체(머신러닝 자료구조 형태) #딕셔너리와 비슷한 형태(key&value)→key로 데이터 추출 #tra..

딥러닝 2023.09.06