종달랩 종다리 이야기

ubuntu 16.04에 tensorflow설치완료

Computer Science/머신 러닝
반응형

구글의 러닝머신 라이브러리 TensorFlow를 우분투에 설치 완료했다.


참고자료 

[TensorFlow 문서 한글 번역본]


GPU 설치참조

[텐서플로우를 파이참에서 돌려보자]


CuDNN 다운로드 : 로그인은 해야 합니다.

[nvidia cuDNN Download]


파이참 설치

[텐서플로우를 파이참에서 돌려보자]


저는 환경을 python3 + GPU 버전으로 했고, CUDA는 7.5, cuDNN은 5.1(August 10, 016) for cuda 7.5로 설정하였습니다.


예제 소스는 python2 버젼이여서 오류가 있어서 잠깐 검색해서 찾아내고

python3에서는 

- xrange가 range로

- print는 print()로 감싸게

변경이 되었더군요.


ps : 오.. 몇주전부터 개발환경에 우분투를 투입시키고 나서 느끼는 것은, 윈도우보다 빠르다는 것과, 좀 있어보인다는 것..


ps2 : GPU가 ignore gpu device...어쩌구 하는 에러가 나면 tensorflow를 직접 컴파일해서 사용할 수 있습니다.

[직접 컴파일 참조링크]

일본어 사이트지만, 요즘은 번역기술이 뛰어나서(여기도 머신러닝을 적용했다지요) 번역해서 읽어도 됩니다. 




반응형

TensorFlow 기술문서

Computer Science/머신 러닝
반응형

인공지능 관련 기술중에서 최근 가장 핫한 기술은 TensorFlow이다. TenserFlow는 원래 머신러닝과 딥 뉴럴 네트워크 연구를 목적으로 구글의 인공지능 연구 조직인 구글 브레인 팀의 연구자와 엔지니어들에 의해 개발되었는데, 구글이 이것을 공개하였기 때문이다.


해당 기술문서에 대해서 한글로 번역된 사이트가 있어서 링크를 설정한다.


[TensorFlow Korea]


[TensorFlow]


주말에 관련서적을 교보문고에서 2시간동안 간략히 읽고, 사무실에서 설치했다.


환경은 

Python 2.7

TensorFlow r0.12


현재 Python 3.5에 TensorFlow r0.12를 설치하는데 Matlab관련된 오류가 뜨면서 설치가 않되는 문제로 조금 삽질중..


당분간 머신러닝에 중점두고 봐야겠다.


PS : 그런데 파이선도 한번도 않본 언어인데.. 쉽다는 것만 알뿐..

반응형

구글 검색 알고리즘 정리한 링크

Computer Science/프로그래밍 TIP
반응형

http://sungmooncho.com/2012/08/26/pagerank/



반응형

크로스 플랫폼 개발환경

Computer Science
반응형

윈도우, iOS, 안드로이드, Linux, Unix, ...

 

개발자들을 혼란스럽게 하는 것은 다양한 환경에 다양한 개발언어들로 인해서 이에 따른 기술적 요구량이 많아진다는 것이다.

 

특히, 한국의 개발자들은 세계에서 가장 많은 기술적 요구량을 받는 관계로 프로그래머(개발자)의 수명이 짧은 편에 속한다.

 

이러한 문제점은 크로스 플랫폼에서 한번 해결책을 찾아볼 수 있을 것 같다.

 

최근에 우분투 12LTS가 정식으로 릴리즈가 되었다.

 

자세한 내용은 다음 링크를 참조.

 

여기서 mono를 이용한 크로스 플랫폼을 구현할 수 있는 환경이 쉽게 구성이 된다는 것에 주목을 해보자.

 

 

 

 

 

개발환경은 Linux, Windows, iOS 등 대부분의 알려진 운영체제에서 개발환경이 제공이 되어지고, .NET 플랫폼을 자체적으로 구현을 해서 기술적인 면에서는 .NET 플랫폼보다 낳다는 평가를 받기도 한다.

 

앞으로 Visual Studio Blog에서 연재하는 부분들을 정리해서 나도 같이 공유하고자 한다.

 

