Archive for the ‘データマイニング班’ Category

「データマイニング班では週1回だけパスする権利があります」

火曜日, 10月 8th, 2013

m_201310081144265253718a65641

今日は学生実験以外の固定タスクはなかったので実験自体の準備、明日の懇談会準備に集中できるはずだったんですが、デザインスクール周りのネゴシエーション、情報共有、必要な手続きの仕方探し(おいおい)などでそこそこ時間取られてしまい疲れました。まる。

P.S.
明日の1年次懇談会(2時限目、321室)では自習部屋の使い方についての話し合いを予定しています。何かもの申したい人がいたら直接そこに来るか、當間or年次長ズまで伝えると良いんじゃないかと。月曜日にでもこっそり訪問する予定が台風で潰れて、今日も多忙で動けずだったので結果的に直接見れてないなぁ。明日始まる前に見れば良いという話もあるのだけど。


データマイニング班の1回目は以下のような中身でした。
  • (プレ)ガイダンス
  • shark (ssh/Mercurial), wiki編集用アカウント
  • 事例等ドキュメントの場所
    hg clone ssh://info3dm@shark//home/info3dm/HG/tnal/
  • 事例紹介: 電子マネー顧客分類(キーワード: 生データの変換, 正規化, 広告のための意思決定支援, セグメント分類, ルール抽出, 欠損値の推定)
  • 環境構築
  • Python演習 (30分): [ 公式チュートリアル | 補足 ]
  • 宿題: Python演習 (30分~)

概要/事例/他の人の発表を聞いてるだけじゃ暇だろうということで、キーワードなり文脈なりで気になる点があればどしどし突っ込んでいいよといってもなかなかしないことが多い。ということで私が指定して「これってどういうこと?」と他の人に質問しまくるという方式をとってます。ゼミに近いか。何となく分かってるつもりで使ってる用語が実は分かってないとか、コピペで済ましてるとか分かりやすいし、そういう点に気づけるという意味でもうまく機能しているんじゃないかと。週に1回だけパスできるんですが、今日は6人中4人?ぐらいがパスしたかな。一人がパスした途端他の人もパスしだしてそのまま1周して戻って来る、というケースが過去に一度だけありました。

学科的にオフィシャルな前期関連イベント終了

金曜日, 8月 9th, 2013

m_201308091256425204687a25dbe m_20130809130251520469ebe5834 m_2013080913200152046df1794e6

午前中は平良くん松田くんの個別ゼミで、これで2回目。当初想像していたことからズレてきている部分もあると思いますが、それ以上に「もやもやしていた部分」が少しずつ見えてきたかなという所。今後も目標とのマッチ具合やアプローチの適切さ具合を擦り合わせながらの前進になりますが、目標へのストーリーと目安になるサブ目標(当面の目標や次の目標、その次の目標、、、)が見えてくると歩きやすくなるよね。

私自身は半分ぐらいしか覗けていませんでしたが、プロジェクトデザイン最終発表会の皆さんはお疲れさまでした。修正や提出等残ってるタスクもあるかもしれませんが、一先ず前期授業に関係する主なタスクは終わったかと思います。個別にはギリギリ赤点な人らへの対応等もあるようですが、それはそれで頑張れw

お昼は姜先生とダブルデッカーまでデート。比較的昔から(私が学生の頃から)あって美味しいので有名かと思ってたんですが、場所的に「端っこ」にあることもあって知らなかったらしい。去年の進化計算班打ち上げで使った場所でもあるので現4年次には多分広まっているのだと想像。

データマイニング班の授業評価アンケートが公開されたらしい。総評としては大きな問題は無さげっぽいので、こちらの好き勝手にするかw 後期からまた大きなテコ入れをするか、一応年度単位では微調整の範疇で済ますかはも含めて。

反省点もあるけどデータマイニング班の発表会が終了

木曜日, 8月 8th, 2013

m_201308081253035203161f9f312 m_201308081303425203189e972d9 m_20130808130642520319528e6ef

今日は学生実験の発表会、打ち上げ(On Dish)、ミニゼミ(堀川くん)、期末テスト関連で他の先生から報告届いた学生への連絡エトセトラエトセトラ。打ち上げ挟んでたものの大分疲れた一日。

朝からやってたデータマイニング班の発表会が終わりました。終わったのは発表会だけで、成果物を整理して公開することや自己評価(内省)とか残ってますが、一番プレッシャーを感じるであろうタスクは終了ですね。一先ずお疲れさまでした。告知していたからか受講者から聞いてたのか他の人も聴講に来てましたが、どう感じたのか本当の所を聞いてみたかったw

