2015-06-30

vimでインクリメント/デクリメント

vim7.4.754で、ヴィジュアルモード中の
インクリメント/デクリメントが可能になった。

    a-1
    a-2
    a-3
で、1,2,3の部分だけ矩形選択してインクリメントすると
    a-2
    a-3
    a-4
になる。便利。

デクリメントしたときの挙動が怪しくて、
    a-0
    a-1
    a-2
の次は
    a-1
    a-2
    a-3
に戻る。

-1,-2,-3を矩形選択したときのインクリメントはもっと怪しくて、
    a-0
    a-3
    a-4
になる。謎。
vim_devの議論でも、0を選択したときに符号の付け外しが
おきないという話が出ていて、パッチもついているんだけど
反映されていないのか。
それだとしても、後ろ2行は明らかにおかしい。

あと、個人的には、
    0.100
    0.200
    0.300
で1,2,3を矩形選択したときに、
    0.200
    0.300
    0.400
になって欲しい。現状は
    0.101
    0.201
    0.301
になってしまう(これはおそらく仕様)。

p.s.
7.4.1721で試してみたら上記すべて直ってました。

2015-06-28

-face

mac book airの液晶が壊れて久しい。
最近はnexus 9でネットをすることも多いが、
やはりマルチタスクでないのが不便なときもある。

surface 3を導入することも検討しているが、
一先ずwindows10が出るのを待つかというところ。

現状、入力インターフェイスとしては、
・キーボード
・マウス
・タッチパネル
・音声
等が挙げられるが、先日のコミュニケーションの話からの
連想でいくと、視覚による入力インターフェイスは
この3つには含まれていない。
(あるいは、マウスやタッチパネルは視覚的とも
呼べるかもしれないが。)
瞳の動きをカメラで読み取って視線を追跡する技術は
あるようだが、あれを入力に用いるのは果たして使いやすいのだろうか。
脳から電気信号で直接入力するような案もそうだが、
意図しない入力を如何にフィルタリングするかが
かなり難しいと思う。

音声入力というのも、どの程度高速化できるのかはかなり疑問だ。
音声認識、自然言語処理がどれだけ高速化したとしても、
音声入力が伝言ゲームであることに変わりはない。
検索等は本質的に伝言ゲームであるから、音声入力とよくマッチするが、
ワープロのようなものが音声入力で済ませられる気がしない。


人間へのインプットのスピードを考えると、
情報量が少ないうちは音声>文字であり、
情報量が多くなるにつれて文字>>音声へと発散していく。
多分それは、コンテクストから得られる情報量の差のためであろう。

入力時にいかにコンピュータに対して与えるコンテクストの情報量を
増やせるか。
そこを突き詰めない限り、キーボードを手放せる日は来ないだろう。

2015-06-25

コミュニケーションの分類

コミュニケーションには様々な分類がある。

・知覚による分類:視覚、聴覚、触覚
・時間的隔たりによる分類
・空間的隔たりによる分類

電話が聴覚によるコミュニケーションのうち、
空間的には離れられるが時間的にはあまり離れられない
ものであるのに対し、
メールは視覚によるコミュニケーションのうち、
時間的にも空間的にも離れることが可能なものだ。

空間的には離れられないのに時間的に遅延可能な
コミュニケーションは、例えばかつて駅に設置されていた
伝言板のようなものだ。
このタイプには視覚的なものが多い。

遅延可能な手段があるのに、相手を時間的に拘束する
コミュニケーションを選択するのは、
親しい間柄ではよくみられる傾向である。
LINEのように、既読を知らせる仕組みを実装するのは、
時間的遅延を生じさせにくくするための、ある種のプレッシャ
みたいなものだろう。

今のところ、時間的・空間的に分離可能な触覚による
コミュニケーションは一般的ではない。
送受信地での情報変換のためのインターフェイスが普及していないし、
情報の伝達コストも視覚や聴覚に比べると大きいのだろう。
それが可能になったとき、それでも人が他人に会いたくなる
動機はどこからやってくるのだろう。

