Archive for the ‘教育’ Category

プログラミング1の相談対応しながら実験1のレポート採点終了

月曜日, 5月 2nd, 2016

GW前にレポート締め切りがあると、GW中に採点できてなかなかいい塩梅です。疲れるけど、混雑嫌いなので適度な近場巡りでお仕事するのが例年の過ごし方。いや、今日は平日なんだけど。

実験1はほぼ毎週異なるテーマについての実験レポートが課されるので割りと大変な授業です。なんですが、独自課題やって良いよと書いてるとかなりハマる学生がたまにいて。今回もオリジナル課題で30ページ強書いて提出してる学生がいました。変態ですね(褒め言葉)。

採点方法は「基準点設定して、内容に応じて加点減点」してることもあって、100点を超えることが割りとあります。超えた分は自己満足にしかならないんですが、後期の実験2では私担当が2回あるので、「2回で合計200点満点」とかやってたりします。こっちだとたまに100点超えることで嬉しい人が出てきます。(それでも片方で超えちゃう人はもう片方も超えがちなんですが)


採点中に1年次からプログラミングの課題について相談が。分からないことを質問しに来るのは偉い。必要な材料は一通り教科書+授業で用意していますが、「道具が揃ってるからといってどう使えばよいか分かるわけじゃない」のはそうだよね。個々の道具をどう使えばよいかという問題と、それらの組み合わせ方を考えるという道具側からのアプローチと、逆に問題側からできるレベルにまで分解していくアプローチと。どんな方法でも良いけどやっぱりいきなり正解に辿り着けるわけでもなく。そのことは分かっているので、過程をレポートとしてまとめて欲しいです。

とか書いてたら、別学生からメールでも質問来ました。よしよし。

複雑研全体ゼミの始まり

火曜日, 4月 26th, 2016

毎年複雑研(遠藤研+山田研+赤嶺研+當間研)でやってる全体ゼミは、今年はUdacityのDeep Learningをやってみようということに。それはそれとしてひとまず担当割り当てするぐらいに留め、論文に関する基礎知識2016をベースに論文の探し方・読み方・書き方についてのガイダンスをしてみました。

実際に話するだけ(聞くだけ)だと互いにツマラナイよねということでImageNet Classification with Deep Convolutional Neural Networksを使っての演習付き。イントロダクションの章は5つのパラグラフで構成されてますが「各パラグラフの1文目だけを読んで中身を想像して次に進むことを繰り返し、5パラグラフ使ってどういうストーリーで話をしようとしてるかをイメージする」というもの。なんですが、実際にやらせてみると「綺麗に訳しよう」とする人が多くて。そうじゃないと言ってるのに〜。ま、これも含めて練習か。やっぱりさせてみるのって大事だよね。


NAL研ゼミの方はまだまだ就活シーズン真っ只中ということもあって全員は揃わず、ちょっと悲しい。せっかくお茶会で美味しいもの食べれたのに〜。

[勉強勉強会]本当にいい結果を出す勉強法について考える会 @naltoma 編 #JavaKueche

土曜日, 4月 23rd, 2016

Java Kücheさん主催の勉強勉強会に参加してきました。発表する側で。ネタ被らないようにしてみたものの、抽象化した時点で類似点多数というちょっぴり残念な形に。いや、それだけ重要だと考えてる人が多いということなんでしょうけど。

私の発表は「学術の発展方法」に見る勉強法というテーマで、主に学会・論文・査読・採録・参照といったオープンなやり取りを担保するシステムを維持することで積み重ねて発展しているという内容。だからアウトプットしようよという話なんですが、そこは全員共通してたんじゃないかな。趣旨とはややずれるけど、裏テーマの「学会楽しいよ」が少しでも伝わってたら嬉しいです。

発表時や終了後に頂いた質問への回答は次の通り。(開場回答で足りてなかったかもしれない部分を補足してます)

Q: 論文は大学に所属してなくても出せる?
A: 出せます。査読付きの方だと高めですが。例えば情報処理学会の論文誌だと1ページ1.3万のようです。

Q: 比較的楽に出せる予稿?は一般人も出せる?
A: 出せます。会合としての学会の場合は掲載料というよりは参加費が必要で、非会員だと若干高くなるケースが殆ど。会合によりますが大抵1万前後じゃないかと。