データマイニング班としての発表会は今回が初ということもあり、どういう感じになるかは私自身楽しみでした。割と想像してた通りではありますが、比較的進んでる学生は改善にトライするところまで進めてたり、真逆に機械学習させるところまで持っていく所まで辿り着けなかった学生もいたり。指導する側の反省点or悩んでる点は以下の通り。

  • Pythonの勉強をチュートリアル丸投げっぱなしはNG(プログラミング苦手な人への指導はやはり必要)。
  • データセット/データ/サンプル/特徴ベクトル等々の用語を整理した説明が不足していた感(相手は機械学習についての知識はゼロ)。
  • 個々にプロジェクト活動し始める時期が遅すぎたかも(1ヶ月+αぐらい)。
  • 機械学習自体については「ツールとして使えるレベル」を想定してましたが、いくつか代表的or基本的なアルゴリズムを勉強&実装する方向とどちらが良いのかは今も悩み中。
  • 同様に「そもそもツールを機械学習に限定していいのか」も少し迷ってます(制約の意味でこれはそのまま続ける予定ですが)。

学生側がどう感じていたかは授業評価アンケート等で分かると思います。一応楽しんでいた学生はいたっぽい。

一方で、予想外にやって良かったと思う点は以下の通り。

  • Pythonを選択することで機械学習ツール(scikit-learn)、形態素解析ツール(mecab)等を同一環境/同一言語で利用できた点。
  • scikit-learnを選択した理由の一つに英語ドキュメントを読ませるという裏テーマがあったのですが、これは良かった。

On Dish では結果的に過半数がステーキ選択してたのかな? それだったら素直にステーキがおいしいお店を選んだ方が良かった気もするけど、そのお店をチョイスした人的にはアイス食べ放題に引かれていたのでこれで正解ではあったのでしょう。実際問題として本人は当然としてそれ以外の人も凄い食べまくって「これが若さか」とか思いながら眺めてましたし。

ちなみに土曜日は#xhago4(沖縄のエンジニアを熱くたぎらせる祭典の第4弾)があるらしい。1,2年次はプロジェクトデザイン最終発表会で体力使い果たしてるタイミングかもしれませんが、タイトルや概要を眺めてみて面白そうなものがあれば覗いてみると良いんじゃないかと。折角の機会なので、あとは自分で選択しないと。(べつにこれを絶対選べという訳じゃないけど、何も機会を活用しないのは勿体無いよという話)

データマイニング班の最終発表プログラムが確定

金曜日, 8月 2nd, 2013

m_2013080212065351fb224de8163 m_2013080215162651fb4eba44619 m_2013080217093051fb693aad856 m_2013080219453451fb8dce0b8ed

どこもかしこも期末試験やその対策なのか日中はTLが静かですね。データマイニング班の成果発表日プログラムがとりあえず確定しました。

実験3・データマイニング班最終発表
日時: 8/8(木), 10:00-12:00
会場: 5階会議室(予定)

10:00-10:03, 説明
10:05-10:22, 安楽匡晃, Twitteerで顔文字を見つけよう!
10:22-10:39, 比嘉健太, SVMを用いてツイートから顔文字を検出する
10:39-10:56, 松田朱子&稲嶺周平, Twitter上のテキスト文から分類器を用いて人名判定
10:56-11:13, 森田周作, 業務内容から見た企業の分類
11:13-11:30, 松茂良滉&増田憲亮, 教育上よろしくないツイートの分類
11:30-11:47, 大城美和, ツイート上での同一人物分類
11:47-11:55, アンケート等回収?

中身的には「機械学習ツール(scikit-learn)を使ってみよう」が実体に近い。やりたいタスクをどのように特徴ベクトルに落とし込み、データとして用意し、学習結果を眺めながらデータセットの構築し直し/教師データ増やし(正事例負事例増やし)/パラメータチューニングとか頑張ってくれてるようです。学生実験的には作業を繰り返すところまでは求めてなくて、一度自身が考えた方法で実験した結果を観察&考察するところまでやってくれたらGJ。途中段階でも構わないので、どういう問題にどう取り組もうとしたのか、どこまで手をつけれたのかを第三者に伝わるように発表してくれという形で要求しています。

データセットの生データがTwitterに偏りがちのようですが、これは研究室の堀川くんが研究用にnakarx/ieのTLを蓄積し続けててそれなりに分量が揃っているから。他にもあれこれ使ってもらっても良いんですが、今回は多くはそちらに流れました。やってて楽しいかもしれないけど、逆にツイート特有の難しさもありますね。

