[SQL] 데이터 베이스 모델링 | eXERD 사용
·
Dev/SQL
exerd는 이클립스 기반 데이터베이스 모델링도구이다. 해당 ERD툴을 사용해서 데이터 베이스 모델링을 해보자.  1. 파일 생성 및 테이블 생성파일생성파일 생성 > eXERD File   테이블생성컬럼생성eXERD 에서 새 테이블을 만들고 컬럼을 추가한다 (ctrl + enter) 해당 컬럼 오른쪽 마우스 > pk 컬럼으로 지정컬럼명을 작성하고 '사번'을 primary key로 설정 한다. 컬럼 보기 설정 > 논리/물리 동시편집논리 이름과 물리 이름을 동시에 보여지게 하고 편집할 수 있다. 물리이름 : 실제 컬럼 명논리이름 : 컬럼의 의미 부서 / 직원 / 휴가 테이블 만들기  2. 논리 모델링비식별 관계 비식별 관계를 만든다. 연결하려는 테이블을 순서대로 선택해주면 된다.  식별 관계 식별 관계를 만..
[언어지능 딥러닝] [PyTorch] 강화 학습
·
Dev/언어지능 딥러닝
강화 학습 개요강화 학습은 언제 쓰이는가주어진 환경에서 가능한 여러 행동 시퀀스 중에서 보상을 최대화하는 최적의 경로를 찾는 것필요한 주요 요소들이 행동(action) 과 보상(reward)-> 특정 상태에서 가능한 행동을 선택하고, 그 선택에 대한 보상을 받으며, 이 정보를 바탕으로 최적의 정책을 학습함 ** Q-Learning, Dynamic Programming 은 딥러닝이 본격적으로 발전하기 전에 나온 강화학습 및 최적화 기법이다. 본 수업에선 제외한다.    Markov Decision Process ppt 226부터  DRL 이론      DRL구현
[언어지능 딥러닝] [PyTorch] Recurrent Neural Networks (RNN)
·
Dev/언어지능 딥러닝
Recurrent Neural Networks (RNN)자연어 처리를 할 때, 시퀀스 데이터를 처리하기 위해 설계된 초기의 신경망 -> 현재는 많이 쓰이지는 않음시계열 데이터, 텍스트, 오디오와 같은 연속된 데이터를 다루는 데 적합함.일반적인 신경망과 달리 RNN은 내부에 순환 구조가 있어서 이전 입력에 대한 정보를 네트워크 내에서 기억하고 유지할 수 있다. RNN의 구조 1) 두개의 inputx_t​ (현재 시점의 데이터) : 현재 시점에 해당하는 실제 입력 데이터, 이 상태가 각 시점마다 다음 계산에 전달되어 연속적인 입력 간의 종속성을 학습h_t−1​ (이전 시점의 숨겨진 상태) : 이전 시점까지의 정보가 포함된 벡터 ex) 텍스트 처리 - 현재 단어, 시계열 데이터에서->특정 시점의 데이터 값2)..
[딥러닝]Tensorflow : Neural Network Playground
·
Dev/딥러닝
https://bit.ly/487HdL1 Tensorflow — Neural Network PlaygroundTinker with a real neural network right here in your browser.playground.tensorflow.org심층 신경망(DNN, Deep Neural Networks)을 직관적으로 시각화하고 실험할 수 있는 웹 기반 도구다양한 하이퍼파라미터와 데이터셋을 설정하여 신경망의 학습 과정을 실시간으로 관찰할 수 있다.  데이터셋 선택: 스파이럴(spiral), 정사각형 및 평면 회귀 문제 같은 여러 가지 기본 데이터셋을 제공한다.  신경망 구조 설정: 네트워크 구조는 각 층에 몇 개의 노드를 배치할 것인지 설정할 수 있다. ex)hidden layer 3개 ..
[딥러닝] 딥러닝 모델링 : Regression
·
Dev/딥러닝
전처리 : Scaling *최적화를 위해 필요함. 방법 1 : Normalization (정규화) - 모든 값의 범위를 0~1 로 변환방법 2 : Standaraization (표준화) - 모든 값을 평균=0, 표준편차=1 로 변환# 스케일러 선언scaler = MinMaxScaler()# train 셋으로 fitting & 적용x_train = scaler.fit_transform(x_train)# validation 셋은 적용만!x_val = scaler.transform(x_val) ProcessTask : 이전 단계의 output 을 input으로 받음 -> 처리 -> 다음단계로 전달**공통의 목표를 달성하기 위해 동작ex) 상품 기획 -> 디자인 -> 생산 - >물류입고 - > 매장판매 딥러닝 ..
[딥러닝] 개념 이해
·
Dev/딥러닝
ML vs DL 코드 구조 비교가중치(weight)*파라미터(parameter)라기도 함. ex) 1,2,3월의 판매량으로 4월의 판매량 예측1월 판매량2월 판매량3월 판매량 4월 판매량110120125? 평균 ->   가중치 조정조금씩 weight를 조정해서 오차가 줄어드는지 확인!-> 반복지정한 횟수만큼 or 더이상 오차가 줄지 않을 때까지 DL 학습 절차1. 가중치 초기값 할당 (초기모델만듦)2. (초기)모델로 예측3. 오차를 계산 (loss function)4. 가중치 조절 : 오차를 줄이기 (optimizer) - learning rate(lr): 얼만큼 조절할 지 결정하는 하이퍼파라미터5. 다시 처음부터 반복 - batch_size : 전체 데이터를 적절히 나눠서 (mini batch) 반복 ..
[딥러닝] 개요 및 Colab 사용법
·
Dev/딥러닝
전체 프로세스 (CRISP-DM) 데이터의 shape 모델,모델링- 모델 : 데이터로부터 패턴을 찾아, 수학식으로 정리 해놓은 것- 모델링 : 오차가 적은 모델을 만드는 과정   -> 샘플을 가지고 전체를 추정 모델의 성능모델의 성능은 오차(error)로 계산- 모델링 : train error를 최소화 하는 모델 생성하는 과정- 모델 튜닝 : validation error 를 최소화 하는 보델 선정 딥러닝 모델 표현 방법 - 선형 회귀 모델    Colab 사용법1. 구글 드라이브에 새폴더 생성 2. 새 폴더에 파일 업로드3. 파일 오른쪽 클릭, 'Google Colaboratory' 클릭**  'Google Colaboratory' 뜨지 않는 경우, '연결한 앱 더보기' > ' Colaboratory'..
[머신러닝] 성능 평가
·
Dev/머신러닝
1. 성능 평가 기준1) 분류 모델- 대부분 binary 를 이야기 함. 0인지 1인지 예측- 실제 값과 예측 값 둘다 0 or 1- 예측 값과 실제 값이 많이 같을 수록 좋은 모델임 (갯수) -> 정확히 예측한 비율로 모델 성늘을 평가 (정확도)ex) 100개를 예측했는데 몇개를 맞추었는가? 2) 회귀모델- 정확한 값을 예측하긴 어려움- 예측값과 실제 값에 차이(오차)가 존재 할 것- 예측값과 실제 값이 가까울 수록 좋은 모델임-> 예측한 값과 실제 값의 차이로 모델 성능을 평가 (오차) 2. 회귀 모델 성능 평가1) 실젯값, 평균값,예측값 실젯값 (y, y_test)-실제로 예측하고 싶은 값, target(목표값)- 이 값과 비교하여 모델의 성능을 평가- 오차 : 실제값과 예측값과 차이  평균값 ( ..
[머신러닝] Scikit-Learn 모델링 코드 구조 및 과정
·
Dev/머신러닝
Sklearn (사이킷런)지도/ 비지도 학습 알고리즘을 제공하는 대표적인 파이썬 라이브러리 - 오픈소스로서 누구나 무료로 사용가능- 여러 알고리즘을 같은 구조의 코드로 사용할 수 있음- 다양한 예제 데이터셋(토이 데이터 셋)을 포함하고 있음 ex) Iris, Boston 1. 환경 준비기본 라이브러리와 대상 데이터를 불러오기 라이브러리 불러오기# 라이브러리 불러오기import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings(action='ignore')%config InlineBackend.figure_format = 'retina' 데이..
[머신러닝] 머신 러닝의 이해와 개념
·
Dev/머신러닝
머신러닝에 대한 이해 인간의 경험 = 머신의 데이터데이터로 학습을 해서 1. 학습에 따른 분류  2. 과제에 따른 분류 1) 지도 학습a) 분류 문제 (Classification)    : 이미 분류된 데이터를 학습하여 분류 규칙을 찾음. 그 규칙 기반으로 새로운 데이터를 적절히 분류하는 것b) 회귀 문제 (Regression)    : 이미 결과값이 있는 데이터를 학습하여 입력 값과 결과 값의 연관성을 찾음. 그 연관성 기반으로 새로운 데이터 값을     예측하는 것    **혼동하지 않게 주의!!!!** 2)비지도 학습c) 클러스터링    : 주어진 데이터를 학습하여 적절한 분류 규칙을 찾아 데이터 분류 하는 것. 정답이 없어 성능 평가 어려움.  분류와 회귀 구분법**원하는 결과 값(target)이..