Q: 予稿出さなくても参加できる?
A: できます。聴講参加だと若干安めの参加費で入ることが出来ます。特別講演や展示ブースなど、部分的に無料公開してることもあります。

Q: 今面白い学会ってどこ?
A: 私が知る範囲では情報処理学会の全国大会か、言語処理学会の年次大会あたり。

 情報処理学会はIT系学会の総本山ですが、ここ最近はお堅いイメージを払拭するための活動をあれこれ模索してます。例えば先月開催された全国大会ではニコ生でアーカイブも公開されてたりします。特にIPSJ-ONEは今後の情報社会に向けての研究動向を広く一般の人々に発信するために企画されたこともあり、とても分かりやすく&面白い構成になってるので、視聴おすすめです。このアーカイブの5:58:14頃から始まります。あと、ジュニア会員(小学〜大学3年生)という制度が最近できて、学会誌も含めてあれこれ無料で閲覧できます。さぁ、3年次までの皆さん、会員登録しよう。

 言語処理学会は、年次大会のスポンサーにGoogleらをはじめとする検索・SNS関連に力を入れてるところが数多く参加しており、とても熱量が高いです。若手向けの交流にかなり力を入れてるようにも見え(参加したことはないけど体験記らを読む限りでは凄い楽しそう)、学会とはまた違う側面での「専門家らとの交流」が楽しめると思います。

Q: プログラミングに興味があるけど、文系で全く知識がない状況。どうしたら良い?
A: 勉強会の類であれば、沖縄IT勉強会カレンダーで面白そうなものに参加してみると、実際にその場で興味を持てたものについて話を聞くことができると思います。独習してみたいのなら、Code Studioや、paiza learningあたりから入ってみると良いかも。

授業関連の質問・議論とかやり取りするを支援するツール?

木曜日, 3月 17th, 2016

オフライン(対面)は良いとして、オンラインでの話。

個別にやるならメール/Twitter/Skypeあたりで良いかとも思いますが、隠す必要が無いなら掲示板・SNS・チャット的なシステムが良いよねと。グループウェアというよりは授業支援(相談対応、情報共有)の側面が強いけど、グループウェアの一種ではあるんだろうな。


学科で提供されてるサービス的にはRedmineが一番近い? 必要に応じてグループ作れるし、課題提示&コミット管理もやれる。ただし、基本的にはチケット駆動なので、タスクと締め切りが明示的にある課題以外の用途だと使いづらそうな気もします。例えば授業1日目に関する質問って、予めチケット作るのとは違うし。工夫次第ではやれそうだけど、無理矢理感強そう。


掲示板機能だけで良ければ学科のWordPressで擬似的に使えなくもないけど、こっちに書いちゃうと受講生以外にも記事が流れまくるので流石にやめたほうが良いよな。


大学(総合情報処理センター)としてはWebClassが使えて、文字通り授業支援システムなので大抵のことはこれでやれます。実際便利な部分もあるんですが、学生向けには検索できない(私の使い方が悪い?)、デフォルトでクローズ(受講生しか参照できない)してる点、契約の都合高でコンテンツが4年?ぐらいで削除される点が気になります。教員的にはコンテンツ作成関連を全てブラウザ経由でやらざるを得なくなるのがちょっと手間か。掲示板だけ使うとかの選択肢もあるんだけど、ちょっとなぁ。


TLや巷で目にするサービスとしてはSlackChatWorkあたり? ChatWorkの中の人によるとこんな状況らしい。2015年11月時点での比較記事を眺めて見る限りだと、見た目(新入生には重要)、コードの含めやすさからSlackが良さげかな。ただ無料版だと1万メッセージまでしか残らないっぽいのね。実際には全メッセージにURI割り振るみたいだから、参照できなくしてるだけかなと想像します。検索機能的には一応細かい指定で検索することもできるらしい。いずれにせよ一定量超えると古いメッセージが見えなくなるのはアレだけど、チャット用途だと割りきって使うのはありかも。本格的な議論が必要ならその時に考えれば良い気もするし。


Facebookのグループを作るのも一つの手かなとは思いますが、目的の記事を探しだすのが面倒そう。質問した人+回答した人だけのやり取りなら埋もれにくい?


