전체 글 239

옛날 생각, 지금, 앞으로는...

88년 서울올림픽 열릴 때 웨이브렛과 한창 씨름 중이었죠. 얼굴 인식에 feature extractor로 Gabor의 가능성을 보고선 당시 막 알게 된 S. Mallat의 orthogonal wavelet을 쓰면 더 정밀한 튜닝이 가능한 필터들을 만들 수 있을 것 같았죠. 이것들로 다양한 feature map들을 구해 backprop을 적용하자. 뭐 그런 것이었습니다. 한 달 걸렸나, Mallat의 길고 수학적인 technical report를 읽고 구현 시작했는데요, 하다가 잘 안되 이론을 제대로 이해했나 숱하게 다시 보았고요, 그래도 다 잘 해서 짜잔~~ 웨이브렛 필터 뱅크로부터 원래 이미지를 복원해보니 희미한 물결무늬 패턴이 보이겠죠. Aliasing 비스무리한 것이 이리 저리 해봐도 없어지지 않더..

신경세포, 몇개야?

사람 뇌의 뉴런 수 (glial cell 제외하고)를 1000억 (100 billion) 이라 흔히 얘기한다. 그런데, 위키는 그 수를 210억, 전체 신경계의 뉴런은 860억, 시냅스 1.5×1014 개 라고 한다. 읽지는 않았지만 참고 자료를 인용하니, 이게 더 정확하겠지 생각했는데, Bear의 Neuroscience 책은 850억 이라 한다. 무엇이 더 정확한거지?Glia의 개수는 더 헷갈린다. Bear의 Neuroscience에서는 Neuron과 glial cell의 개수가 대략 비슷하다하고, Purves에서는 glia가 뉴런보다 몇 배 더 많다한 것 같고, 그 외 여러 글에서 glia가 neuron 보다 더 많다고 보았다.Suzana Herculano-Houzel 박사 팀이 진행한 The hum..

두뇌가 지닌 제약, AI의 가능성

알게될수록 사람의 두뇌작용은 로봇과 비슷하다. 분자생물학에 힘입어 유전자가 단백질과 조직을 만들고, 뉴런의 작동에서 Na+ 이온이 어떻게 뉴런안으로 밀려들어와 신경신호를 만드는 지를 세밀하게 안다. 이것들의 작동을 알게 될수록 뇌 메커니즘이 미세기계, 화학공장, 유압 밸브, 전기회로 같다. 이젠 미스터리라고 생각되던 의식에 대해서도 과학적 설명이 많이 이루어지고 있다. optogenetics 기술로 쥐 뇌 amygdala 뉴런의 작동을 조작해 쥐가 공격성을 나타내게 한다. 사람에게 적용해도 아마 감정을, 행동을 조정할 수 있을 것 같다. 생물체 뇌는 정보처리를 하기에 태생적으로 많이 불리하다. 생물체의 시작이 물에 녹은 화합물의 합성으로 시작되어서 뇌가 물려받았기에 뇌의 정보처리는 축축한 환경에서 단백질..

Brain_Neuroscience(두뇌 신경과학_1) - Neuronal membrane at Rest

학교다닐 때 두뇌, 신경생물학 공부는 그져 지식을 머리에 넣기에 바빴다. 공부해야 할 것이 넘쳐 내용들을 제대로 음미할 여유가 없었다. 시간이 있는 지금, 신경과학의 발전을 제대로 즐기자. C.U.M. Smith의 Elements of Molecular Neurobiology, G.M. Shepherd의 Neurobiology, D.Purves의 Neuroscience 다 좋지만 M.F.Bear의 Neuroscience - Exploring the Brain을 중심으로 즐긴다. 참 쉽게 잘 쓴 책이다. 신경과학 전문 지식이 필요한 사람말고도, 사람을 진짜로 심각히 알고 싶은 모든 사람들이 읽어야 할 책이다. ---------Excitable Cell : action potential을 생성할 수 있는 세..

윈도우즈 TensorFlow 1.0 설치 문제

