Archive for the ‘日記’ Category

複雑研全体ゼミ2巡目突入前のショートプレゼン

月曜日, 6月 10th, 2013

m_2013061011462451b53e00013e6

昨晩はあまりの暑さで寝てる間に一度目が覚めてしまいました。水飲んでクーラー付けて寝直したのは良いけど、タイマー設定し忘れてしまい朝になった頃には布団被ってるという無駄感。これぞ夏ですね(違)。

今日は論文査読して、実験の資料作ったりしながら2週間ぶりの複雑研全体ゼミ。

全ゼミの方は、2巡目からは

一つの論文や解説記事を分担して読むにしろ、個別に論文を読み進めるにしろ、「その分野について基礎〜応用が分かる」ぐらいには関連づけて、差分や関係性、位置付けを説明できるようにしてください。聴講者も分からない/聞きたいことがあれば自分から質問するようにしましょう。なお、2巡目は質疑時間関係無しに発表中でも自由に突っ込んでください。

という形で、互いに勉強しあう形の一般的な輪読を想定しています。1巡目は「皆の前で自分の興味があることを互いに調べて発表する」ぐらいのもので個々人がほぼ独立した形で論文紹介するだけでしたが、2巡目はトピック毎に理解を深めることを期待しています。

全員で一冊の専門書を紹介し合う形でも良い(昔はそのスタイルで複雑系入門を指定してた)のですが、ここ数年は「各自興味のあるテーマ」にシフト。しかしあまりにもばらけ過ぎてて皆でやる勉強会としては繋がりが薄すぎるということもり、遠藤先生の声かけで今回はいくつかのグループに分かれてグループ単位で掘り下げて輪読発表し合う形になりました。

グループとしてはTwitter推薦系、シミュレーション系、自然言語系、画像処理系の4つ。グループ毎に何についてどういう風にサーベイしていきたいかということについてショートプレゼンしてもらい、それを受けて「何故それを選んだのか」「どういう観点や繋がりで関連研究を調べていくか」といったことについてコメントしたぐらいで今日は終了。赤嶺研ドクターの上原くんの発表(英語)も追加であって、面白かったけど学部生の方はどのぐらい聞けたんだろうかw

B4中心ではあるけど、テーマ毎にグループに分かれて取り組んでることだし、その週毎に関連テーマやってる先輩の現状報告だとか最新情報話してもらうとかして貰うのも良さげかなー。ここ最近マスターズとしては動いていないし。

(不定期コラム) アドレスの意味と、C言語でありがちなミスを観察してみる例題 / プログラミング1

土曜日, 6月 8th, 2013

m_2013060811582951b29dd5a1782 m_2013060815265051b2ceaa69125

写真はピーノ・ヴィーノの牛肉とキノコのボラーニャ風手打ちパスタ。パスタ本体はともかく、ともかくこういうソースを作れるようになりたいなー。

プログラミング1でポインタ周りの話に突入したらしい。ポインタ虎の巻とか参考になる情報源もいろいろありますが、代表的な鬼門だということで例題記事を一つ書いてみます。


ということで不定期コラム8回目は「アドレスの意味と、C言語でありがちなミスを観察してみる例題」を眺めてみます。

ソース: address.c

コメントやprintf()が多いので長く見えますが、char 型変数のメモリサイズを確認(step1)し、各変数のアドレスを確認(step2)、値を代入して出力確認(step3)、配列の範囲外にアクセスしてみる(step4)、範囲外も含めてアクセスした箇所のアドレスを再確認(step5)しているだけです。

環境によって実行結果も異なりますが、私の環境では以下のような結果になりました。

step1: char型変数のサイズを確認。
size: c=1

step2: 各変数のアドレスを確認。
address: &c=0x7fff5b7a8487, &d[0]=0x7fff5b7a8485, &d[1]=0x7fff5b7a8486

step3: 素直に各char型変数に値を代入して出力してみる。
char: c=1, d[0]=2, d[1]=3

step4: 用意した配列の外側にアクセスしてみる。
char: c=4, d[0]=2, d[1]=3, d[2]=4

step5: アクセスした変数のアドレスを一通り確認してみる。
address: &c=0x7fff5b7a8487, &d[0]=0x7fff5b7a8485, &d[1]=0x7fff5b7a8486, &d[2]=0x7fff5b7a8487