グループ機能ならGoogle Groupsがあるし、学科として全員アカウント持つことになるので候補としてはアリか。


まとめると、SlackかGoogle Groupsあたりが候補?
取り敢えずgroupsの方は既に使ってるので、Slackを研究室で使ってみるか。

今日から東京

水曜日, 3月 9th, 2016

情報処理学会全国大会のために東京に来てます。予想してたより体感気温寒い&ずっと雨模様。10数度を下限だと勘違いしてたというのもあるけど、沖縄での冬の格好では物足りない感強い。素直にコート準備するべきだったか。

チェックインまでの時間調整のつもりでカフェ巡りしてみましたがどこもかしこも満席。品川駅でそんなこと考えてる時点で負け戦だったとは思うけど、平日昼間でこれかよー。やっぱり東京って人の住める場所に思えないよ。。人混み嫌いなんですが、既に人酔いしたのか昼過ぎから頭痛が。もーなー。(天気が悪いせいだと思うが)

全国大会は毎年3日間での開催。明日から実施されるプログラムはこんな感じ。数千人が参加するので受付とか運営周りの人は大変だろうな。マニュアル化されてるからその通りにやればいいっちゃ良いんだけど、それでもなー。特別講演やらのイベント物を除いても、通常セッションがA〜ZDまで(Zの次はZA)という恐ろしい並列度で動くし。当然これだけ平行して動いてるので全てを見て回るというのは無理ゲー。なので事前に気になる発表なりセッションなりをチェックしてから参加する形になりますね。

私自身が学生だった頃は何も気にせず見たいセッションに参加してたのですが、指導する立場になってから関連学生の発表を見ることにしてて。(別にしなくても良いんだけど)。場合によっては複数の学生が同じ時間帯の異なるセッションに割り当てられることもあって、こうなるとセッション中に走り回るなんてことも。今回はブッキングはないらしい。良かった。

ひとまず初日は会場である慶応義塾大学近くでご飯食べようということで阿波連先生に美味しいところ探してもらったところ、プクプク亭に突撃。確かにハンバーグ旨し。沖縄に支店作ってくれないかなー。

(という感じで美味しいもの食べるためにも研究頑張ろう>これから研究室配属する皆さん、既に配属してる皆さん)

働クリッカー?

月曜日, 3月 7th, 2016

プログラミングの1教材として働クリッカーなるものが賑わってるらしい。

働クリッカーは、いわゆるひとつのクッキークリッカークローンである。
が、ただのクッキークリッカーではない。

Cキーを押すとコンソールが出現し、ここにプログラムを書くことで、プログラムにクリックさせることができるのだ。

この教材の出来の良さが驚異的だ。

プログラムの魅力がぜんぶここに詰まってる。

そして「クリックする」というシンプルな行為をworkというひとつの関数に代替させることで、プログラミングが人類に与える恩恵をわかりやすく伝えることができるようになっている。

N高校の生徒専用のプログラミングハイレベルハイスクール体験会に行ってきたのたが革命的に面白すぎて辛いより引用)

他にもググればあちこちで攻略やらコード例やら見つかるぐらいには賑わってます。なんだけど、個人的にはこれが何故そこまで面白いと感じるかがよく分からず。データサイエンスというかリバースエンジニアリング的な意味で「どこでどうやるとどういう反応を返すか」を模索しながらやるという意味では面白い気もするんですが、そういう理解で良いのかしら?

でもこれがプログラミング初心者向け教材として適切かどうかは別問題なはず。ゲーミフィケーションみたいな意味で競争させやすそう(=熱中させやすそう)な気はするけど、内容的には割と後半(ある程度言語仕様が理解出来てて、コードの最適化が求められるレベル)でやるものじゃなかろうか。そういう位置づけなら一例として面白いのは理解できます。理解できるけど、そっちメインにすると「どう解析するか」が主題になっちゃって、プログラミングとはまた少しずれる気もします。

どういうストーリーを想定して、どの流れでこの教材を使ってるのかに興味あるけど、どこかに書いてないかなー。ということで試しにバンタン プログラマーズ・ハイレベル・ハイスクールの資料請求してみました。そういう細かい話が書かれてる可能性は低そうだけど。