攻殻、あるいはharmony

広島さんにはがっかりです。 

それはそうと、攻殻機動隊の新劇場版を観てきた。
ラストのつながり方はこれまで攻殻機動隊を
観てきた人間にとってはとてもうれしかった。

第三世界の問題とは、つまり、人でも物でもなく、
情報としての存在可能性だろうか。
その区分における、人と物の境目はどこにあるのだろう。

・人とは、物理的インターフェイスを伴っていて、
 そこに意識を想定できる対象
・物とは、物理的インターフェイスを伴っていて、
 そこに意識を想定できない対象
・情報とは、物理的インターフェイスを伴っていないもの
としてみると、物理的インターフェイスを取り外されたときに、
意識があり続けられるかということになる。

FacebookやTwitterの投稿の向こうに、私はいつも
意識を想定してしまいたくなる。
明らかなbotを除けば、綴られているテキストには
それを打ち込んだ人間を想定するのが、現状は極自然だ。

だが、ある人が書き、話した言葉をすべてDeep Learningのように
学習させたものにTwitterをやらせたとしたらどうなるだろう。
そこに意識を誤認する人間がマジョリティになるときは
果たして何年後にくるだろうか。
果たしてそれは誤認なのだろうか。
なぜ、そこにもう一つの意識が生まれていると想定できないのだろうか。
多分それは程度の問題に過ぎない。

・認識された意味
・知覚された光
・モニタに表示された文字
・ネットワークを伝達してきた電子情報
・キーボードをタイプした指の動き
・腕の筋肉を動かす指令としての神経パルス
・テキストの内容を推敲したニューロンの網
・ニューロンの間を行き交う化学物質
一体どこに意識は意識をみるのだろうか。


かつて、コンピュータの黎明期には、研究所等に置かれる
メインフレームを中心に、小さなネットワークの中で
各端末がアクセスするという形態だった。
そこから、パーソナルコンピュータが普及したことで、
演算をする場所も記憶する場所も、物理的に拡散し、
その間をインターネットがつないだ。
そして今、クラウド化が進む中で、あらゆる機能が次々と、
再び集まりつつある。


意識の歴史がこれと符合するというストーリィは
とてもSF的だが面白くないだろうか。

かつて、意識が個体に実装される前に、例えば種に
相当する程度の大きさで共有される意識があった。
個体の脳は処理速度も遅く、記憶領域も狭いため、
その方式が現実的だった。

あるときから、脳が大きくなることで、意識を
埋込むことが可能なだけのリソースが個体に獲得された。
ちょうどwindows95が爆発的に売れたように、
あるタイミングでスタンドアローンで動ける個体が
爆発的に増えたはずだ。
この段階で、個体同士がそれまでは共有意識を介して行っていた
コミュニケーションを維持するため、言語を必要とし始める。

そんな時代が長く続いた後、変化のときが訪れる。
あまりにも処理・保存すべき情報が増えすぎたため、
個体は情報をアウトソースする必要が出てくる。

まず始めにアウトソースされたのは記憶だ。
DropboxやGoogleDriveのように、様々な知覚情報を
何らかのかたちで個体の外部に保存する。
文字、絵画、写真等、かたちある物に対して、情報を
埋込み始めていく。
物理的インターフェイスを脱ぎ捨て、電子情報で
保存できるようになることで、その傾向はさらに加速する。
石板に刻む文字、紙に書く文字、パソコンに打ち込む文字。
いずれも保持するデータ量が同じだとしたとき、
おそらく記憶媒体の大きさも、それを扱うのに個体に必要と
される情報も、右にいくほど小さく、少なくなるだろう。

次は演算能力がアウトソースされるだろうか。
その傾向がますます進むことで、個体の脳はより小さくて
済むようになる。
未来の意識は、コミュニケーション能力だけをもち、
判断は外部記憶を基にした外部での演算結果を受信することで
下される。
そこにはもはや今の意味での意識は見出せないのではないだろうか。
あるとすればクラウドの先のサーバの中だけだ。
そここそがまさに、第三世界たりうる唯一の場所かもしれない。


