| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- Dehaze
- 파이썬 경사하강법
- API
- C# 프로젝트
- 정규화
- 백준
- 인공지능
- 로스트아크
- 자바
- MLP
- 영화 api
- 활성화 함수
- 자바 영화 api
- 경사하강법
- 딥러닝 프로젝트 데이터
- pandas
- 머신러닝
- 통계학
- 딥러닝모듈개발
- 자바 프로젝트
- 딥러닝 데이터
- DCP
- 딥러닝개발방법
- 파이썬
- 디자인패턴
- 디자인 패턴
- 딥러닝에서 가장 중요한 것
- 딥러닝
- 코딩테스트
- python
- Today
- Total
목록AI (41)
대학원 일기
오늘은 딥러닝 프로젝트에서 무엇이 가장 중요한지 써보려고 해요 마찬가지로 주관적 이야기입니다. 인공지능 개발에서 가장 중요한 것이 뭐라고 생각하시나요? 연구 능력? 개발 능력? 컴퓨팅 자원? 음음.. 아니죠인공지능에서 가장 중요한 것은 바로 데이터입니다. 보통 딥러닝 실습할 때 Open data를 가지고 와서 실험을 하잖아요? 실제의 데이터를 직접 마주보게 되면, open data와는 전혀 다른 데이터를 보게 됩니다. open data는 정말 깔끔하게 잘 정리되어있는 것이고, 실제 데이터는 날 것이거든요. 그렇기에, 데이터를 수집하고 올바른 데이터로 가공하는 것이 가장 중요합니다. 특히나, 요즘같이 모두가 멀티모달 딥러닝을 하려면 양측의 모달리티가 있어야 하거든요? 그럼 더 더욱 걸리지는 데이터들이 많..
오랜만입니다. 다시 테크 블로그를 열심히 시작하려고 해요. 처음으로 돌아간다는 느낌으로 시작하고,앞으로 2년 간 갈고 닦은 AI 개발에 대해 열심히 포스팅해볼게요 처음부터 시작한다는 느낌으로 매우 기초부터 들어가면서 제 주관으로 작성할게요. 제 경험을 바탕으로 주관으로 작성하는거니깐, 잘못된 부분이 있다면 알려주세요! 부탁드립니다 ㅎㅎ 보통 인공지능 코드는 파이썬으로 작성합니다. 그래서 보통 .py 혹은 ipynb(ipython)을 사용하죠. 제 나름대로의 인공지능 개발 루트가 있는데, 저의 경우에는python(.py): 딥러닝 개발(데이터셋, 모델, 학습 및 평가), 서버 개발, 대형 프로젝트 ipython(.pynb): 머신러닝, Data EDA 및 시각화, 작은 작업, 사이드 프로젝트이런 식..
5-1 최적화(Optimization)는 가능한 훈련 데이터에서 최고의 성능을 얻으려고 모델을 조정하는 과정이다. 일반화(Generalization)는 훈련된 모델이 이전에 본 적 없는 데이터에서 얼마나 잘 수행되는지 의미한다. 훈련 데이터의 손실이 낮아질수록 테스트 데이터의 손실도 낮아지며 이럴 때 모델이 과소적합(underfitting) 되었다고 한다. 모델의 성능이 계속 발전될 여지가 있으며 데이터에 있는 모든 관련 패턴을 아직 학습하지 못한 것이다. 훈련 데이터에서 훈련을 특정 횟수만큼 반복하고 난 후 일반화 성능이 더이상 높아지지 않으며 검증 세트의 성능이 멈추고 감소되기 시작하는데 이것을 모델이 과대적합(Overfitting) 되었다고 한다. 과대적합은 데이터에 잡음이 있거나 불확실성이 존재하..
Chapter 3. 케라스 텐서플로 소개 컴파일 단계 : 학습과정 설명(p136 내용) 모델 구조 정의 손실함수 (keras.optimizers.손실함수) 옵티마이저 (keras.losses.옵티마이저함수) 측정 지표 (keras.metrics.측정 지표) keras .compile() 아래쪽에 예시코드 적은것 잇어요 층(Layer) page 130 - 층의 구조 Page 132 안나올 것 같기는 한데... 혹시나 정방향 패스를 정의해라고 하면 여기 페이지 보시면 됩니다 def call(self,inputs) 부분 input 이랑 W 내적하고 bias를 더해주고, 선언한 acitivation있으면 activation 함수까지 거친 값을 return page 133 Sequantial로 Dense laye..
2. 신경망의 수학적 구성요소 2.1 신경망과의 첫 만남 본 장에서는 MNIST 데이터셋으로 사용하여 손글씨를 분류하는 문제를 다룹니다. 케라스에서 MNIST 데이터셋 적재하기 데이터셋 로드 from tensorflow.keras.datasets import mnist (train_images, train_labels), (test_images, test_labels) = mnist.load_data() train_images, train_labels에 훈련셋을 담고, test_images, test_labels에 테스트셋을 담습니다. mnist를 로드하면 (train 이미지, train 레이블), (test 이미지, test 레이블)로 불러옵니다. 이미지는 넘파이(numpy) 배열로 인코딩되어 있고 레..
5. 모델 저장과 콜백 학습시킨 모델을 저장하고 관리하는 것은 모델 관리, 더 나아가 MLOps(데이터 수집부터 모델 학습, 서비스 배포까지를 포함하는 시스템)의 시작점 5-2 MNIST 딥러닝 모델 예제 딥러닝을 처음 배우는 사람들이 만나게 되는 데이터셋 중 하나인 손으로 쓴 숫자들로 이루어진 이미지 데이터셋 아주 오래된 고전 데이터셋으로서 기계 학습 분야의 학습 및 테스트에 널리 사용 keras.datasets에 기본으로 포함 데이터 로드 및 전처리 MNIST 데이터셋을 로드하기 위해서 케라스의 데이터셋에 내장되어 있는 tensorflow.keras.datasets.mnist를 임포트합니다. train_test_split() 함수를 이용해 학습용 데이터인 x_train_full와 y_train_ful..
4. 딥러닝 모델 학습 4-2 손실함수(Loss function) 학습이 진행되면서 해당 과정이 얼마나 잘 되고 있는지 나타내는 지표 모델이 훈련되는 동안 최소화될 값으로 주어진 문제에 대한 성공 지표 손실 함수에 따른 결과를 통해 파라미터를 조정하며 학습이 진행 손실함수는 최적화 이론에서 최소화하고자 하는 함수로 미분 가능 함수를 사용 케라스에서 제공되는 주요 손실함수 sparse_categorical_crossentropy 클래스가 배타적인 방식으로 구분 (0,1,2,3, ... ,9) categorical_cross_entropy 클래스가 원핫 인코딩 방식으로 되어 있을 때 사용 binary_crossentropy 이진 분류를 수행할 때 사용 MAE 오차가 커져도 소실함수가 일정하게 증가 이상치에 ..
3. 딥러닝 구조와 모델 3-2. 딥러닝 구조와 레이어 (Layer) 1. 딥러닝 구조 모델 구조 케라스에서 제공하는 API에는 크게 Model, Layer, Modules가 있습니다. 2. 레이어(Layer) 텐서플러우와 케라스 불러오기 import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers 딥러닝 레이어의 구조 딥러닝은 여러 개의 레이어(Layer)로 구성되어 있으며, 기본적으로 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer) 으로 구분됩니다. 레이어는 딥러닝 모델을 구성하는 핵심 데이터 구조로서 하나 이상의 텐서를 입력받아 하나 이상의 텐서를 출력..