Archive for the ‘講義/実験’ Category

留学生いるならその機会を活かそう

火曜日, 4月 16th, 2019

大学院のデータマイニング論2週目で、Python Machine Learningの輪読に入りました。教員からの質問に答えることをベースにした討論でも悪くはないですが、どうせ受講してるならそれなりに「考え方」「物の見方」あたりに触れて欲しいし、留学生いるならそれを英語でやり取りする練習にも使って欲しい。ということで、今年から「3回以上質疑コメントしてね☆」ということに。

強制的にやらせるのもあれだとは思うけど、教育の一環としてはありかなと。正しい英語とか正しい表現とかは二の次でいいから、まずは思ったことをどう表現するか。単語やフレーズからでいいので、少しずつ慣れよう。input/outputしないと身につかないし。

データマイニング論開始

火曜日, 4月 9th, 2019

大学院のデータマイニング論。留学生の特別プログラム向け講義と同時開講にしているので、留学生がいる場合は英語にしてます。

内容は、前半6〜7週間で教科書輪読で基礎を身につけてもらって。後半で論文輪読。やり方は置いといて、教科書だけとか論文輪読だけとかのスタイルが多そうですが、そもそもこっち方面の知識がほぼない学生も来るので、こういう形にしています。

はじめての開講年は受講生数名だったのが、翌年以降少しずつ増えてて。今年は21名らしい。部屋サイズも含めてちょっと過多気味なのだけど、制限かけたりしようかなぁ。興味ある学生の受講を断るのは勿体無いと思うので今の所教室に入る分には詰めてもらってるけど、流石にあの部屋に21名はちょっと。

データマイニングのシラバス検討2

金曜日, 3月 22nd, 2019

[ その1 ]

なるべく差別化をしようとすると、(a)応用編、(b)前処理テクニック、(d)自然言語処理編、(c)実践編あたりに分かれるのかな。

そろそろ大枠を固めようということで、上記(b)+(d)+(a)の組み合わせを想定してシラバス書き始めてます。教科書は指定せず、参考文献を提示し、メインはこちらで資料準備する予定。参考文献として予定しているのは以下の通り。

情報推薦や検索エンジン寄りの話、レビュー分析みたいな話も考慮中ですが、どこかへのおまけとして話すぐらいかしら。

データマイニングのシラバス検討

木曜日, 3月 7th, 2019

2019年度後期から開講予定の「データマイニング」の授業検討な話。「データマイニング シラバス」ぐらいでググると色んな大学の現状を俯瞰できます。

ざっくり上位に出てくるものを列挙するとこんな感じ。こうして眺めると、基本的には「統計学なり機械学習なりを道具として使って、有益な情報を抽出する」というのが大筋になってますね。コロンビア大学のやつは幅広くなってて、データをどう蓄積するかみたいなところも含むらしい。今風だとBigQueryとかも含むのかも。

知能情報コースとしては、統計ベースの話はデータサイエンス基礎(2年次前記)でやってて、機械学習ベースの話は3年次前期に「機械学習」としてやるんじゃないかと。これらの2科目では基礎に留まってるかもしれませんが、少しは応用もしているはず(多分)。それを踏まえてなるべく差別化をしようとすると、(a)応用編、(b)前処理テクニック、(d)自然言語処理編、(c)実践編あたりに分かれるのかな。

(a)の応用編は、文字通り統計・機械学習を道具として「どう使うか」をメインに。(これに最も近いのが前述のシラバス群)
(b)の前処理は、「生データを目的に合う形に処理」をメインに。
(c)の自然言語処理は、応用編の一つとしてテキストの扱い方をメインに。
(d)の実践編は、DB+{Webサービス,アプリ}とかの実装的な話や、具体的にビジネス活用するときの話をメインに。