実行結果だけでは分かりにくいので適宜ソースとにらめっこしながら眺めて欲しいですが、ここで問題なのは step4 で d[2] へ値を保存した結果、変更していないはずの c の値が変わってしまっている(上記赤字箇所)ことです。

ここで確認しておきたい点は次の3点です。
(1) char型変数は1バイトで保存されること。
(2) 配列は連続したアドレス空間(メモリ空間)を確保すること。
(3) 配列確保時の個数を越えてもアクセス自体はできてしまう(アドレスによってはアクセスした時点でプロセスが死んでしまうこともある)こと。
この3点のためC言語プログラミングでは、step4のような「不適切なアクセス方法」が実行出来てしまい、それが原因となって想定外の結果を引き起こしてしまうことが少なくありません。

上記を踏まえて、クイズです。

  • このようなミス(予め確保した領域外へのアクセス)を防ぐ、もしくはミスに気づき易くするためにはどのような方法が考えられるだろうか?
  • char型変数は1バイトで保存されるが、int, float 等他の型では何バイト必要だろうか?
  • (発展課題) メモり空間上はバイト単位で区切る敷居と値を保存する領域が用意されているだけで、どこにも「char型変数を保持している」とか「int型変数を保持している」という情報は残されていない。例えばcahr型変数を1バイト、int型変数を2バイトで保存するとした場合、「連続したメモリ空間上の0x00から始まる2バイトの領域」にchar型変数が2個保存されているのか、int型変数が1個保存されているかを直接区別することはできない。C言語においてはどのように対応しているのだろうか?

久しぶりの個別ゼミ

金曜日, 6月 7th, 2013

m_2013060711563151b14bdf65e2d m_2013060720142951b1c0955ac62

空き時間に実験のマイニング例題を考えつつ、数ヶ月ぶりの個別ゼミをしたり小論文チェックしたりな一日。

例題についてはざっくりと想定してたものをマインドマップで書き出してみたところ、思ってたよりは複雑な構造になってしまってるかもしれない。気にしないけど(ぉ)。コメントや図解無しの自分視点マインドマップなだけを送っても学生を混乱に陥れるだけな気がするけど、参考情報として後でpostしておこう。

個別ゼミはテーマ変更中のM1から始まり。2月以降は卒論仕上げや学会活動やらで小休止状態になってたので数ヶ月ぶりです。それでもそもそも去年は後期からしかやってなかった(学生から相談に来る分には対応してただけでこちらからは強制しなかった)し、更にその前はそもそもやってもいなかったんだよな。今となっては何故やってなかったのか不思議なぐらい私と学生双方にとって重要なタスクの一つです。

新年度1回目は慶留間くん。テーマ変更をしたというよりはより扱い易いように絞り込んだという状況ですが、4年次時点での「取りあえず要約」という問題設定を「こういう状況でこういう風に要約して欲しい」ということに対応可能な問題設定に落とし込む所からやってます。関連論文のサーベイはまだ不足していますが、目標が鮮明になってきた分、今後の研究計画を具体的に設定することができつつあるかなというところ。この調子で頑張ろう〜。

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

木曜日, 6月 6th, 2013

m_2013060612463851b0061e29ea3

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

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


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

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

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

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

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

研究室外での仕事で立て込んでた一日

水曜日, 6月 5th, 2013

m_2013060511382551aea4a192a79 m_2013060511512851aea7b0b36b1 m_2013060521492451af33d43c67a

午前中は特に予定が合った訳ではないですが、午後から会議+教育実習先への訪問(研究授業)+法文の高良先生にお願いした山内くんの英語論文添削と立て込んでた一日でした。

研究授業への参加は去年に引き続き2回目です。高校や担当の先生毎に特色が出るものだろうとは思うのですが、「研究授業」とその後の反省会を見る限りでは今回のケースは自主性に任せる分量が多そうだなという印象。同じ内容で3回目の授業ではこれまででのベストだったらしい。できればその差分を眺めたいなとは思うので、大学に戻って来る来週以降にでも突っついてみようw

KESの方は一人は取り下げることとなり、当初から予定していた山内くんは内容的にはOK(期日的な問題で見直す時間がほぼゼロだったので甘く見てもらった割合が大分多そう)、文法的にできれば見直してという注文が出てたので一通り外部チェックをお願いしました。今日頂いた指摘を反映して提出できるのは金曜日ぐらいかしら。ということで、参加登録も終えたので参加確定に。

