생활코딩

Coding Everybody

코스 전체목록

닫기

머신러닝머신

 


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

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

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

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


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

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

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



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

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


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

여러분의 막막함을 덜어드리기 위해서
머신러닝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. 해킹잘하고싶어요ㅎ
    완료 2020 10 31
  2. 엄석준
    대박이에요!!
  3. 완료!
  4. eu1357
    완료
  5. 태후니
    재밌어요 ^^
  6. KaraMom
    http://ml-app.yah.ac/ 의 블록중 '도로교통시스템'이나 '국가행정시스템'은 어떻게 사용하나요?
  7. 까미콧구멍
    오호
  8. 핸드폰으로 샘플 모델 작동되는거 같아서 해봤어요~~!!
    수정도 되고 하는데, 손톱 자세가 잘 인식은 안 되더라고요....
    아마 모델 생성시 사람이 달라서 그런가 생각이 드네요. 또 제 방에 배경 때문인가 싶기도 하고요. ㅎㅎ

    신기하게 핸드폰 90도로 돌려서 하니깐 계속 정상 뜨는데, 다른 자세로 인식하나봐요. ㅋㅋ
  9. BshoWon
    재밌어요. 감사합니다
  10. 대맛초
    완료완료
  11. 문곰
    신기해요. 그리고 또 신기해요
  12. 문곰
    신기해요. 그리고 또 신기해요
  13. 눈오리
    정말 신기하고 재미있어요!!ㅎㅎ
  14. 조원배
    완료
  15. 유갱05
    완료
  16. 문지성
    완료
  17. woobin1107
    완료
  18. Dennis
    손톱 깨무는 사진 모델기반 습관교정앱 완료!
  19. 철종
    잼써요
  20. popinbompin
    와우
  21. Jungmin Ahn
    완료^^
  22. 이인규
    완료 08/28 22:20
    머야 너무 재밋자나 !
  23. Follower
    완료!
  24. 디자인베이스
    수강 완료! 감사합니다.
  25. Tae Hwan Yoon
    완료!
  26. 더맨더머
    완료
  27. 지식탐구자
    완료
  28. 지식탐구자
    완료
  29. Helena
    학습 완료
  30. 은하파파
    완료 2020-08-26
  31. 패니군
    프로그래머!!
  32. 완료
  33. 다자매아빠
    와우~~~ >.<=b
  34. 박종희
    완료 와우!!
  35. 8/25
  36. zi존코딩
    놀라워요~~~
  37. 놀라워요~
  38. 쟝이
    와우 와우 백만번!!
  39. swlim9269
    손톱!손톱! 완료 !
  40. 강정현
    코딩 걱정까지 덜어주시는 이런 착하신 분들!
  41. Chococream
    머신러닝이 이렇게 재밌다니!
  42. JunOh Lee
    나도 오늘부터 프로그래머!
  43. 조똥
    쉽게 가르치기 위한 노력 감사드립니다.
  44. 저기요
    완료
  45. Claire
    와우!! 무엇을 또 만들수 있을지 기대됩니다!
  46. byoonn
    놀랍습니다
  47. 심규영
    완료
  48. kinigre
    완료
  49. everfree
    완료
  50. yahyah
    완료
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기