Archive for the ‘NAL研議事録’ Category

アノテーションツール: brat(クイックスタート)

金曜日, 4月 6th, 2018

自然言語処理してる際のデータ構築にて、文章中の単語に「これは場所だ」とか目印をつける(=アノテーション)作業が発生することが多いですが、その際のツールのお話。

annotation tools ぐらいでググるとWhat are the best tools for manually annotating a text corpus with entities and relationships?みたいな一覧が出てきますね。他にも、代表どころでは GATE らしいですが、これは使いにくいからbrat使えよという話も見つかったので試してみました。以下、bratなお話。


[ brat rapid annoation tool ]

1. ソースファイルをダウンロード。

2. installtion instructionsに従ってインストール。インストール時に「CGIアプリ(≒webサービス)としてインストールするか、ローカル環境で使うか」でオプションが異なります。注意点としては、Python2にしか対応していない点。

3. 「python standalone.py」で起動。そこで出力されるURLにブラウザでアクセス。

4. tutorial を眺めながら使い方を学ぶ。
チュートリアルの途中で「アノテーションしてみよう」も出てきます。単語なりフレーズなり選択するとポップアップ表示が出て、そこからアノテーションできます。なお、そのページに注釈書かれてますが、「ログイン」してないとアノテーションできません。

5. ひとまず自分でテキスト用意して、そこにアノテーションしてみたいという場合には以下の手順が必要。
5-1. テキストファイルを data ディレクトリ以下に用意。拡張子はtxt。UTF-8しか確認してませんが日本語でもOKでした。
5-2. 同じディレクトリに、同じファイル名で、ann拡張子のファイルを用意。これがないとファイルを開けません。

ラベルの設定方法とか調べてませんが、チュートリアル進めれば出てくるんじゃないかな。

ミニワークショップ&追い出し食事会

月曜日, 3月 19th, 2018

NAL研の恒例行事として「ミニワークショップ」と「追い出し食事会」をやってます。

ミニワークショップは、基本的には修了生に丸投げですが「主対象は新配属生向け。なるべく自身の研究に関連のある中身で、具体的に手を動かす(ワークする)内容にして欲しい」ぐらいの形で実施して貰っています。今回は神谷さん担当で、卒業研究1年間の流れやテーマの検討方法、論文検索方法といったあたりの話をベースに、自身の体験や具体例を埋め込む形で提示しつつ、実際に探させたりするといった内容でした。ありがとうございます!

ややタイトなスケジュールになってしまいましたが、終了後は軽くスケジュール調整したぐらいでとっとと食事会へ。場所は(ほぼ)毎年恒例になってるいつ世。学生のような年代が来ることが珍しいらしく、年1回しか利用してませんが「去年も来られました?」という話に。美味しいご飯、ありがとうございます。これがあるお陰でがんばれてます!

主査側の予備審査終了

火曜日, 2月 13th, 2018

学部生が卒業するのに比べると修士修了のハードルはそれなりに高くて。先日学生に求める力とか書きましたが、情報工学専攻の修士が修了する条件という点からは、

  • 4ページ以上の予稿(論文)付きで学外発表をすること。(2ページ×2回でもOK)
  • 主査(研究指導教員)1名と副査2名、合計3名で構成される予備審査を受けること。予備審査を希望する際には規程日までに修論及び手続書類を提出すること。
  • 最終審査(専攻内での最終発表会で代替)を受けること。

ぐらいのことをやる必要があります。

このうち「予備審査」はそれなりに厳しくて、3名教員を前にして30分発表+20分質疑+その他10分、合計1時間の審査をパスする必要があります。この予備審査の結果アウトになることも勿論あって、その場合は修了が半年〜1年延びることになります。どういう結果になるかは修論の出来次第ですが、大雑把に分けると、
(1)問題なし(最終審査頑張れ)。
(2)やや問題あり。(最終審査までに指定した実験等の追加課題に取り組み、成果をまとめる必要あり)。
(3)大問題(最終審査やるの?)。
ぐらいの3パターンなのかな。ただし、(3)についてはそもそも予備審査しない(手続き時点で指導教員が許可しない)ことが多いので、(1)or(2)が殆どです。(2)にはいろんなレベルがありますが、予備審査終えてから最終審査までほぼ徹夜が続く学生も稀にいます(遠い目)。その前に頑張れよって話なんですが。

NAL研では、予備審査終えたらその結果を問わず振り返り兼ねて打ち上げに行くことにしています。幸いなことに今のところ予備審査で落ちた学生はいませんが、毎回ギリギリまで修論仕上げに苦労している学生が殆どですね。まだタスクは残ってますが、ひとまずお疲れ様でした。

顔合わせ食事会

木曜日, 1月 18th, 2018

今年度は12/14に研究室仮配属が確定。多く(?)の研究室では忘年会シーズンに合わせてwelcome partyしてたようですが、うちは日程合わずに今日やりました。単に自己紹介するのもなということで「隣の人を紹介する」形でやってみましたが、みんなそつなくこなしますね。これから一緒に楽しみましょう!

年明けゼミ始め=追い込み時期の始まり

