본문 바로가기

python 및 머신러닝35

Part02-chapter03 학습과정 살펴보기 Part02-chapter03 학습과정 살펴보기 에서 소스 그대로 복사해서 실행했는데, train acc 가 첨부한 그림과 같이 0.45까지 밖에 올라가지 않는다. 혹시나 해서 np.random.seed(3) -> np.random.seed(0) 으로 변경하고, 완전 새로 실행했더니 0.9까지 올라가는 것을 발견. 물론, 교차검증을 해야 하는데,,, 또 한편으론 딥러닝에선 많은 입력 데이터 때문에 교차검증은 안한다고 하기도 하고,,,단순 랜덤 seed 때문에 이렇게 결과가 달라지다니... 조금 허무함.. >>> 입력 데이터가 너무 적어서 np.random.seed에 영향을 크게 받은 것이었다.랜덤으로 고를 데이터를 700->7000개, 300->3000개로 늘리면, 예상한 결과대로 나온다.단지 시간이 오.. 2017. 10. 18.
Java에서 python 사용하기 dwt계산을 지원하는 python library인 PyWavelets을 사용해보자.> Java에서 PyWavelets(=pywt)을 사용하기 1. using JythonJython 을 이용하는 경우 python을 불러올 수 있는데, pywt 패키지 내부에 _extensions 폴더의 *.pyd 파일을 불러 올 수 없어서 실패.2. pywt의 *.pyd 파일을 디컴파일해서 pure python으로 재생성 가능하면, Jython에서 접근 가능.하지만 속도를 위해 pyd로 만들었는데, 다시 디컴파일한다는 것이 모순됨.3. Embedding python : c/c++ 에서 python을 사용할 수 있다.python -> c++ -> dll -> java(JNI) 로 가능한지 테스트c++에서 Python.h 를 .. 2017. 10. 18.
3분 딥러닝 - 3장 텐서플로 프로그래밍 101 scikit-learn에 비해 tensorflow는 정의가 매우 애매모호한 프레임워크라는 느낌을 받았다. 아마도, tensorflow를 설명하는 많은 글들, 책들이 단순히 MNIST 예제를 따라만 해왔기 때문이었을 것 같다. 왜 이렇게 하는지,,, 이렇게 하면 어떻게 되는지 모른채,,, 단지 예제만 돌리고 있다. 그에 비해, [3분 딥러닝]은 tensorflow 자체에 대해 천천히 소개해주고 있어서 좋았다. 가끔 코드가 있는 기술서적들을 보면, 책의 설명만으로는 부족해서 직접 데이터 디버깅을 해봐야 알 수 있었는데. 즉, 책 내용 자체를 다시 연구해야 하는 번거로운 경우들이 많이 있었는데,,, 이 책은 그렇지 않았다. 그럼에도 부족한 부분이 있어서, 디버깅을 해보았고, 추가되면 좋은 부분을 남긴다. ch.. 2017. 10. 12.
텐서플로로 시작하는 딥러닝 4장 - 은닉층의 역할 은닉층에서 은닉노드의 개수가 증가 할 때 효과?은닉층의 개수가 증가할 때 효과? 그 이유를 모른다면, 신경망을 모르는 것... 2017. 10. 10.
ipython notebook theme 변경 ipython notebook theme 변경 소스 : https://github.com/dunovank/jupyter-themes 방법 : http://seulcode.tistory.com/5 사용예 : anaconda prompt > pip install --upgrade jupyterthemes jt -t monokai -cellw 1100 jt -t monokai -cellw 90% 그리고~~~~~~ jupyter 는 web이므로 js, css 변경이 가능하다. 수정파일 Anaconda3/Lib/site-packages/notebook/static/notebook/js/main.min.js Anaconda3/Lib/site-packages/notebook/templates/notebook.html.. 2017. 10. 10.
파이썬과 케라스로 배우는 강화학습 3장 2-value-iteration gridworld2-value-iteration reward와 value만 가지고 진행하므로 계산이 훨씬간단해졌다. 전제 : [2, 2]중심의 value는 항상 0이다 calculate : new value_table = max (next reward + 0.9 * next value) print policy : value = next reward + 0.9 * next value max(value)action = value == max ? 1 : 0 move : action > 0 이라면 어디나... [2, 2] 중심에 도착할 때까지 무한루프 2017. 10. 5.
파이썬과 케라스로 배우는 강화학습 3장 1-policy-iteration [도서] 파이썬과 케라스로 배우는 강화학습 : 내 손으로 직접 구현하는 게임 인공지능이웅원,양혁렬,김건우,이영무,이의령 공저 | 위키북스 | 2017년 07월 gridworld1-policy-iteration 왜 이렇게 할까? 라는 의문을 책을 읽는 내내 가지고 있었는데, 차라리 저자의 깃북을 보는 것이 더 이해가 잘 되었다.https://www.gitbook.com/book/dnddnjs/rl/details 또는 아래책의 강화학습 챕터가 기본적인 개념을 이해하기에 더 수월했다. 본 책은 깃북에 없었던 코드를 추가하면서 개념 설명이 많이 부족해진듯 하다. 확률 형태의 수식은 좀처럼 친숙하지 못해 이해하기 어려웠다.그래서 그냥 코드 자체를 디버깅하면서 데이터의 흐름을 추적하였다. 전제 : [2, 2]중심의.. 2017. 10. 5.
텐서플로로 시작하는 딥러닝 4장 - 합성곱 필터 4.1 합성곱 필터의 기능 141p합성곱 필터를 적용해서 나오는 결과물이 잘,,, 이해가 안된다. 정말 되는 걸까?엑셀로 디버깅을 해보자. >>>>>>>> 결과 2개를 합쳐보니... 외곽선만 추출이 가능하다. 대박!!!! > Convolution(합성곱)은 예전에 1차특성 진동데이터 DWT작업을 하면서 데이터 디버깅을 해보았었는데 2차원 이미지 합성곱 필터도 결국 원리는 동일한 듯 한다.합성곱에는 full, same, valid 3가지 mode가 있다.data * 필터 --> 결과full : data가 filter와 1개라도 겹치는 부분이 있는 경우 모두 결과로 처리한다.(겹치지 않는 부분은 default값으로) (data size < 결과 size)same : full과 valid 사이의 중간단계로, .. 2017. 9. 26.