자세한 링크는 다음을 참조..

 

 

반응형

AForge.NET 으로 .NET에서 Vision과 AI를 마음껏 활용합시다.

Computer Science/프로그래밍 TIP
반응형
오늘 좋은 OpenSource를 찾았다.

AForge.NET


AForge.net에 대한 간략한 소개는 다음과 같다.

AForge.NET is an open source C# framework designed for developers and researchers in the fields of Computer Vision and Artificial Intelligence - image processing, neural networks, genetic algorithms, fuzzy logic, machine learning, robotics, etc.

The framework is comprised by the set of libraries and sample applications, which demonstrate their features:

  • AForge.Imaging - library with image processing routines and filters;
  • AForge.Vision - computer vision library;
  • AForge.Video - set of libraries for video processing;
  • AForge.Neuro - neural networks computation library;
  • AForge.Genetic - evolution programming library;
  • AForge.Fuzzy - fuzzy computations library;
  • AForge.Robotics - library providing support of some robotics kits;
  • AForge.MachineLearning - machine learning library;
  • etc.

AForge.NET을 이용한 간단한 QR Code 리더 프로그램은 아래 사이트를 통해서 확인할 수 있다.


[Zxing , QR Sample ] C# 에서 QR 라이브러리 사용하기

그러고 보니 QR code를 사용하려면 ZXing라이브러리가 있어야 하는데, 위 링크 안에 포함되어져 있답니다.

반응형

SqlCeConnection의 CreateCommand를 빠르게 반복적으로 실행하면 메모리 에러납니다.

Computer Science/프로그래밍 TIP
반응형
위 제목과 같은 일이 그렇게 자주 일어나지는 않겠지만, 혹시나 페이지 이동이 잦거나, 테스트를 한다고 위와 같은 동작을 반복적으로 하게 되면 GC에 메모리가 쌓이게 되고, 즉각적으로 처리가 되지 않게 되므로 해서 메모리 에러가 일시적으로 발생할 수 있습니다.

이러한 현상은 프로그램이나 시스템의 오류는 아니고, GC(가비지 콜렉션)의 처리방식에 따른 현상이므로 적절하게 시간을 두거나 다른 동작을 하게 함으로 해서 GC가 동작할 수 있는 시간을 벌어주면 됩니다.

그리고, 위와 같은 현상은 그렇게 쉽게 나타나질 않습니다. 전 위 동작을 2~3분동안 20회 이상 빠르게 반복적으로 동작하게 하니깐, 에러가 발생하더군요....
반응형

WinCE .net remote performance monitor 설정하기

Computer Science/프로그래밍 TIP
반응형
약간 한물간 기술이긴 하지만, 아직도 Windows CE, Windows Mobile에서 개발하는 저와 같은 불쌍한 개발자들을 위한 팁입니다.

Analyzing Device Application Performance with the .Net Compact Framework Remote Performance Monitor


영문은 쉽기 때문에 별도의 설명은 하지 않습니다...만은 혹시 영어를 싫어하시는 분들을 위해서..

0. Visual Studio 2003 이상의 개발툴은 당연히 깔려 있어야 하고, 개발에 필요한 PDA, 또는 스마트폰이 ActiveSync와 연결은 되어져 있어야 합니다.
1. C:\Program Files\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE\wce400\armv4. 에 있는  netcfrtl.dll과  netcflaunch.exe을 PDA의 windows폴더안에 복사합니다.
2. C:\Program Files\Microsoft.NET\SDK\CompactFramework\v2.0\bin 안에 있는 netcfrpm.exe 을 실행합니다.
3. Device에서 연결된 PDA를 선택하고 실행하고자 하는 프로그램의 정확한 경로를 Application안에 적어넣습니다. 필요한 파라미터가 있으면 Parameters안에 써넣습니다. 그리고 Connection버튼을 누르면 해당 프로그램이 실행되고 정보가 표시가 됩니다.
4. Performance Monitor를 통해서 그래프로 정보를 보고 싶으면 그래프 안에 "+" 또는 "Add"를 누르고 화면에서 잘 찾아서 선택하면 해당 정보가 그래프로 표시가 됩니다.


