일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 컴퓨터구조
- ChatGPT
- 파이썬
- 정보처리기사필기
- 데이터분석
- 중학1-1
- 자바스크립트심화
- 연습문제
- 디버깅
- 컴퓨터비전
- 혼공머신
- SQL
- 딥러닝
- 자바스크립트
- CSS
- JSP
- 정보처리기사실기
- 중학수학
- 자바
- c언어
- 상속
- 자바 실습
- rnn
- 개발일기
- JSP/Servlet
- html/css
- 머신러닝
- JDBC
- 데이터베이스
- 순환신경망
- Today
- Total
목록인공지능/딥러닝 (99)
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
이번에는 심층 신경망으로 이미지 분류 모델을 생성한다. 이미지 분류 모델을 생성한다. 이미지 분류를 위해 단층이 아닌 더 깊은 층을 쌓아 깊이가 있는 딥러닝 모델을 생성한다(모델에 여러 층을 구성하여 깊이가 있다는 의미에서 딥러닝이라고 부름). 훈련에 필요한 데이터셋은 케라스 내장 데이터셋을 가져와서 사용한다. 분류에 적합한 손실함수를 적용하고 결과를 확인한다. 1. 케라스 내장 데이터셋 로드케라스는 모델 훈련에 필요한 샘플 데이터셋을 제공한다. 데이터셋은 tensorflow, keras, datasets 서브 패키지에 위치하며 지원하는 목록은 다음과 같다.boston_housing : 보스턴 주택 가격 데이터셋(회귀)cifar 10 : CIFAR 10 이미지 분류 데이터셋(분류)cifar 100 :..
단순 신경망 훈련에 대해서 공부해 보겠다. 먼저 주요 용어부터 학습해 볼 것이다. 관련 용어 선형 회귀회귀 분석이란 하나 이상의 독립변수들이 종속변수에 미치는 영향을 추정하는 통계 기법이다. 그중에서도 단순선형회귀 모형은 하나의 X가 Y에 미치는 영향을 추정하며 1차 함수 관계로 나타낼 수 있다.y = ax + b 중학교 수학 시간에 배운 1차 함수식을 떠올려 보자. 1차 함수식의 X는 독립변수, Y는 종속변수다. 1차 함수식의 a는 기울기, b는 절편이라고 부른다. 기울기 a는 일차 함수 그래프의 기울기를 결정하고 절편 b는 그래프의 높낮이를 결정한다. 이번에는 텐서플로 케라스를 활용하여 단순선형회귀 모델을 직접 만들고 딥러닝을 학습한다. 이때 모델은 1차 함수식과 동일하다고 생각하면 된다. 모델의 ..
이번에는 딥러닝 프로세스에 대해서 학습해 보겠다. 딥러닝 프로세스딥러닝 모델 구축 및 훈련을 위해서는 다음과 같은 프로세스를 따른다. 데이터 전처리, 모델의 생성, 컴파일, 훈련은 모델의 훈련을 위한 필수 프로세스로 누락되는 단계는 없다. 예측은 예측용 데이터셋을 입력하며 모델 예측 값을 얻는 과정이다. 검증은 모델의 성능을 평가하는 단계를 말한다. 1. 데이터 전처리데이터를 모델에 주입하기 전에 데이터를 가공하는 단계를 말한다. 데이터셋의 종류와 적용하려는 문제 유형에 따라 전처리 방법은 다양하다.때에 따라서는 배열의 차원을 변경하거나 스케일을 정할 수 있다. 전처리 단계에서 데이터셋의 형태나 차원을 미리 구상해야 다음 단계에서 모델을 설계할 때 입력할 데이터셋의 형태를 올바르게 정의할 수 있다..
어제 딥러닝 심층 신경망을 공부하다가 너무 지루해서 딥러닝 공부를 중단할까 하는 마음이 많았지만 그냥 다시 시작해 보기로 했다. 케라스에 대하여2019년 9월 텐서플로 1에서 텐서플로 2로 정식 판올림을 하면서 생긴 가장 큰 변화는 케라스 API를 텐서플로를 내제화했다는 점이다. 2015년 3월 처음 릴리즈된 케라스 API는 고수준의 딥러닝 라이브러리다. 다른 딥러닝 라이브러리와 가장 큰 차이는 GPU 연산을 수행하는 기능을 직접 실행하지 않고 텐서플로, CNTK, Theano, MXNet 등의 백엔드 엔진을 지정하여 사용한다는 점이다. 케라스의 본래 목적 자체가 딥러닝 라이브러리를 쉽고 간결한 코드로 실행할 수 있게 만들어주는 것이다. 직관적이고 사용자 친화적으로 설계되어 있어 코딩의 난이도가 어렵지..
이어서 신경망 모델 훈련을 학습해 볼 것이다. 모델 저장과 복원에포크 횟수를 10으로 다시 지정하고 모델을 훈련하겠다. 나중에 한빛 마켓의 패션 럭키백 런칭에 사용하려면 이 모델을 저장해야 한다. 케라스 모델은 훈련된 모델의 파라미터를 저장하는 간편한 메서드를 제공한다. 책과 코드를 조금 다르게 작성했다. 가중치가 잘 전달이 되지 않고 오류가 떠서 weights를 써주었다. 두 가지 실험을 해보겠다. 첫 번째는 훈련을 하지 않은 새로운 모델을 만들고 model-weights.h5 파일에서 훈련된 모델 파라미터를 읽어서 사용한다. 두 번째는 아예 이 파일에서 새로운 모델을 만들어 바로 사용한다. 먼저 첫번째 실험부터 시작한다. 이 모델의 정확도를 확인해 보겠다. 케라스에서 예측을 수행하는 pred..
오후에 다른 일정이 있어서 오후 공부를 늦게 시작해 본다. 저녁 먹기 전까지 2시간 동안 정말 열심히 공부해서 7장의 마지막 장 학습을 마쳐볼 생각이다. 그리고 오늘 저녁부터 내일 혹은 모레 새벽까지 지난번에 공부하다 말았던 파이썬 딥러닝 텐서플로 책으로(무척 어려움) 캐라스 학습을 진행하려고 한다.그런 다음에 다음 주에는 다시 지금까지 진행했던 시각지능 관련 수업을 모두 듣고 학습일지를 써볼 생각이다. 수업과 함께 CNN, RNN 관련 내용을 책 두 권과 함께 병행할 것이다. 그리고 나면 컴퓨터 비전도 학습할 수 있는 실력이 될 것 같다. 난 영상 처리 기술을 제대로 익혀서 특정 대상을 위한 유용한 앱을 만들고 싶다. 그럼 이제 공부를 시작해 보자! 지난 시간 복습 시작하기 전에지금까지 인공 신..
이어서 심층 신경망 학습을 진행해 보겠다. 아침에 일정이 있어 1시간 만에 이 공부를 모두 마치려고 한다. 렐루 함수초창기 인공 신경망의 은닉층에 많이 사용된 활성화 함수는 시그모이드 함수이다. 하지만 이 함수에는 단점이 있다. 오른쪽과 왼쪽 끝으로 갈수록 그래프가 누워있기 때문에 올바른 출력을 만드는데 신속하게 대응하지 못한다. 특히 층이 많은 심층 신경망일수록 그 효과가 누적되어 학습을 더 어렵게 만든다. 이를 개선하기 위해 다른 종류의 활성화 함수가 제안되었다. 바로 렐루(ReLU) 함수이다. 입력이 양수일 경우 마치 활성화 함수가 없는 것처럼 그냥 입력을 통과하고 음수일 경우에는 0으로 만든다. 렐루 함수는 max(0, z)와 같이 쓸 수 있다. 이 함수는 z가 0보다 크면 z를 출력하고 z..
인공 신경망 공부를 마치고 드디어 심층 신경망에 대해서 공부해보려고 한다. 인공 신경망에 층을 여러 개 추가하여 패션 MNIST 데이터셋을 분류하면서 케라스로 심층 신경망을 만드는 방법을 자세히 배우게 된다. 지난 시간 복습 이렇게 층과 모델은 분리되어 관리하고 있다. 시작하기 전에이전 절에서 만들었던 인공 신경망의 성능을 더 높여보려고 한다. 2개의 층다시 케라스 API를 사용해서 패션 MNIST 데이터셋을 불러오겠다. 그다음 이미지 픽셀값을 0~255 범위에서 0~1 사이로 변환하고, 28 x 28 크기의 2차원 배열을 784 크기의 1차원 배열로 펼친다. 마지막으로 사이킷런의 train_test_split() 함수로 훈련 세트와 검증 세트로 나눈다. 인공 신경망 모델에 층을 2개 추가..
어제까지 해서 SQL 공부를 모두 마치고 오늘부터는 무슨 공부를 할지 고민이 많이 되었다. 새벽에 지난번에 공부했던 머신러닝을 조금 복습하고 이제 오늘부터는 딥러닝 공부를 다시 시작해 보기로 했다. 머신러닝은 무척 많은 시간을 투자해서 공부를 열심히 했지만, 딥러닝은 그렇지 못했다. 내가 딥러닝을 공부하고 싶었던 것도 사실은 컴퓨터 비전 관련 공부를 하고 싶어서였다.책도 구입해 놓았지만 책이 너무 어려워서 과연 할 수 있을까 하는 마음이 들기도 한다. 하지만 컴퓨터 비전을 공부하게 된다면 딥러닝은 가볍게 건너뛰고 가야 하기에 고민이 많이 되었다. 아직 공부할 게 많아서 자바스크립트도 스프링도 11월까지는 끝내야 하기 때문이다. 그래도 내가 하고 싶은 공부를 위해서 느리더라도 일단 시작해 보기로 했다. 강..
딥러닝을 하고 싶은 마음과 지난번에 마무리하지 못한 파이썬 교재의 마지막 장을 학습해야 할지 무척 고민이 된다. 우선 오늘은 딥러닝을 아침에 했으니 오후와 저녁에 남은 시간에 이 공부를 해보기로 했다. 학습 목표딥러닝과 인공 신경망 알고리즘을 이해하고 텐서플로를 사용해 간단한 인공 신경망 모델을 만들어보기 시작하기 전에마케팅 팀은 패션 상품의 주 고객층인 20대를 타깃으로 이전보다 럭키백의 정확도를 높여야 한다고 요구했다. 생선 럭키백에서 알고리즘으로 사용한 로지스틱 회귀 알고리즘으로 패션 럭키백의 정확도를 높이려고 한다. 지난 시간 복습 패션 MINIST7장과 8장에서는 패션 MINIST 데이터셋을 사용하겠다. 이 데이터셋은 10종류의 패션 아이템으로 구성되어 있다. 머신러닝과 딥러닝을 처음 배울 때..