Archive for the ‘日記’ Category

修論予備審査の始まり

水曜日, 2月 6th, 2019

審査手続きの締切が今週末。ギリギリで手続きする学生多いのでまだ審査が集中してる訳ではないですが、2名分が今日終わりました。

修士の予備審査(や最終審査)ぐらいちゃっちゃとパスして欲しいよねと思いつつ、私自身もそれなりに右斜め上の方向では苦労してたか。学会発表しまくってる人はそれを整理するぐらいなのでそれほど多くの時間はかかりません。が、教員3名(主査1名+副査2名)を前に1時間かけて審査(説明&質疑応答)するのはそれなりに緊張するもので。緊張しすぎで笑われてたのを今でも思い出せるぐらいには記憶に強く残ってます。

ちなみに「予備審査」というシステム自体の設計は専攻ごとにも大きく異なるらしい。ある専攻では予備審査自体がなく、最終審査一発勝負とか。うちの場合は予備審査で大目玉食らって最終審査に向けてアップデートすることありますが、そういうチャンスもないってことなのだとすると怖い。(が、普通はその可能性高そうなら審査手続き自体を見送るのかも)

ま、いろいろありますがまずは予備審査に向けて頑張って下さい。まだ審査員に修論送ってない人は早めに送ってくださいね。にっこり。

データマイニング班の成果発表(と打ち上げ)

火曜日, 2月 5th, 2019

データマイニング班の最終発表が終わりました。内容的には「機械学習を使ってみよう」で、応用を通してどこにどういう手間がかかるのか、問題や評価の設計の難しさを味わってもらってます。

Group 1: 人気ツイートのトレンド予測器
Group 2: クラスタリングを用いたおすすめ授業の選出と考察
Group 3: 機械学習によるセンター試験解答正誤分析
Group 4: 犬か猫の判別器

身の回りにあるデータを選ぶグループはデータ準備自体にも時間かかりますし、それ以前のどういうデータを集めるべきかがなかなか決められないこともあります。結果的にダミーデータでやってみるケースもありますが、それでも「一度通して最後までやってもらい、その最後から次に進むには何が足りてないか」とか。グラフ化するのは良いけど単位がないとか。そもそも結果が数値化されてないとか。あれこれ突っ込んでますが、卒業研究前のプレ研究といった位置づけでやってます。

授業後にやってるということもあって、終わった後は打ち上げ。お疲れ様でした!

ループ処理を如何に省くか

月曜日, 2月 4th, 2019

小規模データセットで動作確認しながらコーディングしたり、最終的にもプラスアルファ程度の規模で動作させるぐらいなら「想定通りに動くコード」に辿り着くことが第一優先。テスト駆動と言い換えても良いです。

一方で、処理件数が桁違いに増えてくると「待ってられない=結果的に動かない」コードになってることもあって。例えば「でかいファイルを纏めてメモリ展開して処理する」みたいなのも、小さいファイルなら動作するけど、大きいファイルになると死んだり。極端に長い1行があるとそこで死んだり(流石に死ぬは言いすぎかもだが)。こういうのを避けるためには、レビューを受けてリファクタリングすると。自分で想像付く範囲でテストするのも大事ですが、何かしらこういうのは「え、そういう死に方するの!?」という場に直面しないとそもそも気づけないことも多いでしょう。

今日はゼミ後に「ある大きなリストとある大きなリストの一致率を計算するのに時間がかかりすぎてて」という話で、コードを見るとPythonな4重ループ?ぐらいの処理。単なるマッチングではないので「ぱっと思いつくままの手順」で書くならそのぐらいになるだろうなと。これを

np.array == 0

みたいに書くと指定した値と合致したか否かのTrue/Falseな配列が得られるので、その配列同士を

np.logical_and

するとかでループなしに判定できるなとか。あれこれお茶会しながらやるのもいとをかし。

実際に携わることで得られる気づきは多い(デザインスクール)

金曜日, 2月 1st, 2019

何度かデザインスクールの解説記事書いてるという話をしてましたが、電子情報通信学会の学会誌2月号に掲載されることが決定しました。