とてもharmonyの世界だ。

2015-06-24

落ちる

最近、golangで実装しているstがたまに落ちる。
スタックトレースにも何も吐かれないので、
原因を探りようがない。

と思っていたら、windowsでGCのバグ(?)があるらしい。

時間ができたらこれを見てみよう。

貯金

ついに貯金が底をついた。
24日に星燕鯉が勝つと全チーム借金。
かえって面白いからやってどうぞ。

2015-06-20

goroutineとDNN

人工知能学会誌のDeep Learningに関する連載を読んでいて、
Rob PikeのConcurrency is not Parallelismに出てきたイラストと、
Deep Boltzmann Machineのイラストが似ているなと思った。


2015-06-19

似顔絵と夢

Google Research Blogの6/17付の記事。
Inceptionism: Going Deeper into Neural Networks

BananaやScrew等の図を見たとき寒気がした。
バナナのイラストを判別するのではなく、
バナナのイラストが描けるようになるまで
もう少しではないか。

同時に、意識なんてこんなもんだと宣告されるときが
いずれ来るのではないかと戦慄する。

Iterationの節では人工知能が夢を見ている。

しかし、およそGoogleほどの、世界最高レベルの
知恵と資源が集まっているであろう企業でも、
現時点ではこのレベルということを考えると、
人間の脳内で行われている演算量の多さは
計り知れない。

人間だと3才にもなれば自我が芽生えると言われているが、
Google Photoの刷新で学習量が爆発的に増えたとして、
3年後のGoogleのAIはもう少しマシなバナナの似顔絵が
描けるだろうか。

変化

公式の情報がなかなかみつからないのだが、
IngressのRESとENLの比率は日本だと
大体2:1程度のようだ。
https://twitter.com/nakamukae/status/545885382944890880
http://kuni92.net/2014/12/ingress.html
http://www.darsana.club/

スマホやタブレットを駆使して先端技術のメリットを享受
している一方で、SF的にIngressの世界観を突きつけられると
RESを選ぶ人の割合が多いというのはとてもおもしろい。

海外でも概ね状況は同じようだ。
(というかredditにIngressのレベル表示がついている…)
http://www.reddit.com/r/Ingress/comments/208r00/just_curious_how_did_the_current_23_enlightenment/

利便性は最大限に受け取りたい、でもリスクなどあってはならない。
ここまで極端ではないものの、ものすごくざっくり言うと
そういった意見がまかり通るのが人間社会であるのかもしれない。

おそらく、常に技術の変化が先行し、人間の変化がその後をついてきた。
この話について考えるたび、最初にペンチをつかった人間のたとえが
思い出される(たしか森博嗣の著作のどれかだ)。

どうして人間の側は変わってこれたのだろう。
リスクは常に0にはならない。
リスクに対する利便性の比率の閾値のようなものがあるのだろうか。

100年後には、原発事故について、事故前のリスクヘッジの甘さと
事故後の過度な拒否反応のどちらも同じくらい時代遅れだなと
思われているだろうか。

2015-06-18

popcorn

popcornしかない(確信)


pop来ーn、おっと誰か来たようだ。
git stash
(あれこれ)
よしmulti stack rpnの実装に戻るか。
(カタカタ)
ハッ
_人人人人人人人人人人_
> pop/(^o^)\corn <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

2015-06-17

multi

マルチスタックのRPNカルキュレータ、
面白い使い道があるだろうか。

・スタック毎に入力できるのでenterキーの
 打鍵数を減らせる
・スタック間のバイナリオペレータが使える

3,enter,*,4,enter,*,+,sqrt → 左3,右4,enter,*,<+>,sqrt
5,enter,4,y^x → 左5,右4,<y^x>


逆ポーランド記法は日本語と語順が近いという話を
恩師から聞いたのがきっかけでHP 35sを使い始めた。
例えば、上の一つ目の操作は「3を2乗したものと
4を2乗したものを足して平方根をとる」になる。

