다섯 단계
사물 인터넷 시스템은 장치 · 통신 네트워크 · 데이터 플랫폼 · 서비스와, 이 넷을 감싸는 보안으로 이루어집니다. 이번에는 그 부분들 사이로 데이터가 어떻게 흘러가는지를 봅니다. 부분을 아는 것과 흐름을 아는 것은 다릅니다. 자동차의 부품 이름을 다 알아도 시동을 걸었을 때 무슨 일이 일어나는지는 따로 배워야 하는 것과 같습니다.
사물 인터넷에서 데이터는 다섯 단계를 지나갑니다. 순서를 외우는 것보다 단계마다 데이터의 모습이 어떻게 달라지는지를 보는 것이 중요합니다.
수집 — 센서가 값을 읽는다
사물 인터넷 장치의 센서가 주변을 측정해 신호로 바꾸고, 장치가 그 신호를 숫자로 읽습니다. 이 순간 데이터는 숫자 하나일 뿐이고, 무슨 뜻인지는 아직 아무도 모릅니다.
전송 — 네트워크로 보낸다
읽은 값을 통신 네트워크에 실어 데이터 플랫폼으로 보냅니다. 데이터의 내용은 달라지지 않고 자리만 옮깁니다.
처리 — 다루기 좋은 모양으로 정리한다
도착한 값에 언제 어느 장치에서 온 것인지를 붙이고, 단위를 맞추고, 눈에 띄게 이상한 값을 걸러 낸 뒤 쌓아 둡니다. 아직 무엇을 알아낸 것은 아닙니다.
분석 — 쌓인 값에서 뜻을 도출한다
쌓아 둔 값들을 비교해 봅니다. 지난주와 비교하고, 다른 장치와 비교하고, 반복되는 모양을 찾습니다. 여기서 비로소 「마르고 있다」 같은 결과가 나옵니다.
활용 — 판단을 실제 동작으로 옮긴다
분석한 결과를 사람에게 알리거나, 장치에게 되돌려 보내 실제로 움직이게 합니다. 여기까지 와야 바깥 세상에서 무언가가 달라집니다.
다섯 단계가 늘 다섯 곳에서 일어나지는 않습니다
급한 판단은 값을 멀리 보내지 않고 장치 가까이에서 처리하기도 합니다(에지 컴퓨팅). 그런 시스템에서는 전송이 장치 안이나 바로 옆 컴퓨터까지의 짧은 거리로 줄고, 3·4·5단계가 장치 가까이에서 한꺼번에 일어나기도 합니다. 단계는 일의 차례이지 장소의 목록이 아닙니다. 어디에서 하든 이 차례를 건너뛸 수는 없습니다.
다섯 단계 가운데 하나만 빠져도 시스템은 제 구실을 다 하지 못합니다. 4단계를 뺐다고 하면, 남은 넷으로는 무엇까지 할 수 있고 무엇을 못 하게 될까요?
따라가 보기
흙의 물기를 측정하는 화분으로 다섯 단계를 실제로 밟아 봅시다. 아래 버튼을 눌러 한 단계씩 넘기면서, 데이터 상자 안의 값이 어떻게 달라지는지 지켜보세요. 단계가 넘어갈 때마다 같은 값에 무엇이 새로 붙는지가 볼거리입니다.
지금 데이터의 모습
아직 아무 값도 없습니다. 다음 단계를 눌러 시작하세요.
-
1
수집
화분에 꽂힌 센서가 흙의 물기를 읽습니다.
-
2
전송
읽은 값을 데이터 플랫폼으로 보냅니다.
-
3
처리
받은 값을 다루기 좋은 모양으로 정리해 쌓아 둡니다.
-
4
분석
쌓아 둔 값들을 비교해 봅니다.
-
5
활용
판단을 실제 동작으로 옮깁니다.
표시되는 값은 수업에서 원리를 확인하려고 지어낸 것입니다. 실제 센서의 값 범위와 기준은 제품마다 다릅니다.
숫자는 그대로인데 뜻이 자랐습니다
처음에 나온 312는 그저 센서가 내놓은 숫자입니다. 이 숫자만 보고는 화분이 목마른지 알 수 없습니다. 그런데 단계를 지나면서 여기에 언제 측정한 것인지가 붙고, 0에서 100 사이로 옮긴 값이 되고, 지난 며칠과 비교한 결과가 붙습니다. 마지막에 「물을 줄 때가 되었습니다」가 나오는 것은 새 데이터가 생겼기 때문이 아니라 같은 값에 비교할 대상이 붙었기 때문입니다.
센서가 고장 나서 흙이 젖든 마르든 늘 312만 보낸다면, 다섯 단계 가운데 어느 단계에서 이상을 알아챌 수 있을까요? 처리 단계에서는 왜 알아채기 어려운지도 말해 보세요.
처리와 분석
다섯 단계 가운데 3단계와 4단계는 이름만 보면 비슷해 보여서 자주 뒤섞입니다. 둘을 나란히 놓고 무엇이 다른지 살펴봅시다.
처리 — 값을 다루기 좋게 만든다
새 뜻을 보태지 않고, 다룰 수 있는 모양으로 바꿉니다. 단위를 맞추고, 측정한 때를 붙이고, 빠진 값을 표시하고, 눈에 띄게 이상한 값을 걸러 냅니다. 데이터를 다루는 분야에서는 이 일을 전처리라고도 부릅니다.
새로 알게 되는 것은 없습니다. 값 하나만 있어도 할 수 있습니다.
분석 — 값에서 뜻을 도출한다
정리해 둔 값들을 서로 비교해 몰랐던 것을 알아냅니다. 지난주와 비교하고, 옆 화분과 비교하고, 반복되는 모양을 찾습니다.
비교해서 알아낸 사실이 나옵니다. 값이 하나뿐이면 아예 할 수 없습니다.
구분하는 물음: 값이 하나뿐이어도 할 수 있는가
「312를 30으로 바꾸기」는 값이 하나뿐이어도 됩니다. 그래서 처리입니다. 「나흘째 낮아지고 있다」는 값이 하나뿐이면 말할 수 없습니다. 그래서 분석입니다. 헷갈릴 때는 이 물음 하나로 구분해 보세요.
순서를 바꿀 수 없는 까닭도 여기서 나옵니다. 정리하지 않은 값끼리는 비교할 수가 없습니다. 어떤 값은 0에서 1023까지고 어떤 값은 0에서 100까지인데 그대로 비교하면 엉뚱한 결론이 나옵니다. 처리가 먼저 와야 분석이 가능합니다.
「센서가 보낸 값 가운데 −40처럼 있을 수 없는 값을 버린다」는 처리일까요, 분석일까요? 구분하는 물음에 넣어 판단해 보세요.
되돌아오는 고리
다섯 단계를 한 줄로 늘어놓으면 5단계에서 끝나는 것처럼 보입니다. 그런데 시뮬레이션의 마지막 단계를 다시 보세요. 사람에게 알림을 보내는 것과 함께, 장치에게도 신호가 갔습니다. 「30분마다 측정하던 것을 10분마다 측정하라」는 신호입니다.
이 신호를 받은 장치는 다음번 1단계를 달라진 조건으로 시작합니다. 그러니 다섯 단계는 직선이 아니라 고리입니다.
돌아온 결과가 다음 수집을 바꾸는 방식은 여러 가지입니다.
| 바뀌는 것 | 보기 | 그렇게 하는 이유 |
|---|---|---|
| 측정하는 간격 | 평소에는 30분마다, 마르기 시작하면 10분마다 | 중요한 때만 촘촘히 측정하면 전력을 아낄 수 있다 |
| 측정하는 범위 | 평소에는 흙의 물기만, 이상하면 온도까지 함께 | 원인을 찾으려면 다른 값이 함께 필요하다 |
| 보내는 기준 | 값이 크게 달라졌을 때만 보내기 | 같은 값을 반복해 보내는 것은 낭비다 |
고리는 잘못도 함께 돌립니다
고리라는 것은 결과가 다시 입력이 된다는 뜻입니다. 좋은 판단만 도는 것이 아니라 잘못된 판단도 함께 돕니다. 센서가 들려서 실제보다 마른 값을 보내면, 분석은 「마르고 있다」고 판단하고, 그 결과로 더 자주 측정하라고 시킵니다. 그러면 잘못된 값이 더 많이 쌓여 판단이 더 굳어집니다. 그래서 고리가 있는 시스템에서는 중간에 사람이 살펴보는 단계를 남겨 두는 것이 중요합니다.
「값이 크게 달라졌을 때만 보낸다」로 바꾸면 전력을 아낄 수 있지만, 잃는 것도 있습니다. 무엇을 잃게 될까요?
분석이 똑똑해지면
지금까지 본 분석은 사람이 미리 적어 둔 기준을 따랐습니다. 「사흘 내리 20보다 낮으면 마른 것으로 본다」 같은 식입니다. 이런 기준은 명확하고, 왜 그런 판단이 나왔는지 사람이 추적할 수 있습니다.
그런데 기준을 사람이 다 적을 수 없는 경우가 있습니다. 자율주행 자동차가 앞의 것이 사람인지 그림자인지 구별하는 일이 그렇습니다. 「이런 모양이면 사람」이라고 적어 두려 해도, 자세와 옷과 빛에 따라 모양이 끝없이 달라져 다 적을 수가 없습니다. 이럴 때는 기준을 적어 주는 대신 많은 예를 보여 주고 스스로 기준을 찾게 합니다. 이렇게 예에서 기준을 찾는 방법이 기계학습이고, 오늘날 인공지능이 가장 많이 쓰는 방법입니다.
사물지능융합기술(AIoT, AI of Things)
사물 인터넷의 분석 단계를 인공지능이 맡는 것을 가리켜 사물지능융합기술이라고 부릅니다. 나머지 단계는 달라지지 않습니다. 센서가 측정하고, 네트워크로 보내고, 정리해 쌓아 두고, 결과를 활용하는 일은 그대로입니다. 「쌓인 값에서 무엇을 이끌어낼 것인가」를 정하는 방식만 바뀝니다.
사람이 기준을 적어 줄 때
- 왜 그렇게 판단했는지 추적할 수 있다
- 기준이 틀렸으면 그 줄을 고치면 된다
- 적을 수 없을 만큼 복잡한 일에는 쓸 수 없다
기계가 예에서 기준을 찾을 때
- 사람이 적기 어려운 일도 다룰 수 있다
- 왜 그렇게 판단했는지 추적하기 어려운 경우가 많다
- 보여 준 예가 치우쳐 있으면 판단도 치우친다
더 나은 쪽이 정해져 있지 않습니다
화분에 물을 줄 때를 정하는 일이라면 기준 한 줄로 충분합니다. 인공지능을 붙일 이유가 없습니다. 반대로 앞의 것이 사람인지 구별하는 일이라면 기준을 적는 방식으로는 다루기 어렵습니다. 일의 성격이 어느 쪽을 쓸지 정합니다. 다만 어느 쪽이든, 판단이 틀렸을 때 무슨 일이 벌어지는지를 먼저 헤아려 두어야 한다는 점은 같습니다. 추적하기 어려운 방식일수록 틀렸을 때 고치기도 어렵습니다.
여기까지가 사물 인터넷이 어떻게 동작하는가입니다.
「비닐하우스의 창을 언제 열지 정하는 일」은 어느 방식이 어울릴까요? 그렇게 생각한 이유를 「사람이 기준을 적어 줄 때」와 「기계가 예에서 기준을 찾을 때」 두 상자의 항목에서 찾아 적어 보세요.
핵심 정리
다섯 단계
- 수집 → 전송 → 처리 → 분석 → 활용의 차례로 데이터가 지나간다.
- 단계는 일의 차례이지 장소의 목록이 아니다. 여러 단계가 한곳에서 일어나기도 한다.
- 어디에서 하든 차례를 건너뛸 수는 없다.
처리와 분석의 구별
- 값이 하나뿐이어도 할 수 있으면 처리, 여럿을 비교해야 하면 분석이다.
- 정리하지 않은 값끼리는 비교할 수 없으므로 처리가 먼저 와야 한다.
- 같은 숫자에 비교할 대상이 붙으면서 뜻이 자란다.
되돌아오는 고리
- 활용의 결과가 다시 수집을 바꾼다. 측정하는 간격 · 범위 · 보내는 기준이 달라진다.
- 고리는 잘못된 판단도 함께 돌리므로, 사람이 살펴보는 단계를 남겨 두어야 한다.
분석을 인공지능이 맡을 때
- 사물지능융합기술은 다섯 단계 가운데 분석의 방식만 바꾼 것이다.
- 사람이 기준을 적기 어려운 일에 쓰지만, 왜 그렇게 판단했는지 추적하기 어려운 경우가 많다.
- 일의 성격이 어느 방식을 쓸지 정한다. 늘 인공지능이 나은 것은 아니다.
확인 퀴즈
배운 내용을 확인해 봅시다.
「센서가 보낸 0–1023 사이의 값을 0–100 사이로 옮긴다」는 몇 단계에 해당할까요?
화분을 오늘 처음 설치해 어제까지의 기록이 하나도 없습니다. 가장 먼저 막히는 단계는?
다섯 단계를 직선이 아니라 고리로 그리는 까닭은?
사물지능융합기술에 대한 설명으로 알맞은 것은?