좋은 기회가 되어 읽어볼 수 있게 되었다. 개인적으로 몇 달 전에 하루키가 쓴 여행 에세이 중 그리스와 튀르키예를 돌아다니면서 남겼던 글을 읽었었다. 《비내리는 그리스에서 불볕천지 튀르키예까지》 라는 책이었다. 당시 독자인 내가 그 두 나라를 직접 두 발로 걸어다니며 여행한 것은 아니었지만 ‘독서는 앉아서 하는 여행‘이라는 말처럼 저자의 책을 통해 간접적으로나마 그 두 나라를 구석구석 여행하고 온 것 같다는 느낌을 받았었다.

목차를 간략히 살펴보니 오늘 시작하는 이 책에서는 지난번 책에서 가보지 않았던 그리스의 다른 섬들과 더불어 이탈리아 곳곳을 방문한 얘기들이 나올 것으로 보인다. 그리고 막판엔 오스트리아 지역도 일부 방문할 수 있을 듯하다.

오늘 처음 밑줄친 문장은 튀르키예의 옛 노래라고 하는데, 아마도 이 책의 제목을 짓는데 결정적인 역할을 하지 않았을까 조심스레 예상해보게 된다.


멀리서 들려오는 북소리에 이끌려
나는 긴 여행을 떠났다.
낡은 외투를 입고
모든 것을 뒤로한 채…
ㅡ터키의 옛 노래 - P9


댓글(0) 먼댓글(0) 좋아요(11)
좋아요
l 공유하기 l 북마크하기찜하기 lthankstoThanksTo
 
 
 
1년 안에 AI 빅데이터 전문가가 되는 법 (심화편) - 비전공자를 위한 최고의 로드맵 ㅣ 1년 안에 AI 빅데이터 전문가가 되는 법
서대호 지음 / 반니 / 2021년 6월
평점 :
품절


AI 빅데이터 업계에 관심은 있지만 어디서부터 공부해야 할 지 도무지 감이 안잡히는 분들에게 이 책은 친절한 가이드같은 역할을 한다. 그리고 심화편이다보니 이전의 기본편보다는 좀 더 자세한 내용을 다루고 있는데, 이쪽 분야에 진심인 독자들에게 적잖은 도움이 될 것으로 보인다. 또한 AI 빅데이터 전문가를 할지 말지 여부와 무관하게 우리 일상 생활 속에 깊숙히 침투한 AI관련 알고리즘들이 어떤 방식으로 구현되는지를 이론적인 측면에서 이해하는 데도 도움이 되었다.

댓글(0) 먼댓글(0) 좋아요(17)
좋아요
l 공유하기 l 북마크하기찜하기 lthankstoThanksTo
 
 
 

오늘은 본문에 나왔던 용어들 가운데 다소 생소했거나 혹은 핵심이 되는 개념들을 정리해본다.

한국학술지인용색인(Korea citation index, KCI): 한국연구재단의 학술지 평가를 통해 논문을 등재하거나 등재 후보를 선정하는 국내학술지 정보가 모인 전문 정보 서비스다. 게재논문에 대한 각종 정보를 제공한다. - P341

케라스(Keras): 파이썬으로 작성된 오픈 소스 신경망 라이브러리다. 사용자의 부담을 덜기 위해 일관되고 간결한 API를 제공한다. - P341

K-겹 교차검증(K-fold cross validation): 모든 데이터를 최소 한 번 테스트 데이터셋으로 사용하도록, K겹으로 데이터를 나눈 후 매번 테스트 데이터셋을 바꾸어 나가는 방법. - P341

장단기 메모리(Long short-term memory, LSTM): 딥러닝 분야에서 사용되는 순환 신경망 기반의 신경망 모델이다. 셀, 입력 게이트, 출력 게이트, 망각 게이트로 구성되어 셀은 임의의 시간 간격에 대한 값을 기억하고 세 가지 게이트는 셀 안팎으로의 정보 흐름을 조절한다. - P342

무크(MOOC): 웹 서비스를 기반으로 이루어지는 상호참여적이고 대규모의 교육 시스템이다. - P342

주성분 분석(Principal component analysis. PCA): 고차원의 데이터를 저차원의 데이터로 축소시키는 기법을 의미한다. 이때 서로 연관성이 있는 고차원 공간의 표본들을 선형 연관성이 없는 저차원 공간(주성분)의 표본으로 변환하기 위해 직교 변환을 사용한다. - P342

파이썬(Python); 1991년 귀도 반 로섬이 발표한 고급 프로그래밍 언어다. 운영체제나 플랫폼에 독립적이며 인터프리터, 객체 지향, 동적 입력이 가능하다는 특징이 있다. - P342

파이토치(Pytorch): 오픈소스 머신러닝 라이브러리다. 1993년에 루아(lua)라는 프로그래밍 언어로 개발된 오픈 소스 머신러닝 라이브러리인 토치(Torch)를 파이썬에 구현한 것이다. 자연어 처리와 관련된 모델이나 응용 프로그램을 개발할 때 주로 사용한다. - P342

R: 통계 계산과 그 결과를 그래픽으로 나타내기 위한 프로그래밍 언어이자 소프트웨어환경이다. 무료로 사용할 수 있는 오픈 소스로 공개되어 있다. - P342

랜덤 포레스트(Random Forest): 분류나 회귀분석 등에 사용되는 앙상블 학습 방법의 하나다. 학습 과정에서 구성한 결정 트리 여러 개에서 분류 또는 평균 예측값(회귀분석)을 출력한다. - P342

지역적 합성곱 신경망(Regions with CNN. R-CNN): 사람이 설정한 지역을 합성곱 신경망의 특징(feature, 입력값)으로 활용하여 객체 인식(Object Detection)을 수행한다. - P342

순환 신경망(Recurrent neural network, RNN): 입력과 출력을 특정 순서(Sequence) 단위로 처리하는 인공 신경망 모델이다. - P342

과학인용색인 확장판(Science Citation Index Expanded. SCIE): 과학 저널들 중 엄격한 심사를 거쳐 선별한 학회지의 목록 - P342

