(해당 포스트에서 소개하는 "딥러닝과 바둑" 책은 한빛미디어로부터 제공받았음을 알려드립니다.) 인공지능이 바둑 영역에서 본격적으로 활용되기 시작한 것은 4년전 알파고와 실제 인간과의 대결 이후였을 것이다. 그 이전에는 인공지능이 체스에 활용된 케이스가 있었지만, 제한된 영역에서 움직이는 체스와는 다르게 바둑에서는 활동 영역도 넓고, 무엇보다도 형세를 이해하고 몇수 뒤의 미래를 예측해야했기 때문에, 인공지능을 해결하기 어려운 분야라고 여겨졌었다. 그런 영역을 알파고는 머신러닝과 딥러닝, 더불어 강화학습까지 적용시켜 바둑 실력을 높이게 된 것이다. 혹시 이 영역에 관심있는 사람이라면 Deepmind에서 만든 알파고 관련 영화도 한번 보면 흥미가 있을것이다. 아무튼 알파고가 등장하고, 이를 어떻게 구현했는지에..
(해당 포스트에서 소개하는 "Think Julia: 줄리아를 생각하다." 책은 한빛미디어로부터 제공받았음을 알려드립니다.) 내가 처음 Julia를 알게 된 것은 MOOC 수업을 들을 때 Julia로 문제를 해결하는게 있어서였다. 그 때 했던 과제가 Linear Optimization을 하는 것이었는데, JuliaBox상에서 Julia로 구현된 Linear Solver를 사용하면 Optimal Value를 구할 수 있었다. 그때 잠깐 다뤘던 내용이지만, Python만큼이나 문법도 간결하고, 구현하고자 한 공식이 있으면 그대로 표현도 가능했고, 이해하기 쉬웠던 것으로 느꼈었다. 사실 Julia는 내가 느낀 것 이외로도 장점이 많다. 책에 기술된 대로 따라가자면, High-Performance Language..
(해당 포스트는 "Head First Go"에 대한 서평으로, 해당 책은 한빛미디어로부터 제공받았음을 알려드립니다.) 현업에서도 데이터 분석이랑 시각화 관련 작업을 하다보니, R과 Python, 어쩌다가 C로 업무를 하게 되는데, 최근 트렌드 중에 "Go" 라는 언어가 많이 나오고 있는 것 같았다. 그래서 언젠가는 어떤 포인트로든 내가 하는 업무에 Go 를 접목시켜서 좀 배워볼 기회를 가지면 좋겠다 싶었는데, 마침 책으로써 미리 다뤄볼 기회가 생겨서, 이에 대한 글을 좀 남겨보고자 한다. Go는 2009년, Google의 Rob Griesemer와 Rob Pike, Ken Thompson이 만든 functional language이다. 원래의 목적은 google 내부에서 많이 다뤄지는 network기반의..
(해당 포스트는 "이것이 데이터 분석이다 with 파이썬"에 대한 서평으로, 해당 책은 한빛미디어로부터 제공받았음을 알려드립니다.) 요즘들어서 데이터를 가지고 하는 일들이 많아졌다. 소위 "빅데이터"의 시대인만큼 어마어마하게 수집된 데이터들 사이에서 남들이 발견하지 못한 insight를 찾고자 하는 사람들도 많아지고, 수요도 늘었다. 물론 이 insight를 부여하는 것을 사람에 따라서 다르게 수행하고 있다. 어떤 사람은 데이터들 사이에서 특징을 잘 추출할 수 있도록 정리해주는 일을 할 수도 있다. 이해당사자들에게 데이터가 가진 의미를 잘 설득할 수 있도록 시각화를 하는 일도 있고, 아마 요새 가장 핫한 일이겠지만, 이런 데이터에 머신러닝이나 딥러닝 같은 인공지능을 적용해서 미래의 일을 예측하거나, 최적..
(해당 포스트는 "Generative Deep Learning"에 대한 서평으로, 해당 책은 한빛미디어로부터 제공받았음을 알려드립니다.) 혹시 인공지능이 적용된 예시중에 이런 그림을 본적 있는지 모르겠다. 위에 소개된 기술은 CycleGAN을 활용한 Style Transfer라는 기술로, 기존의 유명한 명화들을 학습한 모델을 바탕으로 실제 사진을 넣었을 때 해당 화풍을 적용한 것처럼 변형시켜준다. 사실 인공지능이 미래의 데이터를 예측하고, 이미지를 분류하는 예제만 봐왔던 사람들한테는 이렇게 직관적으로 결과가 나타나고, 시각적으로도 딱 보여주기 좋았기에 사람들에 전달하는 의미가 매우 컸었다. 이밖에도 MuseGAN이나 World Model과 같이, 이미지 생성에만 한정짓지 않고, 새로운 음악도 만들어내기도..
(해당 포스트에서 언급되는 "파이썬을 활용한 머신러닝 쿡북" 책은 한빛미디어로부터 제공받았고, 이에 대한 서평을 쓴 것 임을 알려드립니다.) 현업이나 학교 과제 중에서 머신러닝 관련 일을 하게 되면, 제일 번거로운게 API의 사용이나 내가 원하는대로 고치는 것이다. 물론 Tensorflow나 Scikit-learn과 같이 유명한 프레임워크는 API documentation도 제공하고, 많은 사람들이 실제로 접해보면서 나름 쉽게 풀어쓴 예제들이 많이 제공되지만, 꼭 찾다보면 내가 필요한 것을 설명한 게 없는 경우가 많다. 나같은 경우에는 얼마 전에 언급한 Exploratory Data Analysis (EDA)에 필요한 문제를 해결하다가 딱 맞게 설명된 예제도 없어서 나름 응용해본 케이스를 소개했었는데, ..
(해당 포스트에서 언급되는 "파이썬 자료구조와 알고리즘" 책은 한빛미디어로부터 제공받았고, 이에 대한 서평을 쓴 것 임을 알려드립니다.) 시중 서점에서도 컴퓨터 관련 도서 섹션을 보면 파이썬 관련 서적들이 많이 있다. 몇년전엔 자바나 C 관련 서적이 차지하는 비중이 대부분을 차지했었던거 같은데, 인공지능같은 분야가 인기를 끌면서 쉽게 배울 수 있는 파이썬에 대해서 다룬 책들이 많이 나온 것 같다. 물론 서점에서도 관련 책을 많이 볼 수도 있지만, 인터넷에서도 무료로 공개된 파이썬 관련 강의나 책들도 많이 등장하고 있다. Coursera나 edX에서도 유명한 대학교에서 제공하는 입문 강좌들도 보면 파이썬을 활용해서 컴퓨터의 구조나 동작원리, 알고리즘 등을 설명하는 내용들이 많이 담겨져 있다. 사실 오늘 소..
요새 기술 트렌드가 인공지능이라고 많이 표현하고, 회사나 학교에서도 이를 응용한 교육이나 기술을 많이 적용하려고 노력하는 것 같다. 그런데 개인적인 생각으로는 이런 기술도 기본적인 소양이 뒷받침되어야 진정으로 이해하고 나아갈 수 있지 않을까 하는 생각을 많이 해본다. 예를 들어서 행렬연산이나 벡터의 개념없이는 신경망이 연산하고, 학습되는 과정을 이해하기 어려울 것이고, 기본 자료구조나 알고리즘에 대한 이해없이는 그런 동작 과정을 개선시키거나, 이해하는 것 자체가 벅찰 것이다. 사실 나같은 경우도 현업에서 인공지능 관련 기술을 실제 환경에 적용하는 일을 하고 있긴 하지만, 그런 과정이 쉽지 않을 뿐더러 너무나 논리적으로 설명하기 어려운 부분이 많다는 것을 많이 느낀다. 그래서 그냥 시간나는 틈틈히 알고리즘..
내가 Unity를 처음 접하기 시작했던 건, 2012년 Imagine Cup 준비할 때였다. 그때 마침 Kinect 프로그래밍을 할 수 있는 Unity Asset을 준다고 해서, 프로그래밍을 잘 몰랐던 그때 입장에서는 진짜 막막해서 책도 이것저것 사보고 그랬던 기억이 있다. 그런데도 지금도 살펴보면 알아야될게 너무나 많다. 단순히 C#이나 Javascript만 가지고 프로그래밍만 하면 될게 아니라, 캐릭터모델도 생각해야 되고, 카메라 뷰도 고려해야 한다. 더구나 모델 역학도 들어가 있어, 이를 위한 수학적 지식도 알고 있어야 한다. 뭔가 게임을 개발하는데 있어 알아야 할게 많지만, 그래도 그나마 이를 쉽게 해주는 툴이자 프레임워크가 Unity가 아닐까 싶다. 더구나 최근에는 인공지능을 공부하는데 있어서 ..
지연율, 오류, 성능, 효율성, 그리고 블랙박스 모니터링에 초점을 맞춤으로써 고성능 시스템 구현하기 Radar station (source: Paul_Henri via Pixabay) 이제 당신은 (이제는 블록체인을 활용해서) 최신의 웹 애플리케이션을 만들 수 있고, 사용자들은 그런 것들을 좋아할 것입니다. 접속률은 높아질 것이고, 이제 큰 압박을 느끼기 시작할 것입니다. 그리고 어느 날 아침에 일어나보면 사이트가 밤새 느려져 있고, 사용자들이 불평하고 있다는 것을 알게 될 것입니다. 문제를 어디에서 찾을 수 있을까요? 당신이 웹사이트나 내부 애플리케이션을 개발하는 개발자이든, 이런 것들을 포괄하는 시스템을 관리하는 관리자이던 간에, 당신의 업무는 이런 작업들이 한번 동작하기 시작하면 멈추지 않게 하는 ..
10여년 전에 Microsoft에서 주최한 ImagineCup에서 Kinect 분야에 참가한 적이 있었다. 사실 MS 제품군이다 보니 사용해야 될 것이 .net framework였고, C#에 대해서 잘 몰랐던 내 입장에서 막상 서점에 딱 가서 고른 책이 "뇌를 자극하는 C# 5.0"이었다. 그래도 나름 입문서의 타이틀을 단 만큼 실습 예제와 정의가 잘 설명되어 있었고, 그나마 필요한 부분을 잘 습득해서 대회를 준비했던 기억이 난다. 그때만 하더라도 C#이라고 딱 들으면, MS 관련 프로그래밍을 할 때 필요한 언어, 또는 Unity3D를 개발할 때 필요한 언어, 나름 객체지향을 지향하는 언어이며, 다른 언어들의 장점을 가져오고자 노력한 언어로 알고 있었다. 다만 일반적으로 많이 쓰이는 C / JAVA / ..
머신러닝 관련 서적중 거의 최고봉이라고 할 수 있는 Bishop교수의 Pattern Recognition & Machine Learning (PRML) 책이 온라인으로 무료 배포되었다. (역시 MS의 힘이 대단한건지...) 이전에 중고 원서 구할때도 4만원정도 냈었고, 원서값도 어마어마하기도 했지만, 책 안에 포함되어있는 내용들은 그 값어치를 넘어서는 것 같다. 참고로 최근에는 한글 번역판도 출판되어서 조금더 접하기 쉬워진거 같다. 아무튼 기존에 접하기 어려웠던 사람들도 이번 기회를 통해서 널리 공유되었으면 좋겠다.
요새야 대학교 프로그래밍 입문을 Python으로 많이 진행하고 있겠지만(몇몇 학교에서는 언어의 본질을 가르치는 취지에서 Lisp이나 Scheme같은 함수형 언어로 가르치기도 하지만...), 학교다닐때만 해도 가장 많이 가르치고 많이 써먹던 언어가 C와 Java가 아니었나 싶다. 물론 학부를 전자과로 해서 그런지 하드웨어를 다룰 일이 많아 C만 배우고 말았지만, 안드로이드가 돌아가는 기반이나 IT업계에서 널리 쓰이는 범위를 보면 Java의 영향력은 무시할 수 없다. 심지어 Python이 대세인 딥러닝 쪽에서도 최근 Java기반의 라이브러리인 Deeplearning4j(DL4J)가..
과거에는 뭔가 물건을 만들고 싶어도, 이를 만들기 위한 절차나 단가가 개인이 부담하기에는 너무 커 어려웠다. 그런데 최근들어 "3D프린터"라는게 나오면서부터 뭔가 개인이 prototype 이라는 것을 만들 수 있는 기회가 제공되었다. 이제는 공장설비나 비싼 자제가 필요없이 프린터 본체와 PLA같은 저렴한 재료만 가지고도 개인이 생각하는 무언가를 만들어낼 수 있는 것이다. 간단하게는 장난감 인형이 될 수도 있고, 더 나아가서는 총같은 것도 만들어 낼수도 있고, 심지어는 차량의 틀이나 집까지도 3D프린터를 통해 만들어 낼 수 있는 시대가 온 것이다. 사실 나도 집에서 무언가..
- 포스트에서 언급되는 "우아한 사이파이" 는 한빛미디어에서 지원을 받았으며, 이에 대한 개인적인 느낌을 작성한 것임을 알려드립니다. - 요근래 나는 조직이 변경되었다. 예전의 나를 소개할때는 통신 소프트웨어 엔지니어라고 소개되었는데, 이제는 하는 업무가 딥러닝/강화학습 적용쪽으로 변경되었다. 그러면서 개발환경도 이전의 C언어로 짜던 것이 이제는 Python으로 외부 라이브러리도 내 입맛대로 가져다쓰고 개발하고 있다. 아무래도 딥러닝/강화학습을 하려다보니 주어진 dataset을 처리할 기회가 많아지고, 이를 다룰 패키지인 numpy나 pandas, matplotlib에 대한 활용 케이스가 많아졌다. 특히 요근래에는 시각화 관련해서 공부도 좀 하고 있었다. (찾아보니까 보통 matplotlib을 쓰긴 하지..
- Total
- Today
- Yesterday
- Python
- DepthStream
- dynamic programming
- processing
- reward
- Variance
- RL
- TensorFlow Lite
- PowerPoint
- Gan
- windows 8
- ColorStream
- arduino
- 파이썬
- Distribution
- Offline RL
- Kinect for windows
- Pipeline
- End-To-End
- Off-policy
- bias
- Windows Phone 7
- 한빛미디어
- Kinect
- Policy Gradient
- 강화학습
- Kinect SDK
- SketchFlow
- 딥러닝
- Expression Blend 4
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |