pyconjp 2018 感想

PyCon JP 2018に行った。火曜日は有給休暇を取った。PyConJPは初参戦。大規模なカンファレンスってデブサミくらいしか行ったことなかったから、ある特定言語のカンファレンスは独特な感じがした。 (Rをほとんど使わないのにJapan.R 2016に行ったことはある)

資料や動画のリンクは以下の2つの記事でまとめてくれている。
PyCon_JP_2018カンファレンス資料まとめ(仮) - 筋肉で解決しないために。
【PyCon JP 2018】発表資料まとめ - Qiita

また、一部のセッションだけではあるが、ログミーTechに詳細な書き起こしが上がっている。 PyCon JP 2018の記事書き起こし - ログミーTech(テック)

【1日目】

基調講演 Argentina in Python: community, dreams, travels and learning

pythonを多くの人々に広めるために、車に乗って各地を回って講座を開催した人の話。すごい情熱だ。

東大松尾研流 実践的AI人材育成法

Twitterハッシュタグを追っている限りでは酷評されてた。 pythonの話というよりは機械学習人工知能の話をやたらと長く説明していた。普段Djangoとか触ってる人は「分からん……」だし、普段から機械学習に携わっている人は「長々と説明しなくてもええわ、退屈」になるし、加減が難しいな。 numpy力を判定する試験のシステムを開発したということなので、一般公開してほしい。

Webアプリケーションの仕組み

普段SIerのお仕事でWeb開発は全くやらないので、良い機会に勉強しとこうと思って聞いた。 まずはDjangoやFlaskのようなWebフレームワークを使わずに非常に単純なWebアプリケーションを書いてみて、少しずつ拡張する様子を実演していた。

Interpretable Machine Learning, making black box models explainable with Python!

機械学習システムで学習してみたは良いけど、そのモデルをどう解釈してよいか分からないのは問題である。モデルを解釈する主な手法を紹介する……という話。 Twitterで講演のjupyterリンクをツイートする、と講演者さんが当日は言ってたけど、結局ツイートしてないね(´・ω・`) David Low(@davidlowjw)さん | Twitter

Partial Dependence Plot (PDP)、Individual Conditional Expectation (ICE)、permutation によるFeature Importance、Local Surrogate Models (LIME)などの手法を説明していた。

この講演とは直接関係ないが、以下のサーベイ記事がまとまっていると思ったので、後で読んでおきたい。 【記事更新】私のブックマーク「機械学習における解釈性(Interpretability in Machine Learning)」 人工知能学会 (The Japanese Society for Artificial Intelligence)

Jupyterで広がるPythonの可能性

最初はメルカリのセッションに行こうとしたけど、満員で入れなかったので途中からこちらを聴講した。 内容がメチャクチャに盛りだくさんだったので追いつけなかった……これは手を実際に動かして習得したほうが良さそう。

Pythonistaの選球眼(せんきゅうがん) - エンジニアリングと野球の目利きになる技術

rettypy主催者の中川さんによる発表。私も2回ほど参加しております。 自分に馴染みのないWeb周りの話が主体だったのでちょっと感想が書きづらい。 主題となった「選球眼」すなわち「イシューからはじめよ」だが、自分は「イシューからはじめる」おとができているのかよく分からない……多分できていない気がする。 どのテーマについて何をどこまで作業するのかを明確にした上で始めましょう、手当たり次第に何でも飛びつくのはやめましょう、というやつだな。 俺自身の勉強は現在、基本的には機械学習周りだけとしているが、機械学習とひとくちに言っても、動画講座はあるわ、論文はあるわ、フレームワークは更新されるわ、と日々の更新が猛スピードで起きている。選択と集中が難しい……

【2日目】

Pythonでやってみた」:広がるプログラミングの愉しみ

気づいたら音声信号処理プログラミングになっていたので音声信号処理エンジニアの俺歓喜

  • プログラミングの動機は2種類 「面倒くさいことを簡単に」「一体どうなってるんだ? おもしろそう」
  • 作り始めるときには、最も単純な構成を考える! 最初から全部やろうとしないのがミソ。
  • 大事なのは、これらの技術を「学ぼう」とか「使おう」と思って制作をスタートしたわけではないということ。技術ドリブンじゃなくて、「何かをやりたい」と思って、あれこれ試行錯誤やってたら結果的に技術が身についた、というのが超大事。
  • 知識と学習は鶏と卵みたいな関係であり、「学習するためには知識がなきゃいけない」「知識を得るためには学習をしなきゃいけない」というジレンマがある。しかしどちらかを始めればあとはグルグル回り始める。

niconicoにおけるコンテンツレコメンドの取り組み

ニコニコの一人のユーザーとしては気づかないけど、色々なレコメンドシステムが裏側で動いているみたいだ。

Pythonistaに贈るコンテナ入門

同時刻にはGraphQLもあり、「なんだ、この時間帯はPythonに直接関係ないことも取り扱おうってセッションなのか?」と思いつつ聞いた。 Dockerは弊社内ではほとんどその名を聞かないのだが(SIだから?)、世の中的には既にかなり普及しているようなので、知っておかないとな、と思いつつ聞いた。

契約書データ関連のAI開発に伴う、前処理及び匿名化処理についての実例

センシティブな情報を扱う際の前処理や匿名化の問題。 発表者(CTO)が「まず私が10万件くらい手動でアノテーションしました」と言っていた。アノテーションがメチャクチャ大変そう。

1次元畳み込みフィルターを利用した音楽データのオートエンコーダ

ずいぶんストライドの大きい畳込みをしていたけど、あれってどういう効果があるんだろうか。音楽まわりの理論をよく分かってないまま実装しているように見受けられた。

料理写真が美味しく撮れる! 開発現場から覗くAI料理カメラの裏側

2月のデブサミでRettyの発表があり、そこでも「おいしく見える写真」を判別する機械学習システムを構築していた。Rettyでは機械学習させる際の教師データはは人力でラベルをつけたが、ヴァズ(サービス名SnapDish)では「いいねがたくさんついた投稿写真が美味しく見える写真」という手法をとっていた。あー、サービス運営してるとその手があるんだ!と思った。

ブース

アイシン精機が出てきたのが印象的で、「ずっと愛知県にいたけど、去年初めて東京都のお台場に開発拠点を立てました」って言っていて「あぁ、これは本気を出して新規事業に取り組もうとしているんだな」と感じた。 少し前に、デンソーが及川さんを技術顧問に迎えたというニュースを見たときも本気度を感じた。自動車業界の各社は、激しい変化にさらされて生き残りの道を探しているんだろう。

まとめ/おまけ

会場が1~6階にまたがっていたので結構移動が大変。 また部屋ごとに定員の数が大きく違うので、どのセッションをどの部屋に割り当てるのかは大変そう。(pyconjpの人がもしここを見ていたらお伝えしたいのですが、音声信号処理の分野は結構独特なので聞く人はそれほど多くないと思います。)

しかしそれを差し引いても、ためになる話が多く勉強になった。来年も参加しようと思う。 (あとはパーティーのときに話す相手がいなくてぼっちだったので……コミュニティに顔を出していろいろな人と知り合いになればいいのかな……?) まずは、1日目の「Jupyterで広がるPythonの可能性」の内容をもう一度見直して手を動かすことから始めようかと思う。 それでは。