스코퍼스(Scopus): 2004년 네덜란드의 엘스비어 출판사가 만든 전 세계 우수 학술 논문데이터베이스 플랫폼이다. - P342

Seq2seq: 언어 처리에 사용되는 머신러닝 기반 방법론이다. 언어 번역, 이미지 캡션, 대화 모델, 텍스트 요약에 주로 사용한다. - P343

자기조직화지도(Self-organizing map, SOM): 사람이 눈으로 볼 수 있는 저차원(2차원 내지 3차원) 좌표에 고차원 데이터의 개체 각각이 대응하도록 인공 신경망과 유사한 방식의 학습을 통해 군집화하는 기법이다. - P343

SPSS - 통계 분석과 데이터 마이닝 등에 사용되는 통계 분석 프로그램이다. - P343

텐서플로(Tensorflow): 다양한 작업의 데이터 흐름을 제어하는 프로그래밍에 사용하는 오픈 소스 소프트웨어 라이브러리다. 수학 라이브러리이자 인공 신경망 같은 머신러닝 애플리케이션에서 사용한다. - P343

단어 빈도와 역문서 빈도(Term frequency-inverse document frequency, TF-IDF): 정보 검색과 텍스트 마이닝에서 이용하는 가중치를 의미한다. 여러 가지 문서로 이루어진 문서 그룹이 있을 때 어떤 단어가 특정 문서 안에서 얼마나 중요한 것인지를 나타내는 통곗값을 계산한다. - P343

토이셋(Toyset): 데이터를 분석할 때 쉽고 빠르게 결과를 볼 수 있도록 만들어진 예제 데이터셋이다. - P343

검정 데이터셋(Validation set): 학습이 완료된 모델을 검증하기 위한 데이터셋이다. 하이퍼파라미터를 튜닝할 때 꼭 필요하다. - P343

Word2Vec: 신경망 모델을 사용하여 대규모 텍스트 말뭉치(corpus)서 단어 연관성을 학습한다. - P343

YOLO(You only look once): 이미지 전체에 대해서 신경망 하나(a single neural network)가 한번의 계산만으로 바운딩 박스(bounding box)와 클래스 확률(class probability)을 예측한다. R-CNN에 비해서 비약적으로 빠른 속도를 자랑한다. - P343

가설(hypothesis): 현실적 조건에서는 증명하거나 검증하기 어려운 사물, 현상의 원인 또는 합법칙성에 관하여 예측하는 이론. - P343

감성 분석(Sentiment analysis): 자연어 처리, 텍스트 분석, 전산 언어학 및 생체 인식을 사용하여 정서 상태 및 주관적인 정보를 체계적으로 식별, 추출, 정량화하는 기술이다. - P343

결측값(Missing value): 데이터셋에서 누락된 값이다. - P343

경사하강법 (Gradient descent): 함수의 기울기를 구한 후 기울기의 절댓값을 낮은 쪽으로 계속 이동시켜 극값에 이를 때까지 반복하는 최적화 알고리즘이다. - P344

과적합(Overfitting): 학습 데이터에 대해서는 오차가 작지만 실제 데이터에 대해서는 오차가 크도록 과하게 학습된 상태 - P344

네트워크 분석(Network analysis): 노드(node)와 엣지(edge)로 이뤄진 자료구조를 통해 노드사이의 연관관계를 분석하는 것이다. - P344

뉴런(Neuron): 인공 신경망의 모델을 학습할 때 계산을 수행하는 개체다. 수많은 뉴런이 연결되어 병렬 연산을 수행한다. - P344

드롭아웃(Dropout): 학습 데이터를 대상으로 복잡하게 학습하는 작업을 막아 인공 신경망의 과적합을 줄이는 정규화 기술이다. 일부 뉴런을 인위적으로 제거하여 신경망을 간소화한다. - P344

배치 정규화(Batch normalization): 학습할 때 사용하는 미니배치 단위를 정규화하여 학습속도를 개선하고 과적합 문제를 해결하는 것이다. - P344

불용어(Stopword): 큰 의미가 없는 단어 토큰을 의미한다. - P344

시각화(Visualization): 데이터 분석 결과를 쉽게 이해할 수 있도록 시각적으로 표현하고 전달되는 과정을 의미한다. - P344

시계열(Time series): 일정 시간 간격으로 배치된 데이터들의 수열이다. - P344

임베딩(Embedding): 자연어 처리에서 특징 추출을 통해 수치화하는 방법이다. - P344

재현율(Recall): 실제 참(True)인 것 중에서 모델이 참(True)이라고 예측한 비율을 뜻한다. - P344

전처리(Preprocessing): 분석하기 좋게 데이터를 고치는 모든 작업을 의미한다. - P344

정밀도(Precision): 모델이 참(True)이라고 예측한 것 중에서 실제 참(True)인 것의 비율을 뜻한다. - P344

클라우드 서버(Cloud server): 물리적 서버 하나를 나누어 여러 개의 가상 서버로 사용하는 가상화 방법의 한 형태다. - P344

토픽 모델링(Topic modeling): 단어 각각이나 문서 집합에 대해 숨겨진 주제를 찾아내어 문서나 키워드별 주제끼리 묶어주는 비지도 학습 알고리즘이다. - P344

파라미터(Prameter): 수학과 통계학에서 어떠한 시스템이나 함수의 특정한 성질을 나타내는 변수를 뜻한다. - P345

활성화 함수(Activation function): 입력 또는 입력 데이터셋이 주어졌을 때 해당 노드의 출력을 정의하는 함수다. - P345


댓글(0) 먼댓글(0) 좋아요(9)
좋아요
l 공유하기 l 북마크하기찜하기 lthankstoThanksTo
 
 
 

