Archive for the ‘講義/実験’ Category

進化計算班14回目終了、実験2のレポート〆切間近。

木曜日, 1月 17th, 2013

進化計算班は残す所最終発表&成果物公開に向けての最終調整に入りました。今回は初めて全部グループJavaでがしがし書いてますが、どっかの影響があったのかドキュメントもDoxygenではなくてJavadocで書いてるグループが出てきました。これも初めて。あと、無関係の院生がほぼ毎回聴講参加してたんですが、彼も最終発表することになりました。これも初めて。

最終発表は予定通り来週やります。ということで1/24(木)ですね。終わったら打ち上げしようかと声かけしていくつか挙げた所、馬之助(メインはお好み焼き/もんじゃ焼きですが、ここでしか食べれないデザートもんじゃがあるのがポイント高し)ケレベッキ(トルコ料理で個人的に一番好きなお店)モフモナ(沖国近くのカフェ)カスタマンダップ(ネパールカレー)ダブルデッカー(どちらかというとバーに含まれると思いますが、自分の中では美味しいチキンクリーム・オムライスが食べれる洋食屋)から多数決でダブルデッカーに決まりました。

今日と明日は実験2の探索アルゴリズム12のレポート〆切日なんですが、現時点での提出状況は芳しくないな。ま、頑張ってください。

明後日からセンター試験が始まりますが、その会場設営のために明日は終日休講なはず。「はず」というのは大学オフィシャルカレンダーでは謎の日本語になってるから。いちいち突っ込むのもなぁという感じだし個人的にはもともと午前中には講義無いから関係ないしということでスルー。

少なくとも午後からは講義が無いということで時間調整しやすいこともあり、明日はSEECさんとのミーティング。まだゼミもしていない仮配属生交えて少しずつ共通認識となる土手を気づいていければ良いなというスタンスで取り組んでるつもりですが、どういう所に落ち着くのかをさっぱり見通していないのは流石に無謀すぎるかなー。何かしら面白そうだと感じてもらえればそこを出発点にして掘り下げていけばそれで良いと思うのだけど。

2012年度/情報工学実験2/探索アルゴリズム1の口頭試問日調整

土曜日, 1月 12th, 2013

最終更新日: 2/11, 22:10

探索アルゴリズム1の口頭試問日調整用の記事です。
「空き時間目安」を参照の上、「口頭試問希望の手順」に沿って調整してください。


口頭試問希望の手順

(1) レポートを提出(サーバにアップロード)する。
(2) メールで提出報告する際に、空き時間目安を参照の上、希望日&時間帯を申請する。
 なお、原則としてグループ単位での実施です。
 どうしても全員が揃う日程で調整できない場合には個別相談ください。
(3) 特に問題無ければ、私から承認メールを返信します。
(4) 予約時間帯にグループメンバ全員で口頭試問。(約15-20分程度。長いと30分オーバーになることも)
 *場所は當間部屋(705室)です。
 *当日は予め提出されたレポート(PDF)を投影した状態で説明してもらいます。
  用紙等の準備は不要です。


空き時間目安

あくまでも目安です。変更が入る都度変更していきますが、下記時間帯で対応できないこともありますので、ご了承ください。
便宜上「2時限目」を開始時間にしていますが、1時限目での対応も適宜調整しますので希望するグループがいたら相談してください。

1/15(火), 2〜3時限目
1/16(水), 2〜4時限目
1/17(木), 2〜3時限目
1/18(金), 2時限目
 10:20-10:40, 月4

1/21(月), 2〜5時限目
1/22(火), (センター入試代休)
1/23(水), 2時限目
 10:20-10:40, 月3
 10:40-11:00, 月3(search2)
 11:40-12:00, 金3
1/24(木), 2〜3時限目
1/25(金), 2〜4時限目
 12:50-13:10, 月20(search2)
1/26(土), 2時限目
 *週末ですが2時限目〜12:00過ぎ頃までなら受け付けます。
 10:20-10:40, 月6