木曜日, 1月 11th, 2018

卒論・修論の〆切が迫ってきたこともあり、多くの学生が残り時間の少なさに戸惑い始めてる時期ですかね。前もって去年末時点でスケジュール目安を例示してたんですが、ピンときてない人もいたのか「2月上旬に一度発表があり、発表資料作成&発表練習に1週間かけるならもう2週間強ぐらいしか実験する時間はない」という話をしてみました。こちらとしては指導以上のことはできないので、頑張ってください。

とか書きつつ、私自身も学生の頃は甘く見てるというか計画的には動けていなかったんだよな。というのも分かってるので、ちゃんとやってる学生ならそれなりに付き合う気持ちはあります。

私の場合は、授業の課題とかで予想以上に遅れて徹夜したとかはないんですが、研究室入ってからは2回徹夜しました。

1回目は初めての国際会議で、私の代わりに遠藤先生が発表しに行くというタイミングで、「明日飛行機乗るんだけどまだ結果が出てない」という恐ろしい状態。一緒に徹夜デバッグして貰いながら、ようやくプログラムが動いたんだよな(ありがとうございました)。。

2回目は博士論文〆切の時で、博士3年目は丸々1年間留学してて諸々の〆切について事務から連絡貰えず。論文〆切決まったら教えてください〜と伝えてたものの「来週〆切だけどどうなってる?」というギリギリのタイミングで催促が届いて。日中は留学先のタスクして、夜は博論書くというのを1週間近く続けました。あれはもう二度とやりたくないです(遠い目)。

久しぶりに卒業生の来訪

金曜日, 1月 5th, 2018

2014年度修了生の玉城さんが、少し落ち着いたということでわざわざ挨拶に来てくれました。いくつかのルートで心配になる話を聞いてたのですが、やりたいことやって楽しんでるようで良かった。

折角来てもらったということで学生研究室(712室)に移動してだべってたんですが、業界話面白い。下手な説明会聞くより生々しい話聞けるので、先輩来たらあれこれ聞いてみると良いですね。今回はslack経由で研究室連絡もやってくれれたんですがいたのは一人。ま、タイミングもあるだろうしな。

全く別の話ですが、進路指導や研究相談でも耳にするように機械学習と自然言語処理と、具体的なタスクを効果的に回していく環境構築&運営保守あたりの人材が圧倒的に足りてないらしい。少なくとももう暫く(数年?)は需要が高止まりし続けそうな雰囲気らしい。一方で具体的なタスクに落とし込みきれてない、ふんわりしたニーズのまま動いてるところも少なくないらしく、見極めないと後で無く羽目になりそうな気もしますね。

P.S.
Twitter経由で情報工学科(知能情報コース)に関する質問見かけたので答えたけど、「あるある」だったのでどこかに回答書いてたつもりが見つけられず、直接回答する形で対応することに。後でブログに書いとくか。

今年最後のゼミ

木曜日, 12月 21st, 2017

終わりなのは週ゼミであって、それとは別に個別ゼミしたりしてますが、それでも一つの区切りですね。今年も残りわずか。

M2は、修論関連スケジュール(審査願い、予備審査、最終発表)に向けたスケジュール確認。

B4は、卒論関連スケジュールに向けたスケジュール確認。

並行して、情報処理学会全国大会に参加するメンバは、1月上旬に予稿締切があるのでそれに向けてのスケジュール確認。
並行して、研究室サーバ移行の目安確認。(最低限のところまで年内でやって、残りは新配属生のタスクになりそう)

あたりをしつつ、個別に進捗確認しながらゴール検討。

ありがちなんですが、卒業研究みたいな1年間規模の計画で何かしら新しい知見を得るということが目標になっているタスクに対して、多くの学生は全体のストーリーを気にせずその場その場での近視的なサブゴールに注力しがちで、結果としてそれが何のためかを踏まえずに寄り道し始めて。寄り道自体は悪いことじゃないんですが、気がつけば寄り道だらけで「新規な知見」ではなく「やってみた」で終わりがちです。

別パターンとしては、理想的な目標に進もうとするのは良いけども、マイルストーンを設計できずに途中を飛ばして「いろんなよくわからないことを寄せ集め的にやってしまう」。結果として、何がどう影響してるか良くわからず、考察しようがない状況とか。うまいこと絞り込むことができていないパターンですね。

ま、そういう経験も含めて卒論だと思ってるので、一緒に泥舟乗るのは構わない人です。どういうふうにタスク設計するか、全体ストーリーを筋道立てるか、みたいなところを少しでも体験して貰えれば。

久しぶりにpatch作りしようかと思いきやその必要が無かった時のがっくり感

水曜日, 12月 20th, 2017

Neural editorなる生成ツールが面白そうだという話を阿波連さんから聞き、良くわからないけど動かないので動作確認できてないという状態らしい。

論文概要眺める限りでも面白そうなので動かしてみようかと。(タスクに目を背けつつ)丁度年内の授業が終わる時期で時間取りやすいし。ということであれこれ試してみることにしました。