좋은 기회가 되어 읽어볼 수 있게 되었다. 서두에서 저자는 현실과 비현실을 넘나드는 이야기를 썼다고 밝혔었는데, 오늘 처음 밑줄친 문장이 그러한 모습을 대표적으로 잘 보여주는 듯하다. 잠이라는 꿈(비현실)의 세계에서 잠에서 깬 이후의 현실 세계로 돌아온 것인데 주저리주저리 말들이 많지만 여기서의 핵심은 ‘나의 인생은 엄연한 현실‘이라는 사실이다. 아직 소설의 극초반부라 뒤에 어떤 내용들이 나올지 감을 잡을 순 없지만 적어도 지금 현재의 상황에서 현실을 직시해야 하는 것만은 분명해보인다.

잠에서 깬다. 여기가 어디지? 하고 나는 생각한다. 생각만 하는 게 아니라 실제로 입 밖에 내어 나 자신에게 이렇게 묻는다. "여기가 어디지?"라고. 하지만 그건 무의미한 물음이다. 물을 것까지도 없이 대답은 처음부터 알고 있다. 여기는 나의 인생이다. 나의 생활, ‘나‘라고 하는 현실 존재의 부속물. 특별히 인정한 기억이 없는데도 어느 틈엔가 나의 속성으로서 존재하게 된 몇 가지 사항 · 사물 · 상황. - P12

나는 어디에도 포함되어 있지는 않다. - P12

창녀들에게 이름은 있을지 모른다. 하지만 그녀들은 이름을 갖지 않는 세계에서 살고 있는 것이다. - P18

어째서 누군가가 나 때문에 눈물을 흘리는가? - P19

돌고래 호텔로 돌아가는 것은, 과거의 그림자와 다시 한번 대면해야 함을 의미하는 것이다. - P20

그렇다, 나는 이 근래 사 년 동안, 그 냉랭하고 어두운 그림자를 떨어내 버리는 일에 전력을 기울이고 있었다. 그래서 돌고래 호텔로 돌아간다는 것은 내가 사 년 동안 조용히, 부지런히 모아온 모든 것을 송두리째 포기하고 없애 버리는 것이다. - P20

물론 내가 그렇게 대단한 것을 손에 넣었던 건 아니다. 그 대부분은 아무리 생각해봐도 잠정적이고 편의적인 잡동사니였다. 하지만 나는 나름대로 최선을 다했으며, 그 같은 잡동사니를 그럴싸하게 짜 맞추어 현실과 자신을 연결하고, 내 나름의 조그마한 가치관에 기초한 새로운 생활을 구축해 왔다. - P20

다시 한번 본래의 텅 빈 자리로 되돌아가라는 것인가? 창문을 열고 무엇이든 내동댕이치라는 것인가? 하지만 결국 모든 것은 거기서부터 시작되는 것이다. 나는 그것을 알고 있었다. 거기서부터 시작될 수밖에 없다. - P20

단념하자, 하고 나는 생각했다. 단념하자, 무슨 생각을 하건소용없다. 그것은 너의 능력 밖의 일이다. 네가 무슨 생각을 하건, 거기서부터 시작될 수밖에 없다. 그렇게 정해져 있다, 확실히. - P20

내가 나 자신에 대해 도대체 무엇을 알고 있을까? 내가 의식을 통해서 파악하고 있는 나는 진정한 의미의 나일까? 녹음된 목소리가 자기 목소리로 들리지 않는 것처럼, 내가 파악하는 자아의 상像은 왜곡된 채 인식되어 모양 좋게 바뀌어 만들어진 것은 아닐까? - P21

우리는 모두가 가공의 세계에서 가공의 공기를 마시며 살고 있었다. - P22

하지만 아무튼, 무엇인가 지껄이기로 하자. 자신에 관해 무엇인가 지껄이는 데서부터 모든 것이 시작된다. 그것이 우선 첫걸음이다. 바른지 그른지는 나중에 다시 판단하면 된다. 나 자신이 판단해도 되고 다른 누군가가 판단해도 된다. 어쨌든 간에, 지금은 이야기 해야 할 때다. 그리하여 나도 해야 할 말을 고심하지 않으면 안 된다. - P22

사람이 인생에서 무엇인가를 추구할 때 (추구하지 않는 인간이 있을까?), 인생은 좀 더 많은 데이터를 그에게 요구한다. 명확한 도형을 그리기위한, 더 많은 정보가 요구된다. 그렇게 하지 않고선, 아무런 회답도 돌아오지 않는다. - P22

지껄이자. 그러지 않고선, 아무것도 시작되지 않는다. 그것도 되도록 길게. 바른지 그른지는 나중에 다시 생각하면 된다. - P23

타인이 나라는 존재를 어떻게 파악했다 하더라도 나는 그다지 신경을 쓰지 않는다. 다른 사람들이 나를 어떻게보든, 그것은 나와 전혀 상관없는 문제다. 그것은 나의 문제라기보다는 차라리 그들의 문제인 것이다. - P29

‘실제 이상으로‘라는 표현은, 내가 파악한 나 자신의 상像에 비해서 그렇다는 것에 불과하다. - P29

세상에 오해라는 것은 없다. 사고방식의 차이가 있을 뿐이다. 그것이 내 생각이다. - P30

나 자신이 그 쓸쓸함을 제법 잘 견뎌 낼 수 있다는 것도 알고 있었다. 나는 익숙해지고 있는 것이다. - P33

네가 네 자신을 마멸시켜 온 것이다. 네가 생각하는 것보다 훨씬 더 많이 너는 마멸된 것이다, - P33

나는 일의 좋고 싫음을 가릴 만한 처지는 아니었다. 게다가 도대체가 나에게 맡겨지는 일은 그게 무엇이든 좋고 싫고를 가릴 만한 차이가 없었다. - P34

다행인지 불행인지 일반적으로 세상사란 것은 끝으로 가면 갈수록, 그 질의 차이가 확연하게 드러나지 않는 법이다. 주파수와 마찬가지다. 어느 한계점을 넘어 버리면, 인접하는 두 음향 중 어느 쪽이 높은가 하는 것 따위는 거의 분간해 낼 수 없으며, 이윽고 분간은커녕 아무것도 들리지 않게 된다. - P34