1/28(月), (センター入試代休)
1/29(火), 2〜5時限目
 11:00-11:20, 金7
 14:40-15:00, 金9
 15:00-15:20, 月9
1/30(水), 2時限目
 10:20-10:40, 月1
 10:40-11:00, 月7
 11:10-11:30, 月8
 11:30-11:50, 金1
1/31(木), 2〜5時限目
 12:50-13:10, 金4
 13:10-13:30, 金5
2/1(金), 2〜4時限目
 12:15-12:35, 金10
 12:50-13:10, 月10

2/4(月), 2〜4時限目
 10:10-10:30, 金11
 12:00-12:20, 金6
 13:00-13:20, 金8
 13:20-13:40, 月5

2/5(火)以降については適宜メール相談ください。


口頭試問未実施グループのリスト

>未実施
月(全グループ終了)
金(全グループ終了)

>終了(search1)
月1,3,4,5,6,7,8,9,10
金1,3,4,5,6,7,8,9,10,11
>終了(search2) option
月3,20
金5


メモ

提出状況一覧(メール報告があった分)。
下記の日付&時刻は、レポートPDFファイルのタイムスタンプです。

>探索アルゴリズム1
月1: 1/17, 18:49 -> 修正 1/30, 11:32
月3: 1/15, 16:09 -> 修正 1/17, 5:02(1名口頭試問欠席) -> 1/30, 15:15
月4: 1/16, 20:34 -> 修正 1/22, 12:42
月5: 未(相談中) -> 1/29, 13:39(1名未担当)
月6: 1/17, 21:45 -> 修正 1/26, 18:12(1名口頭試問欠席)
月7: 1/17, 19:37 -> 修正 1/31, 12:28
月8: 1/17, 14:22
月9: 未(相談中) -> 1/29, 5:33(仮/連絡つかず1名)
月10: 1/17, 20:20
金1: 1/18, 23:44 -> 2/5, 0:38
金3: 1/18, 19:34 -> 1/28, 16:41(4/5)
金4: 1/18, 23:12
金5: 1/18, 04:53 -> 修正 2/10, 23:11
金6: 1/18, 23:35 -> 修正 2/4, 19:48
金7: 1/18, 22:58 -> 修正 2/2, 0:22
金8: 1/18, 21:23
金9: 1/19, 0:35 -> 1/29, 16:21
金10: 1/18, 23:42
金11: 未

>探索アルゴリズム2
月1: 1/17, 20:15
月3: 1/17, 6:21 -> 修正 1/30, 15:33
月4: 1/16, 22:08
月5: 未(相談中) -> 1/28, 12:53(1名未担当)
月6: 1/17, 23:53
月7: 1/17, 19:38
月8: 1/17, 22:35
月9: 未(相談中) -> 1/19, 5:30(仮/連絡つかず1名)
月10: 1/17, 20:26
月20: 1/17, 23:40 -> 修正 2/2, 13:41
金1: 1/18, 23:42
金3: 1/18, 22:32
金4: 1/18, 20:13
金5: 1/18, 16:29 -> 修正 2/10, 23:39
金6: 1/18, 23:35 -> 修正 2/11, 21:21
金7: 1/18, 22:57 -> 修正 2/1, 10:30
金8: 1/18, 23:16
金9: 1/19, 0:51
金10: 1/18, 23:48
金11: 未

実験中にデバッグ

月曜日, 1月 7th, 2013

探索アルゴリズム2ではニューラル・ネットワークを使った演習をしているのですが、去年だったかに修正した部分に不手際があったらしく、未知データ(未学習データ)を入力した時に Bus error してしまっていました。その機能が必要なタスクは無しにするつもりだったんですが、実験時間中にデバッグが終わったのでタスク復活。説明が前後して申し訳ない。

まだ全快してないので明日は休みを取ろうかと思ったけど、週末にAO合格組とのミーティングがあるのでその準備しないとー。

良いお年を

金曜日, 12月 28th, 2012

実際にはまだ何度か大学行くはずですが、一応今日で仕事納めということで。

今日は学生の手作りケーキから始まりお茶会でのお茶菓子に続き仕事納めアイスに終わるというデザート三昧な一日でした。ケーキっぽいやつは学生手作り(!)のシュトーレン。こんな美味しいのが作れるとか凄い。

探索アルゴリズムその1の金曜日クラスも終了しました。TA経由で確認した学生からの新しい質問項目があったので、FAQにも追加しました。

ゼミでは堀川くん名嘉くんの研究の進め方というか実験計画の考え方についての討論がウェイトを占めたかな? 「実験して結果を分析してどうするか」という流れではなくて、「想定もしくは仮定している事象について、それがどのぐらい妥当な想定/仮説なのかを検証するためにどういう実験が必要か、何を観察する必要があるかを定めていく」というような話をあれこれ。具体的に仮説を立てて、その仮説を構成する一側面を検証するならここを確認したら良さそうだとか。

端的に言えば「仮説駆動」しよう。仮説無し、すなわち色眼鏡を持たずに観察することが大切な場面もありますが、既に問題意識や解決手段について試行錯誤している段階では「仮説」が必要です。例えば研究と実験のやり方から引用すると、

6. 論より証拠。
8. 自分なりの仮説を常に持て。
実験で事前予想に反する結果が得られることがある。これは好機である。実験のやり方がまずいか、自分の立てた仮説がまちがっているかのどちらかであり、これを直していく努力こそが本当の研究である。優秀研究とは、「なんでうまくいかんのか?どこまで考慮の範囲を広げるべきか?この場合はどうなのか?」と突き詰めている。

というのが、仮説駆動の意義をイメージしやすいかな?

一週間後(1/4(金))には新年初のゼミがあって、その二日後には沖縄高専との交流研究会(B4発表)があって、その1週間後ぐらいには情報処理学会全国大会言語処理学会年次大会の論文〆切があるらしいです。そんなこともあってか、年末年始と言われてもあまりピンと来てないな。

探索アルゴリズム1の月曜グループ終了

木曜日, 12月 27th, 2012

今日は木曜日ですが、月曜日の振替え授業日です。ということで2年次の実験2、月曜日クラスが強あったんですが、勘違いして欠席した学生がいたらしい。金曜日クラスで受講できそうなのでなんとかなりそうなんだけど、他の授業は大丈夫かしら。

探索アルゴリズムその1では、計算機実験も入っていますがどちらかというと討論が主。グループ討論と報告会でのコメントを通してコアな部分について共通認識を構築するのが目的です。1月にある「探索アルゴリズムその2」ではパラメータチューニングを中心とした計算機実験がメインです。ちょっと繋がりが悪いかなとは思うけど、「探索にまつわるいろんな視点」をちりばめているつもり。いろいろありすぎて消化不良になってるんじゃないかとも思いますが、口頭試問を通して何を考えたか/どう取り組んだか/何を観察したか/どう解釈したかといったことについての確認作業スタイルによる補足を予定しています。が、もうちょい絞って集中した方が良いかなとも思うので、次年度はもう少し大きなテコ入れを検討するかも。

TAに相談のあった質問、実験後にでてきた質問、Twitter経由で見かけた質問疑問等についてFAQとして整理してみました。これで回答になってるかは微妙なのもあれば、逆にそこは自分で考えて欲しいという点もあったりしますが、「何故こんなことしてるのか」について考える切っ掛けになるならなりよりです。

会議しながら実験準備

水曜日, 12月 26th, 2012

実験2の担当1週目が明日と明後日に差し迫って、ようやく一段落するぐらいにはなったかな?

ということで探索アルゴリズム1では

  • Level1: 「探索」についての一般的イメージをタネに討論
  • Level2: 目的関数や制約条件が数式で設計されてる連続空間での例
  • Level3: 基本的にはLevel2の延長だけど解空間が離散になってる例
  • Level4: 目的関数自体の設計から考える例