道具という点から切り分けるとこれぐらいに分かれるのかなと。前処理は面白そうなんですが、体系的な話ができるかと言われると難しくて。(a)+(c)をメインにしつつ、前処理挟むぐらいの方がベターかも。実践編はうまいこと教材作れるかが一番のネック。私自身が知らない点ばかりですが、面白そうではある。ただそれ以外にも、必要な前提知識が膨大な点も大きい。知能情報コースでも難しくて、他コースからはまず無理だろうな。

個人的にはNUMB3RS ナンバーズ 天才数学者の事件ファイルの解説本「数学で犯罪を解決する」あたりを使って輪読的にやるのが面白そうだったりしますが、学部の授業でそういうのはありなんだろうかw

工学概論の担当分終了

木曜日, 1月 24th, 2019

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

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

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

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

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

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

3週目の授業が終了

火曜日, 10月 16th, 2018

プログラミング2の3週目は、待ちに待ったというかようやくというか、「オブジェクト」な話に突入。演習させた感じでは5〜6割が2_7までやれてるらしい。クラス、フィールド変数、コンストラクタ、メソッド、インスタンス、new演算子あたりの話ですね。この辺りの細かい演習は今年始めて用意してみたのだけど、「話しながら手を動かさせる」だけでもなく、追加で「細かく演習やらせる」という形の方が腑に落ちてる学生が多い印象。そんなものかも。

breakpoint設定してデバッグ実行しながらの動作も確認してもらったので、IntelliJの演習にもなったはず。IDE自体は前期でもPyCharmでやってるので軽い説明にとどめてますが、一部のトラブル(多くはインストール周り)を除けば基本的には大丈夫っぽい。

データマイニング班の3週目は、先週の復習から入って「線形回帰モデル」を例に具体的に何をどう学習するのかという中身のお勉強と、scikit-learnのチュートリアルでした。

どちらも今のところは順調かな。

インタプリタ設定 for PyCharm on macOS / Windows

木曜日, 6月 14th, 2018

先週の授業でPyCharmさせて、設定周りでかなり時間かかったのですが、環境構築自体はひとまず一度やれば基本的には良いので同じことやら無くて良いだろうなと思いつつ、実際には10人ぐらい?の学生が例題動かせず。

私が確認した範囲で多かったのは、「何故かインタプリタがPython2.7になっている」、「インタプリタ設定自体が消えている」。また、インタプリタ設定し直そうとすると「ターミナル上から起動してるインタプリタをフルパスで指定しようとしても、設定自体が通らない」。特に最後のやつはかなり悩んだんですが、結果的には「開いてるプロジェクトを閉じて、PyCharm本体のPreferencesからなら設定が通る」ことが判明。いや、確かにプロジェクト開いてる状態だと「そのプロジェクト上での設定」になるのは分かるけど、それならそれで設定通ってくれよ〜(この場合、また新規プロジェクト時にトラブル再発するわけだが)。

あと、2名?がWindows環境で頑張ってるんですが、このうち1名がAnaconda起動できず。具体的には、Anacondaのプロンプト起動しようとすると「activate.batが存在しない」となり、python自体が起動しない状態。ただし、実行ファイルがあるディレクトリに移動したら動く。赤嶺先生がいろいろ試した結果、「Anacondaインストール時に用意されるっぽい起動スクリプトは無視して、OSのシステム環境設定でpythonへのパスを通す」ことで動作するように。

なんだかんだで環境設定はやっぱり手間かかりますね。それ考えるとGoogle Colaboratoryは偉大だ。

専門書よりも最新論文読むほうが面白い?

火曜日, 6月 5th, 2018

大学院生講義のデータマイニング論の話。

情報工学専攻だけではなく、機械工学とか他専攻の学生が受講に来ることもある(というかほぼいる)ということを考慮して、去年までは専門書輪読を優先して余った時間で論文輪読しようかというぐらいの時間割当をしてました。学生の希望取って調整してたんですが、結果として昨年度までは教科書だけになりがちで。これはこれで勉強になるんだけど。

