목록TensorFlow (20)
NeuroWhAI의 잡블로그
https://dreamgonfly.github.io/rnn/2017/09/04/understanding-rnn.html 여기서 나온 설명과 코드를 가지고 직접 돌려봤습니다. 텐서플로의 기본적인 요소만 사용해서 RNN을 직접 만들고 MNIST 학습을 시켜보는 예제입니다. 이론적인 설명만 공부했을땐 RNN의 동작이 머리에 잘 그려지지 않았는데 이렇게 직접 구현하니 바로 이해가 되네요. 테스트하면서 신기했던건 Optimizer를 Adam으로 바꾸니 학습이 잘 안됬다는거? 또 이상한건 결과를 보시면 아시겠지만 도중에 정확도가 갑자기 확 떨어지는건 대체 왜 그런걸까요... 코드에 버그가 있나? 코드:123456789101112131415161718192021222324252627282930313233343536..
https://js.tensorflow.org/ 뒷북이면 둥둥이라고 해주세요. 웹 브라우저에서 동작하는 TensorFlow가 나왔습니다. 이전에도 가능은 했을지 모르겠지만 공식적으로 발표가 나온것 같습니다.+ 내용 추가) 이전부터 있었던 deeplearn.js가 TensorFlow.js로 이름을 바꾼거라고 하네요. 크게 기능을 보자면 학습된 모델을 불러와서 쓸 수 있다. 불러온 모델을 학습시킬 수 있다. 직접 모델을 작성할 수 있다. 그러니까 다 된다는 말이죠 ㅋㅋ 간단하게 코드의 모습이나 디자인 컨셉을 보고싶으시면 https://js.tensorflow.org/tutorials/core-concepts.html 여기서 보시면 됩니다.눈에 띄는건 js의 메모리 관리 특성상 필요한 dispose, tidy..
지식 부족으로 계속 실패했었는데 그럭저럭 완성됬습니다. 인터넷 블로그의 글들과 GitHub의 소스코드들을 참고해서 만들었습니다. 코드: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431..
https://colab.research.google.com Colaboratory는 Jupyter Notebook의 구글 드라이브 버전이라고 보시면 됩니다. 구글 문서를 사용하면 한 문서를 여러 사람들이 동시에 작업하는 협업이 가능했는데 그게 주피터 노트북(을 닮은 무언가)에도 가능해졌다는 겁니다. 협업 가능! 설치? 필요없음! 필요한건 인터넷과 웹 브라우저! 성능? GPU, TPU 지원! 필요한건 오직 구글 계정! 그냥 자신의 구글 드라이브에서 Colaboratory 파일을 만들어 열면 끝! 바로 사진 보시죠! 텐서플로를 사용해서 CNN으로 MNIST 이미지를 분류하는 예시를 돌려봤습니다. 진짜 이게 될까 반신반의하면서 돌린건데 실행결과가 주르륵 나오는거보고 감동먹었습니다. (왜 굳이 감동까지 먹냐면..
※ 이 글은 '골빈해커의 3분 딥러닝 텐서플로맛'이라는 책을 보고 실습한걸 기록한 글입니다. 드디어 마지막 챕터네요. 이건 이해하느라 좀 힘들었습니다 ㅠㅠ 심지어 코드도 길어서 타이핑하느라 손가락 부러지는 줄. agent.py: model과 game을 import해서 최종 로직을 작성합니다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114..
사지방에서 텐서플로를 돌리기엔 뭐해서 어떻게든 다른 방법을 통해 실습할 수 있었습니다. 딱 두 달 걸렸네요. 정말 잘 샀다고 생각하는 책입니다. 전체적인 난이도는 다른 책에 비해서 쉽습니다. 애초에 이론적인 설명은 구현에 딱 필요한 수준으로만 알려주기 때문에 쉬울 수 밖에요. 책 소개에도 있지만 수식이라곤 y = Wx+b 뿐입니다. 그래서 이론적인 내용을 몰라도 코드를 돌려보면서 대충 흐름을 이해하기에 딱 좋습니다. 다만 저처럼 저수준적인 원리를 알아야 맘이 편안해지시는 분들은 코드 이해하고 작성하는 시간보다 검색하는 시간이 더 오래 걸리실겁니다. 마지막 챕터에서 DQN이 나오는데 DQN은 이론적인 내용을 배운적이 없고 검색해도 잘 안나와서 상당히 오래걸렸습니다. CNN, GAN 같은건 3일 정도면 됬는..
※ 이 글은 '골빈해커의 3분 딥러닝 텐서플로맛'이라는 책을 보고 실습한걸 기록한 글입니다. 이론적인 설명은 저도 여기서 공부하면 될것 같고 그냥 책에 나온대로 따라만 해봤습니다. 이번엔 이미 만들어진 모델을 사용하는거라서 아래의 단계로 진행되었습니다. 학습할 꽃 데이터 다운로드 Inception 모델을 학습시키는 스크립트 다운로드 꽃 데이터로 모델 학습 학습된 모델을 불러와서 사용 이 글에는 4번 단계만 적었습니다. 모델을 불러와서 사용하는 코드: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#-*- coding: utf-8 -*- import sysimport tensorflo..
이전글에서 DCGAN을 만들면서 tf.layers.batch_normalization을 사용하게 됬는데 training 옵션이 False일땐 잘 되면서 True일땐 학습하지 않은 결과만 못한 출력을 내더라고요. 이것저것 검색하다가 결국 공식 문서에 해답이 있다는걸 알았습니다. training시에 moving_mean과 moving_variance는 수동으로 업데이트 해줘야한다고 합니다. 기본적으로 갱신연산(update op)들은 UPDATE_OPS 키에 속하고 이걸 학습연산(train op)의 종속성에 추가해주면 된다고 합니다. 그 방법이 위 사진의 코드에 해당합니다. (신경망 구현 코드를 다 작성한 뒤) update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS)..
저번에 했다가 실패했다고 말씀드렸었는데 이번에 어느정도 성공했습니다! (이전 글) 코드: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132#-*- coding: utf-8 -*- import tensorflow as tfimport numpy a..
※ 이 글은 '골빈해커의 3분 딥러닝 텐서플로맛'이라는 책을 보고 실습한걸 기록한 글입니다. 코드: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109#-*- coding: utf-8 -*- import sysimport tensorflow as tfimport numpy as np char_arr = [c for c in 'SEPabcdefghijklmnopqrstu..