というストーリーで「探索」にまつわるエトセトラ風に話をまとめてみました。データセットを使ってみたいというのはLevel4で紹介する程度に。いろいろ食い違いが出そうなんだけど、まずはやってみよう。

下ろし立ての靴で歩いて靴擦れ

火曜日, 12月 25th, 2012

外履きも内履きもぼろぼろになってきたので両方とも新調したのが昨日で、早速靴擦れ気味。やっぱり出張後のタイミングにして良かった。

木曜金曜にある実験2の課題設定をどう調理しようか悩みつつ、関連書籍や論文を眺めてるんだけどいまいち調理しきれてません。何かしらのデータセットに触れてあれこれする、ぐらいの縛りで考えてみようかと幅広く見てるんですが、例えば以下のようなもの。

ここから何をどう課題にするかなんだよな。うーん。素直にそっち方面は実験3,4でやることにして、実験1,2では現状維持?

進化計算班9回目終了

木曜日, 11月 29th, 2012

午前は隔月会議があったのでそっちに参加。してたのだけどそろそろ参加意義が分からない状態なのと次回は年度末時期に入って都合つくか怪しいのでキャンセルするかな。と今の時点で決めても仕方が無いんだけど。

進化計算班は9回目が終了。例によってコードレビューしながらの進捗確認ですが、どちらかというとプログラミング苦手な人がどのぐらい理解してるかの確認や、実装を通して解釈違いに気づくという所へのコメントが多かったかも。そういうのも含めて「学生実験」なので問題無いですが、デバッグ実行させるのをし忘れてしまったのはちょっと失敗だったかな? 次回でも似たような感じになってたら忘れないようにしよう。

オプションはJUnitの事例紹介(PDF)。前回の中間自己評価へのコメントを通してあれこれ紹介してた書籍の中に「まだ自分では開いた事も無いもの(Java言語で学ぶリファクタリング入門)」があったのでamazonでゲット。付録にあったJUnit周りの話が分かりやすかったのでそれをほぼそのまま使って紹介しました。同じく付録にあった「リファクタリング・パターン」みたいなものもイメージしやすくて良さげ。Java書き慣れてる人だと付録眺めるだけで十分で、そうじゃない人は本文と共にコード例参照するという感じで使えば良さげです。

JUnitの動作に関連してポリモーフィズムの話もしたのだけど、やっぱり具体的なコードがあった方が良さげなので、次回ぐらいには例題用意しようかな。そろそろDoxygenな頃合いでもあるけど。

休日はゼミ日和り。中間自己評価へのコメント返しを通した書籍紹介

金曜日, 11月 23rd, 2012

金曜日はデフォルトのゼミ日ですが、今週は休日。平日で調整付かないだけということもありますが、大抵は「午前中にゼミを終わらせてしまって、どこかお昼食べに行こう!」としていることが多いです。ということで、終わってからトルティーヤファクトリーに出撃。私含めて全員初めてだったんですが、想像してた以上に美味しく大満足。量的には「朝ご飯食べそびれた学生でも途中からキツくなる」ぐらいのボリュームです。普段食べない香菜も入ってて嬉しいのですが、次行く時には「ご飯半分!」と言うのを忘れないようにしないと。

ちなみにあの付近(「普天間でいご通り」と言うのか)は何故かメキシカンな食堂があちこちにあるんだけど、そういう人たちが多いのかな? もしくは周囲の基地関連で集客力あるのが残ったらこうなったという話だったりするのかしら?

あるお題を与えられた状態で、特定範囲のTimeLineから関連しているかどうかを判定しもらうアンケートは、微調整しただけで本番試してみることに。ブログ公開した状態だったこともあって、気づいた人は既に回答してくれてたりするんですが、改めて正式にお願いしたい人へ回答依頼することに。宜しくお願いします。近いうちに食事行きましょう。