쓰레기 치우기나 눈 치우기와 같은 일이다. 누군가는 해야 하는 것이다. 좋고 싫고와 관계없이. - P35

나는 다만 시간이 필요했다. 그 사건에 관한 모든 것을 구체적으로ㅡ실제적으로ㅡ정리하고 검증하는 데 반년이라는 시간이 필요했던 것이다. 나는 결코 자폐적이 되거나, 외부 세계를 완강하게 거부하거나 했던 것은 아니다. 단지 그것은 시간적인 문제였다. 다시 한번 자신을 제대로 회복하고, 재정비하기 위한 순수하게 물리적인 시간이 나에겐 필요했던 것이다. - P37

자신을 재정비한다는 의미와 그다음의 방향성에 대해서까지는 생각하지 않기로 했다. 그것은 또 다른 문제다, 하고 나는 생각했다. 거기에 대해선 다시 다음에 생각하면 된다. 우선 평형감각을 회복하는 일이 먼저다. - P37

한 번 죽어 버리면, 그 이상 잃어버릴 것은 아무것도 없다. 그것이 죽음의 훌륭한 점이다. - P40

하지만 나는 곧 서글픈 기분이 들었다.
시대가 바뀐 것이다. 그뿐이다. - P41

모두 고만고만했다. 아무것도 달라지진 않았다. 언제든 언제든 언제든, 사물의 존재양식은 같다. 다만 연호年號가 바뀌고, 사람이 교체된 정도일 뿐이다. 이러한 의미 없는 일회용 음악은 어느 시대에나 존재했고, 앞으로도 어김없이 존재할 것이다. 달이 차고 이지러지는 것처럼. - P42

아무것도 생각하지 않았다. 나는 그저 음악에 귀를 기울이고 있을 뿐이었다. - P43

‘난 태어나고부터 줄곧 잃어버리기만 했어‘ - P43

‘그리고 난 지금 그대를 잃어버리려고 해.‘ - P43

이따금 그럴 때가 있다. 무엇인가 하찮은 일이 내 마음의 가장 연약한 부분을 건드리는 것이다. - P43

이 거대한 개미집 같은 고도자본주의 사회에서 일을 찾는 것은 그다지 곤란한 작업이 아니다. 물론 그 일의 종류며 내용에 대해서 군소리만 않는다면 말이다. - P45

나는 일감의 좋고 나쁘고를 가리지 않았고, 들어오는 일감은 닥치는 대로 떠맡았다. 마감 날짜를 어긴 적이 없었고, 무슨 일이 있어도 군소리를 하지 않았으며, 글씨도 깨끗했다. 일솜씨도 꼼꼼했다. 다른 사람이라면 적당히 할 일도 성실하게 했고, 대가가 낮아도 싫은 기색 한번 내비치지 않았다. - P46

눈을 치우는 작업과 같았다. 눈이 내리면 나는 그것을 효율적으로 길가로 치웠다. 한 조각의 야심도 없었고, 한 조각의 희망도 없었다. 오는 일거리를 닥치는 대로 거침없이 체계적으로 처리해 나갈 따름이었다. 솔직히 말해서 이건 인생의 낭비가 아닐까 하고 생각한 적이 없는 것도 아니었다. 하지만 종이와 잉크가 이만큼 낭비되고 있으니, 내 인생이 낭비됐다 해도 군소리할 것은 아니지 않느냐, 하는 것이 내가 도달한 결론이었다. - P47

우리는 고도자본주의 사회에서 살고 있다. 거기에선 낭비가 최대의 미덕이다. 정치가는 그것을 내수內需의 세련화라고 부른다. 나는 그것을 무의미한 낭비라고 부른다. 사고방식의 차이다. 하지만 비록 사고방식의 차이가 있다 해도, 어쨌든 그것이 우리가 살고 있는 사회다. 그것이 마음에 들지 않는다면, 방글라데시나 수단으로 가는 수밖에 없다. 나는 방글라데시에도 수단에도 별다른 흥미를 가질 수 없었다. 그래서 묵묵히 일을 계속했다. - P47

내가 그런 식으로 열심히 한 것은, 그렇게 하는 것이 나로선 가장 편했기 때문이다. 자기 훈련. 얼마 동안 일을 시키지 않았던 손가락과 머리에 실제적인ㅡ그리고 되도록이면 무의미한ㅡ일을 시키며 혹사하는 것. - P48

나는 결국 어디에도 가지 않는다. 모두 하나둘씩 떠나가 버리고, 나만이 연장된 유예기간 속에 언제까지나 머물러 있었다. 현실이면서도 현실이 아닌 인생. - P50

가장 큰 문제는, 내가 마음 밑바닥으로부터 그녀를 원하고 있지 않았다는 점이었다. - P51

그렇다, 결국은 그녀 옆에 있으면서 나는 달 위에 있었던 것이다. 옆구리로 그녀의 가슴의 감촉을 느끼면서도 내가 진심으로 찾고 있었던 것은 다른 그 무엇이었다. - P51

생각할 것까지도 없었다. 무엇을 하면 좋은지는 처음부터 알고 있었다. 결론은 훨씬 전부터 짙은 구름처럼 내 머리 위에 빠끔하게 떠 있었다. 나는 다만 그것을 실행에 옮길 결심을 할 수 없어서, 하루 또 하루 미루고 있었을 뿐이다. 돌고래 호텔로 가는 것이다. 그것이 출발점이다. - P51

키키가 출발점의 열쇠를 쥐고 있다. 나는 그녀를 다시 한번 이 방으로 불러들이지 않으면 안 된다. 한번 나가 버린 자는 다시는 되돌아오지 않는 이 방으로. 그런 일이 가능한지 어떤지 나로서는 알 수 없다. 하지만 어쨌든 해보는 수밖엔 없다. 거기서부터 새로운 사이클이 시작되는 것이다. - P52