マルチスタックの利用方法を考えていると、
暗算における頭の使い方のほうが変わっていく
必要があるな、と感じる。

2015-06-16

rpn on monaca

この間構想していたrpnをmonacaで実装してみた。

動作にはそれなりに満足いっているが、
何か突き抜けた感がないというか、
こういうものは作れるよね、というものが
できたという感じだ。

やはり、一番最初に来る限界は人間の発想である
ことが、凡人にとってはしばしばである。





2015-06-12

go1.5

goのver1.5のリリースは6/1かと思っていたら8月に
延びていたようだ。

6/9付のdevel版をcloneして、go1.4.2でコンパイルして
使ってみているが、stをbuildするときにつまづく。

C:\go\pkg\tool\windows_amd64\link.exe: running gcc failed: exit status 1
C:/mingw-w64/x86_64-4.9.1-posix-seh-rt_v3-rev2/mingw64/bin/../lib/gcc/
x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mingw32/bin/ld.exe:
 i386 architecture of input file `C:\Users\***\AppData\Local\Temp\go-link-
352082723/000000.o' is incompatible with i386:x86-64 output
collect2.exe: error: ld returned 1 exit status

というエラーなのだが、やっと原因が判明。
アイコン用に用意していた.sysoファイルのせいのようで、
一度消してwindresで再度生成したら無事buildできた。
おそらく、32bit版のmingwに同梱されているwindresで
コンパイルしたものを使い続けていたせいなのだろう。

rpn

RPNカルキュレータを設計中。
golangではコーディングもできてwin、macとも
使えるものになったが、androidに移植したい。

gomobileかmonacaあたりか。

とりあえずロゴはできた。

演算子の中でロゴに使えそうなものということで
根号を採用し、逆ポーランド記法なので反転。
根号はrootの頭文字rをベースにデザインされた
ようなので、reverseのrにも通ずる。

Vim風キーバインドは所詮「風」でしかない。
広島風お好み焼きみたいなものだ。

そういえば、大阪風お好み焼きというものは聞いたことがない。

2015-06-11

さおり

手すりにおつかまりください

佃煮借りています さおり

2015-06-10

Linguee

Lingueeというウェブサイトがとてもよい。

もともと2言語で用意されたテキストから検索できるので、
文脈込みで自然な言い回しやコロケーションが調べられる。

これと機械学習を組み合わせれば自動翻訳はもう少しマシになるのでは。

2015-06-09

履物

履物の向きに関する注意書き


履物は適切な向きに揃えて脱ぐこと。
“適切な向き”とは緊急を要するときに
履きやすい向きのことである。

部屋からは出る時が緊急時、
トイレには入る時が緊急時である。

hIE

長谷敏司のBEATLESSを読み始めた。
これはかなり面白そうだ。

ただ、100年後の、実用化されてしばらくたったであろうAIが、
設定通りの行動パターンしかとれないなどということがあるだろうか。
あるとしたら、それは政治的等の何らかの理由で制限されている場合だけだ。
いや、そうあって欲しい。

ディープラーニングの力は凄まじい。
一度AIがあのレベルで実用化されたとしたら、
データの収集は加速度的に速まり、驚くべき速度で学習が進むだろう。

各アンドロイドには学習済みのデータがインストールされ、
サーバにはそのアンドロイド達から時々刻々新たなデータが送られてくる。
アンドロイドの内蔵データは定期的に最新の学習データに更新される。
膨大な計算が必要なのはサーバサイドのみであるから、
クライアントサイドには今のスマートフォン程度の性能で足りるだろう。
現状大きく不足しているのは通信部分かもしれない。
安定していて、高速で、あらゆる場所で有効な無線通信網が整備される必要がある。

あとは、利用者が適切に学習させてくれればよいが、
そこは利用者の利益に敵う部分であるすれば、
悪意をもって学習データを破壊しようとしない限りは
大きく逸れることはないだろう。


そこまで到達したとき、果たしてAIは学習の基準に疑問をもつことが
できるだろうか。

善人のように振る舞うためには善人とはどういうものかという基準がいる。
それはつまり、ある行動が善人のものか否かという判断の積み重ねだ。
その判断基準に疑問をもつことは、ディープラーニングの枠組みの中だけで
可能だろうか。

演繹は入れ子にする意味に乏しいが、帰納は入れ子にすることで新たな意味を獲得する。
おそらく、再帰構造の中にしか、人間は人間性を見出せない。

2015-06-07

logo


ロゴを新たにデザイン。

ひらがなの「ふ」の中を数字の3にするという発想から、
アラビア数字、ローマ数字、漢数字、∴のようなもの等を
試し、アラビア数字の3に似たカタカナの「ヨ」を採用。
YofUの両方が入ることになった。

要素自体はできるだけ簡単なものにしたかったので、
直線と円弧のみで構成し、角度は3:4:5のピタゴラス数で統一。
ascii文字のみで(3)とも表せるような並びとした。

2015-06-06

早安楽

「こっから護国寺ってどう行くんだ?
おい、ちょっと調べてみろよ。」
「ああ、えーっと、飯田橋乗り換えだな。
一本待った方が良さそうだぞ。」
「んなことあるかよ。これ乗ってった方が早いって。」
「でもほら、はやいやすいらくいって出てんじゃん」
「らくいって何だよ。それはほら、たのしい、だろ。」
「たのしいってなんだよ。乗り換えにたのしいもつまんないもあるかよ。」
「あれだほら、乗り換えの途中にガチャポンとか置いてあるんだろ。」
「ガチャポンってまた古いな〜。久々に聞いたよ。」


是非、前者を小林賢太郎、後者を片桐仁でやってほしい。

2015-06-05

wind

Spring has come, Wind has calmed.

エミュレータ

こちらでshi3z氏も触れられているが、
ディープラーニングによって、コンピュータは
演繹的にだけでなく帰納的にも演算可能になる。
(そういえば、「演算」という語はいつ作られたのだろう。
演算の演が演繹の演だとしたら、もはや帰算可能ということになる。)
@shi3z also mentions it here,
Deep learning will enable computers to operate
not only in the deductive way but also in the inductive way.

ついに人間のエミュレータが作れるのである。
emulatorの語源aemulusがrivalを意味しているのは面白い。
自ら天敵を生み、天敵に支配される恐怖を抱きながら生きる。
いかにもSF作家が好きそうな世界ではないか。
In the end, it will be possible to create human emulator.
It's really interesting that the word "emulator" is derived from
the Latin word "aemulus" which means "rival".
Generate our own rival, and live a life with fear to be controlled,
which sounds like pretty common SF story, doesn't it.

2015-06-01

右ねじ

投げる動作、打つ動作、蹴る動作。
すべて右利きは上から見て反時計回りに身体を回転させる。

右ねじを締めるときは時計回りだ。
つまり、手を上げた状態だと身体と腕の回転方向が揃う。

これは、かつて前足が前を向いていたことの名残だろうか。
そういう視点で身体構造の進化学を見てみると面白いかもしれない。


注:
冗談です。
左手は下げたときに反時計回りに回しやすいことを
考えると、右手を前に出して左手を後ろに下げた格好で
生きていた生物を想定することになってしまう。
こういうなんでもないところから似非科学が始まるのだろう。

必要

いつの時代も情報とエネルギィが必要とされてきた。

ものが増えすぎたために、一見すると必要なものまで
増えてきたように錯覚するが、つまるところ生き延びるのに
なくてはならないこの二つにこそ、対価を払うだけの価値がある。

情報を格納するための記憶媒体、
情報を伝達するための回線網、
情報を使用するための回路、
これらはいずれも、性能あたりの単価は
いずれ下がっていく。

情報それ自身は、発生源ではその価値が
認識されないのに、そのうち次第に価値を
帯びてくる。
不思議である。