Issues眺めて見る限りでも、動かなくて困ってる人が、他にもいるらしい。状況的には、リポジトリクローン作って、データセットを別途用意して、Dockerで環境用意したらPythonスクリプト動かすだけなはずですが、暫く動いたら勝手にプロセスが死んでしまう。おぉ Neural Editorよ、死んでしまうとは情けない。

素直にデバッグしてみようと、インタプリタさんとpdbにご登場願うことに。スクリプト実行時に設定ファイルを引数で渡す必要があるのだけど、そこはインタプリタ起動後にsys.argvを上書きしてしまえばOK。

どのあたりで死んでるのか良くわからない状態(単にKilledと出力されるだけで、どのファイルのどの行で死んだのか不明)だったので、最初はファイル内のコードコピペで動作確認しながら大雑把な場所を把握してみると、3506331行からなるテキストファイルの処理途中で死んでるらしい。でも、コードを追いかける限りでは単に TSV をタブ分割して、スペース区切りで単語分割したのをリストにappendしてるだけなんだよな。具体的にどの行で死ぬのか確かめようとするも、実行する度に死ぬ場所が変わる。乱数使ってるわけでもないのにー。

ここまできてPython自体のメモリ設定か、Dockerのメモリ設定が怪しそうだと目星をつけ、両方共設定変更してみると、Dockerの設定が原因だったことが分かりました。デフォルトで2GB割り当てで、これを越えようとするとDockerがプロセスを強制終了してる感じなのかな。ま、気持ちは分かる。

Docker自体は便利だというのはわかってるんだけど、そっち側で例外処理的なことやってるならせめてそういうログを出して欲しいかな。ということでパッチ作成は不要らしい。ちょっと残念。

研究室配属の時期

木曜日, 12月 14th, 2017

こんな感じになったようです。よろしくお願いします。

配属学生が決まったらまずは連絡網ということでML(実体はgoogle groups)に登録したり、Slackに招待したりしています。また、古い慣習ですが、登録確認&緊急連絡先確認を兼ねて自己紹介メールをやり取りするようにしています。一段落着いたら顔合わせ食事会の調整に入ってもらう予定ですが、週明けには調整始められるかしら?

P.S.
体調崩してる学生も多いらしい。気をつけませう。

研究室紹介2017の補足

火曜日, 12月 5th, 2017

研究室配属に向けた研究室紹介が終わりました。そこでも紹介しましたが、基本的には資料は公開してます。共同研究の都合だとか論文の都合だとかで隠さないといけない部分を除外して、それ以外はできるだけ公開する方針でやってます。

以下、喋ってなかったことをつらつらと書いてみます。

  • 上記ページそのものは2005年ぐらいに書いたので「e-mail による連絡」とか書いてますが、ここ最近の研究室内でのやりとりはslackが多いです。長い文章だとメールも使うぐらい。
  • 研究テーマは自由ですが、自分でやりたいテーマがないのであればこちらから選択肢を提示します。かなり具体的なテーマから、抽象的なテーマ(解釈や問題設定に裁量の余地が残されている状態)までいろいろあります。
  • 自由に決めていいですが、いつまで経っても決められない人は時間が勿体無いです。特に「卒業=就職」を想定している人がテーマ決めるのに夏休みまでかかると、実質的に研究する時間は殆どありません。という状況を長らく見てきたこともあり、年間スケジュールとして目安を提示しています。就職組は6月にはテーマ確定することを目指してもらいます。
  • テーマを引き継ぎで深化させる方向に進む学生がほぼゼロなのが不思議ですが、當間的には推奨しています。背景やら関連研究やら調べてあって現時点での課題が分かる状態だと手を付けやすいですよね。
  • 共同研究等の都合で、一人はテーマ指定になる予定あり。
  • 更新頻度少ないですが、去年から研究室活動紹介的なブログを開設してます。内容はうちの学生に自由裁量で書いてもらってて、現時点での最新記事はお茶会の話らしい。
  • お茶会といえば、NAL研では毎週ゼミ後にお茶会の時間を設定しています。就活などで集まりにくい時期には別システム導入することもありますが、何かしらやってるかな。お茶会は、週替りで担当者を決めて何かしら用意してもらってます。こんな感じですね。
  • データマイニング班でも近いことやってますが、ゼミでは共同でリアルタイム議事録やってます。
  • 議事録自動化したくない?(生ログの構造化ぐらいのイメージ)
  • 様々な情報が電子化されているのに,自分がコンピュータに合わせて作業をしないといけないのは何故だろう?
  • 自分の好み・嗜好を汲み取って,前もってチェックした情報を整理して提示してくれないか?
  • 「ペアプロ導入」を支援するようなシステム作れないだろうか?
  • レポート採点なり校正支援システム作れないだろうか?
  • 「今なら」おにゃのこ3人いるので多目らしい。
  • たまに美味しいモノ食べに行くらしい。
  • 「研究室配属=他研究室と交流が取れない」じゃないです。自分自身のテーマについて他研究室メンバや教員らとも相談するのはありありですい、実際やってる学生もいます。大学を活用する一つの手段として「研究室が追加された」、ぐらいの気持ちでも良いんじゃないかと。