솔직히 말해서, 이런 종류의 취재를 나처럼 꼼꼼하게 하는 작가는 그다지 많지 않을 것이다. 제대로 하자면 참으로 힘든 일이고, 대충하려고 생각하면 얼마든지 적당히 할 수 있는 일이다. 그리고 제대로 하건, 수고를 덜 하려 하건, 기사로서의 완성도에는 거의 차이가 나지 않는다. 표면적으로는 비슷해 보인다. 하지만 자세히 보면 조금 다르다. - P56

그것이 무엇이든 간에 이왕 하게 된 바에야 제대로 해낸다. 그런 의미에서 우리는 프로다. - P57

실제로 가보면 모든 것이 분명해진다. 가보는 수밖에 없다. 어쨌든 그곳으로 가지 않을 수 없는 것이다. 달리 특별히 이렇다 할 방도가 있는 것도 아니다. - P59

나는 낭비라는 건, 고도자본주의 사회에서는 최대 미덕이라고 그에게 가르쳐 줬다. 일본이 미국으로부터 팬텀 제트기를 사들여 스크램블로 쓸데없이 연료를 소비함으로써, 세계의 경제가 그 몫만큼 더 순환되고, 그 순환에 의해 자본주의는 한층 더 고도화되어 가는 것이다. 만일 모두가 낭비라는 것을 일절 하지 않는다면, 대공황이 일어나서 세계의 경제는 엉망진창이 되고 말것이다. 낭비라는 것은 모순을 일으키는 연료며, 모순이 경제를 활성화하고, 활성화가 다시 낭비를 만들어 내는 것이다, 라고. - P60

익숙해져 있는 것은 아니다. 파악, 인식하고 있을 따름이다. 그 양자 사이에는 결정적인 차이가 있다. - P61

하코다테역 근처 서점에서 산 잭 런던 Jack London의 전기를 읽었다. 잭 런던의 파란만장한 생애에 비하면, 내 인생 같은 건 떡갈나무 꼭대기에 난 홈에서 호두를 베개 삼아 꾸벅꾸벅 졸면서 봄을 기다리는 다람쥐처럼 평온한 것으로 보였다. 적어도 일시적으로는 그런 기분이 들었다. 전기傳記란 것은 그런 것이다. 도대체 어느 누가 평화로이 무사안일하게 살다가 죽어 간 가와자키 시립 도서관원의 전기 따위를 읽겠는가? 요컨대 우리는 대상행위代償行爲를 찾고 있는 것이다. - P61

닮았다ㅡ하지만 다르다. 마치 다른 행성과도 같다. 언어도 복장도 표정도 모두 같지만, 무엇인가 결정적으로 다른 별개의 행성. 어떤 종류의 기능이 통용되지 않는 별개의 행성ㅡ하지만 어떤 기능이 통용되고 어떤 기능이 통용되지 않는가는 하나하나 확인해 보는 수밖에 없다. - P63

내가 고독하다는 것ㅡ이것은 진실이었다. 나는 누구와도 결부되어 있지 않다. 그것이 나의 문제다. 나는 나를 되찾고 있는 중이다. 하지만 나는 누구와도 결부되어 있지 않다. - P64

돈으로 해결되는 일이라면ㅡ그리고 그 돈이 언젠가 되돌아온다는 확신이 있으면ㅡ그들은 거기에 얼마든지 돈을 쏟아붓는다. - P68


댓글(0) 먼댓글(0) 좋아요(11)
좋아요
l 공유하기 l 북마크하기찜하기 lthankstoThanksTo
 
 
 

오늘은 AI 빅데이터의 주요 분야 중 ‘이상 탐지‘라는 것에 대해 알아본다. 여기 별도로 밑줄치진 않았지만 본문의 사례를 통해 우리 주변의 멀지 않은 곳에서 어렵지 않게 경험할 수 있는 것들이라는 걸 느낄 수 있었다.

이상탐지란 정상적인 상황, 패턴과 어긋난 현상을 조기에 감지하는 알고리즘을 뜻한다. - P318

이상탐지는 과거 데이터를 기반으로 과거 히스토리에서 벗어난 패턴을 이상 현상으로 감지한다. - P318

이상 탐지 접근 방식은 과거 데이터의 모델과 예측을 기반으로 한다. 정상적인 패턴은 일정하다고 가정한다. 즉, 데이터 생성으로 이어진 기본 프로세스는 크게 변경되지 않은 것으로 간주되는 것이다. 다시 말해, 우리가 이전에 본 것이 앞으로도 이어질 것으로 기대하는 것이다. 하지만 때에 따라서는 시간이 지남에 따라 변경되는 데이터 트렌드나 주기도 정상적인 행동 패턴으로 특징지을 수 있다. - P319

이상탐지는 간단히 말하면 이진 분류 문제라고 볼 수 있다. 데이터를 정상/비정상으로만 구분해주면 된다. 따라서 분류 문제에 많이 쓰이는 머신러닝, 딥러닝 모델이 자주 사용될 수 있다. - P320

이상탐지가 일반적인 머신러닝 문제와는 조금 다른 점이 있다. 우선 정상/비정상 두 클래스 간에 급격한 불균형이 있다. 일반적으로 머신러닝을 적용하기 위해서는 사전에 클래스 라벨링을 해주고 클래스 분류 모델을 만드는데 클래스 간 분포가 비슷해야 학습모델 성능이 우수해진다. 하지만 이상탐지의 경우 학습 셋 자체가 99% 이상이 정상 셋 1% 미만이 비정상 셋이기 때문에 굉장히 불균형한 학습 데이터 셋이 생성된다. 만약 99:1의 비율을 지닌 학습 데이터 셋을 그대로 학습한다면 정상에만 지나치게 모델이 과적합해 모든 데이터에 대해서 정상을 출력할 것이다. 이를 해결하기 위해서는 비정상 데이터셋을 오버샘플링하여 증대하는 방법이 있다. 비정상 데이터셋과 유사한 비정상 데이터셋을 랜덤으로 생성하여 정상/비정상 클래스 분포를 맞추는 것이다. 또는 아예 비지도 학습을 하는 것이다. 비지도 학습은 정상/비정상 라벨이 사전에 필요 없기에 비지도 학습을 통해 패턴을 만들고 해당 패턴에서 벗어난 새로운 데이터들은 비정상으로 판단한다. - P321

