2022/11 8

RC Car 블루투스 조종기 앱 인벤터 코딩

1. 앱 인벤터 열기 클라우드 소프트웨어인 앱 인벤터는 구글 로그인 후 MIT app inventor 로 검색하여 홈페이지를 열자. 과거와 달리 이제는 안드로이드 폰 만 아니라 아이폰도 된다고 명시되어 있다. 안드로이드 폰의 경우 Play Store에서 벌집모양의 로고를 가진 앱을 미리 다운받아 둔다. 아이폰도 마찬가지다. 앱 작성을 시작하기 위해서는 Create Apps! 버튼을 클릭하여 클라우드 IDE 를 열도록 한다. 2. 새프로젝트 시작 처음열어보는 사용자는 아래와 같이 기존 사용자와는 달리 당연히 저장된 파일들이 없을 것이다. Start new project 버튼을 클릭하여 새로운 앱(알고리듬)을 발명해 보도록 하자. 발명되는 알고리듬 자체는 지적재산이지만 반드시 실용적인 응용이 있어야 특허 출..

아두이노 RC Car 블루투스 제어 키보드 앱인벤터 앱 설치

최근 앱인벤터에서 RC Car 제어 앱인벤터 앱을 설치해 보니 Need android permission BLU ... 에러가 발생한다. 과거에 작성한 앱인벤터 코드가 현재에는 정확하게 설치가 되지 안ㄹ는 문제가 발생했다. 아무래도 앱인벤터 주최측의 업그레이드가 시원치 않다는 잠정적인 견해를 가질 수 밖에 없다. 따라서 과거에 작성한 BTRCCAR.apk 파일을 USB로부터 받아서 PC 의 구글 NDRIVE에 넣게 되면 자신의 안드로이드 폰의 NDRIVE에서도 공유할 수 있다. 안드로이드스마트폰의 Play Store 에서 구글 NDRIVE 를 설치한 후 열어보면 BTRCCAR.apk 가 있음을 확인할 수 있다. 이 파일을 꾸~욱 누르면 앱 설치가 시작된다.

아두이노 RC Car 블루투스 제어 키보드 앱인벤터 앱 설치 버그 발생

최근 앱인벤터에서 RC Car 제어 앱인벤터 앱을 설치해 보니 Need android permission BLU ... 에러가 발생한다. 과거에 작성한 앱인벤터 코드가 현재에는 정확하게 설치가 되지 않는 문제가 발생했다. 아무래도 안드로이드폰 제조사나 또는 앱인벤터 주최측의 업그레이드가 시원치 않다는 잠정적인 견해를 가질 수 밖에 없다. ※ 또 다른 객관적인 증거로는 안드로이드 스튜디오에서는 최근 업그레이 IDE에서 버전 업을 통해 블루투스 코드가 제대로 작동된다는 점이다. https://ejleep1.tistory.com/1291 안드로이드 스튜디오 Java Version 1.8에서 11 로 수정 인터넷에서 다운받은 예전의 안드로이드 코드를 오픈하여 실행할 경우 안드로이드 스튜디오 설치과정에서 특정 버..

Information Bit Number 및 Entropy 계산

머신러닝의 다양한 학습법들이 물리학이라든지 또는 정보과학에서 유래되었다는 점에 유의하자. 입자들의 볼츠만 확률분포가 차용되어 TensorFlow의 softmax에서 사용된다는 점도 그중의 하나일 것이다. 1948년 MIT에서 정보과학의 기초를 닦았던 Claude Shannon 교수의 통신에 대한 기본이론을 통해서 정보(information)의 비트수 계산법과 머신러닝 분야에서 엔트로피에의 응용에 대해서 알아보자. 랜덤 변수 X 의 가능한 값들이 A, B, C, D 일때 다음의 문자열 메시지 “BAACACCDDCDADABCDBBB…” 의 철자별 출현 빈도수의 확률로 분석해 보자. 이 문자열 데이터를 ‘0’과 ‘1’을 사용하면서 엔코딩하려면 각 문자별로 다음과 같이 각 2비트를 사용하여 엔코딩 할 수 있을 ..

