이미 TensorFlow 환경 하에서 Anaconda3(64bit)의 Anaconda Prompt 창에서 필요한 라이브러리 모듈들과 함께 spyder 설치를 완료하였으며 이어서 Anaconda Navigator에서 Jupyter Notebook 도 설치해 보도록 하자. Jupyter Notebook 은 한편으로는 Google 에서 제공하는 Cloud 형 GPU 서비스인 Colaboratory 사용법과 입출력 부분만 제외하고는 거의 동일하므로 그 사용법이 대단히 중요하다고 볼 수 있다.
시작 바에서 Anaconda3(64bit)의 Anaconda Navigator를 클릭하면 여러 개의 아이콘들이 포함되어 있는 아나콘다 창이 나타난다. 각 아이콘 별로 하단을 보면 install 아니면 launch 버튼이 있다. 아직 Anaconda Navigator의 jupyter Notebook을 설치하지 않았으므로 install 버튼이 있는 것을 확인한다.
Appication on 박스에서tensorflow==1.15.0을 설치해 둔 tensor_env를 선택한 다음 jupyter notebook의 install 버튼을 누르도록 한다. 짧은 시간 이내에 install 이 완료되고 launch 버튼으로 바뀌었음을 알 수 있다.
lanch 버튼을 누르면 아래와 같이 웹 형태의 화면이 나타난다.
오른쪽 상단의 new 탭을 클릭하면 메뉴에 Python3을 볼 수 있다.
Python3을 클릭하게 되면 다음과 같은 입력 창을 포함한 화면이 시작된다. 입력 명령 창에서 TensorFlow 모듈 라이브러리를 불러오도록 import 명령을 입력한 후 바로 위의 Run 명령을 클릭하자. 앞 단계의 Applications on tensor_env에서 이미 install 작업이 이루어져 tensorflow 하에서 launch가 되었기 때문에 import tensorflow as tf 가 잘 작동하게 되며 다음번 명령 입력 상태로 전환된다.
그래도 의심스러우면 설치된 텐서플로우의 버전을 확인하도록 한다. 즉 tf.__version__을 입력 후 Run 버튼을 누르면 버전을 확인할 수 있다.
Jupyter Notebook 은 Spyder와는 또 다른 편집 특성이 있다. Help 탭 아래에 위치한 박스에서 Code 가 지정되어 있는 것을 볼 수 가 있을 것이다. Code 는 현재 설치되어 있는 Python 3.7 버전 코드를 뜻한다.
이 Code를 Markdown 으로 변경하여 Jupyter Notebook의 뛰어난 편집기능을 살펴보자. 입력 명령 번호가 사라졌음을 확인하고 다음의 예제를 입력하자. 주의할 점은 # 다음에 반드시 빈칸을 넣도록 한다. Markdown에서 #는 HTML 의 <h1>⏺⏺⏺ </h1>의 역할과 유사하다.
# Jupyter Notebook
## 1. Features of Jupyter Notebook
## 2. Code example
## 3. expression of equation
## 4. Visualization
## 4.1 image
## 4.2 video
## 4.3 table
## 4.4 chart
## 5 Wrapup
Untitled에서 파일명을 lllustrated_01로 바꾸어 Rename 버튼을 누르자.
다음단계는 현 텍스트 파일 내용을 분리해서 그 사이에 내용을 편집해 넣어 보자.
커서를 두 번째 라인 끝에 두고 Edit 의 Split Cell 명령을 클릭하면 분리됨을 확인할 수 있다.
분리된 위부분의 끝에 필요한 문서 내용을 넣기 위해 Insert 탭의 메뉴에서 Insert Cell Below 명령을 클릭하자.
번호가 매겨진 입력 명령창이 나타나며 Markdown 상태에서 Code로 바뀌었음을 알 수 있다. 필요한 내용을 타이핑한 후 다시 Markdown을 선택한다. 이 상태에서 Run Cells 명령을 실행하자. 일부가 Document 형식으로 바뀌었음을 알 수 있다.
Code example에서 아주 간단한 TensorFlow 코딩을 해 보기로 하자. 앞서의 keras 예제를 복사 해다 붙여보자.
하나의 Cell 에 mnist keras 예제 코드 모두를 넣었으므로 Run 버튼을 클릭하여 실행시켜 다음의 결과를 관찰해 보자.
expression of equation 에서는 함수 f(x,y)=squareroot(x^2+y^2)을 Code에서 입력하여 Markdown에서 Run Cells 해 보도록 한다. 아울러 적분과 미분공식도 연습해 보자. $\∙∙∙$ 형식에 의한 수학공식 표현은 Microsoft Word 가 출현 하기 전이었으며 당시 Word Perfect 란 워드가 사용되던 1980년대에 파퓰러하게 사용되던 Tex, LaTex 문법이 inline 방식으로 살아남아 그대로 적용되고 있다. $$\∙∙∙$$ 형식은 표현식이 중앙에 자리 잡게 된다. 아주 복잡한 수식 체계를 표현하려면 Tex, LaTex 문법을 참고하여 사용하기 바란다. LaTex 포맷은 80년대 말 IBM XT가 보급되던 시절부터 대학에서 보유했던 메인 프레임 방식의 중형 컴퓨터였던 VAX 시스템에서 흔히 사용되던 워드프로세서였으며 아직도 살아남아 사용이 되는듯하다.
다음 예제는 matplotlib.pyplot을 사용하여 그래프를 작성 출력해보자.
나머지도 다 파이선 문법에 따라 입력하고 실행하면 내용을 완성할 수 있다.
마지막 단계에서 완성 저장된 파일을 다시 Download as 에서 원하는 양식을 선택하면 된다. 블로그용으로는 HTML이 좋고 스팀잇 경우에는 Markdown이 통용된다. 보고서라면 LaTex 파일로 처리하는 것도 좋을 듯하다.
HTML 로 다운로드한 후 이 파일을 웹 상태로 열어서 모조리 선택 복사한 후에 필자의 블로그에 붙여넣기 해본 결과를 다음 URL 주소에서 참조해 보기 바란다.
http://blog.daum.net/ejleep1/933
'머신러닝' 카테고리의 다른 글
1-12 Pandas 라이브러리에 의한 데이터 입출력 (0) | 2020.01.29 |
---|---|
1-11 matplotlib 에 의한 MNIST 수기문자 28X28 픽셀 흑백 그래픽 출력 (0) | 2020.01.28 |
1-6 TensorFlow 1.15.0 과 2.0 버전 사이에서 Keras MNIST 예제 (0) | 2020.01.26 |
1-5 TensorFlow 1.15.0 과 2.0 버전 사이에서 (0) | 2020.01.25 |
1-4 Anaconda에서 TensorFlow 2.0 버전 보다 낮은 1.15.0 설치 요령 (0) | 2020.01.25 |