반응형

소프트웨어 개발론 간단한 정리

Computer Science
반응형
오늘 회사에서 어플리케이션 사업팀에서 개발방법론에 대해서 이야기 하는 것을 들었다. 사업계획서에 넣을 것이라고 하는데 CDC인지 CDP인지와 개체지향등과 같은 단어들을  이야기 하길래 새로나온 개발방법론을 언급하나, 개발단계까지 고민하나 해서 검색해보았는데, CBD를 잘못 이야기하는 것 같았다.

그래도 검색한 결과가 아까워서 잠깐 정리하면 개발방법론은 크게 다음과 같이 구분이 된다.

- 정보공학 방법론 (일명 폭포수 방법록)
- 나선형 방법론
- 프로토타입 개발방법론
- Rational Unified Process(RUP) 방법론 : UML기반
- Component Based Development(CBD) 방법론 : 개체지향적..
- Capability Maturity Model(CMM) 방법론 : 조직구성에 따른..
- eXtreme Programming(XP) 방법론: 닥치는대로 막
- Agile 방법론 : 최근개발론..(?) 참여방법론은Extreme Programming, Scrum, DSDM, Agile ICONIX, Crystal Clear, Agile document (링크 걸려있습니다.)

[ 그밖에 관심이 있을 링크들입니다. ]
- "소프트웨어 개발방법론의 함정" : http://www.zdnet.co.kr/ArticleView.asp?artice_id=20091129180815 
- Model Driven Architecture(MDA) 방법론(글씨 작고 내용많음) : http://improf.egloos.com/2437764 

개발방법론 간략문서 다운받기(제가 작성한것은 아니고 서핑했는데, 작성하신 분정보는 문서안에 있습니다. )

작성자 : 허광남
이메일 : kenu@okjsp.pe.kr
반응형

RAS (Remote Access Service)에 대한 간략한 설명

Computer Science
반응형
현재 인수인계중인 PDA가 RAS통신을 한다고 해서 살펴보게 되었다.

RAS에 대한 개괄적인 설명은 다음을 살펴보면 될것 같다.


조금 쉬운 말로 정리된 것입니다.


웹페이지를 검색하다 짜집기로 모은 자료라 링크도 못걸고 이렇게 Copy & Paste했습니다. 해당 자료가 문제가 되면 어떻게 처리하겠습니다. 
반응형

CODE Complete 2주만에 가까스로 읽어보다.

Computer Science
반응형
Code Complete 2nd edition을 산 때는 2006년도였던걸로 기억한다.

매우 유명했고, 꼭 읽어보고 싶었기 때문에 인터넷으로 주문을 했는데, 받아보고서는 헉~ 그 두께와 내용에 놀랐었다. 처음 몇 십장을 발췌해서 읽고 내용이 매우 좋다는 것을 직감했지만, 시간적인 문제와 양적인 문제로 항상 차일피일 미루다가 2010년 추석을 전후해서 작심하고 읽기 시작했다.

이 책을 쓴 스티브 멕코넬은 프로그래머가 알아야 할 내용들을 매우 쉬우면서도 알차게 내용을 전개해 주었고, 이러한 내용들은 프로그래머의 경험이 있는 나에게는 매우 신선하게 다가왔다. 1960년대에서부터 지금까지의 여러가지 경험적 내용들과 다양한 연구자료들, 그리고 많은 경쟁이슈들이 이 책한권에 모두 녹아져있는 느낌이었다.

프로그래머가 아니더라도, 개발과 관련된 이해도를 높이고 싶은 사람들이라면 한번쯤은 시간을 내서 꼭 읽어봐야 할 내용들이 아닌가 생각한다. 그리고, 후반부 Chapter들은 실무가 아닌 철학적인 내용으로 개발자들을 이해할 수 있는 내용들도 많이 있다. 관리자나 팀장들이 개발자들을 이해할 수 있는 기회가 되는 내용들이다.


반응형