自分らしくないものができあがると楽しい

またもや昼ごろ起床.

昨日 H 研究室に呼ばれた時に,失踪した某人についての話がでていた.係についてはよく知らないが,研究室からいなくなったことについて,自分に落ち度があるのかないのかよくわからない状態で色々いうのもどうかと思って,特に擁護も批判もできぬ….が,自分には大きな落ち度はないと思う.思いたい.

ただ,自分について色々考えてみると,まあ反省しなきゃいけないことは多いと思う.基本的にはみんな気持ちよく「良い研究」ができるのが一番良いと思うから.でも,気持ちよく仕事をすることと,良い仕事をすることがトレードオフになることは世の常だし,その解決策はチームにより様々だし,案件毎に色々悩むものなのだろうし,そうする他ないのだろう.

閑話休題.後輩と話していて面白かったことについてまとめておく.

私は昔書道を割と真面目にやっていたのだけども,臨書にしろ創作にしろ,「自分らしくない」作品ができた時が一番楽しかったのを覚えている.出来上がった作品を見ても,とても自分が書いたように思えないが,でも自分の意図がきちんと作品の中に反映されている.

風邪引いた時,ちょっと鼻声になったりして「いつもと違う雰囲気の声」になるけど,あれがなんか良いなと思う感覚に似ている気がする.

小学校の時の習字の時間で,今でも覚えている話がある.教科書のお手本をなるべく上手に真似しようとしていたら,先生に「もっと元気よく書いて見たら」と言われた.もっと元気よく書いたら教科書から離れるだろう,と思ってだんだんムカついてきて,バカみたいにぶっとい線で書いて遊んでみたことがあった.出来上がった作品は,それはもう黒々とした何かで,もちろん俺は「あっはっは,ほらみろ,元気よく書いたてみたらお手本とは似ても似つかない何かになったべさ」と思ったのだが,先生には「あ,それが一番いいよ」と言われて,「何を言ってるんだこいつは」と思った.まあでも先生が言うなら,と,結局その作品を提出したのである.

んで,後日,そのぶっとい黒々とした作品が教室前の廊下に貼られているのを見て,「あー,そういえばこれ俺が書いたんだっけ,確かにいいわ,これ」と改めて思ったわけである.なんだか自分が書いたように思えない.けれども,これが表現の幅が広がるということなのか,と.要するに,今後,そういう太い線が自分の創作の中で使えるようになるじゃん.

およそ創作と呼びうるものは,そういう出力とのインタラクションのなかで「自分らしさ」というものの厚みとか,幅が広がって行くのだと思うよ.今ある「自分らしさ」で塗り固めた作品も良いかもしれないが,外界との風通しが良い作品の方が,表現に必然性を産むし,一周回って愛着が湧くのかもしれない1

と思うと,じゃあ人工知能が何かを表現・学習するとはどういうことだろうね,と思う.あるいは,人間の創作のプロセスの中に人工知能が入るとしたらどういう余地があるかね,あるいは,どうやって入り込んで行くと人間は幸せになれるかね,と思う.

人工知能は画風を学習したりすることができるようになったが,それは人間が「自分らしさ」の厚みを増して行くプロセスと同じと見做しうるだろうか? 正直なことを言うと,自分にとってかなり興味深い問題でありながら,まったく論じる題材がない.人工知能のほうの仕組みも実は私は全然理解していないのだが,一方で,人間の方の認知的な仕組みも理解していないし,生きている間に理解できるとも思えない.

んまあ,人工知能というと,やれ仕事が奪われるとか,やれ支配されるとか言うわけだけれども,そうではなくて,人工知能とのインタラクションのなかで,人間の認知の不思議を内省的に理解していくことができれば良いと思うよ.それは非常に明るいというか,魅力的な未来な気がするんだけどねえ.

