데이터사이언스 Data Science
엑셀을 이용하여 MNIST 신경망 구축하기 Machine Learning MNIST using a Neural Network in Excel (2) - Control 탭 화면해설
2021. 1. 25.MNIST 화면 해설 (1)편에서 만든 5개의 탭 중 Control 탭부터 살펴보자. (1)편의 내용대로 진행을 했다면 Training 탭과 Testing 탭의 경우 데이터로 가득차 있을 것이다. 최종적으로 만들어지게 될 Control 탭의 모습은 다음과 같다. 부분 부분 나눠서 살펴봅니다. ① RANDBETWEEN 함수를 이용하여 1과 60,000(=AF2) 사이의 수를 랜덤으로 가져오게 된다. Training 탭의 훈련용 데이터가 60,000개이므로 60,000을 넘어서는 안된다. 이번에는 39994라는 값이 선택이 되었고, AG2 에서 아래와 같이 Training 탭의 A39994 셀을 가리키도록 한다. 참고로 Training 탭의 A39994 셀은 다음과 같다 (Training 탭과 Testing..
엑셀을 이용하여 MNIST 신경망 구축하기 Machine Learning MNIST using a Neural Network in Excel (1) - MNIST training 및 testing 데이터 가져오기
2021. 1. 25.MNIST는 머신러닝의 고전적인 문제로 손으로 쓴 숫자들의 그레이스케일 28x28 픽셀 이미지를 보고, 0부터 9까지의 모든 숫자들에 대해 이미지가 어떤 숫자를 나타내는지 판별하는 것으로, 엑셀을 이용하여 이를 구현해보자. 이하 포스팅의 내용은 아래 동영상의 내용을 참조하여 직접 실행하면서 작성한 것이다. 아래 영상을 통해 완성된 형태를 짐작해볼 수 있다. www.youtube.com/watch?v=kCL065_0zTY&list=WL&index=1&t=75s MNIST training 및 testing 데이터 가져오기 이번 포스팅에서는 이후 이후 진행에 필요한 데이터를 가져오는 것부터 시작해보자. 먼저 새로운 엑셀 파일을 열고 다음와 같이 5개의 탭을 만든다. 실습에 필요한 데이터를 다운로드 받는다. M..
OpenCV 를 이용하여 웹캠 실행하기 Opening Webcam using OpenCV
2021. 1. 13.파이썬용 OpenCV 를 이용하여 간단하게 웹캠을 실행해보자. OpenCV 라이브러리 설치는 다음을 참조한다. OpenCV 를 이용하여 웹캠 실행하기 Opening Webcam using OpenCV 다음의 코드를 담은 webcam.py 파일을 만든다. import cv2 cam = cv2.VideoCapture(0) while True: check, frame = cam.read() cv2.imshow('video', frame) key = cv2.waitKey(1) if key == 27: break cam.release() cv2.destroyAllWindows() 해당 파일을 다음과 같이 실행한다. (opencv) C:\Users\pluto>cd opencv (opencv) C:\Users\plu..
아나콘다를 이용하여 윈도우에서 파이썬용 OpenCV 설치 Installing OpenCV for Python on Windows using Anaconda
2021. 1. 13.Step 1: Installing Anaconda www.anaconda.com/products/individual 에서 최신 버전의 아나콘다 인스톨러를 다운로드받는다. 이하 윈도우 환경에서 진행할 예정으로 64비트 윈도우용 인스톨러를 다운로드받는다. 파이썬 버전은 3.8이다. 다운로드받은 인스톨러를 클릭한다. 다음과 같이 설치할 사용자를 물어보는 창이 나오면, “Just Me” 를 설치하도록 한다. All Users 를 선택하는 경우 관리자 권한으로 실행을 매번 선택해야하는 경우가 생긴다. 설치경로를 지정한다. “Just Me” 를 선택한 경우 기본적으로 “C:\Users\\Anaconda3” 에 설치된다. 하지만 “All Users” 를 선택한 경우의 설치경로는 ProgramData 이다. 충돌을 일..
케라스를 이용한 순전파 신경망 구현 (feat. MNIST handwritten digit database)
2021. 1. 11.순전파 신경망 (Feedforward neural network) 뉴런이 여러 개의 층으로 나열되고, 인접하는층끼리만 연결된 네트워크 입력된 데이터는 순방향으로만 전파됨 각각의 뉴런은 여러 개의 입력을 받음 해당 입력에 가중치를 곱해서 더하고, 바이어스를 더한 후에 그 값을 활성화함수를 이용해서 변환한 값을 출력함 Keras 를 통한 순전파 신경망 구형 여기서는 손으로 쓴 숫자들로 이루어진 MNIST 데이터베이스를 사용하여 순전파 신경망을 케라스로 구현해본다. MNIST 데이터베이스는 다음과 같이 0~9까지 10가지 숫자에 대한 60,000개의 28x28 그레이 스케일 이미지 데이터셋과, 그에 더해 10,000개의 이미지로 이루어진 테스트셋이다. MNIST 데이터 가져오기 다음과 같이 데이터를 다운로드한..
Magenta로 음악만들기 (1) Making music with Magenta - Hello! Magenta Making sounds with NoteSequences
2021. 1. 4.Magenta로 음악만들기 Magenta 는 회화 및 음악을 생성해주는 파이썬 라이브러리이다. 아래에서는 note_seq 라이브러리를 활용하여 주피터랩을 통해 브라우저가 연주하는 것을 구현해보자. Magent 및 관련 패키지 설치 Magenta 를 사용할려면 당연히 Magenta 부터 설치해야 한다. 먼저 패키지 인덱스 정보를 업데이트한다. (pluto) fossa@fossa:~$ sudo apt-get update 이제 Magenta 관련 패키지를 설치한다. 하지만 시작부터 다음과 같은 에러가 발생했다. E: Package 'libfluidsynth1' has no installation candidate 현재 실습환경은 Ubuntu 20.04 인데 원문의 코드는 Ubuntu 18.04 기반이기 때문에..
윈도우10 텐서플로 임포트 RuntimeError: The current Numpy installation fails to pass a sanity check due to a bug in the windows runtime
2020. 12. 28.윈도우 10 + 아나콘다 가상환경 + 파이썬 3.8 + 텐서플로 2.4 환경에서 다음과 같이 텐서플로 임포트시 런타임 에러 발생하는 경우 RuntimeError: The current Numpy installation fails to pass a sanity check due to a bug in the windows runtime >>> import tensorflow as tf 2020-12-28 17:01:14.540219: W tensorflow/stream_executor/platform/default/dso_loader.cc:60] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found 2020..
실전! 딥러닝 - 다차원 배열과 텐서
2020. 11. 18.텐서 = 스칼라와 벡터와 행렬을 포함하는 다차원 배열 www.researchgate.net/figure/Tensors-as-generalizations-of-scalars-vectors-and-matrices_fig3_332263806 벡터연산 import tensorflow.compat.v1 as tf a = tf.constant([1,2,3], name='a') b = tf.constant([4,5,6], name='b') c = a+b with tf.Session() as sess: print('a + b = ', sess.run(c)) a + b = [5 7 9] 행렬연산 : 2차원 배열 지정 import tensorflow.compat.v1 as tf a = tf.constant([[1,2],[..
실전! 딥러닝 - 노드의 종류
2020. 11. 18.노드의 종류 상수 - tf.constant 를 사용해서 정의함 변수 - tf.Variable 를 사용해서 정의함. 학습대상의 파라메터를 변수로 정의함으로써 파라메터의 갱신, 즉 학습이 가능해짐 플레이스홀더 - tf.placeholder 를 사용해서 정의함. 다양한 값을 받아 넣을 수 있는 상자. 연산 예제 변수 import tensorflow.compat.v1 as tf a = tf.Variable(11, name='a') b = tf.constant(9, name='b') c = tf.assign(a, a+b) with tf.Session() as sess: sess.run(tf.global_variables_initializer()) print('[1] : [c, a]=', sess.run([c, a..
실전! 딥러닝 - 텐서플로 계산방식, 데이터 플로우 그래프, 그리고 TF 2.x 환경에서 TF 1.x 실행하기
2020. 11. 17.이하 실습에 사용된 교재는 다음과 같다. 실전! 딥러닝 국내도서 저자 : 오타 미쯔히사,수도 코다이 ,쿠로사와 타쿠마 ,오다 다이스케 / 손민규역 출판 : 위키북스 2019.02.15 상세보기 아나콘다, 텐서플로, 케라스, 주피터 등읭 설치는 이미 완료된 것은 가정하고 진행한다. 딥러닝에 관심이 있다면, 이미 이에 대한 설치는 완료되었을 거라고 봐도 무방할 듯하다. 아니면 본 블로그에서 검색해도 관련해서 다룬 포스팅들이 있으니 참조한다. 주피터 노트북으로 실습을 할 예정이니 이를 위해 가상환경으로 들어가 주피터를 실행한다. (quintic) fossa@fossa:~$ jupyter lab --no-browser --port=8888 --ip=0.0.0.0 웹브라우저에서 다음과 같이 입력하여 로컬에서 GC..
코세라 강의 Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning 2주차 실습
2020. 4. 30.코세라 강의 Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning > 2주차 > Week 2 Resources > Beyond Hello World, A Computer Vision Example 에 나오는 내용을 가지고 GCP 환경에서 주피터랩을 통해 실습을 진행해보았습니다. 먼저 텐서플로우를 임포트한다. import tensorflow as tf print(tf.__version__) 2.1.0 Fashion MNIST 데이터는 tf.keras 데이터셋 API 를 통해 바로 사용가능하다. 다음과 같이 로딩할 수 있다. mnist = tf.keras.datasets.fashion_mnist l..
Covid-19 데이터셋을 활용한 코로나 바이러스 현황 분석 Analysis on Coronavirus
2020. 4. 13.공개된 국내 코로나 바이러스(covid-19) 데이터를 이용하여, 주피터 노트북을 가지고 분석해보자. 먼저 예제 실행을 위해 주피터 노트북을 먼저 구동한다. (base) founder@hilbert:~$ source activate AnnaM (AnnaM) founder@hilbert:~$ cd annam (AnnaM) founder@hilbert:~/annam$ jupyter notebook --no-browser --ip=0.0.0.0 Libraries 예제 실행에 필요한 라이브러리를 가져온다. import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt import matplotlib.dates..
리눅스에서 cirq 설치하기 Installing cirq on Linux
2020. 3. 28.Cirq는 양자회로를 작성, 조작, 최적화하고 양자컴퓨터와 시뮬레이터에서 구동하는 소프트웨어 라이브러리이다. Cirq는 하드웨어 상세를 추상화시켜 사용하지 못하게하는 대신에 하드웨어 상세를 노출하고자 한다. 왜냐하면, Noisy Intermediate-Scale Quantum (NISQ) 체제에서는 이러한 하드웨어 상세가 회로를 구동시킬 것인지 말 것인지를 결정하기 때문이다. 이하 리눅스 환경에서의 cirq 설치에 대해 알아본다. 먼저 설치된 파이썬 버전이 3.6.0 이상인지 확인한다. 향후 텐서플로우 사용을 고려하면 3.7 버전이 적당하겠다. (tfquantum) founder@hilbert:~$ python --version Python 3.7.7 pip를 사용하여 cirq 를 설치한다. 먼저 pip..
신경망의 기본 구조
2020. 3. 5.유닛의 특징 유닛은 단순하게 추상화한 뉴런이다. 유닛은 연산기능이 있으므로, 출력이 다수라도 출력값은 0 또는 1 이다. 유닛은 가중치를 포함한 입력으로 정리된다 Z=W1X1+W2X2+...+WnXn+B (W1, W2, ..., Wn 은 가중치, B는 편향, n은 입력수) 유닛은 가중치를 포함하는 입력 z 를 매개변수로 사용하는 활성화함수(전달함수)이며 y 를 출력한다. y=a(z) 활성화함수 - 사용자가 정의 출력값 y - 활성화함수를 사용할 수 있는 임의의 수 출력신호해석 - 유닛의 흥분도, 반응도, 활성도 신경망의 기본구조 층을 겹겹이 쌓은 신경망. 층을 쌓는 방법에 따라 다양한 방법이 있음 필기체 숫자 식별 신경망의 특징은 입력층의 유닛 전부가 중간층의 유닛 전부에(완전연결계층 fully conn..
spaCy 패키지와 코드를 통한 NLP 기초 다지기 Clear the Fundamentals of NLP with Code.
2019. 12. 14.본 포스팅에서는 최근 각광을 받고 있는 spaCy 패키지를 사용하여 NLP 의 기본내용을 코드 실행을 통해 살펴본다. spaCy 는 Explosion AI 의 Matt Honnibal 에 의해 개발된 것으로 “Industrial strength NLP in Python” 을 모토로 삼고 있다. 생산환경에서 주로 사용되며, 사용자 친화성과 객체 기반 접근방식을 통해 문자열이나 배열 대신 객체를 결과값으로 반환한다. NLTK 보다 나은 점 Cython 로 작성되어 엄청 빠른 속도를 선보인다 의존 구문 분석 커스토마이징이 손쉬운 대규모의 워드 벡터 접근 가능 통합된 워드 벡터 GPU 가속 지원 사용자 정의 딥러닝 네트워크 지원 하지만, NTNL 에 비해 매우 느린 문장 토큰화 속도 Prerequisites 다..
커스텀 ML 툴을 만들어주는 가장 빠른 방법 Streamlit 앱 소개 Turn Python Scripts into Beautiful ML Tools
2019. 10. 12.커스텀 ML 툴을 만들어주는 가장 빠른 방법 중 하나인 Streamlit 앱에 대해서 알아보자. 먼저 전통적인 ML 엔지니어의 작업 플로우와 Streamlit 을 이용한 플로우를 비교해보자. 아래는 기존의 앱 빌딩 플로우이다. 위의 방법도 물론 훌륭하다. 하지만 새로운 기능이 필요하다면, 그리고 툴 팀이 10개 이상의 서로 다른 프로젝트를 서포팅하고 있어 업데이트에 약 2달 정도 소요될 것입니다라고 말하는 바람에, 다시 주피터 노트북을 통해 실행한 다음, 이 내용을 파이썬 스크립트로 옮긴다. HTTP request, HTML, callback 등의 요소를 고려해가면서 Flask 앱 등을 작성한다. 구동해보고 부족한 기능이 있으면 다시 위의 과정을 반복한다고 생각해보자. 이러한 부분에서 어떻게 파이썬 스크..
텐서플로우 임포팅 경고 메시지 synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'
2019. 9. 27.텐서플로우 설치 후 다음과 같은 메시지가 뜨는 경우 (AnnaM) founder@hilbert:~$ python Python 3.7.4 (default, Aug 13 2019, 20:35:49) [GCC 7.3.0] :: Anaconda, Inc. on linux Type "help", "copyright", "credits" or "license" for more information. >>> >>> >>> >>> import tensorflow as tf /home/founder/anaconda3/envs/AnnaM/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:526: FutureWarning: Passing (type, 1) ..
10줄짜리 파이썬 코드로 사진 속 자동차 수 카운트하기 Count Number of Cars in Less Than 10 Lines of Code Using Python
2019. 9. 26.10줄짜리 파이썬 코드로 간단히 사진 속의 차량 대수를 카운트 해보자. 먼저 아래의 라이브러리가 설치되어 있어야 한다. 설치 이전이라면 각각의 링크를 참고해 설치하도록 한다. opencv-python cvlib matplotlib tensorflow keras TensorFlow An open source machine learning library for research and production. www.tensorflow.org Home - Keras Documentation Keras: The Python Deep Learning library You have just found Keras. Keras is a high-level neural networks API, written in Pytho..
AttributeError: module 'tensorflow' has no attribute 'get_default_graph'
2019. 4. 26.Tensorflow 2.0 환경에서 다음과 같은 에러가 발생하는 경우 AttributeError: module 'tensorflow' has no attribute 'get_default_graph' (cooke) founder@casey:~/mandart/glass$ python run_keras_server.py Using TensorFlow backend. * Loading Keras model and Flask starting server...please wait until server has fully started Traceback (most recent call last): File "run_keras_server.py", line 82, in load_model() File "run_ker..
ML을 활용한 스팸 SMS 적발시스템 Flask 로구 현하기 MLDevelop a NLP Model in Python & Deploy It with Flask
2019. 4. 23.Develop a NLP Model in Python & Deploy It with Flask, Step by Step Flask API, Document Classification, Spam Filter ML을 활용하여 스팸 SMS 텍스트 메시지를 적발하는 시스템을 만들어보자. ML 시스템의 워크 플로우는 다음과 같다. Train offline -> Make model available as a service -> Predict online. 분류기는 스팸과 스팸이 아닌 메시지를 가지고 오프라인으로 훈련을 하게 된다. 훈련된 모델은 서버 사용자에게 서비스 형식으로 배포된다. https://cdn-images-1.medium.com/max/1080/1*QverR-xExd4UvfLh3Iq79w.png 모델..
ImportError: cannot import name '_validate_lengths' from 'numpy.lib.arraypad'
2019. 3. 16.다음과 같은 ImportError 가 발생하는 경우ImportError: cannot import name '_validate_lengths' from 'numpy.lib.arraypad' import numpy as np import time import sys import os import random from skimage import io import pandas as pd from matplotlib import pyplot as plt from shutil import copyfile import cv2 import tensorflow as tf --------------------------------------------------------------------------- ImportE..
서프라이즈 라이브러리를 활용한 추천시스템 구축 및 검증 Building and Testing Recommender Systems With Surprise, Step-By-Step
2019. 3. 2.source https://www.pexels.com/photo/person-doing-thumbs-up-193821/ 파이썬과 서프라이즈 라이브러리, 그리고 협업 필터링 (Collaborative Filtering) 을 활용한 추천 엔진 구축하기 추천시스템에 접근하는 2가지 방법은 collaborative filtering 과 content-based recommendations 이다. 이 포스팅에서는 collaborative filtering 접근방법에 초점을 맞춰 진행한다. 간단히 말해 사용자간의 유사성에 기반하여 등급을 예측하는 방법이다.추천 시스템 알고리즘 개발을 위한 북크로싱 데이터와 Nicolas Hug에 의해 개발된 Surprise 라이브러리를 가지고 진행한다. 먼저 필요한 라이브러리를 임..
Rasa Stack 과 파이썬을 활용한 슬랙 챗봇 만들기 (2) A guide to creating a chatbot with Rasa stack and Python
2019. 2. 22.A guide to creating a chatbot with Rasa stack and Python. 2편에서는 앞서 만든 봇을 슬랙에 배포하는 실습을 진행해본다. 진행에 앞서 1편을 미리 읽어보고 넘어오길 권해드린다.Rasa Stack 과 파이썬을 활용한 슬랙 챗봇 만들기 (1) A guide to creating a chatbot with Rasa stack and PythonRasa Installations1편과는 달리 여기서는 최신 버전의 Rasa Core 를 설치할 것이다. 아나콘다 등을 활용하여 가상환경을 만든 뒤 실습을 진행하길 권해드린다. 우분투 18.04 아나콘다 설치하기 How To Install the Anaconda Python Distribution on Ubuntu 18.04아..
Rasa Stack 과 파이썬을 활용한 슬랙 챗봇 만들기 (1) A guide to creating a chatbot with Rasa stack and Python
2019. 2. 22.A guide to creating a chatbot with Rasa stack and Python. 대화형 AI 시스템은 인간생태계의 필수불가결한 요소가 되었다. 이미 잘 알려져있듯이 Apple의 Siri, Amazon의 Alexa and Microsoft의 Cortana 등이 있다. r머신 러닝 기반의 AI 어시스턴트인 Rasa를 만들어보자. Objective본 포스팅에서는 사용자의 기분을 체크해서 힘을 북돋우는 적절한 액션을 취하는 ‘Zoe’ 라고 불리는 챗봇을 만들어 본다. 그리고 다음 포스팅에서는 이를 Slack에 배포해본다. 다음 스크린샷과 같이 구현해볼 것이다. https://cdn-images-1.medium.com/max/800/1*YCBEujcXGf4MFOT02my5hQ.png Req..
딥러닝 학습상황을 제어하는 텔레그램 봇 만들기 Telegram bot to monitor and control deep learning experiments
2019. 2. 16.Telegram bot to monitor and control deep learning experiments Dependencies 다음의 패키지가 설치되어 있어야 함python-telegram-botKeras (선택사항, 케라스 콜백 사용시)matplotlib (선택사항, convergence plots 전송시) 다음의 환경에서 테스트함Python 3.6.6Tensorflow 1.12.0Keras 2.2.4Ubuntu 18.04 (tfKeras) founder@hilbert:~/tfKeras/telegrad$ python3 -V Python 3.6.6 (tfKeras) founder@hilbert:~/tfKeras/telegrad$ python -c 'import keras; print(keras._..
구글 FACETS를 활용한 머신러닝 데이터셋 시각화 Visualising Machine Learning Datasets with Google’s FACETS
2019. 2. 9.https://cdn-images-1.medium.com/max/800/1*3tUB6KRfE-FapwbH4Lz0Vg.png Facets은 PAIR(People + AI Research) 라는 계획의 일환으로 구글에서 내놓은 오픈소스 시각화툴이다. 머신러닝 데이터셋에 대한 이해와 분석을 돕는 도구로, 2개의 시각화 도구로 구성된다. Facets Overview 이름에서 짐작할 수 있듯이 이 시각화 도구는 전체 데이터셋의 개요와 데이터 각각의 특징 면면에 대한 감을 제공한다. 개요에서는 각각의 특징에 대한 통계를 제공하고 훈련 및 검증 데이터셋을 비교한다. Facets Dive 더 많은 정보를 얻기 위해 개별 특징에 대해 상세히 살펴볼 수 있고, 대규모의 데이터도 대화형 콘솔을 통해 한 번에 살펴볼 수 있다..
트럼프 대통령 연설문 자동 요약하기 Automatically Summarize Trump’s State of the Union Address
2019. 2. 9.트럼프 대통령 연설문 자동 요약하기Text Rank, Latent Semantic Analysis, Gensim, Sumy, NLTK자동 텍스트 요약은 짧고 간결하지만 논리정연하게 긴 문서를 만드는 과정이다. NLP 분야에서 가장 흥미로운 주제 중 하나다. 본 포스팅에서는 트럼프 대통령의 지난 2월 6일자 연설문을 가지고 진행한다. 약 82분간 진행된 전체 내용을 듣거나 읽기 부담스러운 경우 앞으로 진행할 자동 요약은 매우 유용한 아이템이 될 것이다. 원문의 내용을 최대한 잘 뽑아내길 바라며 시작해보자. TextRank with NLTKTextRank 는 비지도 텍스트 요약 테크닉으로 페이지랭크 알고리즘을 문장 랭킹에 적용한 것이다. 프로젝트에 NLTK 를 사용할 때는 일반적으로 다음과 같은 순서를 따르..
우분투 아나콘다서버에 플라스크 앱 배포하기 Deploy Flask apps using Anaconda on Ubuntu Server
2019. 1. 21.Ubuntu 18.04에 Flask 마이크로웹프레임워크를 이용하여 파이썬 어플리케이션을 배포하는 방법에 대해 알아본다. Install Flask먼저 플라스크를 설치한다. 12345678910111213141516171819202122232425262728293031323334353637383940(tfKeras) founder@hilbert:~$ conda install -c anaconda flaskSolving environment: done ## Package Plan ## environment location: /home/founder/anaconda3/envs/tfKeras added / updated specs: - flask The following packages will be downlo..
Conda 가상 환경으로 PyTorch 설치하기
2019. 1. 19.https://pytorch.org/get-started/locally/ 자신의 환경에 맞게 선택하면 명령어를 제공해준다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485(base) founder@hilbert:~$ conda install pytorch-cpu torchvision-cpu -c pytorchSolving environment: done ## Package Plan ## environment location: /home/founder/anaconda3..
사전훈련된 VGG 모델을 이용하여 사진 속 이미지 분류하기 How to Use The Pre-Trained VGG Model to Classify Objects in Photographs
2019. 1. 18.이제 합성곱 신경망은 이미지 분류 - 물체에 대한 사진이 주어지면, 해당 물체가 1,000개의 카테고리 중 어디에 속하는지를 보여주는 것 - 등의 컴퓨터 비전 작업에서는 인간못지 않은 성능을 보여주고 있다. 여기서는 VGG 합성곱신경망을 이용하여 위와 같은 이미지 분류를 해보도록 하자. 아래와 같이 4개의 파트로 나눠서 다루도록 한다. Load the VGG Model in KerasVGG 모델은 케라스 딥러닝 라이브러리에서 직접 로드가능하다. 케라스는 미리 훈련된 모델을 로딩하여 사용가능하도록 Applications interface 를 제공하고 있다.해당 인터페이스를 활용하면 Oxford 그룹이 제공하는 사전에 훈련된 가중치를 사용하여 VGG 모델을 생성할 수 있다. 이를 출발점으로 삼거나 아니면 바..