이상탐지 알고리즘 적용시 또 주의해야할 점은 센서 데이터의 성격이다. 기계장비 이상탐지의 경우 대부분 센서 데이터를 기반으로 적용된다. - P321

센서는 소음, 온도, 습도, 진동 센서가 대표적이다. 일반적으로 이상 징후를 가장 빨리 잡아내는 센서는 진동이라고 알려져 있다. 센서 데이터는 일반적인 데이터와는 많이 다르기 때문에 분석 시 주의를 기울여야 한다. 우선 센서 데이터는 센서의 개수도 많고 초당 여러 개씩 실시간으로 쌓이기 때문에 데이터량 자체가 굉장히 많다. 그냥 그대로 AI 모델에 다 집어넣으면 연산량이 굉장히 커서 학습시간이 굉장히 오래 걸릴 수 있다. 그래서 모든 데이터를 다 활용하기 보다는 주기별로 특징 값을 추출하거나 분 단위 평균값과 같이 통계 요약 값을 다시 추출해서 모델에 넣는 경우가 많다. - P322

또한 여러 센서 간, 값이 들어오는 시간차가 조금씩 다르다. 예를 들어 센서가 1000 개 있는데 밀리세컨드(ms) 단위로 값이 들어오기 때문에 1000개의 센서마다 값을 받는 시간이 다 다르다. 이 조금씩 다른 시간대를 일치 조정도 해야 한다. - P322

결측값 문제도 있다. 센서가 워낙 많고 초당 여러 개의 값이 마구 들어오기에 중간 값이 종종 잘 안 들어올 수도 있다. 센서가 잠시 오작동 할 수도 있고 배터리가 부족해서일 수도 있는데 아무튼 완벽하게 모든 센서의 모든 값들이 100% 들어오는 경우는 거의 없다. 이렇게 결측값이 생기면 그 자체로는 AI 모델링을 할 수 없기에 결측값을 채워 넣는 작업이 필요하다. 가장 쉬운 방법은 이전에 채워진 값을 이어서 그대로 넣거나 최빈값, 평균값 등으로 대체하는 방식이다. 회귀모형을 세워서 이전 값과 이후 값을 고려한 경향에 맞게 채우는 방법도 있다. - P322

단기간에 서버에 부하가 오는 현상, 로그인 위치나 패턴이 이전과 다른 현상, 사용 시간대가 이전과 다른 현상, 메일 내용이 이전에 받은 메일 내용과는 다른 특이한 형식, 메일에 링크를 삽입한 현상 - P323

이상탐지 알고리즘은 실시간 데이터 처리, 센서 데이터 전처리, 대용량 데이터 적재 및 처리에 능해야 한다. 이러한 작업이 AI 모델링 작업보다 오히려 더 중요한 분야가 이상탐지 분야이다. 이러한 기술들은 수학, 통계보다는 컴퓨터 공학적 코딩 능력에 더 가깝다. - P325

전통적으로 이미지를 처리하기 위해서는 색, 픽셀 간의 상호 관계, 물체 배치, 에지, 윤곽선 등의 이미지 특징이라고 불리는 특징 추출이 중요했다. 이러한 특징 추출을 얼마나 잘 하느냐가 곧 알고리즘의 성능으로 이어졌다. 하지만 최근에는 딥러닝 기술의 발달로 단순히 RGB 3채널의 픽셀값만으로도 충분히 우수한 성능의 알고리즘이 구현되고 있다. - P327

유사도 분석은 두 이미지간의 유사도 분석을 통해 두 이미지가 동일한 이미지인지 아닌지 판별하는 방법론이다. 유사도 분석은 히스토그램 비교, 템플릿 매칭, 피처 매칭 3가지 방법론이 가장 많이 쓰인다. - P327

히스토그램을 이용한 비교는 간단하면서 처리 속도가 빠른 방식으로 가장 오래된 방식이기도 하다. 이 방식은 두 장의 사진을 비교할 때 색의 히스토그램 분포 유사도를 체크한다. - P327

템플릿 매칭은 큰 이미지에서 주어진 작은 이미지가 존재하는지를 검색하는데 주로 사용한다. 즉 이미지를 조각으로 잘게 나누어 각 조각이 큰 이미지 안에 실제 있는지 체크한다. - P327

피처 매칭은 이미지로부터 수많은 특징값들을 추출하여 다른 이미지의 특징값 셋과 비교하는 방식이다. 위의 셋 중 속도는 제일 느리지만 가장 정확하다고 알려져 있다. - P328

이미지 판별은 말 그대로 해당 이미지가 무엇인지 출력하는 알고리즘이다. 개 사진이면 ‘개‘라고 출력하고 고양이 사진이면 ‘고양이‘라고 출력하는 알고리즘이다. - P328

이미지 판별을 위해서 가장 많이 쓰이는 알고리즘은 합성곱 신경망 Convolutional Neural Network, CNN 딥러닝 모델이다. 해당 모델은 이미지넷이라는 이미지 판별 대회에서 2012년에 히트를 친 모델이다. 기존 서포트 벡터 머신SVM 모델보다 엄청나게 높은 성능 향상을 보여 그 이후부터 대부분의 이미지 판별 문제는 합성곱 신경망 네트워크를 쓰고 있다. - P328

합성곱 신경망 네트워크도 더욱 상세하게 살펴보면 많이 나뉜다. AlexNet, VGGNet, ResNet, MobileNet 등이 있다. 각각의 네트워크는 컨볼루션 레이어를 활용해서 변이형 네트워크를 만들었을 뿐이다. ...(중략)... 합성곱 신경망의 핵심은 컨볼루션 레이어이다. 컨볼루션 레이어는 이미지의 지역적 특징점을 찾아내는데 쓰이는 층이다. 쉽게 말하면 전체 이미지 중에서 부분적으로 특징점들을 캐치하고 이를 이용해 전체 이미지 클래스를 분류하는 방식이다. - P328