最終発表はどうなるかしら。

データマイニング班14回目は今後の予定を確認しながら進捗指導

木曜日, 7月 11th, 2013

m_2013071112304251de26e25721f m_2013071112414451de297887867 m_2013071112575451de2d427c7bc

久しぶりに姜先生とお食事デート。ケレベッキは幸せ空間過ぎる。ふぁぶの焼きカレーが美味しいらしい。誰か美味しいドライカレーを食べれる所を教えてください。

オープンキャンパスの臨時雇用手続きは明日13:00〆切です。まだ4割ぐらいしか届いていないですが、ちゃんと手続きしてね!(遅れてバイト代出せなかったら悲しいのは君たちだぞー)


データマイニング班の14回目は以下のような中身でした。

先週は検査の都合で休んでしまったので2週間ぶりの学生実験です。そして来週木曜日は「月曜日授業振替日」なのでまた2週間空いて次回は7/25で、期末試験期間をスルーしてから成果物報告会をして貰う予定です。タイミング的にオープンキャンパスで発表するよう準備してもらうことも考えなくはなかったんですが、新しい実験班ということもあって様子見してしまったのは勿体無かったかなぁ。実際どこまでやれるかどうかは別として、最初から予定たててスケジュール組んでおけばそれなりの何かはできるものだろうし。

最終的にどこまで辿り着けるかはプロジェクト毎にも違ってきますが、目標自体は最初に提示してた「達成目標」で、各自取り組んでいる問題についてどうアプローチし、実験設計&考察までできれば御の字といった所。余裕のあるところはPDCA的に「仮説を見直して改善してみる」ところまでやれそうな雰囲気です。

データマイニング班12回目はTAからの宿題チェックしながら進捗確認

木曜日, 6月 27th, 2013

m_2013062712435551cbb4fb722c5 m_2013062719384151cc16310ae67

今日は学生相談対応、ミニゼミ、実験とあれこれ詰まった一日でした。

ミニゼミは山内くん。KES実験周りの落としどころに目処が付いた状態なので、今後の方向性についてどういうストーリー(背景、問題意識、そこに対する切り口や仮説、検証方法)が考えられるかを討論してました。MovieLensなデータセットだとちょっとやりたいことにそぐわなくなりつつあるけど、別途調整中のデータセットでなんとかなると良いのだが。


データマイニング班の12回目は以下のような中身でした。

先週からプロジェクトとしての推進がメインになってるので、今日も基本は進捗確認しながらコメント指導するぐらいです。ただ先週はTAからの宿題が出てたこともあって、「共起の概念を自身のテーマに導入する際のメリット・デメリット」を検討してもらった結果報告もしてもらいました。やや時間取られますが比較的汎用的に使える概念(言語処理特有の話ではない)ではあるので時間かけるだけの価値もあるでしょう。

Tipsでは代表的な特徴ベクトルとしてこれまでに紹介してきた「属性毎の出現回数」に加えて、0/1のバイナリベクトル、正規化ベクトル、TFIDF値を用いたベクトルを軽く紹介。

データマイニング班11回目からは進捗確認しつつコメント指導するお仕事

木曜日, 6月 20th, 2013

m_2013062011594951c27025acc7d m_2013062012052851c271788692a m_2013062012150851c273bceb36a

馬之助さんは7月に移転するようです。

オープンキャンパスが1ヶ月後に迫ったこともあり、具体的なタスクと人員レイアウトの検討をしつつ、関係者各位に担当学生の報告依頼をしたり。別件で体動かすタスクが多かったからか、朝食&昼食それなりにしっかり食べてるんだけど昼過ぎには既に小腹が空いてるという状態に。ちょっと精神的な面もありそうではある。そろそろ完全休みなお遊び旅行に行きたいんだけどタイミングが掴めずにぐぬぬ。と支離滅裂な一日でした。


データマイニング班の11回目は以下のような中身でした。

  • Tips: 共起
  • 進捗確認

個別orグループ単位での開発に取り組む流れになってるので、個別に現状報告してもらいつつ「取り組み方(アプローチの仕方)」について検討しながらコメントという流れ。一言で言えばPBLで、「やりたいことをどう問題設計するか」とか「利用可能な情報源からどのように特徴抽出するか」といったことについてあれこれコメント。8名はやっぱり多いかなぁ。デザインを学ぶとかって話も、予め用意したストーリーを体験してもらうという話だったら学生実験でやってるのと一緒じゃんという気がするんだよな。異分野な人とクロスすることで互いに刺激し合おうという主張は分かるんだけど。

