インタラクションデザインの為のWeka入門

Wekaとはデータマイニングの為の機械学習アルゴリズムがまとめられたJavaソフトウェアの名称です. Wekaの本家サイトに詳細が 記載されています.すでにWekaに関しては充実したマニュアルがネットや書籍で多く見つかるかと思います. 基本的な利用方法はそれらを見れば十分です.ではこのページでは何を紹介するかというと, 加速度センサを利用したジェスチャ認識,LeapmotionやKinectを利用した姿勢認識等のユーザ操作をどのように 扱うことで正確な認識を実現できるか,これを検討する為にWekaを利用します.

ただしこのやり方はSIGCHI等のヒューマンコンピュータインタラクション系では一般的で, よく論文ではこのような利用のされかたをしています.一方でWekaチュートリアル等では対話設計に主眼をおいたサンプル があまりない為,このページではこのようなヒューマンインタフェースに応用した場合のWeka入門を紹介します. 一般的なwekaの入門書には個人的に,荒木雅弘著「フリーソフトではじめる機械学習入門」をお薦めします.

なおリアルタイムで処理するのを基本的なところからやってみたい,という方は本ウェブサイトの別ページ インタラクションデザインの為のパターン認識入門を学習してみてください.

例えばこんな研究でも使ってます

wekaは基本的にはデータマイニングツールですので,ここで紹介するインタラクションデザインの他,ビッグデータなどのデータ解析にも利用されています. ではインタラクションデザイン系では,一体どうのような使われ方をするのか,というので一例紹介します. Munehiko Sato, Ivan Poupyrev, and Chris Harrison. 2012. Touché: enhancing touch interaction on humans, screens, liquids, and everyday objects. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '12). ACM, New York, NY, USA, 483-492. DOI=10.1145/2207676.2207743 http://doi.acm.org/10.1145/2207676.2207743 では,ユーザの”触り方"を検知するデバイスTouchéに関する論文です.たくさんのメディアにも紹介されたので,知っている人もいるかもしれません. ユーザがデバイスに触れることで予め流入した周波数帯の変化を周波数解析し,その解析曲線をSVMによって入力識別しています.詳しくは論文や動画を参照してください. ここで著者らは学習データからデータ識別結果を論文中で概ね95%以上の識別結果(k-fold=12)を示しています.このことから,実際のリアルタイムアプリケーション においても,その手法確率や評価に関してwekaは近年頻繁に利用されています.この他機械学習アルゴリズムを実装した商用ソフトウェアもたくさんありますが, wekaはJava, freeという点で比較的多くのユーザに利用されているといえます.