전공 과목 이수2👨‍💻/딥러닝 10

[혼공머] 5강. 데이터 전처리

데이터전처리 / 표준점수 / 데이터세트 나누기 데이터 준비! import numpy as np fish_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0, 31.5, 32.0, 32.0, 32.0, 33.0, 33.0, 33.5, 33.5, 34.0, 34.0, 34.5, 35.0, 35.0, 35.0, 35.0, 36.0, 36.0, 37.0, 38.5, 38.5, 39.5, 41.0, 41.0, 9.8, 10.5, 10.6, 11.0, 11.2, 11.3, 11.8, 11.8, 12.0, 12.2, 12.4, 13.0, 14.3, 15.0] fish_weight = [242.0, 290.0, 340.0, 3..

[혼공머] 4강. 훈련 세트와 테스트 세트

# 훈련 세트 테스트 세트 분리의 필요성 알고리즘의 성능을 제대로 평가하려면 훈련 데이터와 평가에 사용할 데이터는 각각 달라야 한다. ∵ 훈련에 사용되는 데이터로 평가한다면 답지를 들고 시험을 치르는 것과 같기 때문! 평가에 사용되는 데이터 - 테스트 세트 , 훈련에 사용되는 데이터 - 훈련 세트 훈련 전에 미리 데이터를 분리하자 # 3강과 동일하게 fish_data, fisht_target를 만든다 fish_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0, 31.5, 32.0, 32.0, 32.0, 33.0, 33.0, 33.5, 33.5, 34.0, 34.0, 34.5, 35.0, 35.0, 35.0, 3..

[혼공머] 3강.마켓과 머신러닝 / knn

도미, 빙어 분류 문제 sklearn k-최근점 이웃 알고리즘 # 도미 데이터(길이와 무게) 준비하기 bream_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0, 31.5, 32.0, 32.0, 32.0, 33.0, 33.0, 33.5, 33.5, 34.0, 34.0, 34.5, 35.0, 35.0, 35.0, 35.0, 36.0, 36.0, 37.0, 38.5, 38.5, 39.5, 41.0, 41.0] bream_weight = [242.0, 290.0, 340.0, 363.0, 430.0, 450.0, 500.0, 390.0, 450.0, 500.0, 475.0, 500.0, 500.0, 340.0, 6..

Pytorch입문 - 텐서 기본 문법

import torch import numpy as np - torch 텐서 작업은 numpy 텐서작업과 비슷하다! # numpy to torch num = np.array([[1,2,3], [4,5,6]]) tor = torch.FloatTensor(num) print(num) print(tor) [[1 2 3] [4 5 6]] tensor([[1., 2., 3.], [4., 5., 6.]]) - numpy 어레이로 선언하고 torch.FloatTensor 이용해 torch형 실수텐서 생성! t = torch.FloatTensor([0., 1., 2., 3., 4., 5., 6.]) print(t) # tensor([0., 1., 2., 3., 4., 5., 6.]) t.dim() # 1차원 t.sha..

CNN : 합성곱 신경망(컨볼루션 신경망)

- Convolutional Neural Network : CNN 컨볼루션 신경망 = 합성곱 신경망 - 이 신경망으로 인해 이미지 분류 능력이 상승됨, 텍스트나 음성 등 다양한 분야의 데이터 처리에 쓰이고 있음 # 특징 추출 - 이미지를 분류시키려면 그 이미지의 특징들을 찾아야 한다. ex) 사물의 외각선을 탐지를 통한(캐니엣지같은) 물체 감지 알고리즘, SIFT 알고리즘 (대응되는 특징 부분 찾음) # 컨볼루션 연산 이미지의 픽셀 주변과 필터의 조합연산(합성곱)을 거친 결과. 이때, 픽셀이 움직이는 보폭을 stride라고 한다. 필터의 내용을 수작업으로 넣어주는 대신 딥러닝 학습을 통해 자동으로 필터를 생성할 것이다. 개발자는 필터사이즈만 제시. # 컨볼루션 신경망의 구조 특징 추출기(Feature E..

신경전이학습을 통해 내 사진 변형하기 (Neural Style Transfer)

구글colab을 이용했다. from google.colab import drive drive.mount('/content/drive') 구글 colab은 구글드라이브와 연동이 가능하다. 연동하기 위해서는 google.colab의 drive를 임포트 해줘야한다. drive.mount함수를 이용해 내 계정의 구글드라이브를 마운트 시켜준다 # 8.42 원본 텍스쳐 이미지 불러오기 import tensorflow as tf import matplotlib.pyplot as plt import cv2 # 스타일 이미지 style_path=r'/content/drive/MyDrive/pp.jpg' # 스타일 이미지 경로를 이용해 읽은 이미지를 style_image에 저장 style_image = plt.imread..

ZYNQ 키트를 활용한 숫자 판별시스템

오늘은 딥러닝 프로세서 유닛, 임베디드 시스템인 dpu 키트를 이용해 진행했다. conda activate 명령어를 이용해 visit-ai 가상환경을 실행한다. cd workspace1/.../files에 들어가 ls명령어를 이용해 해당 디렉토리의 파일들을 살펴본다. 0번부터 6번까지 학습과 검증 과정을 거친다. name, input node, output node를 vi명령어를 이용해 실행시켜 이름을 수정한다. * 여기서 리눅스 내용이 정말 많다는 것을 느꼈다. 리눅스에서 삭제된 내용은 복구하기 힘드니 -rm 명령어를 사용할때는 는 유의해서 작성해야한다! workspace의 파일 여덟개를 칩안에 넣어주고 키트에 넣어준다. 키트와 카메라를 연결하고 전원을 켠다. 키트와 연결하는 어플리케이션을 실행해서 c..

딥러닝에서의 회귀 (Regression)

회귀는 머신러닝에서 가장 기초적인 데이터 분석 방법 중 하나이다. 회귀는 가격이나 확률처럼 연속된 실숫값을 정확히 예측하는 것이 목적이다. 선형회귀(Linear Regression)는 데이터의 경향성을 가장 잘 설명하는 하나의 직선을 예측하는 것이다. 다항회귀(Polynominal Regression)는 다항식을 이용한 회귀이다. 회귀에서 "오차를 줄이다" = "더 정확한 회귀선을 구하자" 와 같다. 따라서 데이터의 흐름을 많이 벗어난 극단치는 제거하는 방법 등으로 데이터의 품질을 높이는 것도 도움이 된다. 머신러닝에서 회귀를 적용하려면 식을 계속 바꿔가며 (사람이) 최적의 회귀식을 찾기 위해 노력해야 한다. 하지만 딥러닝 네트워크를 이용한 회귀는 기계가 즉, 딥러닝의 신경망이 적절한 회귀선을 찾아준다...