進捗確認以外にはできるだけ毎週「直接は関係ないかもしれないけどこういうのがあるよ紹介」をしようということで、今週はTAしてる山内くんから共起についてのイメージ説明と事例紹介、利点や欠点といったことについて紹介してもらいました。共起というのはシンプルに考えれば観測領域に同時に現れ易い特徴組みたいなもので、その一例としてはcollocationとか。別にテキストに限定した考え方じゃないですが。

来週以降はずっと進捗確認&指導がメインになりますが、何かしらTips紹介はどうしようかなー。進化計算班してた頃は1週目から「zsh使おう〜」「emacs使うならauto-complete.elぐらいは入れよう〜」「FizzBuzzで現状レベルみてみよう〜」「ユースケース記述書いてみよう〜」「global(TAGS)使ってみよう〜」「単体テストしてみよう〜」みたいな感じであれこれやってたやつの名残りを意識してますが、どうしよっかなー。

データマイニング班10回目は実験課題設定例についての解説&討論

木曜日, 6月 13th, 2013

m_2013061311491751b9332dcfb6a

オープンキャンパス関連のタスクが急増。ギリギリになってからタスク振られるのは嫌なので先週確認してたのだけど結果的には「〆切数日前になってから依頼が届いた」という悲しい現実。しくしく。

お昼ご飯のドライカレーは大学生協弁当ですが、割と美味しいのでデフォルトメニューになって欲しい。たまにドライカレーを無性に食べたくなるのだけど、いまいち良い場所が見つかってない(そもそも食べれる場所が良く分からない)のだよな。

ちなみに仁義なき戦い(【ほこ×たて@ie_001】絶対に居場所を特定するストーキングツール vs 絶対に居場所を特定させない設定(仮)【偵察編】)が勃発しつつあるらしい。自分だったら相手のサーバを落とすかなぁ(酷)。ま、「結果的には死んでるのと同じ」にもいろいろあるだろうし。笑い男してくれるのを希望しておこう。


データマイニング班の10回目は以下のような中身でした。

今日はテキスト・マイニングを中心とした事例紹介をしつつ、1つ具体的&詳細な課題設計例として「TLから未知語収集してみる」を説明。堀川くんが研究用途でieなTLを収集していることもあって、現時点でも約48万件程度のツイートがあるので、そこからデータセットを構築する前提での事例として未知語収集できれば、その後の解析にも役立つという話。一人で10数万ツイートしてるとかいう噂の学生のことを考えると収集できてるのはほんの一部かも。

他案はタイトルだけで「TLからのAA抽出/イベント検出/場所推定/テンプレ判定/bot判定/クラスタ抽出」、「就職活動向け募集要項から関連企業抽出/企業マッピング」、「MovieLensから類似ユーザ抽出/ユーザクラスタリング/映画クラスタリング/推薦推定」、「レポート自動採点のための誤字脱字判定/文脈の繋がり正しさ判定/説明不足箇所検出/コピー発見/トピック分類によるレポート作成支援」、「プログラムの綺麗さ判定/バグ推定」、「レビュー文解析」とあれこれ例示しつつ、相談討論タイム。何かしら琴線に触れたら良いなということであれこれ列挙してみた訳ですが、結果的にはその中から選んだ人が多いのかな。2値分類や多クラス分類回帰クラスタリングとこれまでざっと見てきた例だけでも問題設定次第で面白いことできるということを少しでも感じてもらえてたら何より。

仮説や問題設定がヨロシクなくて何度も手戻りになったり想定外の問題に打ち当たることもあるけど、それ含めて実験なので自分がやりたいことやろう。「無理矢理感もあるけど一応のテーマは決まりつつあるか。来週が楽しみ^^ #←の「^^」の意味を推定せよ」は推定されてしまったらしい。

TL内での相談がメインだったっぽいですが、全員(グループあり)のテーマ・イメージを決定。自然言語処理入門としてLSI(潜在的意味解析)な例紹介を軽く挟み、残り時間は具体的な問題設定に落とし込むための検討時間に。次週からは進捗確認がメインになります!

データマイニング班9回目は半教師あり学習&自然言語処理入門2

木曜日, 6月 6th, 2013

m_2013060612463851b0061e29ea3