実験2のレポート採点開始

月曜日, 2月 1st, 2016

雨模様の中の桜も一味違って良いけど、やっぱり青空に映える様子を綺麗に撮りたいなー。


実験2の探索アルゴリズム1その2のレポート採点を始めました。2週分のレポートで200点満点ということにしているので、どちらか片方で130点分頑張って、もう片方は最小限で終える、という形でもOKです。レポートの点数が100点超えるというのはどういうことかというと、指定した課題について必要最小限で終えた時の基準点だけを定めておいて、後は内容次第で加点減点するという形をとってるからです。ついでに探索アルゴリズム1,2では「グループ単位でレポート作成してね」ということにしてたりしますが、その分適度にタスク分担しないとキツ目の内容でもあるかも。とはいえ、良い所探しては加点しまくる方針でやってる(内容によっては減点もするけど、余程酷くないかぎり加点が上回る)ので総合点としては比較的高くなりがちです。口頭試問実施してることもあるけど、いろいろと時間かけてもらってるしね。

個々人を評価するというのも良いのですが、ここではグループ単位で評価してます。おんぶに抱っこされるメンバもいるはずですが、一緒にやることで少しでもレベルアップしてね、ということで。実際「何故低い点数になってるのかわからない学生」っているんですよ。採点結果として点数しか返されない(個々の点数が返却されず、最終評価しかわからない)こともあるし。他の良いレポート(やその取り組み方)を真似よう。ということで、採点結果を通知する際には上位レポートも開示しています。今回はどのグループが上位になるかしら。

この文脈におけるモデルって何?

金曜日, 12月 25th, 2015

2年次の学生実験はオムニバス形式ということもあって、担当する週としない週があります。そのため2年次の実験がない期間は比較的自由時間が増えるのですが、逆に担当する週は準備やら(終わった後のレポート採点やら)で忙しくなります。ここ数年はデザインスクールが11月末にあるのでその前にはなるべく授業入れたくない(自由に動ける時間を増やしたい)ということで、勢いそれが終わった12月以降に学生実験が集中しちゃってます。ということで、今月4週間は実験だけで毎週6コマ。ま、学生への何かしらの切っ掛けになっててくれればそれで良いんですが。


例年とほぼ同じ内容ではあるけども、全く同じということはなくテコ入れしています。タイトルとやや(?)違うことやってたりしますが、よりやりたいことにシフトしてきてるつもり。具体的には機械学習寄りの話と、より抽象的な話としての「モデル」という考え方についての内容に触れるようになってきてます。というのも、学科の学習教育目標で次のような文脈で「モデル化」という話が出てきています。

[課題解決能力と創造性] 情報工学の理論及び技術を総合的に活用し、与えられた制約下で創意工夫により課題を解決する。
G-1: 問題を分析し、モデル化を行い、課題を適切に設定する。
G-2: 与えられた制約の下で、修得した知識と技術を総合して課題を解決するとともに、解決法を適切な評価尺度で評価する。
G-3: 課題解決において創意工夫を行う。

学習教育目標から引用)

その割には、(授業とは無関係に年次指導の一貫としてやった個人面談で話を聞く限りでは)モデル・モデル化という考え方をほぼ誰も説明できないという事実を目の当たりにしちゃいました。それを放置するのはとても忍びないというか我慢ならないので、実験・演習を通してモデルという言葉や考え方に慣れてもらうようにしてみました。

一度や二度やったぐらいで学習効果があるかはともかく、積み重ねの一貫として実験でやってみてるつもりです。何かしらこういう教育自体を実験として設計すると論文にまでできると、理想的何打炉なとは思いつつ、重い腰はあがりません。(駄目)


CXD7P3LUMAAWsiS CXEDrrEUkAELS1O CXDGm-TVAAAROO9.jpg-large

TLで学生がおいしそうなケーキを作ってたので我慢ならずに美味しい物を食べて帰宅。あ、学生から頂いたスターウォーズなチョコも美味しかったです!

参考文献(関連事例)は調べて並べて終わり、では片手落ち

火曜日, 9月 8th, 2015

(システム移行中に書いた記事の再掲。そろそろ安定してるのかな〜)