もう24時過ぎてるしお肌に悪いので早く練る準備しよう〜。

P.S.
今日の晩ご飯でガラケーさんの空きメモリが写真1枚すら保存できない状況に。どうしよっかな。

気がつけばゼミ時間を過ぎてて学生から呼び出し

火曜日, 6月 4th, 2013

m_2013060412354251ad608ec50e1 m_2013060418255951adb2a72b0ea m_2013060418265251adb2dc4b8f7

時間的には余裕があるんですが、タイプの異なるタスクが積んでると微妙に時間感覚がおかしくなるらしい。今日はゼミ時間を忘れて別タスクやってて、学生から呼び出される羽目に。ごめんなさい。

タイプの異なるタスクというのは、個別に学生呼び出し面談したり、来ない学生に電話したり、教授職員会の(恐らく)最終対応したり、複雑研全体ゼミの調整したり、でゼミ以外は普段やってないタスク。ということで空き時間も集中できてなかったんですが、論文読んでたらゼミ時間過ぎてたという。

お茶会では先週の留学生Joくんによる手作りトッポギに触発されて(ということにしておこう)、今日担当の玉城くんがゴーヤーチャンプルーを手作りしてきてくれました。先週かなり渋ってた割には素で美味しかったです。これでNAL研にもシェフが!

ということで私自身の気分一新も兼ねることになりましたが、今週から週ゼミとは別個個別ゼミを実施することに。毎週1人とマンツーマン(他の人が参加してはいけないという意味ではなく、一人の課題に集中するという意味で)でゼミして細かい点やら鳥瞰的視点やら含めてじっくり時間かけて討論しようというテコ入れです。

良く分からないものは取りあえず断る

月曜日, 6月 3rd, 2013

m_2013060313300751ac1bcf203d4 m_2013060313454451ac1f784cd44 m_2013060314591251ac30b031620 m_2013060320135251ac7a700fb79

試しに買った black sparkling は謎テイストすぎる。合わない訳でもマズい訳でもないんだけど、個人的には珈琲としても炭酸飲料としても飲み心地が中途半端。新しいカフェイン摂取方式としては面白いかなー。会議疲れの脳にスパイス注入しようと、カレーうどん目当てでココイチに行ってみたものの期間限定メニューだったらしい。復活する予定はあるらしいけど、デフォルトメニューになってくれないかなぁ。ココイチに来る頻度自体は少ないけど、あれはウマい。

断ったというか結果的には先方から断られたのは教授職員会なお話。真逆に「何でもオッケー」という対応することもありますが、今回は事情が良く分からなかったので試しに参加してみたらいろんな所で意思疎通が取れていないことが発覚。元々は戦前からある親睦会みたいな位置付けだったようですが、法人化と共に労働組合に変わったらしい。労働組合になる前は「デフォルトで全員参加」だったけど、労働組合になった後は参加する意思がある人が加入手続きをする方式に。なったはずなんだけど、その過渡期&10月採用で大学に入ってきたからなのか、(教授職員会は知ってたけど)そもそもそういう組合がある事自体知らず、加入した記憶もなければそもそも声かけされたこともないままでした。そのぐらいの距離感がある組織だったのですが、何故か今回その会員内でやるはずの代議員とかに選ばれることになり、いくつか事前に話を聞いてみたものの状況が良く分からないということしか分からず。結果的には直接会長がいる場で話をすると「そもそも候補として条件を満たしていない」ということが発覚したというか、実はここ数年うちの学科から出ていた人全員条件満たしていないんじゃね的なことが発覚し、今まで良くそこを気にせずやってきたなというお話。私自身は加入する気ゼロなので、今回の人選について調整が済めば完全に足を洗うことができそう。

実験準備で書いたテストコード分は解説付きでテキスト化を終了。一応これで今週分はなんとかなるはずだけど、課題と今後の方向性をそろそろ決めないと。

e13個人面談は、まだ欠席対応が残ってますが一応連絡自体は全員と取れたかな。要チェックな人もいますが、取りあえずは第一段階クリア。

今年のオープンキャンパスは7/20(土), 10:00-17:00に決定で、詳細は今月中には決まるらしい。が、学部の事務からはそういうスケジュールが何も届いていないんだよな。大丈夫かなー。

(不定期コラム) 何をやるにしても体が資本

土曜日, 6月 1st, 2013