実験しながら、というか今回の実験準備は数日前に終わってたので準備時間自体は殆ど無かったのですが、逆にそのために安心しきって個人面談/何でも相談/ちょっと重めのトラブル対応とそれ以外のことで詰まった一日でした。相談してくれる分には可能な範囲で対応します(時間的に余裕なければ素直に断るor延期する)のでお気軽に〜。

お昼で学食行くのも時間的に厳しそうなときは予め昼食買ってから出勤するか、カップ麺なりで済ますことが多いですが、ここ最近は週に一度ぐらいsubwayさんを食べてる感じ。朝に買ったやつを職場で冷蔵しといて食べる直後にレンジで温めるだけでも割と美味しいままで嬉しい。まだまだ県内には店舗少ないけど、丁度行きがけに通る場所にあるのでとても嬉しい。


データマイニング班の9回目は以下のような中身でした。

scikit-learnを使った機械学習の演習は前回で終わりの予定だったんですが、一覧を眺めてたらラベル有無が混在するデータセットをうまく使おうとする半教師あり学習の例もあったので、不公平な比較ではありますが「半教師あり vs 教師あり vs 教師なし」で結果にどういう違いが出て来るかを目視しながら振り返ることを含めた演習としてやることにしました。英語の勉強も少しやれるし。

自然言語処理入門の方は、前回のn-gramモデルな特徴ベクトルに合わせる形で代表的なというか素朴な特徴表現方法としてタームモデルな特徴ベクトル(英語編, 日本語編)の例。前回は省略した文分割を追加しつつ、単語分割+基本形への変換+ノイズ除去といった良く見られる処理の実装例を紹介する形に。

NLTKはインストールした時点で関連コーパスやらが最初からインストールされてたと思ってたんですが、実はとっくの昔のことで忘れてただけらしくnltk.download()であれこれ使ってるモデルやら個別にダウンロードが必要なのをすっかり忘れてました。

来週以降は2つの方向、
(1)学生個々人orグループ単位で問題設計考えながら実際に取り組むことをメインとしつつ、自然言語処理の演習を少し盛り込む形。
(2)こちらで設計した(全員同一の)問題について実際に取り組んでもらう形。
あたりを想定していたのですが、学生との相談の結果取りあえず(2)でやってみることに。ということで、来週はデータマイニングの例題を用意する予定です。事例紹介はそこそこいろんな事例を紹介して見ているつもりですが、あれはまだ機械学習勉強する前の話でもあったし、本当にざっくばらんにイメージだけを軽く説明しただけではあったので、「そんな話もあったような」ぐらいの記憶になっちゃってるのかも。ということで、(多数の)事例紹介はタイミング的に後回しにした方が良さげか。

データマイニング班8回目は教師無し学習&自然言語処理入門

木曜日, 5月 30th, 2013

s_2013053012451251a6cb489de3c

暑い日差しの中橋向こうでの会議があったため朝から汗だくでした。若干曇り気味でもあったし午前中なら日傘無しでも良いかなと考えたのが間違い。宜野湾農工大からだと素直に日傘持つ方が正解か。

午前中〜お昼過ぎまでずっと会議で昼食時間があまり取れず、通り道の中央食堂で手っ取り早く頂きました。いい具合に空き始めててあちこちでキャッキャウフフ(高性能フィルタリングによりそれ以外は聞こえないし見えない)してるのを耳にしながら食事を終えて実験準備。いくつか誤りを見つけて修正してたものの、まだ残っててあたふたする羽目に。ま、そいうのも含めて実験のお楽しみということで。

終了後はここ最近の実験でやってることやコードが良く分からないという学生らへのヘルプで、一応なんとか読めるぐらいにはなったのかな。少しずつで良いからできることを増やしていこう〜。


データマイニング班の8回目は以下のような中身でした。

8週目で教師あり学習(識別 classification回帰 regression)、教師無し学習(クラスタリング clustering)と代表的な所を例題使いながら実際に触ってみるところまでは一通り終わりました。これでステージ2の機械学習概観が終わり。って、本当はデータマイニング概観のつもりだったんですが、scikit-learn に慣れてもらうことを重視することに変更したのでこういう結果に。

残りの週は、自然言語処理入門を例題的に触ってみるのをオプションに盛り込みつつ、本題としては「分類/回帰/クラスタリング」でどういうことがやれるか、どういう問題設計に落とし込めるかという視点で討論的にやってみるのもありかしら。学生個々人orグループ組ませて何かやってみたいことやらせる、というのもありだとは思うんだけど、どうしよう。