閑話休題.ネットが死んだ時に,近くの研究室などに「ネット死んでませんか?」と確認しに行くのは,なんだか昭和のドラマでよくあるような醤油を借りに行くシーンみたいで,ちょっと楽しい.


  1. 「およそ創作と呼びうるものは」といったけど,冷静に考えてみると,これは書道特有の事情であって,白い部分は白い絵の具で塗りつぶすような絵画の世界になると,また状況は少し変わってくるのかもしれないなと思う.彫刻や絵画など,基本的には細部までコントロールするのが前提の芸術と,音楽や書道のように一回性を重視して細部の偶然をも楽しむような芸術があるのではないだろうか.

地味に LaTeX 歴が5年目に入った

昼ごろ起床.そのあとなんだかんだで夜まで家にいた.

んで,深夜に H 研究室に呼び出されたので行ってみる.なんか半年ぶりぐらいに M 君を見た気がするが多分気のせい.

よくわからないが,S 研究室の N 君が LaTeX で一悶着あったらしい.一瞬で解決したが.

この時期になってはじめて LaTeX を触る感じだと,色々辛いだろうな.間違いなく入門書を順番に読んで…という暇はなく,行き当たりばったりでその都度やり方を調べて…という感じになるだろう.

まあプログラミング言語というのはそうやって覚えるものでもあるのかもしれないが,どこかのタイミングで入門書は眺めた方が良い.綺麗で常識的なコードを書けるようにするためである.

一方私はというと,これは決して褒められたことではないのだが,浪人してたときに使いもしない LaTeX にオオハマリして,色々文書を作ったりしていた.受験勉強そっちのけで.ということで地味に LaTeX 歴は 5 年目に突入した.LaTeX に関しては,多分そこらへんの修士よりも長く書いていて,ノウハウも多少溜まっている.まあ,溜めたままにしておくのももったいないので,なるべく LaTeX に関しての質問は答えようと思います.「こういうことしたい」と言ってもらえれば,多分半分ぐらいは即答できるんじゃないかな.という感じに,歩く入門書として使ってくれて構わないです.

センター国語の誤答選択肢みたいな会話の応答をどうするか問題

昨日,くだんの実験の件で大騒ぎしたあと寝落ちして,昼ごろ起床.結局一人で大騒ぎしただけじゃないかという気がして,少し嫌になってくる.昨日のブログの PV 数がやたら多くて, Hatena のアクセス解析によれば,全記事の中で最も読まれていることになっている.大昔に多少バズっだ記事(今は削除済み)すら抜いているので,ちょっと薄気味が悪い.傾向として,研究室関係のやや生々しい話をするとアクセス数が伸びる事が多い(といいつつ,細心の注意を払って個人情報は排除しているつもりである).これはどこかで話題になっていたりしてるのだろうか.

んで,ちょっと他人の研究のバグ取りを色々試したりしてみてた.なかなか複雑なので1日ですべて把握できるというわけにもいかないし,難しい.結局無駄になるかもしれないが,まあ来年のこともあるわけだし,このプログラムをみておくというのは悪いことではないだろう.

それにしても春らしい陽気で良いね.季節の変わり目でもないが,こういう「季節外れの日」というのはなんとなく好き.春が待ち遠しい.

本題.話題になったこと.

現実は複雑で,魅力的な謎に満ち溢れているので,ちょっとぐらい複雑な話をしたいときもある.んで,そういう話をするときに,ことごく「全然違うとは言えないけど,無視できないぐらいには違う」応答をしてくる人がいる.

Aだよね.たとえばさ,B とかあるじゃん.

という話をした時に,「あー,Bってよくあるよね,わかるわかる」みたいな応答をされると,「俺が主に言いたいのは A で, B はその一例として出しただけなのに.こいつ俺の話を大して聞く気ないな」という気分になる.

逆に,

A ってことがあったんだよね.やっぱり B (一般論) ってことなんだね.

という話をした時に,「やっぱね, B (一般論) だよね」みたいな応答をされると,「いや B なんて一般論であって,この話の面白いところはそれに A っていう具体例があったよというところじゃん,こいつ俺の話を大して聞く気ないな」という気分になる.あと,「やっぱ人の趣味はそれぞれってことだね」みたいなやたら大きな一般論でまとめられた場合も,「いや今更なんでそんな一般論みたいなことを確認されなきゃあかんねん,こいつ俺の話を大して聞く気ないな」という気分になる.

