1. setting

김민지·2024년 3월 22일

데이터패턴인식

목록 보기
1/13

딥러닝 모델 생성에 필요한 3가지 요소:

  1. 데이터
  • 지도학습: labeling된 데이터 사용
    예: CNN, RNN
  • 비지도학습: labeling 되지 않은 데이터 사용
    예: GAN, AutoEncoder
  1. 컴퓨터
  • 데이터의 양이 많은 경우는 GPU 작업환경을 갖추어야 하나, 그렇지 않은 경우에는 CPU로도 충분하다. (+ 구글에서 만든 데이터 분석 및 딥러닝용 하드웨어인 TPU도 있다).
  • 작업환경을 구축하는 법은 크게 Colab을 활용하는 것과 Anaconda를 설치해 가상환경에서 실행하는 법으로 나뉨.
  1. 프로그램 코딩

preperation

  1. 라이브러리: 특정한 기능을 담은 작은 프로그램들(module, api)을 모아놓은 것
# 형태
from (라이브러리) import (함수명) #단순 호출
import (라이브러리) as (단축된 새로운 이름) #이름 단순화

# 예시
from tensorflow.keras.models import Sequential # tensorflow의 keras라는 api에 있는 models 클래스로부터 Sequential() 함수를 호출하라는 뜻의 명령어
from tensorflow.keras.layers import Dense # layers 클래스에서 Dense() 함수 호출

import numpy as np
  1. 깃허브에 저장된 데이터 불러오는 법
# data 폴더 안에 데이터들이 불려옴
!git clone https://github/taehojo/data.git

# data 폴더 안의 csv 파일 불러오는 법
mydata = np.loadtxt("./data/ThoraricSurgery3.csv", delimiter=",")
  1. 속성(attribute)과 클래스(class)의 개념
  • 속성은 독립변수(x)에, 클래스는 종속변수(y)에 대응하는 개념
  • 예를 들어 해당 의료데이터의 경우, 종양의 유형, 폐활량, 기침, 흡연, 천식 여부 등이 속성이고 이러한 데이터들을 통해 예측한 수술 1년 이후의 생존여부가 클래스입니다. 클래스는 0, 1로 이루어집니다.
  1. 딥러닝 구조
  • 각 layer를 생성하는 명령어: model.add(해당레이어의 모델 옵션)
  • 예시 코드
model = Sequential() # 전에 호출한 Sequential 함수를 모델로 설정함
model.add(Dense(30, input_dim=16, activation='relu')) # Dense 함수: 각 층의 입력과 출력을 촘촘하게 연결하는 역할
model.add(Dense(1, activation='sigmoid'))
  • 딥러닝 설계란 ? 몇 개의 layer를 어떻게 쌓을 지, 내부 변수를 어떻게 정할지 등을 결정하는 것
  1. 모델 실행
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy']) 
# model.compile: 앞서 만든 모델의 설정을 그대로 실행하는 함수
history = model.fit(X, y, epochs=5, batch_size=16) # model.fit: layer를 몇번 오갈 건지, 한번 오갈 때 몇개의 데이터를 사용할 건지 설정

0개의 댓글