복수의 컨볼루션 레이어는 전체 이미지를 일정 개수의 그리드로 나누어 각 그리드 셀마다 옮겨가며 투영된다. - P329

합성곱 신경망은 컨볼루션 레이어, 풀링 레이어를 어떻게 구성하느냐에 따라 무한히 많은 형태의 네트워크를 만들 수 있다. AlexNet, VGGNet, ResNet, MobileNet도 다 컨볼루션 레이어, 풀링 레이어의 특정 조합으로 이루어진 네트워크이다. 다만 이 네트워크들은 실험을 통해 그 성능이 입증되었기에 논문에 실리고 유명해진 것뿐이다. - P329

객체 인식은 이미지 판별에서 한 단계 더 올라간 방식이다. 전체 이미지 중에서 특정 객체를 인식하는 알고리즘이다. 예를 들어 농구 시합 전체 사진 안에서 농구공의 위치만 추출하는 방식이다. 객체 인식을 지역적 합성곱 신경망 Regions with CNN, R-CNN이라고도 불린다. CNN에서 regions가 붙어서 R-CNN이다. - P330

가장 전통적인 R-CNN은 선택적 탐색selective search 기법을 사용하여 객체 인식을 하였다. 선택적 탐색selective search 기법의 프로세스는 아래와 같다.

1. 이미지의 초기 조각(segment)를 정하여, 수많은 지역을 생성

2. 그리디(greedy) 알고리즘을 이용하여 각 지역을 기준으로 주변의 유사한 영역을 결합

3. 결합되어 커진 지역을 최종 지역으로 제안(region proposal).

쉽게 말하면 전체 이미지를 잘게 몇 개의 그리드로 나눈 후, 유사한 각 그리드들을 합쳐서 합쳐진 지역을 합성곱 신경망 알고리즘으로 판별하는 것이다. 그러면 전체 농구 시합 이미지 중 사람, 농구공, 골대와 같은 각 객체들이 판별될 수 있다. - P330

문제는 선택적 탐색 기법이 너무 느리다는 점이다. 그래서 이후에 선택적 탐색 기법이 없어도 객체 인식이 가능한 Faster R-CNN, YOLO 등이 나왔다. 특히 YOLO의 경우 속도가 실시간에 가까워 동영상 재생 속 화면의 객체들을 실시간으로 탐지할 수 있다. - P331

객체 인식은 학습 연산량이 굉장히 크기 때문에 학습 시간이 꽤 오래 걸린다. 또한 학습에 필요한 학습 데이터도 많이 필요하다. 특히 학습 데이터셋 구성에 있어서 단순히 사진뿐만 아니라 각 사진속 객체들의 위치를 주석annotation으로 넣는 작업까지 필요하다. 여기서 말하는 주석 작업이란 농구 시합 사진이면 사진속 사람, 농구공, 골대의 좌표 정보를 일일이 사람이 표기해주는 작업을 말한다. 물론 이 작업을 편리하게 해주는 툴이 있긴 하지만 툴을 이용해서 방대한 사진 주석 작업을 하는 데는 꽤 많은 시간이 든다. 이런 작업을 대신 해주는 회사도 있다. 국내에서는 크라우드웍스가 유명한데 현재 상장 준비 중인 꽤 유명한 회사이다. - P331

학습도 기반 정보가 없이 처음부터 하면 파라미터가 수렴하기까지 굉장히 오래 걸린다. 따라서 전이 학습을 주로 한다. 전이 학습은 다른 사람이 미리 학습해놓은 모델을 이어 받아서 학습을 하는 방식이다. 베이스가 없는 상태에서 처음부터 학습하는 것보다는 어느 정도 학습된 모델에서 이어 학습하는 방식이 속도나 정확도 측면에서 훨씬 유리하다. - P331

전이 학습으로 학습을 해도 학습 연산량이 꽤 크기 때문에 CPU로 학습은 거의 불가하고 무조건 GPU를 써야 한다. GPU는 꽤 고가여서 개인 컴퓨터에 설치되어 있지 않은 경우도 많다. 하지만 걱정 안 해도 된다. 구글 코랩을 쓰면 무료로 GPU를 한번에 12시간까지 사용할 수 있다. 월 1만원 결제하는 유료회원으로 가입하면 최대 24시간 한 번에 사용할 수 있다. - P332

이미지 생성 기술은 생성적 적대 신경망Generative Adversarial Network, GAN 알고리즘을 활용한다. 생성적 적대 신경망 알고리즘은 진짜 이미지의 확률 분포를 추정하여 가짜 이미지를 생성하는 과정이다. 이 과정에서 생성자와 적대자가 상호작용하는데 생성자는 가짜 이미지를 생성하고 적대자는 가짜 이미지 감별 역할을 한다. 반복 훈련으로 알고리즘의 성능이 우수해지면 적대자가 진짜인지 가짜인지 판별을 잘 못하게 되는 지점이 발생한다. 그때 학습을 종료하면 된다. 다만 이 알고리즘은 수렴하는 모델을 만들기가 꽤나 까다롭다. 하이퍼 파라미터 튜닝이 꽤 어려운 알고리즘이라 초보자들은 접근하기 어려울 수 있다. - P333

이미지 처리 알고리즘은 텍스트 마이닝과 더불어 AI 빅데이터 분석 분야 중 가장 연구가 활발한 분야이다. 또한 앞으로도 전망이 매우 밝아 AI 빅데이터 분석으로 진로를 잡은 독자 분들이 도전해볼 수 있는 좋은 분야이다. 다만 다수의 학습 셋이 필요하고 학습 연산량도 큰데 단순 반복 작업도 많이 필요해 끈기와 집념이 더욱 요구되는 분야이다. 그래도 이미지 처리에 능한 AI 빅데이터 전문가가 되면 다른 분야의 AI 빅데이터 전문가보다도 훨씬 좋은 대우를 받을 수 있기에 충분히 도전해볼만한 가치가 있다. - P336