卒業論文だけではなく酷いケースだと修士論文でも目の当たりにする事がある話。関連事例を「こんなのがあります。こういうのもあります。」のように列挙するだけして、自身の研究テーマと全く紐付けが為されていない論文が稀によくあります。もっと酷い場合には自身の話すら脈絡ない話がいくつか並んでて全くストーリーが分からないものもあったりしますが、今回は「関連事例」の話です。

何かしら初めて研究をやるといった「これまでやったことがないことについて事例調査する」という場合には、どこから足を踏み出せば良いのか自体に迷ってしまうこともあるでしょう。このあたりの話は振り返りサマリ(地図)制作のススメにも「自分なりの地図」を作ろうという視点で書いたつもりですが、ちょっと言葉足らずか。ということで別の言葉で補足をしてみることに。

一般的には「論文(文献)」にはその著者の目指している未来があり、そこへ導くためのストーリーが描かれているはずです。もし、その論文を読んでも未来像(目標)が想像できないのなら、それは何も論じていないに等しいです。論文とは、学問の研究成果などのあるテーマについて論理的な手法で書き記した文章なはずですから。ということで、論文にはストーリーがあります。ただの物語と違うのは、原則として事実に基づいて論じているという点です。

論文にはストーリーがあるならば、それらを構成する要素があれこれあるはずです。物語なら時代背景・場所・人物・組織・小道具・演出などなど多種多様な要素を挙げることができますが、論文でも当然何かしら「要素」があります。抽象的に大別すると「問題・仮説・結果・考察」とかになりますが、各々を構成する要素がまたあるわけで、具体化するレベルに応じて様々な要素が関連し合いながら存在しているはずです。

ストーリーを要素群やそれらの関係性に分解できたならば、それらを鳥の眼や虫の眼で眺めてみよう。もしくは要素や関係性を別のものに入れ替えてみたらどうなるか、妄想してみよう。完全にゼロから生み出される新規なアイデアなんてありません。折角読むのだから、そこから発想を広げて新しいストーリーを構築できないか想像を膨らませてみよう。たかだか一つ二つの思いつきでうまくいくとは限りません。(うまくいく人は余程の天才か、運の良かった人)。

抽象的すぎて良く分からないよ!というなら、例えば次のようなことを考えてみよう。あくまでも例で、他にもいろいろ考える余地はあるでしょう。そうやって視点を広げて考えるという癖をつけておくと、ある時想像もしてなかった事柄が繋がって面白いアイデアに昇華できる。かもしれません。

・その一部を拡張することでシステムの目標達成力を改善・強化することはできるか。
・構成要素間は独立したパーツなのか従属したパーツなのか。
 ・独立しているならそれらを同時に扱うパーツを導入することで改善できないか。
 ・従属しているならその関係性を改善する方法は考えられないか。
・何かを作用するということは必ずデメリットもある。どのようなデメリットがあるか。
・メリット・デメリットを発展させるならどうなるか。
 ・メリットをより拡張することは可能か。
 ・デメリットを打ち消すもしくは和らげることは可能か。
 ・別手段で同等or同質のメリットを実現できないか。
・この事例を飛躍させるとどういう世界になるか。
 ・該当事例の出版年が古い場合、今の社会情勢でも外的要因を考慮すること無く対応できるシステムになっているか。
 ・もし塾考が必要な要因変化があるならばそれは何か。その要因をどうする(拡張する/縮小する)と良いか。
・その世界は望んでいる幸せな状況か。
・その世界においてどういうシステムがあると更に幸せになるか。

タイトルに戻ると、ただ読むだけではなくて目的に応じて可能性を上げるための一工夫を加えよう、という話ね。

物理的に身体が不調な方へ

水曜日, 8月 5th, 2015

m_2015080506000855c1a66883c0b m_2015080509265755c1d6e197069

ヘルシープログラマには

  • 4章 アジャイルなダイエット
  • 5章 頭痛と眼精疲労の対策
  • 6章 腰痛への対策
  • 7章 手首痛への対策

など、ここ最近(主にTimelineで)見聞きする症状にオススメのユニットテスト並びにリファクタリングする術(すべ)がロジック付きで紹介されています。お悩みの方は借りにきてください。

以上、業務連絡()でした。