社会課題に取り組むワークショップとその効果――琉球大学・京都大学合同デザインスクールの経験――, 當間 愛晃 山田 孝治 遠藤 聡志 十河 卓司 石田 亨, Vol.102 No.2pp.172-178, あらまし

2013年に実施した際にはこれっきりのイベントという認識でしたが、一度実施してみると双方での「思ってた以上に良さそうだ」という認識が強くなり。試しに1年継続、2年継続と続け、2018年度を含めると合計6回の実施になりました。

細かい実施方法は年毎に違う部分もありますが、運営業務としては、テーマ検討・設定、フィールドワーク先の見積もり、専門家and/or現場の方との認識すり合わせ、講演調整、会場確保、受講生募集、当日配布資料の準備、会場設営、当日業務、後片付け、振り返り、ぐらいのことを毎年やってて。私を含めた琉大スタッフ側が門外漢なテーマであることが殆どのため、手探り感も強く。琉大内ミーティングでも、京大とのミーティングでも没になった実施方法やテーマがありました。

それなりに大変ではありましたが、新しいことへの取り組みというのはそれだけで学べる側面もあって、(論文になってませんが)研究テーマとしての視野も広がりましたし、また、(休止すること多いですが)一緒に共同研究しないかと声掛け頂くことも増えました。いろんな理由があってうまく進まないものが多いですが、まずは前向きに取り組もうとすることに意義があるということで。

P.S.
デザインスクールでやりたかったけどやれなかったことの一つ、「運営自体に学生を関与させる」という話は3年目ぐらいからあったのですが、やれませんでした。主にテーマ検討〜設計の辺りで。やれなかった理由は、単に私が話の持っていき方がよろしくなかっただけなんですよね。これは本当に勿体なかったと思ってます。

そろそろ後期の授業終了

水曜日, 1月 30th, 2019

授業自体は今週で終了ということで、レポート採点中です。現時点で出し終わってる分は終わりましたが、そもそも出してない学生多くて。うーん。

プログラミング自由課題のやつは、良い方向に働いてるケースもあればやっぱり悪いケースもあって。単に「java オセロ」とかでググって最初に出てくるコードをそのままコピってる例とかみつかります。一方で、がっつり頑張ってるケースも。

[ 2018年度のJava自由課題 ]

コード以外の部分だと、JavaDoc, JUnit, Gradle あたりを抜かしてる学生も多いか。指定したことはやってくれくれ。コピペしてるとこの辺り書けないのかもしれないので、一種のしきい値として機能してるかも。

来週からは授業自体はほぼないですが、教員側は修士の予備審査が始まり、並行してまだお尻に火がついた状態の卒研生への指導が積み重なる時期です。なので授業レポートの方はちゃっちゃと終わらせたいのだけどなー。

1年次が終わる頃にオススメしたい書籍

火曜日, 1月 29th, 2019

入学したてではなく、数学英語等の共通科目をある程度終えてたり、プログラミング等の専門科目も入門ぐらいは終えてたりする時期です。学期末テストが終わると(やること決めてない人は)それなりに時間が取れるので、おすすめ書籍を紹介したいなと。

学科slackで先輩学生らに自由に書き込んでもらった所、こんなリストになりました。

ここ以外にも紹介したい先輩、教員はいますので、なにか興味があるけど取っ掛かりが分からないという人は相談してみよう。他学部の先生でもよいし、全学の学習サポートルームあたりで院生に相談してみるのも手。こういうためにも大学を活用しよう。

背景を踏まえて目的を把握しないとちぐはぐなストーリーになる

月曜日, 1月 28th, 2019

通常講義の課題におけるレポート(報告書)でも同じ話というか良くある話で、「課題の意図を誤解してるか、そもそも意図を理解せずにそれっぽいことをやってみて、それっぽい結果を提出するケース」というのがあって。理解していない事自体は良いのですが、そのことに気づいていたら質問相談してほしい。学習サポートの先輩や、友人頼るでもよし。授業外の時間で教員相手でもよし。自分から動こう。