あと,

Twitter で A みたいなことがあったんだよね

という話をした時に,「Twitter なんてそんなところだよね」みたいな応答をされると,「いや A の話をしたいんだよ俺は,なんでお前に Twitter の性質を教えられなあかんねん,こいつ俺の話を大して聞く気がないな」という気分になる.

まあ,話を聞く気がないのであればそれ以上その人に話をしなければ良いだけなので,良い.

もちろん上にあげたのはあくまでも一例で,実際には会話の文脈によりけりなのだけんども,ことごとく「センター国語の誤答選択肢」みたいな会話の外し方をしてくる人はなんなんだろうねえ.あくまで自分の観測範囲内での話だが,空気を読むのに長けている人とか,そういうことを重視する人というのは,こういうやや厳密な話の展開を読むのは苦手な気がしている.正確さよりも,スピードとか雰囲気が重視される会話の文脈の中で生きているとそうなるのだろうか.

まあ「話し言葉」はそれでよいだろうが,そういう「雰囲気でものを考える」という癖が「書き言葉」にまで現れる人は,学問の世界にいると苦労し続けるんじゃないかという気がする.とりあえずキーワードだけ並べられると「それっぽく見えてしまう」というタイプの人がそれである.そういう人の書くものは,レポートや論文にしても,論点があっちこっちにいったり,論点が曖昧だったり,果ては主述の不一致とか句読点が足りないみたいな基本的なことまで,とにもかくにも悪文見本市のような感じになっている.そういう文章はダメなので,色々指摘を喰らうことになるわけだが,雰囲気でものを考える癖のある人は,その指摘の意味すらきちんと取ろうとしないので,「なんどやってもダメと言われる,自分は教員にいじめられているんじゃないか」と被害妄想が逞しく膨らんだりするわけだけど,そうなるとたいそう不幸だろう.教員の方も,何度言っても伝わらないので,ちょっと強い言い方になったりしてしまう.

とにもかくにも,アカデミックな世界において,文章を読むとは,そこに内在する論理構造を読むという事だし,文章を書くとは,論理構造を表現するということである.何が問題なのか.何を明らかにしたいのか.何と何が,どういう基準で比べられているのか.どういう手法をつかって,何がどういう観点から評価されているのか.こういうのは,キーワードだけ拾えば・埋め込めばそれだけで理解できるというほど簡単な話ではない.

と,まあ,自分は浪人したときの現代文の先生に恵まれていて,なんとなくそういうことはわかっていたつもりであったが.より実践的な形でそれを確認できた4年間であったな.もちろん,文章の窮みにはまだまだ至らないし,まだまだ学ぶべきことも多いが.だがしかし,それはどんなに慣れている人であってもそうであって,だからこそ良いものを作ろうと思うと peer review が大事になるし,実際研究のコミュニティーではそれが重視されているんだと理解している.(ところで,この peer review の考え方がすっぽり抜け落ちてる人とか,いったい大学で何を学んだんだろうとマジで思う.)

閑話休題.ところで,世の中の多くの人たちは別にそういう「小難しい」会話はしたくないと思っているんだろう.母親にはよく「大学に行けばあんたと話し合う人いっぱいいるよ」と言われたが,結局数人ぐらいしかいなかったな.

研究室には来た方がいい,マジで

昼ごろ起床し,Amazon でポチっておいた本などをヤマトの営業所まで出向いて受け取ってから出勤.

んで,夜に,明らかに不安なツイートが飛び込んでくる.友情パワーで次々人が集まっているのは結構なこと,だがしかし,これは絶対何も考えてないやつだと私の直観が言ったので,色々聞いてみたら,やはりビンゴ.何も考えてないというほどではないが,実験するときの環境などが綺麗さっぱり抜け落ちているみたい.(にしても,予備実験もしてない状態で人を集めるのも正気の沙汰じゃないと思うが,人を集めたというより勝手に集まって来た感もあるし,まー,仕方ない気もする.)