m_2013060112464851a96ea8a8cd3 m_2013060112483551a96f13a1fc3 m_2013060113433851a97bfa2d3dd

先週の個人面談ウィークで先輩主催のプログラミング補習にお世話になってる1年生が結構いるらしいということで、お礼を兼ねて話を聞いてみるべく主な主催者を集めてもらって馬之助で食べてきました。趣旨としては、去年先輩にお世話になって助かったので「何らかの形で今年は教える立場で」、「(同学年間でも一緒だけど)互いに教え合うことで一緒に乗り切ることを伝えたい」ということで授業の復習的な位置付けで課題設定したり、習ってる所までの復習をテーマにあれこれ検討実施ししているようです。イイネ!

一方、1年生に限った話ではないですが、体調崩してる人がちらほらいるらしい。


ということで不定期コラム7回目は、シンプルに「体を労ろう」というお話。

おじさん目線からは「若い頃は多少無茶しても少し休めば何とかなってたけど、今のうちに健康管理できるようにしてた方が」みたいな話になっちゃいますが、それでもたかだか入学して高校生活までと食生活やら居住空間やらの変更で大きく体調崩しがちな人もいるのも事実なのでやっぱり体は労った方が良いですよという結論。好き嫌いせずに適度にバランス良く食べよう。それなりに体動かそう。座ってるだけじゃ絶対に体が錆びるし。そしてなるべく夜更かしは避けて規則正しい生活で過ごせるようにスケジュールしてみよう。

自分自身の問題だけじゃなく、外的要因(ホコリ/カビ/etc.)も十分あり得るので身の回りにも気を配ろう。勿論共有の自習室等は皆で綺麗に保ってください。

(通常と違って)体調不良がやけに長引いてるとか、原因が良く分からない場合には病院なり保健管理センターなりで相談してみよう。自己判断だけで長期間放置するとそれだけ悪化してしまうこともあるので、体のためにも時間を作って労ってあげよう。

課題があるから、とかでも無理のし過ぎで体を壊してしまっては本末転倒です。そういう時には個別に担当の先生と相談してみてください。必ずしも考慮してくれるとは限りませんが、自分からそういう相談をすることも含めて社会勉強です。

複雑研サーバは移行作業中のため一時的に退避サイトを用意しています

金曜日, 5月 31st, 2013

複雑研サーバ(eva.ie.u-ryukyu.ac.jpドメイン)は移行作業中のため、まだ暫くは不安定な状況が続く予定です。

當間ページについてはhttp://www.nal.ie.u-ryukyu.ac.jp/~tnal/eva/に一時的に複製していますので、必要に応じて参照してください。

ど忘れしてる学生を呼びだしたりしながらオープンキャンパス調整

金曜日, 5月 31st, 2013

m_2013053112035451a8131ad0572 m_2013053115154551a840118b009

e13個人面談でまだ連絡が無い学生に対してまずは個別にメールを送ってみた結果、数時間ぐらいで数人は反応。2名は今日で面談実施まで終了。今の所反応が遅れてる学生については「単に忘れてた」ケースしかないです。そういうのも含めて意図的に今の時期にタスク盛り込んでたりするので、今回の件でスケジューラなりを使うようになってくれれば良いかな。まだ連絡が無い学生については数日待ってみてから電話呼び出しの予定。そっちの方が早いんだけど、それじゃ「最終的には電話してくれる」という局所解に陥っちゃうので基本的には最終手段です。真の最終手段は「実家に凸」だけども。

オープンキャンパスの調整が始まりました。今回はやや体験ツアーの内容に変更が入りそうな雰囲気です。学科としては何度か「祭り出店方式(各会場でどういう出しものしてるかをまとめたマップを配って、参加者は自由にあちこち見てもらう)」にしたらという話は出るのだけど、どうしても学部としてまとめようという方向が強くてどうにもならないのは残念。学科毎の都合があるのもわかるから他学科に強要するつもりは無いけど、同じ理屈で勝手なことやらせて欲しいんだけどなぁ。ということで、全体の流れとしては数年前の模様と様変わりはしない予定です。2008年の様子とも大きくは変わらないか。ここら辺の写真に写ってる「参加者」の中に、今情報工で頑張ってる人もいたりするのかしら。

そうそう、メインで使ってる複雑研webサーバ(evaドメイン)が繋がりにくい状況ですが、サーバ移行作業のためここ数週間はまだ不安定です。ご了承ください。