본문 바로가기

TechTrend

(7)
MediaPipe와 Tensorflow.js로 브라우저에서 홍채인식하기 본 게시글은 구글 소프트웨어 엔지니어 Ann Yuan 과 Andrey Vakunov의 포스팅을 번역하였습니다. 홍채인식은 다양한 분야에서 사용된다. 예를 들면 신체기능중 일부가 본래의 기능을 못하게 된 사람들을 위한 손이 필요없는 인터페이스나, 단순한 클릭이나 제스쳐를 넘어서 사용자의 행동을 이해하려는 시도에도 적용된다. 그래서 홍채인식은 컴퓨터비전의 숙제이기도 하다. 눈은 밝은 조명 아래에 있을 때도 있고, 종종 머리카락에 가려질 때도 있고, 단지 머리를 움직이기나, 또는 감정상태에 의해 움직여지는 것도 매번 다르게 인식될 수가 있다. 여기에 대한 해결책은 특별히 설계된 하드웨어에 의존하거나, 지나치게 비싼 장비를 준비하는 것뿐이다. 이러한 접근방식은 컴퓨터 리소스가 제한된 모바일 장치에는 적합하지 않..
Mac에서 TensorFlow 가속화하기 본 게시글은 Pankaj Kanwar와 Fred Alcober의 포스팅을 번역하였습니다. TensorFlow 2를 사용하면 다양한 플랫폼, 기기 및 하드웨어에 대한 동급 최고의 기계학습 성능을 통해 개발자, 엔지니어, 연구원들이 본인이 선호하는 플랫폼에서 작업 할 수 있다. 이제 Apple의 새로운 M1 칩 기반의 Mac 또는 Intel Mac의 TensorFlow 사용자는 TensorFlow의 Mac-optimized version of TensorFlow 2.4와 Apple의 새로운 ML Compute 프레임 워크를 사용하여 가속화된 머신러닝을 경험할 수 있다. 이러한 개선 사항은 TensorFlow Lite를 통해 iOS에서 TensorFlow를 통해 개발하는 Apple 개발자분들의 노고에 힘입어,..
JavaScript에서도 pandas 같은 라이브러리를? Danfo.js를 소개합니다. 본 게시글은 독립 연구원 Rising Odegua, 나이지리아 데이터 과학자 Stephen Oni의 포스팅을 번역하였습니다. Danfo.js는 구조화된 데이터를 조작하고 처리할 수 있는 직관적이고 사용하기 쉬운 고성능 데이터구조를 제공하는 오픈 소스 JavaScript 라이브러리다. Danfo.js는 Python Pandas 라이브러리에서 크게 영감을 받았으며 유사한 인터페이스와 API를 제공한다. 이는, Pandas API에 익숙하고 JavaScript를 알고있는 사용자가 쉽게 선택할 수 있음을 의미한다. Danfo.js의 주요 목표 중 하나는 JavaScript 개발자에게 데이터처리, 기계학습 및 AI 도구를 제공하는 것이다. 이는 근본적으로 웹에 머신러닝을 가져온 TensorFlow.js 팀의 비전..
Teachable Machine과 TFLite를 활용한 음성인식 모델 만들기 본 게시글은 TensorFlow 개발자 Khanh LeViet에 의해 포스팅된 글을 번역하였습니다. 음성 분류는 강아지 짖는 소리, 자동차 경적 소리와 같이 미리 정해놓은 카테고리에 분류할 몇몇 소리들을 넣어주어야 하는 머신러닝 작업이다. 예시로는 불법적으로 삼림을 불태우는 활동을 감지한다거나, 고래의 자연스러운 행동을 더 잘 이해하기위해 울음소리를 추적하는 등의 프로그램들이 많이 있다. 우리는 'Teachable Machine'으로 음성 분류모델을 학습시키고, TFLite 형식으로 추출할 수 있다는 소식을 전하게 되어 기쁘다. 이제 모바일앱이나 IoT디바이스에 TFLite 모델을 적용시킬 수 있다. 이 방법은 음성 분류를 빠르게 만들어 실행시켜 볼 수 있는 정말 쉬운 방법이다. 또, 만든 모델을 파이썬..
Tensorflow.js 사용하기(Part.3) TensorFlow.js 사용하기(Part.3) Transfer Learning 이전 파트에서 우리는 밑바닥부터 모델을 학습시켜야했다. 이는 모델이 일정 수준에 이르기까지 많은 반복 학습이 요구되기 때문에 비용이 많이 든다. 따라서 이번에 mobilenet이라 불리는 미리 조금 학습된 모델을 사용한다. mobilenet은 모바일에서 동작하도록 최적화되어 있으며 미리 가중치가 조금 세팅되어있는 CNN이다. 또한 ImageNet프로젝트에 나오는 1,000개의 클래스에 대한 이미지들로 학습되었다. 이제 모델을 로드해보자. const mobilenet = await tf.loadLayersModel( 'https://storage.googleapis.com/tfjs-models/tfjs/mobilenet_v1_..
TensorFlow.js 사용하기(Part.2) TensorFlow.js 사용하기(Part.2) CNN Model 머신러닝을 위해서는 그래프생성에 대해 알아야하는데 이는 컴퓨터 공학에서 말하는 노드와 엣지로 구성되어있고 노드에 연산, 변수, 상수등을 정의하고 노드들간의 연결인 엣지를 통해 실제 텐서를 주고 받으면서 연산을 수행하게 되는데 TensorFlow.js는 이를 스스로 생성해주므로 이전 글에서와 같이 layer와 optimizer와 compile만 정의해주면 된다. "컴파일??" 인공지능에서 이야기하는 '컴파일'이라는 단어는 기계어나 바이트코드로의 번역을 뜻하는 것이 아니라 모델이 효과적으로 학습하도록 여러 값들을 설정하고 역전파를 위한 오차함수를 결정하면서 학습할 준비를 모두 마치는 것을 의미한다. 이제 레이어를 정의 하기에 앞서 도식화된 다..
TensorFlow.js 사용하기(Part.1) TensorFlow Python 버전은 한국자료가 많지만 Javascript 버전은 많이 사용하지 않아서 텐서플로우 공식홈페이지에 기재되어있는 블로그를 직접 테스트하고 번역하려한다. 원본 글을 보려면 아래 링크를 클릭. https://blog.tensorflow.org/2018/04/a-gentle-introduction-to-tensorflowjs.html A Gentle Introduction to TensorFlow.js blog.tensorflow.org 시작하기에 앞서 본 글은 18년 4월에 게시되었기때문에 패키지를 최신버전으로 설치해야한다. 텐서플로우 자바스크립트버전을 사용하려면 대표적으로 두 가지 방법이 있는데 하나는 브라우저단에서 설치하는 것이고 하나는 노드의 패키지매니저를 통해 설치하는 ..