책을 읽었으면 자신이 할 수 있는 범위 안에서 최대한 행동으로 실천해보기 바란다. - P337

일단 목표를 세우고 공부를 시작하기 바란다. 그것도 지금 당장 시작해보기 바란다. 개인의 실력과 환경에 따라서 이 책의 내용대로 공부하는 데 1년이 걸릴 수도 있고 3년이 걸릴 수도 있다. 그래도 일단 도전해보는 자세가 중요하다. 도전해보고 안 될 수도 있지만 도전했다는 시도 자체가 앞으로의 인생에 큰 도움이 될 것이다. - P338

공부하는 가운데 어려움이 닥칠 수 있을 것이다. 그때마다 주눅 들지 말고 ‘나는 AI 빅데이터 전문가가 꼭 될 것이다‘ 혹은 ‘나는 AI 빅데이터 전문가다‘라고 스스로 다짐하며 용기를 내기 바란다. 그래도 공부하는 가운데 어려움이 있다면 저자에게 개인적으로 이메일을 보내거나 SNS 메신저 등으로 연락을 주기 바란다. 저자가 할 수 있는 범위에서는 도움을 주도록 노력할 것이다. - P338

마음을 먹고 시작하는 것도 중요하지만 결국에는 이를 지속하느냐도 매우 중요하다. 공부의 성과는 끈기와 집념에 있다고 생각한다. 공부하기로 마음먹고 시작했지만 끈기와 집념이 부족하다면 중도에 쉽게 포기하기 쉽다. 중고등학교처럼 강제로 학교에서 시키지도 않는 공부를 성인이 되어서 갑자기 하는 것은 어려운 일이기 때문이다. 그러나 저자는 독자 여러분 모두가 한번 사는 인생에 열정을 지니고, 배우고 싶은 분야를 열심히 공부하여, 나중에 그 당시 공부했던 시간에 대해 보람을 느끼면 좋겠다는 바람이 있다. 그리고 그 과정에서 이 책이 좋은 길잡이가 되기를 기원한다. - P339

주석(Annotation): 머신러닝 학습 전 사람이 정답을 정하는 과정이다. - P340

집중(Attention) 구조: 디코더에서 예측하는 시점(time step)마다 인코더의 전체 정보를 다시 참고하는 구조를 말한다. 단, 전체를 같은 비율로 참고하는 것이 아니라, 해당 시점에서 예측해야 할 정보와 연관이 있는 입력 정보 부분을 좀 더 집중해 참고한다. - P340

오토인코더(Autoencoder): 비지도 학습으로 데이터를 학습할 때 사용되는 신경망의 한 종류다. 신경망에서 신호 안에 있는 ‘노이즈‘를 무시하도록 학습해 데이터를 차원 감소시키려는 것이다. - P340

오토스케일링(Autoscaling): 클라우드 컴퓨팅에서 활성된 서버의 연산자원량을 동적으로 조정하는 방법이다. - P340

단어 가방(Bag of words): 자연어 처리(Natural language processing, NLP) 및 정보 검색(IR)에 사용하도록 단순화시킨 단어의 모음이다. 이를 이용해 텍스트(문장 또는 문서 등)는 문법 및 단어 순서와 상관없이 다중성을 유지한다. - P340

Bert: 구글에서 개발한 자연어 처리 학습 기술이다. 특정 분야가 아닌 모든 자연어 처리분야에서 좋은 성능을 내는 범용 언어 처리 모델이다. - P340

합성곱 신경망(Convolutional neural network, CNN): 이미지나 영상과 같은 데이터를 처리할때 주로 사용하는 신경망 모델이다. 데이터의 지역적 특징을 모델에 반영할 수 있다. - P340

CRUD: 데이터베이스에서 데이터를 다루는 기본적인 기능인 생성(Create), 읽기(Read), 갱신(Update), 삭제(Delete)를 일컫는 말이다. - P340

탐색적 자료 분석(Exploratory data analysis, EDA): 데이터를 수집했을 때 다양한 각도에서 관찰하고 이해하는 과정을 의미한다. - P340

ELMo: 2018년에 제안된 새로운 단어 임베딩 방법론이다. 사전 훈련된 언어 모델(Pre-trained language model)을 사용하여 단어를 임베딩하기 전에 전체 문장의 성격을 파악한다. - P341

전문가 시스템(Expert System): 특정 분야에 대한 전문적인 지식을 정리하고 표현하여 컴퓨터에 기억시켜 일반인도 이 전문 지식을 이용할 수 있도록 하는 시스템이다. - P341

생성적 적대 신경망(Generative adversarial network, GAN): 비지도 학습에 사용되는 인공지능 모델이다. 정답이 없는 데이터 안에서 생성자와 판별자라는 신경망 2개가 서로 정답을 내려고 경쟁하면서 효율적인 학습 결과를 이끌어낸다. - P341

GPU: 컴퓨터 시스템에서 그래픽 연산을 빠르게 처리하여 결과값을 모니터에 출력하는 연산 장치다. - P341

게이트 순환 유닛(Gated recurrent unit, GRU): 순환 신경망의 한 종류다. 출력, 입력, 삭제할 정보를 적절히 구분하는 게이트의 개념을 이용해 필요한 데이터 위주로 빠르게 모델을 학습하는 LSTM을 보완한 것이다. 이전 데이터 중 필요없는 것을 리셋하는 리셋 게이트와 필요한 최신 데이터의 비율을 갱신하는 업데이트 게이트만 이용해 모델의 학습 속도를 높인다. - P341

피인용지수(Impact Factor): 학술지의 영향력을 평가하는 지표다. - P341

사물인터넷(Internet of things, IoT): 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술이다. - P341

캐글(Kaggle): 2010년 설립되었고 성능 좋은 데이터 예측 및 분석 모델을 만들기 위해 경쟁하는 대회 플랫폼이다. - P341


댓글(0) 먼댓글(0) 좋아요(8)
좋아요
l 공유하기 l 북마크하기찜하기 lthankstoThanksTo