통계역학의 볼츠만 확률분포와 엔트로피

열역학(Thermodynamics)에서 Thermo 란 열을 뜻하며 dynamics는 변동을 뜻한다. 즉 열역학이란 시스템의 열적 변화를 따져보는 것이 된다. 열역학적 Control Volume 이 잘 정의된 시스템의 경계를 통해 열출입 ∆Q 가 일어나게 되면 아울러 내부의 압력 변동에 따라 Control Volume 의 변동에 따라 일(Work) ∆W 가 행해진다. 특히 Control Volume 경게를 통한 열출입 ∆Q=0 이면서 일 ∆W=0 인 이상기체의 물리적 상태를 고려해보기로 한다. 1800년대 후반에 볼츠만은 미시적인 원자나 분자의 물성이 물질의 거시적인 상태에서의 물성과 어떤 관계에 있는지를 깊이 고찰하여 물리학에서 통계역학의 토대를 쌓았으며 그의 대표적인 아이디어가 바로 볼츠만 분포와 엔..

TensorFlow solution of x - 1.12345 = 0

머신 러닝 연구가 아무리 첨단을 간다 해도 머신 러닝이 그렇게 대단한 툴이라면 이 정도 간단한 문제는 당연히 풀 수 있어야 하겠지. 항상 어려운 어렵고 난해한 문제만 쫓아 다니다 보니 x – 1.12345 = 0 과 같이 우스울 정도로 쉬운 문제를 어떻게 코딩해야 할지 해보기 전에는 막막하다는 생각이 들기도 한다. 물론 머신 러닝이 컴퓨터에 인스톨되기 때문에 기본적인 덧셈, 뺄셈, 곱셈, 나눗셈의 4칙 연산이 가능하므로 양변에 1.12345를 한번 더해주면 끝나는 간단한 문제이지만 이 방법에 의해서 푼다면 그것은 머신 러닝이라 할 수는 없다. 머신 러닝의 특징이 과연 무엇인가? 데이터 학습, random number 생성에 의한 웨이트와 바이아스 설정, hypothesis 설정, 경사하강법 적용 및 웨이..

신경망(Neural Network) 연구의 역사

1. Principal Component Analysis, 1901년 통계학의 Pearson 분포로 유명한 Karl Pearson 이 제시한 차원 감축(Dimension Reduction) 분류 이론인 PCA(Principal component analysis) 기법은 사실상 기계공학 분야에서도 재료역학의 평면응력 텐서 변환을 다루는 Mohr’s Circle 이론을 차용했음을 밝히고 있다. 가장 오래된 머신러닝 이론이기도 하다. 다음 그래프의 수많은 점 데이터는 (x, y) 좌표계에서 2차원 분포를 하고 있지만 선형 변환에 의해 (PC1, PC2) 조표계로 변화하면, PC1 축을 따른 변화량 또는 분산 값이 최대이며 반면에 PC2 축 기준으로는 변화량이 최소화되는 축이기도 하다. 따라서 주축 PC1을 기..

Wine 데이터와 PCA(Principal Component Analysis) 처리

codingart (66)in #kr • 3년 전 (edited) 2차원 평면상에서 타원 내부에 위치하고 있는 2차원 데이터들을 관찰해 보자. 이 데이터들은 서로 수직하는 장축과 단축으로 이루어지는 타원 영역 내에 위치하고 있다. 이와 같이 분포하고 있는 데이터들의 분산 값이 최대가 될 수 있는 축들을 주축(Principal Axes)이라 하며 위의 2차원 분포에서는 2개의 서로 수직한 주축을 찾아낼 수 있는데 하나는 장축이 되며 다른 하나는 단축이 된다. 통계학적 측면에서 타원의 주축들은 분산 값에 대응한다. 즉 데이터들의 평균이 얻어지면 (데이타-평균)의 제곱 값을 합산하여 분산 값이 최대가 될 수 있는 두 개의 축을 찾을 수 있다. 이런 경우에 (데이타-평균) 값들로 매트릭스를 형성하여 그 Tran..