전체 글(113)
-
머신러닝 배워보자 (2) Decision Tree (Rule Based Learning)
kaist.edwith.org/machinelearning1_17/lecture/40603 카이스트 문일철 교수님의 인공지능 및 기계학습 개론 강의입니다. 인공지능 쪽은 정말 하나도 모르지만, 이걸로 시작해보기로 했습니다. 우선은 이해한 대로 쭉 기록해 두고, 배우면서 잘못 알고 있던 점은 수정하는 방식으로 글을 써보겠습니다. 1. Rule based learning 고전적인 머신 러닝의 방식 중 하나인 Rule based learning은 세상의 모든 현상은 특정한 시스템을 따르기 때문에 그 규칙을 습득하면 된다는 이론입니다. 문장으로 표현하면 'A, B, C, ... 면 Y다'라는 형식을 가집니다. 예를 들어 "점심을 안 먹었으면, 저녁을 일찍 먹는다"의 형식입니다. 이 이론은 몇 가지 전제를 가집니..
2021.02.08 -
머신러닝 배워보자 (1) MLE와 MAP
소프트웨어 전공을 한 사람이 머신러닝도 몰라서 되겠나? 라는 생각에 머신러닝 공부를 시작하게 됐습니다. 대학원생 정도까진 아니더라도 개념은 알아야 생각의 폭이 넓어지겠죠? 우선 친구한테 들을만한 강의를 추천받았습니다. kaist.edwith.org/machinelearning1_17/lecture/40603 카이스트 문일철 교수님의 인공지능 및 기계학습 개론 강의입니다. 인공지능 쪽은 정말 하나도 모르지만, 이걸로 시작해보기로 했습니다. 우선은 이해한 대로 쭉 기록해 두고, 배우면서 잘못 알고 있던 점은 수정하는 방식으로 글을 써보겠습니다. 1. 이항분포(Binomial Distribution) 이번 강좌의 MLE와 MAP는 사건이 이항분포를 가진다는 전제하에 이루어집니다. 이항분포는 이산적인 사건(ye..
2021.02.04 -
손으로 하는 테트리스 만들기 (3) SRS 시스템, 프로젝트 중단
아두이노 관련 내용을 대충 마무리 짓고 테트리스 만들기로 넘어갔습니다. 굉장히 많은 시행착오가 있었습니다. 처음엔 2차원 배열을 활용한 방식으로 하다가, 충돌처리를 쉽게 하기위해 collider로 충돌 체크를 하다가, 회전이 너무 까다로워서 어쩌지 망설이다가 테트리스 회전시스템인 SRS에 대해 알게됐습니다. 1. SRS 시스템 SRS 설명 링크 : tetris.wiki/Super_Rotation_System -문제 발생 제가 난항을 겪었던 부분이 피스마다 사이즈가 2*2, 3*3, 4*4로 다르다는 점이었습니다. 그래서 한 피스의 position을 결정짓고 그 점을 기준으로 회전시키는게 까다로웠습니다. 이렇게 중심점이 다 달랐습니다. 4*4 피스는 블록들의 경계선(꼭지점)에 있고, 3*3피스는 블록의 정..
2021.02.01 -
손으로 하는 테트리스 만들기 (2) 유니티로 옮기기
지난번에 이어서 이번에는 유니티로 옮기는 과정입니다. 1. ardity 설치 유니티에서 아두이노 데이터를 읽어오는 방법이 있는데, 시리얼 포트를 유니티가 사용할 수 있습니다. arduino 개발 툴에서 시리얼 모니터에 해당하는 기능이 있는 셈입니다. 이거를 편하게 해주는 게 바로 ardity입니다. ardity를 asset store에서 찾아서 받았습니다. Assets 폴더에 있는 Ardity\Scripts\Samples\SampleUserPolling_ReadWrite.cs와 Ardity\Scripts\SerialController.cs를 잘 보면 대충 감이 옵니다. (SampleUserPolling_ReadWrite만 봐도 될 것 같아요) -Serial Controller 우선 Serial Contr..
2021.01.20 -
손으로 하는 테트리스 만들기 (1) 자이로센서는 어려워
이번에 해볼 프로젝트는 손으로 하는 테트리스 만들기입니다. 최근에 아두이노를 처음 해보면서 되게 재밌다고 느껴져서 게임 컨트롤러를 만들기로 했습니다. 장갑에 자이로센서를 부착해서 손을 휘휘 흔들면서 테트리스를 할 수 있도록 만들 겁니다. 블록이 좌우로 움직이는 건 참참참 할 때 같은 동작으로 하고, 돌리는 건 병뚜껑 닫듯이 손을 돌리면 되게 할 겁니다. 이를 하기 위해 넘어야 할 산은 1. 자이로스코프 센서로 모션 인식하기 2. 인식한 데이터를 컴퓨터(Unity)로 옮기기 3. 자이로스코프를 손에 붙일 도구 만들기 4. 옮겨진 데이터를 제스쳐 (왼쪽, 오른쪽, 회전 등)으로 변환하기 5. 테트리스 만들기 가 있겠습니다. 1. 자이로스코프 예제 해석하기 사용한 아두이노는 아두이노 uno 보드와 MPU605..
2021.01.19