これは,ちょこちょこ研究室に来ていたら防げた事故だったと思う.研究室には,先行してこういう実験をやっていた人がいた.その様子を少しでも見ていたら確実に防げたミスだろう.というわけで,マジで研究室にはちょこちょこ来るべきである.さらにだ,「人に使ってもうもの」について研究しているんだからなおさら,他人というのは重要な研究リソースになるわけで.誰かがいるところでやれば,ちょっと試しに操作してもらうとか,ちょっと人に意見をもらうとかが,早めにできる.所詮B4なんか研究ごっこ,という意見もあり得るが,研究ごっこだからこそ,成果そのもの以上に,そういうプロセスを丁寧にやるべきである.

他人とまともに議論するというのは当たり前のように重要.議論すると意見をもらうことが大事だと思ってしまうが,そこまでいかなくとも,他人にわかるように話してみることで自分の理解が促されるということもよくある.そうやって他人は使うもんだし,そこはお互い様である.普通,研究に関わらず,様々なプロジェクトにはそういう「他人を使うこと」が必要になってくるわけで,そういう時にこそコミュ力が発揮されるわけであるし,コミュ力を身につけるとは,そういうことがきちんとできるようにするということである.んで,研究を通してそういうメタなスキルも学んでいるわけで,と考えても研究室には来た方が良い,マジで.

(もちろん,精神的に辛いのに無理して来る必要はない.精神的に崩壊しなくて済むことに比べたら,そんなものは屁みたいなものだから.ただ色々放り出した上での疾走はやめて欲しいが.)

次に,やはり,何かオフィシャルにないと10人集まらないという感覚もおかしい.これも普段研究室に来ていればわかることだが,10まで行かなくても,5,6人ぐらいは普通に集まる.んで,集めようと思えば,その5,6人の人脈でもう5人くらい集めるのは屁でもない.それに,10人一気にやらなくてもいいわけだし.まだ失敗する可能性があるんだったらなおさら,いきなり他所に声かける前に,予備実験も兼ねて自分のところに声をかけるべきである.

あと,これは来年への自戒も込めて.やはり,やるんだったら「普段から自分が使っているもの」か「自分が本当に使いたいと思うもの」について研究した方が良いよね.

大昔,ある人に「その製品をセールスするんだったら,絶対に自分が使わないとダメでしょ.それは Apple ストアに行けばわかる」と言われて,ピンとこなかったので Apple ストアに行ったことがあるが,たしかに行ってみたら「あー,なるほどね」となった.店員さんが仕事の中で自然に Apple 製品を使っていて,それがユーザーとしてのロールモデルも兼ねているんだね.自分が愛着を持って使うものを売るからこそ,良い仕事ができるというわけなんだろう.(んまあ,Apple の仕事全てが良い仕事とも思っていないが…)

というわけで,研究も同じようなものだと思う.とくにユーザーインターフェス絡むような研究だったらなおさら,自分が本気で使いたいと思う道具を作るべき.当たり前のことだか,なかなかそういうテーマを決めるのは難しい.そういうテーマが決まってしまえばどんなに楽か,という気もする.

さて自分について省みると,自分もある程度ユーザーインターフェスが絡むような内容で,本当はユーザースタディした方が良いのだろうが,まずできないので仕方ない.し,見た目のインパクトから主張は明らかな気もするので,まあ良いかという気もする.んで,肝心の自分が使いたいかというところだが,これは「使っても良いかな」とか「たまに使いたい場面がある」という程度で,決して悪いてまーでもないが,ドンピシャ良いテーマではなかったという気がしている.けんども,ある程度使える場合と使えない場合もわかって来て,ある程度まともなものも示せるということがわかったし,使える場合には「書き換えしたい部分の狙い撃ち」が素の状態よりもだいぶ楽なこともわかった.

自分でテーマを決めるというのが一番難しいという意味がはっきりわかった.「やりたいことを研究する」のが一番だという気もするが,テーマ自体の責任も自分で追うことになるので,B3などはよく覚えておいた方が良いと思う.研究テーマ決める前ぐらいにはプロトタイプが出来上がってるぐらいの意気込みが欲しいんだろう.

大物を倒す