大学院の講義でそれは物足りないよなということで、今年は教科書と論文の時間配分を半々にしてみてます。先週で教科書(の第1部が)終わったので、今週から論文読み。

IEEE/WIC/ACM International Conference on Web Intelligence (IEEE/WIC/ACM WI)
ACM International Conference on Web Search and Data Mining (ACM WSDM)
ACM Special Interest Group on Information Retrieval (SIG-IR)
IEEE International Conference on Data Mining (ICDM)
ACM SIGKDD Conference on Knowledge Discovery and Data Mining (ACM KDD)

論文としてこの辺りのトップカンファレンスでの、ここ数年のベストペーパーを選んでるからか、たまたまなのか、今日発表してたグループは教科書よりも楽しそうに紹介していました。ある程度の前提知識がないとということで教科書導入してるんだけど、なくしてみても良いのかな。

データマイニング論の始り

火曜日, 4月 10th, 2018

データマイニング論が始まりました。今の所受講生は14名、その内7名が留学生なので日本人との割合は丁度半々らしい。はじめての年はゼロで、翌年数人、今年は7名と年々増えてるのが謎ですが、留学生の中で「取るべし」とか共有されてるのかしら。中身的は年ごとに少し違いますが、基本的には「何か教科書でベースを抑えた後で、比較的新しいベストペーパーを読もう」という流れ。去年は教科書読みたがる人が多くて論文まで辿り着けなかったので、今回は教科書と論文の割合が半々となるように調整してます。

教科書は、Data Mining: Practical Machine Learning Tools and Techniques, Third EditionPython Machine Learningから選択してもらって、今回は data mining を読むことに。どちらも新板出てるので、来年度はそっちやるか、別の良さげなものあるか探してみよう。

来週から楽しみましょう〜。

P.S.
この記事書いてたら、去年の受講生(他専攻の留学生)から「この授業でこっち方面のことを勉強し直したくなった。どこそこへ行くので推薦書書いて欲しい」というリクエストが届いた。イイネ!

作業レビュー

水曜日, 11月 29th, 2017

久しぶりのブログ更新。ここ最近は月に数件ぐらいの頻度らしい。ほぼ毎日書いてた頃が既に遠い昔のように感じてるあたり時間の進み具合とのギャップが大きいな。デザインスクールレポート含めて書きたいこともあれこれ溜まってるのだけど、一先ず昨日の日記から。

実験4のデータマイニング班では、「機械学習の基礎を学んでから応用課題に取り組む」というもの。基礎勉強は5週目で終わってて、6〜7週目でテーマ検討してもらってました。8週目(先週)からグループ毎にテーマに取り組むスタイルに変わってて、9週目(今週)から「冒頭で進捗報告(Done/Doing/Todo確認)し、残り時間で作業、最後に進捗整理」という形式になっています。ここまで来るとゼミみたいなものですね。

進捗報告に加えて、実験時間中にやってることが「作業レビュー」。グループから誰か一人がプロジェクタ(大型モニタ)に接続した状態で作業してもらい、そこで気づいたことにコメントするというもの。ペアプロみたいなものでもあるけど、話しながらという訳でもなく、基本的には、作業してる風景見て何してるかを想像し、「ooしたいならxxすると良いのでは?」といったアドバイスをしてることが多いかも。普通にペアプロ形式でも良いし、相談メインでやってくれても良いんですが、普段の作業風景自体に対するアドバイスをすることに重きを置いてるつもりです。

この作業レビューも昔から続けてて、例年通りではありますが「作業風景からやろうとしていることを想像できない状況」というケースがあって。多くの場合は「プログラミング的な思考」に慣れてない学生かも。そういうのを発掘するためにやってるつもりでもあるし、レベルに応じたアドバイスをしたいし、話するだけでもなく手を動かしてもらうのが「実験」でもあるし、といったつもりで作業レビューをしてます。

ま、その時間を有意義に使ってもらえるならナニしても良いんですが。

研究室でもこれをやろうかなぁ。