본문 바로가기
Python/opentutorials(Machine Learning)

2. About Machine Learning

by Thinking 2021. 7. 16.

앞의 1번 글의 작업에 더해 추가적으로 나아가 다른 작업을 해볼 것입니다. 만약 손톱을 깨물면 화면에 '손톱'이라는 메시지가 표시되고 큰소리를 나게 하는 앱을 만드는 것입니다. https://ml-app.yah.ac 이 링크를 따라가면 아래 같은 그림을 볼 수 있습니다. 이 서비스는 Teachable Machine 에서 다운로드 한 모델 파일을 이용하여 애플리케이션을 만들어주는 서비스입니다.

1번 작업에서 만든 Model 을 저장했던 파일을 드래그하여 업로드합니다. 업로드가 끝나면 아래와 같은 화면이 나옵니다.

 

 

 

오른쪽 아래의 카메라를 따라 손 동작에 의해 % 값이 달라집니다. 숫자로 표현할 수 있게 되면 비교가 가능해집니다.
비교를 할 수 있으면 선택이 수월해집니다. 손톱과 정상의 수치를 합치면 100%이며, 위의 비교를 통해 선택을 하게 됩니다.

이제 수치 값에 따라 화면의 글 쓰기와 말하기를 추가할것입니다.

손톱 수치에는 위와 같이 80% 이상일 때 손톱이라고, 화면에 쓰게 하고 말하게 합니다. 반대로 정상에는 20% 이상일 때는 화면에 잘했어요 라는 문구가 뜨게 합니다. 이 작업은 우리가 손톱을 깨물었는지 판단해주는 모델을 응용해서 애플리케이션 또는 프로그램을 간단히 만들어 경험해 본 것입니다.

 

 

 

 프로그램애플리케이션은 같은 것을 가리키는 다른 표현입니다. 애플리케이션(application)은 한국어로 '응용'이라는 뜻입니다. 어떤 기능을 부품으로 사용해서 만든 완제품을 '애플리케이션'이라고 합니다. 부품을 응용한 것이라는 뜻인데 앞에 우리가 만든 것은 머신러닝의 모델이라는 부품을 응용해서 만든 소프트웨어입니다. 그런 점에서 머신러닝 애플리케이션이라고 할 수 있습니다. 

 과거에 음악회 같은 곳에서 시간에 따라 곡이 연주되는 순서를 프로그램이라 하였는데, '프로그램' 말 깊은 곳에는 '시간', '순서'라는 의미가 포함되어있습니다. 생각해보면 우리가 하는 모들 일들이 시간의 흐름에 따라서 순서대로 일어납니다. 앞서 만든 앱도 마찬가지입니다. 첫째로 손톱을 깨물었는지 아닌지 확인 후 이를 바탕으로 손톱을 깨물었다면 손톱이라는 글씨를 화면에 표시합니다. 그리고 '손톱'이라고 말을 출력시킵니다. 즉, 시간의 순서에 따라 동작하고 있는 것입니다. 그래서 이것을 프로그램이라고 합니다. 기계가 해야 할 일을 기계가 알아들을 수 있는 방식으로 순서대로 적으면 그것이 프로그램인 것입니다. 기계는 그것을 보고 해야 할 일을 순서대로 실행할 것입니다. 이런 프로그램 만드는 일을 '프로그래밍(programming)'이라고 합니다. 프로그램을 만다는 사람을 '프로그래머(programmer)'라고 합니다.

 

 요즘 시대에는 인터넷으로 사물을 제어한다는 의미에서 사물 인터넷(IOT, Internet of Things)라고 하는 기술이 많이 볼 수 있다. 머신러닝’을 도입하면 어떤 기능을 실행할 것인가 생각해보자. 만약 도입하게 되면 장치 스스로가 판단할 수 있게 됩니다. 장치에 연결된 여러 가지 센서들을 통해서 데이터를 수집한 후에 그 데이터의 의미를 ‘머신러닝’의 모델이 판단합니다. 그 판단 결과에 따라서 여러 가지 결정을 기계 스스로 있게 됩니다.

 간단하고 재밌는 실습을 하나 해보았는데 기술적인 한계는 고려하지 않습니다. 천천히 주변에서 일어나는 일을 떠올려 보고, 그중 왠지 머신러닝으로 해결할 수 있을 것 같은 문제를 찾아봅시다. 저도 하나 적어보았습니다. 여러분도 해보세요.

 나의 꿈을 표현하다 보면 언젠가 직접 구현하고 싶은 인생의 아이디어가 떠오를 수 있습니다. 그 아이디어를 찾는 것까지 노력하면 그다음부터는 노력하지 않아도 우리는 노력하지 않을까요!? :)

 

https://opentutorials.org/course/1

 

 

'Python > opentutorials(Machine Learning)' 카테고리의 다른 글

6. Finished Machine Learning  (0) 2021.07.20
5. Machine Learning Types  (0) 2021.07.19
4. Machine Learning Types  (0) 2021.07.18
3. Start Machine Learning  (0) 2021.07.17
1. About Machine Learning  (0) 2021.07.15