책 독후감? 1장 입니둥
---------------------------------------------------------------------------------------------------------------------------------
<디지털의 힘>
컴퓨터는 모든 숫자를 0과 1로 구성된 이진수로 표현하는데, 이 비트열은 다른 정보도 표현이 가능하다. 또한 비트열은 숫자와 텍스트뿐만 아니라 다른 유형의 정보도 나타낼 수 있기 때문에 비트열을 조작하는 명령어로 이미지의 밝기나 사진에서 얼굴 찾기와 같은 정보를 다룰 수 있다.
<데이터를 저장하는 컴퓨터>
컴퓨터의 강점은 모든 정보들을 디지털 방식으로 나타낼 수 있다는 것이다. 또한 정보 처리의 모든 유형은 디지털 표시를 조작할 수 있는 컴퓨터 명령으로 작성할 수 있으며 이의 결과는 데이터베이스이다. 데이터베이스는 데이터나 디지털 정보를 저장하고 조작하는 특화된 컴퓨터 프로그램이다. 또한 개인용 컴퓨터의 보급과 그래픽 사용자 인터페이스(GUI)를 통해 삶의 더 많은 측면을 디지털 기록으로 남길 수 있게 되었다.
<컴퓨터는 데이터를 교환한다>
컴퓨터 개발에서 다음으로 중요한 것은 연결성이었다. 컴퓨터 네트워크는 컴퓨터가 더 이상 고립되지 않은 상태로 멀리 있는 컴퓨터와 데이터를 교환할 수 있다는 의미를 내포하고 있다. 컴퓨터 네트워크의 개발은 전 세계를 연결하는 컴퓨터 네트워크인 인터넷에서 빠르게 정점을 찍었으며 이를 통해 정보를 어디든지 보낼 수 있다. 이는 결과적으로 www(월드와이드웹)의 개발을 불러 일으켰으며 더 많은 데이터를 만들어낸다.
<모바일 컴퓨팅>
컴퓨터는 점점 작아지고 배터리 기술이 향상되면서 휴대용 컴퓨터가 확산되기 시작했다. 이것은 모바일 컴퓨팅의 새로운 세기를 열었으며 스마트폰이 두 기술을 통합하였다. 스마트폰은 언제나 온라인 상태인 컴퓨터라고 할 수 있으며, 사용자들이 모바일 상태로 인터넷에서 온갖 종류의 정보에 접글할 수 있게 해준다. 이는 연결성을 확장시켜주고 모바일 감지 기기이기도 하지만 모바일 센서이기도 하다.(위치 추적) 유비쿼터스 컴퓨팅은 컴퓨터를 사용하고 있는지 모르는 상태에서도 컴퓨터를 사실상 사용하고 있는 것을 뜻한다.
<사회적 데이터>
최근 데이터의 근원은 사회적 상호작용을 디지털 정보로 변화시킨 소셜 미디어다. 소셜 미디어는 수집되고 저장되며, 분석될 수 있는 데이터의 유형을 구성한다.
<방대한 데이터 : 데이터퀘이크>
지난 20여년 간 사람들은 이 모든 데이터로 무엇을 할 수 있는지에 대하여 스스로에게 많은 질문을 던졌고, 이를 통해 컴퓨팅의 전체적인 방향이 바뀌었다. 이전에는 프로그램이 처리하여 뱉어낸 것이 데이터였으며 이는 수동적이었다. 하지만 끊임없는 질문을 통해 데이터는 더이상 프로그래머에 의해 어떻게 사용될지 결정되지 않고 자체적으로 다음에 무엇을 할지 정의하는 작업을 시작한다.
완전한 과정을 확인하는 것은 불가능할 수도 있지만, 일부 패턴들은 탐지할 수 있다고 믿는다. 우리는 예측을 위해 그렇나 패턴을 사용할 수 있을 것이고, 그것들은 그 과정을 이해하는데도 도움을 줄 수 있다. 이를 데이터 마이닝이라고 한다. 데이터 마이닝을 통해 엄청난 양의 데이터를 처리하여 고도의 예측 정확성과 같은 유용한 가치를 가진 단순한 모델을 만들어 낸다. 이는 머신러닝의 한 유형이며 데이터로부터 규칙을 추출해 학습을 한다. 학습 모델은 패턴 인식에 사용된다.
<학습과 프로그래밍>
컴퓨터에서 문제를 해결하기 위해서는 알고리즘이 필요하며, 알고리즘은 input을 output으로 변환시키기 위해 수행되는 명령들의 순서이다. 우리가 원하는 것은 학습을 통해 컴퓨터가 작업에 대한 알고리즘을 자동으로 추출하는 것이다.
<인공지능>
머신러닝은 인공지능을 위한 필요조건이며, 변화하는 환경에 있는 시스템은 학습할 능력을 가져야 한다. 따라서 시스템 설계자는 모든 상황을 예측하고 그에 대한 솔루션을 제시할 필요가 있다. 사람은 뇌를 통해 학습을 하여 적합한 전략을 뇌에서 불러와 그에 따라 행동한다. 뇌는 많은 영역에서 현재의 공학적 산물을 능가하는 정보처리 기기라고 할 수 있다. 이러한 뇌의 응용이 기계에서도 구현된다면 경제적 유용성을 가질 수 있게 된다.
<뇌를 이해하기>
데이비드 마에 따르면 정보처리 시스템은 3가지 단계의 분석을 통해 이해할 수 있다:
1. 계산 이론은 계산의 목표와 작업의 추상적 정의와 일치한다.
2. 표현과 알고리즘은 인풋과 아웃풋이 제시되는 방식이며, 인풋에서 아웃풋까지의 변환에 대한 알고리즘의 구체적인 사항이다.
3. 하드웨어 적용은 시스템의 실제 물리적인 현실화다.
어떤 이론에든 다양한 알고리즘을 사용할 수 있으며, 같은 알고리즘은 다른 하드웨어 시사점을 가질 수 있다. 이러한 관점에서 보면 뇌는 학습을 위한 일종의 하드웨어 구현이라고 볼 수 있다. 이 특별한 구현에서는 리버스 엔지니어링(역공학)을 사용할 수 있으며, 사용된 표현과 알고리즘을 추출하고, 최종적으로는 계산 이론을 도출할 수 있다. 또한 다른 표현 및 알고리즘도 얻을 수 있으며 결국 우리가 가진 수단과 제약에 더 적합한 하드웨어 구현 단계에까지 이를 수 있다. 따라서 우리는 뇌를 분석하여 인공 신경망을 구축하고 기계를 학습시키는 알고리즘을 추출하고자 한다.
<패턴 인식>
패턴 인식의 한 예시로 얼굴 인식을 들 수 있다. 우리는 얼굴 인식을 쉽게 하지만 이는 무의식적인 과정이기 때문에 설명이 힘들다. 따라서 학습 프로그램은 개인의 다른 얼굴 이미지를 분석함으로써 개인과 관련된 패턴을 포착해 주어진 이미지에서 그 패턴을 확인할 수 있다. 얼굴은 대칭적인 구조를 가지고 있으며 눈, 코, 입은 얼굴의 특정 위치에 존재한다. 이는 나이가 들거나 포즈, 조명 등이 바뀌어도 얼굴의 특정 부분은 바뀌지만 나머지 부분은 바귀지 않는다. 따라서 학습 알고리즘은 변하지 않는 특성과 이들이 구성된 방식을 찾아내 그 개인의 다수의 이미지를 통해 특정 얼굴을 정의한다.
<우리가 학습에 대해 논할 때 말하는 것>
머신러닝에서 우리의 목표는 주어진 데이터에 맞는 프로그램을 구성하는 것이다. 학습 프로그램은 일반적인 템플릿과 조정할 수 있는 매개변수로 구성되었다는 점에서 일반 프로그램과 다르며, 매개변수에 다른 값을 부여해 프로그램은 다른 일을 수행할 수도 있다. 학습 알고리즘은 데이터에 따라 정의된 성능 기준을 최적화하여 템플릿의 매개변수를 조정한다. 학습은 매개변수를 조정함에 따라서 가장 높은 예측 정확도를 얻으며, 이는 반복적이고 점진적으로 누적된다. 따라서 예시가 주어질 때마다 조금씩 업데이트 되며 성능을 점차적으로 개선시키는 것이 곧 학습이다.
학습자를 구축함에 있어 다음의 몇가지 중요한 사항을 고려해야 한다:
1. 많은 데이터가 학습을 할 수 있다는 규칙이 있다는 것으로 이어지지 않기 때문에 우리는 프로세스에 의존성이 있는지, 수집한 데이터가 학습할 정보를 용납할 수 있을 정도의 정확도로 충분히 제공하는지 확인해야 한다.
2. 학습 알고리즘 그 자체가 효율적이어야 한다. (많은 데이터를 갖고 있고, 계산과 메모리를 효율적으로 사용하여 최대한 빠르게 학습이 이루어지기를 원한다.)
3. 학습자가 구축되고 예측을 위해 그것을 사용하기 시작한다면, 이는 메모리와 계산에 관해서도 마찬가지로 효율적이어야 한다. 효율성은 정확도만큼 중요할 수 있다.
<머신러닝의 간략한 역사>
거의 모든 과학은 데이터에 맞는 모델을 만들고자 하며, 모델을 구축해 관찰한 데이터를 설명한다. 데이터 수집 및 이론/모델 구축 과정은 충분한 설명 능력을 가진 모델을 얻을 때까지 계속된다.
머신러닝에서 다루는 주요 이론은 통계학에 근원을 두고 있다.
- 추론 : 특정 관찰을 일반적인 서술로 변화시키는 것
- 평가 : 학습
- 분류 : 판별 분석
통계학자들은 작은 표본과 단순한 모델에 대해 작업했다면, 공학에서는 분류는 패턴인식이라고 불리며 더 경험론적인 경향을 갖는다.
---------------------------------------------------------------------------------------------------------------------------------
그냥 책 읽는 것보단 읽다가 중요하거나 기억하고 싶은 부분은 블로그에 정리해보려고 한다!
일단 1장 끝!!
<책 정보>
제목 : 머신러닝 쉽게 이해하기_인공지능 시대를 앞서가기 위한 첫 걸음
출판사 : 유엑스 리뷰
저자 : 에템 알페이딘
'야미스터디 > Backend' 카테고리의 다른 글
소프트웨어공학 OOP 참고 공부(2) (0) | 2021.04.20 |
---|---|
hashsum (0) | 2021.04.15 |
소프트웨어공학 OOP 참고 공부 (0) | 2021.04.15 |
[머신러닝] 머신러닝 쉽게 이해하기 - 2장 (0) | 2021.01.03 |
[IoT] 그림으로 공부하는 사물인터넷 구조 - 1장 (0) | 2020.12.18 |
댓글