생활코딩

Coding Everybody

머신러닝머신

토픽 생활코딩 > 데이터 과학 > 머신러닝1

 


머신러닝이 놀라운 기술이라는 것은 알겠죠?

그런데 아무리 놀라운 기술이라도
그것을 이용하지 않으면 그냥 신기한 것에 불과할 것입니다.

이제부터 우리는 학습자가 아니라
공학자가 되어봅시다.

신기한 것에 만족하지 말고
유용한 것에 도전해봅시다.


우선, 머신러닝을 통해서
할 수 있는 수많은 일 중 하나를 해보겠습니다.

머신러닝으로 할 수 있는 사례를 체험해 보고 나면
여러분들도 머신러닝으로 할 수 있는 일들을
상상하기 시작할 것입니다.
 

우리가 꿈꾸는 것을 먼저 생각해봅시다.



손톱을 깨물면 화면에
‘그 손 당장 내려놔’라는 메시지가 표시되고,
큰 소리로 외치는 앱을 만들고 싶습니다.

손톱을 깨물지 않으면
칭찬하는 메시지가 화면에 표시되면 더 좋겠군요.


이런 앱을 만들려면 어떻게 해야 할까요?

여러분의 막막함을 덜어드리기 위해서
머신러닝1 제작팀에서
머신러닝머신이라는 것을 만들었습니다.


http://ml-app.yah.ac/ 에 방문해보세요.



이 서비스는 Teachable Machine에서
생성한 모델을 이용해서
애플리케이션을 만들어주는 서비스입니다.

Teachable Machine에서 다운로드한 모델 파일을
이 서비스로 업로드 해보겠습니다.

모델 파일(model.json, weights.bin, metadata.json)을
모두 선택한 후에 화면으로 마우스 포인터를 끌어옵니다.

마우스 버튼을 놓으면 이 파일들이 업로드 됩니다.


업로드가 끝나면 아래와 같이
손톱과 정상이라는 블록이 화면에 표시됩니다.



진도를 나가기 전에 5분 간 이 화면을 관찰해보세요.

손 동작에 따라서 %의 값이 달라집니다.
머신러닝을 이용하면 손톱을 깨물고 있는지 여부를
간단한 숫자로 표현할 수 있게 됩니다.

숫자로 표현할 수 있게 되면 비교가 가능해집니다.
비교를 할 수 있으면 선택이 수월해집니다.

손톱과 정상에 표시되는 숫자를 잘 관찰해보세요.



위의 그림에 따르면 현재 손톱을 깨물고 있을 확률이95%,
그렇지 않을 확률이 5%라는 것을 알 수 있습니다.
두 개의 확률을 더하면 100%가 됩니다.


우리가 학습시킨 컴퓨터는
손톱을 깨물고 있지 않을 확률을 더 높이 보고 있네요.

이제 해야 할 일은 무엇인가요?
컴퓨터에게 이렇게 시켜야 합니다.

“컴퓨터야! 
손톱을 깨물고 있을 확률이 80% 이상일 때
‘손톱'이라고 화면에 표시하고, 소리쳐!"
 



“컴퓨터야!
손톱을 깨물고 있지 않을 확률이 20% 이상일 때
‘잘 했어요~’라고 화면에 표시해!”
 

손톱을 깨물고 있는 것이 확실할 때
경고를 하기 위해서 80%를 사용하기로 했습니다.

경고를 너무 자주하면 성가시게 느껴질 수 있거든요.

우선 아래와 같이 손톱 쪽의 빈칸에 80이라고 적고,
정상 쪽의 빈칸에는 20이라고 적습니다.

그리고 손톱 블록의 홈 안에 쓰기 블록을 끼워 넣습니다.

블록 안에는 ‘손톱'이라는 메시지를 적습니다.

이렇게 하면 손톱을 깨물고 있을 확률이 80% 이상일 때,

‘손톱’이라는 글씨가 화면에 표시됩니다.
“손톱”이라는 목소리도 나오면 좋겠네요.


그럼 아래처럼 말하기 블록을 홈에 끼워 넣고,
‘손톱'이라고 적어주면 컴퓨터가 소리를 내줍니다.

사용 중인 브라우저가 오래된 것이라면
동작하지 않을 수 있습니다.

최신 브라우저로 바꿔보세요.

정상일 때도 동작하게 하고 싶다면,

아래와 같이 정상 블록에 필요한 블록을 끼워 넣습니다.

이렇게 하면 확률에 따라서

컴퓨터가 해야 할 일을 결정할 수 있습니다.





! ! !

놀랍죠?
놀라워야 합니다!
놀랍지 않다면 자기 손해입니다.

두 번 놀라워하세요.
계속 놀라워하세요.


우리는 손톱을 깨물었는지를 판단해주는 모델을
응용해서 습관을 교정하는
애플리케이션(앱) 또는 프로그램이라는 것을 만든 것입니다.

이제 여러분도 프로그래머입니다.

댓글

댓글 본문
  1. tsukeman
    진짜 신기하네요! 완료!
  2. Demian
  3. 쿠션머리
    20230202 완료
  4. 강철무지개
    완료했습니다.
  5. 킴해롤
    20240202 시청완료~ 신기신기
  6. nathan
    2024.02.02 - 완료
  7. 커비커비
    2024.01.19 - 완료
  8. labis98
    20231226 시작합니다.
  9. 시아네스
    231020.
  10. 코딩두
    23.07.23 이해하기 쉬운 어플
  11. 쿡보라
    App까지... ! 감사합니다~~!!!
  12. fane
    웃는 얼굴과 무표정인 얼굴로 나눠 프로그램 해보았습니다.
    무표정일 때는 스마일이라고 말하도록 칸을 넣었는데 영상보면서 표정을 풀 때마다 들리는 것이 재밌었습니다.
  13. Najim
    완료
  14. 소나무55
    완료
  15. 파인만
    22.08.06
  16. 미르
    22.8.4
  17. apple
    우리가 만든건 아니고 만들어진걸 보기만 한거죠..
  18. kwaife
    완료
  19. 솔나무
    와우
  20. 파괴왕파파괴
    흥미롭네요!
  21. 문주홍
    완료
  22. 라비린토스
    완료
  23. 대광어
    너무 재밌습니다.
  24. Ju-won Lee
    완료
  25. 독수리500타
    완이욥
  26. 당근
    완료!!
  27. 대니얼
    완료!
  28. H0-chan
    완료
  29. Jena
    완료
  30. 찌람
    완료했습니다!! 스크래치 코딩처럼 만들어놓으셔서진짜 수월했어요!!
  31. Yu Han Noh
    완료
  32. 제스프리
    직접 실행해봤는데 재밌네요!
  33. 펭귄해
    완료
  34. 비야날다
    머신러닝을 적용을 위해 손수 앱까지 개발하시다니 감사합니다!! 완료!!
  35. 다은a
    완료
  36. 윤도기
    21/7/27 완료
  37. 레오나
    완료
  38. 늦은 학생
    완벽
  39. 최지원
    흠. 카메라 없는 PC에선 실습 못하네
  40. 곰하품
    재밌어용
  41. fladi
    진짜 재밌어요!! 사전지식도 없는데 너무 재밌게 따라하고 있습니다
  42. Yunkyeong Jang
    완료!
  43. HyeonHui Jeong
    완료
  44. Karen
    Shut up and Go
  45. 완료
  46. 이대현
    완료
  47. 카미유
    완료
  48. 네코네코
    완료
  49. midori
    짝짝!!
  50. SungChan Park
    완료!