Eli의 여백

바쁜 나날들 사이에서 생각났던 이런저런 것들을 적어봅니다.

일상./생각

20180124

Eli♪ 2018. 1. 25. 04:51
20180124
2018 1 25일 목요일
오전 2:20
며칠전 다음 링크를 보고나서 갑자기 딥러닝 학습 의욕이 치솟았다.
 
 
그래서 주말마다 한개씩 질문에 답변하는 형식으로 공부해 나가자고 결심했었다.
 
오늘은 뭔가를 하다가 갑자기 feel받아서 딥러닝 관련해서 알아봤다.
내 OLED 최적화 연구에 딥러닝을 써먹고싶은데, 기존의 딥러닝들은 영상인식이 대세라서 직접 구현해야할 것 같았고, 구글에 딥러닝 직접구현 이라고 쳤는데 여러 자료가 나왔었다.
 
이 사이트는 갓이다.
홍콩과기대 교수가 자기 lecture를 한국말로 설명해주는 것 같은데, youtube비디오 및 강의자료를 그냥 공개하고 있다. Reinforcement learning관련해서 강좌를 몇 개 들어봤는데, 매우 쉽게 설명하고, (중간에 살짝 프로그래밍 지식이 필요한 경우도 있었지만) 2시간 정도만에 lecture 6까지 다 들었다. 내용 이해에 막히는 부분이 하나도 없었고, 구현부까지 tensorflow 코드 포함해서 설명하고 있어서 매우 좋았다.
 
또 아까 구글검색에서 다른것도 찾았는데 다음 사이트이다.
다양한 사이트의 링크를 모아서 보여주고 있는데, 위에서 찾은 사이트를 포함, 많은 것들이 있었다. 나중에 참고하면 좋을 것 같다.
 
이 사이트 안에 들어있는 것 중에 고양님이 C++딥러닝 링크를 공유했길래 들어가서 봤다.
동국대 컴공과 교수인듯한데, 동영상을 읽어봤더니 아까 그사람보단 좀 어렵게 설명하는듯하다. 일단은 내용보면 뭐 괜찮은듯하니 링크는 킵.
 
