인공지능(AI) 25

tensorflow keras 활용한 손글씨 맞추기 with Flask

프로젝트 소개 프로젝트 기획 목표 AI를 이용하여 손글씨를 맞추고 웹으로 개발하여 모든사람이 이용가능하게 할 것으로 목표 프로젝트 내용 mnist 학습 후 가중치값 파일로 저장하기 colab을 이용하여 mnist를 가져옴 데이터셋 전처리 라벨링 인코딩 모델링 설계 모델 컴파일 모델 fit으로 학습하기 matplotlib으로 정확도, 로스율 확인 모델 평가 모델링 h5 파일로 저장 python flask 설치 만들어놓은 h5 파일 로딩 javascript로 만든 canvas를 이용하여 그린 데이터를 가져옴 가져온 데이터를 new_model에 predict하여 argmax로 가장 높은 숫자를 출력 해당 index 결과값을 web homepase에 출력 웹서버 구성 프로젝트 발전가능성 아이들 교육용 또는 사진..

인공지능(AI) 2020.12.20

노트북에 tensorflow with keras 설치

설치 환경 os : windows 10 cpu : i7 4702MQ gpu : geforce GTX 765M 설치 시 참조 www.tensorflow.org/install/gpu GPU 지원 | TensorFlow 참고: GPU 지원은 CUDA® 지원 카드가 있는 Ubuntu 및 Windows에 제공됩니다. TensorFlow GPU 지원에는 다양한 드라이버와 라이브러리가 필요합니다. 설치를 단순화하고 라이브러리 충돌을 방지하려면 GPU를 www.tensorflow.org 1. cuda toolkit 설치 developer.nvidia.com/cuda-downloads CUDA Toolkit 11.1 Update 1 Downloads Please Note: We advise customers updati..

인공지능(AI) 2020.12.05

CNN

CNN 구성요소 Convolution(합성곱) 채널(Channel) 필터(Filter) zero padding 커널(Kernel) 스트라이드(Strid) 패딩(Padding) 피처 맵(Feature Map) 액티베이션 맵(Activation Map) 풀링(Pooling) 레이어 flatten 합성곱 노란색 필터를 그린색 원본에 대입하여 각픽셀을 곱한것을 다 더한값(핑크색)을 추출함 채널 : Red 사진, Green 사진, Blue 사진 각각을 channel 이고 각각 필터가 있어서 각각 적용됨 위 사진은 (5x5x1) 로 표현되며 RGB가 있는 사진이라면 (5x5x3)으로 표현된다. 필터 & 스트라이다 필터는 특성 즉, 가중치 덩어리 이며 이것을 대입하여 피쳐맵을 만든다. y=wx+b에서 필터는 w이고,..

인공지능(AI) 2020.11.06

신경망에서 과대적합을 방지하기 위한 방법

훈련데이터 더모음 네트워크 용량 감소 (unit(퍼셉트론) 수 조절) 가중치 규제 (L1, L2) 드롭아웃 추가 Dropout : 가중치가 적은 불필요한 퍼셉트론은 사용하지 않게 제한들 두는 옵션 regularization : 정규화이지만 보통 일반화라고 볼 수 있다. 모델 복잡도에 대해 정규화는 overfitting을 방지하고 Generalization(일반화) 성능을 높이는 데 도움을 준다. (방법 : L1, L2, Dropout, Early stooping 등이 있음) regularizer L1 : 실제값과 예측값을 뺀 loss가 음수가 나올 수 있다. 이를 보완하기 위해 절대값을 사용함 regularizer L2 : 또 다른 방법은 실제값과 예측값을 뺀값을 제곱을 하면 음수를 보완할 수 있다. L..

인공지능(AI) 2020.11.06

overfitting

과대적합 모델이 학습될 수록 훈련 데이터에 fit된 모델이 만들어짐 ->훈련 데이터 이외 새로운 데이터(테스트 데이터에는 일반화 성능이 떨어짐 early termination 이후에는 testing error와 training error차이가 크며 testing error는 training step이증가할 수록 testing error가 증가한다. 즉, 학습할 수록 새로운 데이터의 에러율이 증가한다는것 즉, 오버피팅이발생하는것으로 볼 수 있다. 최적화 : 가능한 훈련 데이터 에서 최고 성능을 얻으려고 모델 조정 과정 일반화 : 훈련된 모델이 이전에 보 적없는 데이터에서 얼마나 잘 수행 되는지를 봄 딥러닝은 일반화가 더 중요하다. 과대적합 피한느 과정 더 많은 훈련데이터를 가짐 네트워크 축소 규제(regu..

인공지능(AI) 2020.11.06

성능지표

딥러닝 성능 측정 머신러닝에서 어떠한 문제를 해결하는 시스템 모델 regression - mse -mae -r square (mae 개선) -adjusted r square classification precision-recall roc-auc accuracy log-loss classification(분루) 데이터셋 -test : 실체 정답 되는 데이터셋 predict : 모델이 예측한 결과인 데이터셋 데이터의 종류 positive : 모델을 통해 알아내고 싶은 값 negative : positive 가 아닌 값 모델분류 결과 true : 예측성공 y=y_hat false : 예측실패 y != y_hat 포지티브(우리가 알고싶은 것), 네거티브(아닌것들) 정의 기준 포지티브는 암환자 네거티브는 암이 아..

인공지능(AI) 2020.11.05

keras

파이썬 작성된 오픈 소스 신경망 라이브러리 tensorflow 2.0버전부터 기본 모델 구성으로 채택함. 텐서 : 머신러닝의 기본구성 숫자 데이터를 위한 컨테이너 임의의 차원 개수를 가짐 텐서에서의 차원을 축이라고 부름 축의 개수(rank): 텐서의 차원을 의미 크기 데이터 타입 텐서 사례: 백터 데이터 (sample, features)크기의 2d텐서 첫번째 샘플축, 두번쨰 특성 축 사람의 나이 ,우편번호, 소득으로 구성된 인구 통계 데이터 10만건 (100000, 3) 시계열 데이터(samples, timesteps, features)크기의 3d 텐서 첫번째 샘플축, 두번쨰 순서축, 세번째 특성 축 1분마다 현재 주식 가격, 지난 1분동안에 최고가격, 최소가격,측정한 250일 데이터 (250,390,2..

인공지능(AI) 2020.11.05