一番の問題はそのこと自体に気づいていない場合。問題を流し読みしてたり、ググった結果をほぼ読んでなかったり、教科書読もうとしなかったり。理由は様々だと思いますが、気づいていないまま取り組むので何やってるかもよく分からず、結果的に支離滅裂になることがしばしばあります。1年次向けには「他人のレポートを参考にするのは良い。ただしコピー機にはなるな。ちゃんと理解した上で自分の言葉で書け」みたいなことを伝えていますが、どこまで伝わってるかというかそもそも知っててやってる説もあるからなぁ。

工学概論の担当分終了

木曜日, 1月 24th, 2019

工学部1年次の共通科目「工学概論」の担当分(1回)を終えました。

本講義を履修することによって、工学の各分野についての知識、技術、考え方を修得する。将来教職に就いた際に、現代社会における工学分野の役割、意義を生徒に伝えることができるようになることを達成目標とする。

教職向け科目で、工学という幅広い知識に触れて貰うために全7コースの教員によるリレー形式で設計されてます。

私の担当回では「検索エンジンにみる情報処理技術」というタイトルで、世界でもっとも強力な9のアルゴリズムを中心に、背景・関連情報を書籍論文出典付きで解説する形をとっています。出典明示されてたら興味のある生徒はその先にも進めるよね、と。

内容については年度毎の様子を見ながら変えるつもりだったんですが、教職向け科目は「一度決定したシラバスは数年(?)変更してはならない(or変更するにはかなり煩雑な手間がかかる)」らしく、当面、違う分野の話題提供すること自体は無理っぽいです。残念。

P.S.
リレー形式になっている&こちらの調整が不十分で、2017年度(1回目のトライ)の時点では資料提示・配布の仕方や中身の難易度、課題の提出方法等がばらばら。この点については、学生から指摘がとても多かったです。今年度はその辺りについての見直しをした分、良くなってるんじゃないかと思いますが、実際に学生視点からみてどうかは後日にならないとわからないですね。

サーバ室で音を当てにした作業は危険

水曜日, 1月 23rd, 2019

先月頃から学科システム(コースシステムになるのか)更新に向けた話が少しずつ進んでて、その一環としてシステム管理チームのミーティングに顔出すようにしています。全く把握してないし。ということでおんぶにだっこ状態な私ですが、長田先生&河野先生の元で指導されたメンバがすごくて、助かっています。

今日はDELLさんの説明〜デモな予定でしたが、先方&私の認識違いのため事前設定を誤り、結果的に今日では終わらず明日もやってもらうことに。ごめんなさい〜。

スキマ時間で明日の授業準備してたんですが、途中で気づかないタイミングで「今年度をまとめたフォルダ」をゴミ箱に移動してたらしく、危うく削除してしまう所でした。ショートカットキーで不要ファイル削除したつもりが、フォルダ削除になってて。普段なら音で「何かゴミ箱に移動した」ことに気づけますが、サーバ室だとファンの音やらでうるさくて。ゴミ箱中身確認せずに削除すること多いのだけど、今回はたまたま確認したので気づけました。危ない危ない。

C言語入門のはじまり

火曜日, 1月 22nd, 2019

まだ「計算機アーキテクチャ」とか「オペレーティングシステム」とかを知らない、コンピュータの動作原理をイメージできていない学年へのイントロ的に、C言語入門を2週間だけやってます。例年だと本当に基本的な文法と構造体ぐらいをやって、ペアプロで演習やるぐらい。

ポインタ周りは、2年次の「アルゴリズムとデータ構造」で教えるからそこまでやらなくてもいいよという話なんですが、今年は2週目にポインタも少し触れてみようかと画策中。アドレスとポインタぐらいを軽く説明して、実際に演習させて演習4ぐらいがイメージできるようになるなら十分かなと。

str型のあるPython、String型のあるJavaをやってから「文字列型?そんなものはない!」という言語にいくのとか。構造体があってクラスがあるという流れでの説明でもなくてその逆になるとか。説明の仕方に工夫が必要ですが、それもまた楽しいです。