あんまり寝てない.寝てないせいで勢いで制御の教科書を買ってしまうなど.普段はプログラミング言語の研究ごっこをしているが,一方で機械学習とか制御とかも,やりたいことの親戚分野として気になってはいるのだ.

んで,証明としては大物を倒した.やはり大物を倒すとすごい開放感だ.結局984行の証明.うーん,こうしてみるとあんまり分量がないものであるなあ.しかも大半はシフトや代入関係の補題にとられているし.ちゃんと(非形式的な)証明書いてある教科書でも,(概念の定義とか準備とかのぞいて)3〜6ページぐらいでできてしまうっぽいし,そんなもんだろう.

さてこれで終わったわけでもなく,これをベースにした実装した Notation を試してみる必要がある.だがしかし.思った以上に場合分けとか仮定の方の操作が多いので,うまく実装した Notation はのっからないなという気もしている.それはそれで問題点が明らかになったのでよろしいとしよう.

とうわけで,昼は安心してカレーを食べに行くなど.そのあとちょっと仮眠る.

仮眠ていたら,某アレのために起こされる.傍迷惑な,と思わなくもないけど,事が事なので仕方あるまい.クジを引いたら何も書いてないのを当てた.事実上のアタリらしいが….K君には,思ってもない仕事を増やしてしまって申し訳ないな….が,まあ俺が悩んでもしょうがないので放置.

夜は後輩の発表を聞く.大半の同級生よりまともなことを言っている気がする.「大学では,学年と学力の相関はない」という実例がまた一個加わった.にしても,学年が上というだけでマウント取らなきゃいけないみたいに思っている人たちはなんなんだろう.しかもその挙句,マウントが明らかに間違ってる奴らもいるし.未だに数学できる面しときながら「行列式って結局なんなんですか」というごく基礎的な質問にもたじろいで俺に話振ってごまかしたあいつとか,誤解に基づくアレなのにこちらの話も聞かずに仕事なのに酷い形で途中離脱していった人とか,仕事なのにフェードアウトしていった人とか,なんの根拠もなく「ディープラーニングは理由がわからないので研究じゃない」と言い放ったあのあいつのことは覚えているぞ.まあそいつらのせいで,この大学の修士にいいイメージがまったくなかったのだが,幸いにして,所属研究室の修士が1.5人ぐらい除いてまともな人たちだったので,ありがたいものである.

閑話休題.ところで彼は卒業する気はあるのだろうか.今ならまだ間に合う気もするし,間に合う最後のタイミングという気もするが.疾走されると余計な心配しなきゃいけないのでよろしくない.せめて疾走する理由を言ってから疾走して欲しい.が,それができるぐらいなら疾走していか,がっはっはっは,という気もする.という冗談はさておき,自分も思い当たる節がいくつかあって,まあそれもあるかもしれないなと思って反省してはいるが,やはりもやもやするな.ホンネとタテマエを使い分ける文化なんぞろくなことはねえ.

Beamerで狙い撃ちで矢印を出す

起床時間とかよく覚えてない.Beamerで,こういうスライドを作った.

f:id:acrost:20180118124632p:plain

このスライドみたいに,Beamerスライドの任意の位置から任意の位置へ矢印を出せると便利である.WYSIWYG系のプレゼンテーション作成ツールに慣れていると「そんなの簡単じゃん」と思うだろうが,LaTeX ベースの Beamer だとなかなかそうはいかない.

んで,結論から言うと,TikZ の図画間結合なるものを使えば良いことがわかった.詳細は以下に詳しい.

d.hatena.ne.jp

上の記事によれば,e-pTeX はそのままだと文書内の絶対座標取れないらしく,図画間結合がサポートされないらしい.が \usepackage{pxpgfmark} することで解決するらしい.

ということで,めでたく冒頭のようなスライドができるわけである.

プリアンブルはおおよそこんな感じ.

\documentclass[11pt, dvipdfmx]{beamer}
\usepackage{gfsartemisia-euler}
\usepackage{mkbeamer} %自分用のスライドデザインパッケージ.TikZとかもこの中で読み込んでしまってる

\usepackage{bussproofs} % 証明図
\usepackage{pxpgfmark}