그리고 텐서플로우 관련해서 예전에는 리눅스+파이썬만 됐었는데 이제 윈도우도 된다고 들어서 anaconda에서 찾아보니 없었다. 알고보니 아직 anaconda에서 정식 지원을 안하는 것 같다. 관련해서 텐서플로우 사이트에 설치법이 나와있었다.
activate tensorflow (tenso「* # Your prompt should change 4. ISSUe the appropriate command 10 install TensorF10W inside your conda environment. TO install the CPU-only version Of TensorFlow, enter the f이lowing command: pip install —ignore-installed —upgrade tensorflow TO install the GPU version Of TensorFlow, enter the f이lowing command (이1 a single line): pip install —ignore-installed —upgrade tensorflow-gpu" height="315" width="480"/>
맨처음에 새로운 environment를 안만들고 해봤었는데, 설치가 제대로 안됐다. 알아보니 현재 tensorflow는 python 3.5가 지원한계인데, 이것때문이었을지도 모르겠다. 결국 설명과 같이 tensorflow전용 environment를 만들고 설치하니 성공했다. 중간에 관리자권한을 요구하는것도 있어서 conda console을 관리자권한으로 실행하고 설치해야 했었다. 다 끝나고 아래 있는 확인 명령어를 terminal에서 python돌린 후 실행하니 잘 되었다.
이사람껏도 읽어보면 참고가 될지도 모르겠다.
오른쪽에 있는 책들이 이사람이 번역한 것 같다. (예전에 비슷한 책을 본적있는데 원문 및 내용에 대한 이해도가 높아서 번역 퀄리티도 같이 높았던 걸로 기억한다.)
 
여기까지 하고나서 드는 생각이 tensorflow 전용 가상 os가 있으면 좋겠다는 거였다. 기존에 VMware player는 잘 알고있었는데, 왠지 윈도우부터 다 설치하면 좀 빡셀거같아서 좀 더 가벼운 걸 찾다가 구글에 sandbox os라고 검색했다. 그랬더니 sandbox라는 프로그램이 상위로 나와서 뭐지 하고 찾아보았다. 알고보니 프로그램 레벨에서 가상화를 해주는 프로그램이었다. 예전부터 도커같은거 열심히 찾아보고 있었는데, 프로그램 레벨에서는 이렇게 간단한 프로그램이 엄청나게 오래전부터 존재해오고 있었다.
대충 설명은 아래 블로그에서 확인 가능하다.
 
설치는 여기서 하면 된다.
깔고나서 보니까 한국어도 지원하는 것 같다. 처음 실행할 때 튜토리얼로 웹브라우저를 샌드박스에서 켜는 걸 해볼 수 있다. 이후로는 기본적으로 아래와 같은 창이 뜬다.
여기에 프로그램을 끌어다놓으면 실행이 되고, 아니면 뭐 실행할때 아이콘 우클릭해보면 샌드박스로 실행 이라는 항목이 생겨있다. 일단 몇가지 해본 결과 카톡은 두개켜지긴 하는데 한쪽 로그인하면 한쪽이 풀리고, 윈10 기본 음악앱(groove music?)은 샌드박스로 안켜진다. 그리고 아래아한글같은 경우는 잘 실행되었다.
프로그램 실행이 다 끝나면 샌드박스 항목 우클릭 후 내용 삭제 누르면 샌드박스에서 돌린 프로그램들이 전부 삭제된다. 기본 저장폴더가 샌드박스별로 있긴한데, 바꿔서 설정할수도 있고, 그건 뭐 차후에.. 초기용량이 48MB인가 그렇고 기본 저장폴더는 C드라이브 users 안에 어디로 저장된다 써있다.
 
부록 1.  얼마전에 필기용 윈도우 태블릿으로 갤럭시북을 샀는데, 맨위에 홍콩과기대 교수가 만든 youtube 영상에 너무 감명받은 나머지 화면에 나도 필기하면서 영상을 찍고 싶었다. 윈도우 원격으로 하면 당연히 되는데, 문제는 윈도우 기본 원격은 한쪽에서 로그인하면 다른쪽에서 전혀 조작할 수가 없다. 그래서 송출하는데에서 조작도 되고 송출도 되게끔 해야했다. 방송켜고 녹화할수도 있으나, 레이턴시 및 기타등등에 문제가 있고, 갤럭시북 성능도 문제가 될 수 있다. 미라캐스트같은거도 해보려했으나 데탑에 미라캐스트 수신기가 따로 있어야되는 것 같았다. 공유기가 iptime인데 자체기능에 미러링 없나 봤더니 없었다.  혹시나 해서 사이드싱크를 돌려봤는데 같은 공유기를 써도 양쪽 다 윈도우면 못잡는거같았다. 그래서 투컴+캡쳐보드로 방송 돌리는 지인에게 물어봤더니 다음 링크를 추천해줬다.
요약하면 Xplit에서 NewTEK NDI라는걸로 송출하면 되는걸로 이해했다. 그런데 Xplit이 유료라서 Newtek뭐시기 사이트에 들어갔더니 거기도 다 유료였다. 그래서 좀 더 찾아보니 다음과 같은 자료를 발견했다.
요약하면 윈도우10 내장앱으로 가능하단거다. 원격지원을 쓰면 되는데, 앱이름은 '빠른 지원'이다. 예전에 하마치나 팀뷰어같은거 써봤으면 알겠지만, 보통 한쪽에서 인증번호가 나오고, 다른쪽에 그걸 입력하면 잡다한거 안물어보고 연결되는 방식이다. 양쪽에서 프로그램을 켜고, 한쪽은 지원주기 한쪽은 지원받기를 누르면 pin번호 몇 개 입력하고 바로 연결된다. 어디 서버를 경유하는지는 자세히 모르겠으나, 나는 일단 동일 공유기에 데탑은 유선으로, 윈도우태블릿은 와이파이로 연결한 상태였고, 레이턴시는 느껴지긴 하지만 0.5초 정도로 거의 없었다. 특히 필기한 화면을 지원 주는쪽에서 rescaling해서 볼 수도 있고, 지원주는쪽에서 상단에 있는 펜도구 눌러서 지원받는쪽 화면에 뭔가를 그릴수도 있는데 이걸 양쪽에서 다같이 볼 수 있다. 좋지 아니한가?
프로그램 끌때 MS 별점주기가 떴는데, 내가 웬만하면 이런거 잘 안하는데 별 다섯개 줬다. 리듬게임이나 다른 스트리밍 하는사람들은 해상도나 레이턴시에 민감해서 이거 못쓰겠지만, 나는 잘쓸거같다.
 
 
부록 2. 위에서 주소중에 한글이 있는데, 처음 복사할 때 주소가 한글인데 자꾸 유니코드 형식으로 퍼센트 붙는 url로 복사가 되었다. 이걸 해결하기 위해 다음의 자료를 찾았다.
결론은 웹브라우저에서 url복사시에 앞에 한개빼고 ttp://나머지주소 이런식으로 되게 선택해서 복사하면 한글을 한글상태로 복사해올 수 있는 것이다. 개꿀팁이다.
 
부록 3. 부록1을 찾고나서 문서에 넣었는데 뭔가 전체적인 흐름과 안맞아서 접기 펼치기같은 기능을 넣고싶었는데, 요즘 대세인 마크다운으로 가능할거같아서 구글에 markdown hide show를 쳤더니 다음의 자료가 나왔다.
! 590i1든r text Example" height="566" width="480"/>
 
저 노란부분에 마우스를 올리면 글자가 나타난다. 이게 스택오버플로우에서만 되는지는 모르겠지만 여튼 문법은 저렇게 되는 것 같다. 아직 시도는 못해봤고 나중에 블로그에 글 쓸때 해봐야겠다.
 
부록 4. 자기전에 티스토리에 이 글 써놓고 자려고 찾아보니 역시나 원노트에서 바로 공유하는게 있었다.
예전버전이라… 예전버전에서는 API가 바로 됐었는데 관리콘솔에 가도 도무지 찾을수가 없길래 검색해 봤더니 그게 사라졌다고 한다.
대신 오픈API를 쓰라고 한다.
이것저것 찾아봤는데 일단은 원노트에서 블로그로 공유하는 기능이 있고, 내가 해봤더니 기타 타입의 블로그 계정연동을 위해 원노트에서 설정하는 부분이 안되는거같다. 에버노트는 티스토리를 확실히 지원하는 것 같은데, 유료인데다 용량제한있고 동기화 2기기만 되며, 현재 사용중인 dropbox 동기화 및 필기 등 여러가지 확인 안된 사항들이 많아서 일단 사용하기가 꺼려진다. 근데 다음의 글을 발견했다.
여기에 보면 에버노트로 티스토리에 글쓰는 방법과 원노트에서 에버노트로 넘기는 방법이 다 써있다. 실제로 해봤더니 잘된다.
다만 원노트에서는 필기랑 글자 같이 있는게 되는데 에버노트에서 그게 안되는건 엄청난 단점인 것 같다. 일단은 이쪽으로 넘겨와서 작성하고 있다. 
 
요약
  1. 딥러닝 관련해서 좋은 youtube영상 강의자료를 찾음
  2. 영상에 나온 텐서플로우를 윈도우 anaconda 환경에서 설치해봄
  3. 텐서플로우 전용으로 가상OS 격리하려고 찾다가 프로그램 레벨 가상화로 sandboxie라는 찾았고, 다운받아서 써봄
  4. 자료들을 정리하려고 하다가 한글url 한글상태로 복사하는 간단한 방법도 찾음
 

Microsoft OneNote 2016에서 작성