あれこれ終わった後で、昨日の進化計算班で振り返ってもらった&改善案を提示してもらった中間自己評価について、個別にコメント返し。具体的な中身は個々人の受け止め方次第ですが、何かしら前に進むためのヒントや切っ掛けになれば。コメントを通してあれこれ書籍やWebサイトを紹介しましたが、多くの学生にも関連するかと思うので一覧をリスト化しておこう。

リストの中でも、なぜ、あなたはJavaでオブジェクト指向開発ができないのか Javaの壁を克服する実践トレーニングを「プログラミング自体にアレルギーがあるような学生向けの処方箋」として一読をお勧めします。また、オブジェクト指向でなぜつくるのか 第2版 知っておきたいOOP、設計、関数型言語の基礎知識は「1〜3年次の学生向け副読本」として一読をお勧めします。特に後者は、構造化プログラミングからオブジェクト指向プログラミングになることで得られるメリットと必要最小限の知識としてのメモリ管理、設計方法としてのUML、共通パターンとしてのデザインパターン、テストといった「プログラミング〜システム設計関連科目の間を補ってる」良書なので、全員にお勧め。


[ プログラミング関連 ]

[ 「オブジェクト指向プログラミング」の考え方 ]

[ その他:学習方法、プレゼンテーション方法、チームハックス、論理的思考法、論文の書き方など ]

進化計算班8回目終了。達成目標に照らし合わせて振り返ってみた。

木曜日, 11月 22nd, 2012

午前と夕方に事務作業なお手伝い。ちょっと時間取られ過ぎ感もあるけど、そろそろ文字通りの流れ作業のみになりそうなので、来週からはもうちょい早く追われるんじゃないかと予想。タスクが入り込んでて昼食は軽食にした分、夕方には異常に空腹だったので我慢出来ずに食事してきましたが、食べたら食べたで半分で十分という。やっぱり肉メインな料理は「半分で」とか言わないと駄目か。

進化計算班は8回目が終了。コードレビューしながら「ちゃんとバージョン管理してる?」「グローバル変数使わないように」「ここはどういう意図でこう書いてるの?」「想定通りに動いているかを目視確認するだけじゃなく、処理例を用意してテストするようにしよう」みたいなことをグループ分繰り返してます。グループ毎に何を指摘するのかは違ってくるのは当然ですが、逆に言うと他グループがいる中でレビューすることで「他の人は当然と思ってやってること」をあれこれ見れるのは、皆で集まっているからこそできることだよね。

オプションの方はプログラミング演習は無しにして、「グローバル変数を使うことの問題点は?」を出発点とした討論+α。あれこれ意見出してもらう限りでは十分問題点を意識できるように見えます。実際書く時にはそこまで考えるのはその次、というのは理解できます。プログラミングの歴史的には、構造化プログラミング関数化オブジェクト指向プログラミングという流れで「どうコードを整理するか、俯瞰しやすくするか、再利用しやすくするか」という点でクラスやパッケージを導入する事でより細かな制御をしやすくしている。見通しを良くするための良く共通して現れるパターンがデザイン・パターンで、取りあえず全グループJava使ってるからIteratorから意識してみては。という話をしてみたり。ただこのあたりは私自身「オブジェクト指向」で考えきれてない部分がある古くさい脳のままなんだよな。もうちょっとスマートに伝えられるぐらいには精進したい所。

あと、前回書いたように

そろそろ中間的な頃合いでもあるので振り返りか自己評価的なものをやって、残りの後半でそこの改善を目指せるように可視化でもするかしら。

の一貫としてこういう自己評価アンケート(PDF)をやってもらいました。各自で提案してもらった改善案について取り組んでもらえたらそれで十分ですが、文章化して見える形で意思表明してもらうことは大事。

今日中に送ってもらったアンケートに一言コメントぐらいは返したい所だけど、ちょっとお疲れモード。明日かなぁ。