Theano, Caffe, Tensorflow를 함께 쓰려니 능력이 안된다. TensorFlow 1.0 이 얼마전 정식으로 나왔다. 진행이 빠르다. Android 같은 모바일 기기에도 적용하기 좋을 것이라 한다. TensorFlow로 신경망, Brain Simulation 하자.Ubuntu에 Tensorflow 1.0 gpu 버젼을 쓰고 있다. 윈도우즈엔 TensorFlow 0.12 cpu 버젼을 별도의 environment에서 Anaconda와 같이 쓰고 있다. 윈도우즈에 1.0 버젼을 설치하려고, Anaconda 3 64bit, python 3.6 최신 버젼을 새롭게 설치하고, 별도의 "tensorflow_1.0" environment를 만들어 거기에 anaconda를 역시 설치했다. Tensorfl..

신경망, Deep Learning의 깊이

두뇌, 개구리 두뇌에 아무리 데이터를 많이 주어도 결코 사람 레벨의 지능을 발달시키지 못한다.높은 수준의 인지 작용에 관여하는 대뇌 피질의 신경세포 수를 보니 사람이 200억이 넘어 다른 동물들보다 확실히 많다. 그런데 Long-finned pilot whale은 370억개로 사람보다 더 많다. 흠...인공지능, 머신러닝 관점에서,해석성 또는 overfit 염려로 비슷한 성능이면, 아니면 좀 성능이 못해도 단순한 모델이 낫다고 생각하는 사람들이 많다. 뭐, 그렇다면. Neural Net을 보는 근본적인 차이가 있다. 어떤 사람들은 Neural Net을 포함하는 머신러닝을 인공지능을 만드는 수단으로, 또 다른 사람들은 데이터를 분석하기 위한 알고리즘으로 간주한다. 이해하기, 해석하기 쉬운 단순한 모델로 사..

시그마, 다변수 미적분, 확률, Matrix Calculus

전공책을 보면 다변수 식(Multi variables expression)에 시그마 ∑가 씌어지고 [참고], 또 여기에 미분/편미분이 적용되고, 확률/random process operator가 있고, Matrix Calculus 형태로 된 것을 종종 접한다. 일반 상식인 우리나라 학생들 수학 실력이 좋다는 말이 실감나지 않을 때가 있다. 배웠다고 하는데 시켜보면 모르고, 계산하면서도 그게 무슨 뜻인지 모른다. 대입 수능 수학 시험를 보니 비슷한 문제가 있고, 어느 정도 풀 수 있었기에 대학에 올 수 있었을 터인데 왜 이런지? ∑ , 미분등이 섞여있는 식에서 어떤 것이 변수고, 어디까지 변수로 보아야 하고, 그들에 수학 operation을 어떻게 적용해야 하는지 어려워한다. 아래 함수 f(x)의 미분을 ..

Implicit Differentiation

AI 수학 ■ Implicit (Partial) Differentiation[Khan의 Implicit Differentiation]대학 때 부터는 미분을 implicit한 방식으로 많이 풀면서도 엄밀하지 않은 방법으로 했다. Differential operation (operator 인가?)을 사용해 마치 dx, dy를 분자, 분모 같이 사용할 때는 부정행위하는 것 같고 께름찍하다. 함수 생각 :위와 같은 식이 있으면, h 라는 함수가 있는데 이 함수는 변수 x, y 에 좌우된다는 뜻임을 명확히(explicit) 나타낸다. 따라서 b, w, a 는 상수임을 안다. 함수 h에서 y는 고정하고 x 만 변화할 때의 미분은 함수 h에서 y만 변화할 때의 미분은 하여 구한다. 그런데, 함수 h(x, y)를 종속..

ISLR Chapter 10 - Unsupervised Learning

Introduction to Statistical Learning 내용를 파이썬으로 구현하는 것을 이 것으로 끝낸다. 10장 - Unsupervised Learning Principal Component Analysis (PCA) 간단히 직접 PCA를 만들어 PCA 이해 scikit-learn PCA 사용하기 Clustering K-Meansscikit-learn의 Hierarchical ClusteringSciPy의 Hierarchical Clustering실습 - NCI60 데이터 활용 NCI60에 PCA 적용하기NCI60에 Clustering 적용 전체 데이터Principal Component에 대해 NCI60에 Classification 실행 - Gene Expression으로 종양 타입 예측 P..