マイニング探検会開発合宿@真鶴(第14回マイニング探検会)を開催しました
合宿3日間の概要
7/30, 31, 8/1の2泊3日で、マイニング探検会の合宿を開催しました。
今回の合宿では、ユーザサイドとエンジニアサイドが協力してプロダクトを
創り出す「共生プログラミング」の手法により、次のような目的で企画を行いました。
- 現場のソフトウェア開発に携わるプロのエンジニアと、ユーザ視点を持つマイタンメンバーとのマッチング
- ユーザ視点の発想(欲しいもの/作りたいもの)をクリアに言語化して、エンジニアに伝える技術の獲得
合宿当日にスムーズにマッチングを行い、作りたいものをクリアに伝えられるように、
あらかじめ、マイタンメンバーを4つのチームに分け、各チームごとに作りたいものを
プレゼンテーションにまとめていきました。
合宿では、マイニング探検会の開催に支援を頂いている株式会社ネクスト
リッテル研究所のエンジニアの方々にご参加頂き、マイタンメンバーは
ユーザサイドとして3日間を過ごしました。
4つのチーム
- 俺Niiチーム
- 理想の図書館つく
るったぜチーム - ゲームつくる系チーム
- 情報垂れ流し系チーム
最終日の相互評価では、「ゲームつくる系チーム」が優秀賞を、
「理想の図書館つくるったぜチーム」が、清田先生の特別賞を
それぞれ受賞しました。
合宿の各日のコンセプトは次の通りです。
- 1日目:オリエンテーション、チーム形成、アイデアのブラッシュアップ
- 2日目:集中開発からプロトタイプ完成
- 3日目:最終プレゼンテーションと相互評価
合宿の結果、全てのチームが2泊3日のなかで、
なんらかのプロトタイプまでたどり着くことができました。
合宿3日間のTwitterのようすはTogetterをご覧下さい
- マイニング探検会( #mitan )開発合宿@真鶴
- http://togetter.com/li/169146
また、参加者による記録は次のURLをご覧下さい。
- マイニング探検会 開発合宿@真鶴
- http://nagumonn.uhyohyo.pupu.jp/?eid=59
- マイタン合宿@真鶴に行ってきた
- http://blog.livedoor.jp/lib110ka/archives/52316275.html
以下は、各チームの報告です。
チーム報告
俺Niiチーム
チーム構成
日?崇・岡田圭介・山田俊幸、技術支援:清田陽司
作ったもの概要
学術論文を「国文学系のもののみ」に分類していくサイトづくり、
に端を発し、
「切り替え可能な「フィルタセット」による、
情報の立ち現れを楽しむサイト」を作成できないか?
という構想まで広げたのち、
根幹となる「ふわっとした抽出条件による分類を可能にする仕組み」
の実証実験および支援ツールの開発、を行った。
実験概要
「ある条件」に適合している論文集合 + していない論文集合
を判定材料として、
未知の論文集合を分析し、判定性能を検証。
- 分類エンジンにはSVM(Support Vector Machine)を利用
- 学習モデル作成の一連の流れを支援するPerlラッパー「JFeature」を開発
- 人間があらかじめ論文の集合を選び、SVMに条件を学習させたのち、未知の論文群をSVMに分類させ、人間があらためて判定精度を検証した
結果考察
時間的制約から、前提条件の部分をかなり大雑把に処理したにもかかわらず、
未知の論文1000件(うち、人間がpositiveと判断したもの31件)を処理した結果、
上位100位の集合にそれらの80%が出現。
つまり、
「欲しいものが疎らにちらばっている集合」から、「欲しいものがかなりの濃度でまとまっている集合」が抽出できた
将来プラン
CiNii API 活用の一助として「ふわっとした分類を可能にする、SVMを簡単に使えるPerl ラッパー」パッケージの配布・普及促進、ということが考えられる。
理想の図書館サイトをつくるったぜチーム
チーム構成
嶋田綾子・南雲知也・関戸麻衣、技術支援:太田飛鳥
作ったもの概要
リアルな図書館のように、何かを探しているわけではないユーザも「ふらっと来ても何かがみつかる」図書館サイトを作りました。
「マイタン図書館」
http://maitan-a.litteldev.net/
- トップページに旬のキーワードの関連資料を蔵書から自動表示
- リロードによりキーワード切り替え
- 他のキーワード候補も表示し、クリックで切り替え
- (計画)他の「リストパターン」にもランダムで切り替える
- 「リストパターン」としてはRSSのソース、またはキーワードリスト、資料リストを登録可能に。
仕組み
- ソースとなるRSS(ex.新聞社のニュースRSS)からキーワードを切り出す
- mecab、TermExtractを使用
- キーワードを選択
- カーリルローカルAPI(ドキュメント未公開)でその図書館の蔵書検索
- OPACのURLも取得
- 検索結果の件数により、件数の多いキーワード(一般的すぎる)、件数の少ないキーワードを省く
- 資料リストを提示
- ソース(RSS)の入力に対しある一つのキーワードの資料リスト+他のキーワードリスト、を出力する形でAPI化
- 図書館サイトで結果を取得して表示
- 指定されたRSSを取得し、キーワードリストを更新する機能もAPI化
特長
- 多くの図書館で使える拡張性
- カーリルローカルAPIを使用しているため、カーリルの図書館IDを設定するだけで他の図書館に対応可能。
- RSSの取り込み元ソースを変更可能。他の新聞社や、自治体サイト、はてなブックマークの特定タグのRSSなども。
- APIとして作成しているので、他の機能との組み合わせも考えられる。
- 公共図書館で実用に耐える運用性
- 自動で定期的にキーワードのアップデートを設定可能
- カーリルローカルにより図書館システム側での対応不要
- 管理者画面の作成を計画
将来プラン
- キーワードリスト登録機能の追加 ex. 今人気の作家(の本)
- 資料リスト登録機能の追加 ex.司書のおススメリスト
- 管理者画面の作成
- リストパターン(ソースRSSと更新頻度、キーワードリスト、資料リスト)の登録を可能に。
- キーワード抽出方法の調整。
- 今の抽出方法だと長い名詞が多くなるがヒット件数が少なくなりがち。
ゲームつくる系チーム!
チーム構成
三津石、外崎、技術支援:中塚
作ったもの概要
国立国会図書館のレファレンス協同データベースAPIを利用した図書館員スキルアップも図れるゲーム
- ゲームで遊びながらレファレンスに必要なキーワードやレファレンス資料を学習可能
- 学習達成率に応じてユーザーのレファレンスレベルアップ(モチベーションの維持)
- GWAPの仕組みによってレファ協のデータを拡張可能予定
ゲームの流れ
- OpenIDによる認証・認可
- ユーザページで遊ぶカテゴリを選択
- レファレンスの質問が表示される
- 関連するキーワードorレファレンスツールを選択
- レベルに応じた問題数を正解できればレベルアップ
今後の拡張可能性
- ゲーム性機能の拡充(難易度を高めモチベーションをアップ)
- 現在、連続正解数でクリアする仕組みに時間制限を追加
- 上級者の回答方法を選択式からキーインに変更
- GWAPの仕組みによりゲームを発展
- レジェンドによる対戦型ゲーム
- レジェンド同志が一致した回答はレファ協の回答外でも蓄積(⇒データ拡張へ)
情報垂れ流し系チーム
前田、嶋田、技術支援:吉次、宮下
作ったもの概要
書籍の紹介情報をPCフルスクリーンでリッチに垂れ流すアプリのプロトタイプ。
用途は次を想定。
- 自宅で寝転がりながら書籍情報のブラウジングを
- 書店店内での販売促進、図書館の利用促進用
開発作業
- アプリケーションのコアとなる箇所を詰めた上で開発
- 書籍のタイトルをもとにネットから「気のきいたセンテンス」を得る
- リッチに書籍情報を表示するための画面デザイン
- システム仕様の確定
- レイヤーの確定
- ユーザインタフェイス層とWeb・AP層との通信プロトコルを確定
- 今後の拡張をある程度想定したサーバ内データベースの設計
- 「気のきいたセンテンス」イメージの共有や文字数を確定
合宿期間内での実現内容
今後の拡張可能性
- 自然言語処理の知見を生かした「気のきいたセンテンス」取り出し
- 書籍の難易度判定とそのデザインへの反映
- PORTA,Amazon以外の情報源の活用
(Google Book Search API, 楽天ブックスAPI, 書評系RSS, Yahooブログ検索など)