\newcommand{\tikztextbox}[2][T]{%
\begin{tikzpicture}[baseline=(#1.base),remember picture]%
\node[inner sep=0pt, outer sep=1pt] (#1) {#2};
\end{tikzpicture}%
}

\newcommand{\tikztextboxhighlight}[3][T]{%
\begin{tikzpicture}[baseline=(#1.base),remember picture]%
\node[inner sep=0pt, outer sep=1pt, fill={#3}] (#1) {#2};
\end{tikzpicture}%
}

んで,スライドの中身.

\begin{frame}[t, fragile]
\frametitle{証明規則と型付け規則は似ている?}

\begin{itemize}
\item \emph{証明規則($\mathbf{NJ}$の一部)と型付け規則($\boldsymbol{\lambda}_{\to}$の一部)には対応関係がある}
\end{itemize}

\begin{center}\small
\arrayrulecolor[rgb]{0.7, 0.7, 0.7}
\begin{tabular}{|c|c|}\hline
\rowcolor{ThemeColor!80!darkgray} \textcolor{white}{証明規則($\mathbf{NJ}$の一部)} & \textcolor{white}{型付け規則} \\\hline
\rule[-1.5zh]{0zh}{2.5zh}\begin{minipage}{0.35\linewidth}
\begin{prooftree}
\AxiomC{$\varphi \to \psi$}
\AxiomC{$\varphi$}
\RightLabel{\footnotesize ($\to$-elim)}
\BinaryInfC{$\psi$}
\end{prooftree}
\end{minipage} & \begin{minipage}{0.55\linewidth}
\begin{prooftree}
\AxiomC{$\varGamma \vdash M : \alpha \to \beta$}
\AxiomC{$\varGamma \vdash N : \alpha$}
\RightLabel{\footnotesize (app)}
\BinaryInfC{$MN : \beta$}
\end{prooftree}
\end{minipage} \\\hline
\rowcolor{gray!20} \rule[-4zh]{0zh}{8.5zh}\begin{minipage}{0.35\linewidth}
\begin{prooftree}
\AxiomC{}
\RightLabel{\footnotesize [$x$]}
\UnaryInfC{\tikztextboxhighlight[la]{$\varphi$}{udblue!20}}
\noLine
\UnaryInfC{\raisebox{4pt}{$\vdots$}}
\noLine
\UnaryInfC{$\psi$}
\RightLabel{\footnotesize ($\to$-intro)[$x$]}
\UnaryInfC{\tikztextbox[lb]{} $\varphi \to \psi$}
\end{prooftree}
\end{minipage} & \begin{minipage}{0.55\linewidth}
\begin{prooftree}
\AxiomC{$\varGamma , \, \tikztextboxhighlight[ca]{$x : \alpha$}{udblue!20} \vdash M : \beta$}
\RightLabel{\footnotesize (abs)}
\UnaryInfC{$\varGamma \tikztextbox[cb]{} \vdash (\lambda x {:} \alpha . M) : \alpha \to \beta $}
\end{prooftree}
\end{minipage}\\\hline
\end{tabular}
\end{center}

\begin{itemize}
\item 型コンテクストはまだ解消していない仮定とみなせる
\visible<2->{
\begin{itemize}
\item \emph{(abs)規則で,型コンテクストから$x : \alpha$を消すのは仮定の解消に対応}
\end{itemize}}
\end{itemize}

そういや,LaTeX であんまりインデント気にしたことないなあ(へんな挙動すると嫌なので….もちろん自分が不勉強なだけで,いろいろノウハウはあるのだと思う.)

インフルエンザ

朝寝て,昼ごろ起床.

インフルエンザの第一報.一緒に雪見に行ったりカラオケ行ったり唐揚げを揚げたりした人なので,これは俺も来るな….

www.meiji.co.jp によれば,インフルエンザウイルスの潜伏期間は1日〜2日だそう.ということは,今日の夜から遅くとも水曜日には出るという感じかなあ….

もしインフルになったら,研究に打撃だが,まあ卒論の方はほぼ終わっているので問題なかろう.けんども,外部の方に持ってこうとしてたのは絶望的だな.