Hatena::ブログ(Diary)

NextReality このページをアンテナに追加 RSSフィード

2014-03-05

e-Taxへの提言

e-Tax (国税電子申告・納税システム)http://www.e-tax.nta.go.jp/は難しいという評判が定着して、みな恐れをなして使わなくなってしまっている。使うのは税理士などのプロに任せている場合がほとんどではないか。申告書をWebのインタフェースで作成し、それを印刷して郵送している場合が実態としては多いと思うが、せっかく電子情報として作ったものをわざわざ紙に印刷し、物理的に送り、それを税務署側でまた電子情報に打ち込み直していることになる。壮大な無駄である。もちろんそのコストは国民の税負担に反映されている。

ただ、申告書の作成インタフェースそのものは別に難しいわけではない。最後の電子申請するところに複雑さが集約されている。現状のe-Taxでは、電子証明書を利用したきわめて「セキュア」な申請を実現しているが、それにはまず住基カードを取得しなければならない。つまり区役所に出向かなければならない。その証明書は3年ごとに失効するのでその度に区役所に出向く必要がある。住基カード用のリーダーのような余計なハードも必要になる。電子証明書の扱いの制約のため、e-Taxが可能なのはWindowsのみ(MacOSLinuxでは不可能、タブレットスマホはもちろんNG)となっている。

住基カードには2種類のパスワードがあってとっさにどちらを要求されているのかがわかりにくい。しかも一定回数間違えるとパスワードロックされてしまう。その場合、また区役所に出向かなければならない(というか私は行きました..)。恐ろしい。

e-Taxそのものにもパスワードがあるので、電子申請に関して、住基カード関係の2種類と、e-Taxパスワードの3種類があって不必要に複雑である。なぜかe-Taxではパスワードのことを暗証番号と言う(以下)ので、さらにわかりにくくなっている。日本語では「番号」というと英字は含まず、「桁数」も英字に対しては言わないと思うのだが。

f:id:rkmt:20140305132549j:image

それはともかくとして、考えてみれば、紙に印刷した状態の申請書は単に税務署に郵送しているわけで、書留にすら通常はしない。そのレベルのセキュリティでよければ、Webで作成した申告データをそのままアップロードするだけでいいのではないか。どうしてもセキュリティがどうのと言いたければ、納税者が自分で選択できるようにすればいいだろう。Webアップロードか、電子証明を介した送信かを選択できるようにすればだれからも文句はでないと思うがどうだろうか。

もう一歩踏み込んでいえば、オープンガバメントとして、確定申告用のAPIを公開してくれれば、きっと誰かがタブレット用のアプリとかを作ってくるだろう..

2014-01-14

自分の英語文書をマイニングして次に学ぶべき単語リストを自動生成する方法

英単語の語彙をどうやって増やしたらいいだろうか。やみくもに単語集みたいなものを順に覚えていくのも道程が長そうだ。また、一般論ではなく自分がよく書く分野に特化して語彙を増やしたい。ということで、テキストマイニングを使ってやる方法を考えてみた。方針は以下の通りである:

  • 自分が今までに書いたすべての(英語)の文書を解析して、品詞ごとに出現回数でソートする。
  • つぎに、自分の所属するコミュニティの文書(たとえば自分がよく参加する学会に掲載される論文など)をなるべく大量にあつめて、同じように品詞ごとに出現回数でソートしておく。
  • 両者を比較して、そのコミュニティでは使用頻度が高いにも関わらず、まだ使ったことのない単語を抽出して自分専用の「単語集」をつくる。

こうやって抽出された単語集を勉強すれば、一般的な単語集を使うよりも効率がいいのではないだろうかという目論みだ。対象となる分野を選んでいるのは、たとえば情報科学で使われる単語と、政治学で使われる単語は傾向も違うだろうから、なるべく自分が書きそうな分野の語彙を増やすのが得策ではないかと考えたわけだ。

実際にやってみた。実現は簡単なrubyスクリプトと、既存のTextTaggerという形態素解析(品詞解析)ソフトとの組み合わせである。インストール方法は後述する。

同じファイルが異なる形式で保存されている場合も構わず調査対象としていたり、PDFをテキストにしたときに正しくテキストが抽出されていない場合もあるので、マイニングの精度はまだ未検証だが、 私の全論文テキスト(LaTeXだったりwordだったりPDFだったり)から抽出された動詞形容詞副詞、名詞と、学会(2013年のCHI, UIST, ISWC, ITS, Ubicomp の電子予稿集に含まれているファイル)から抽出された動詞形容詞副詞、名詞の数と比率は以下のようだった:

動詞形容詞副詞名詞
自分の文書14671857 548 3750
参照文書41236704159612618
参照/自分 2.813.612.913.36

意外だったのは、形容詞の語彙数が、自分と学会論文全体とで結構開いていること(3.61倍)。名詞よりも開きが大きい。ということは、形容詞をより集中的に勉強して差を縮めると、もっと表現力のある英文が書けるようになるかもしれないということだろうか。

上位にくる単語はだいたい予想通りの感じになっている:

動詞(自分): be, use, have, sense, show, ...
動詞(参照): be, use, have, do, provide, ...
形容詞(自分): such, other, physical, tactile, mobile, ...
形容詞(参照): such, other, different, social, mobile, ...
副詞(自分): also, not, as, however, more, ...
副詞(参照): not, also, as, more, however, ...
名詞(自分): device, user, system, information, example, ...
名詞(参照): user, participant, system, design, time, ...

さて、このようにして抽出された「私が使っていないが私が関係する分野での使用頻度が高い」単語集は、以下のようになった。見るとそんなには難しい単語がないので自分の語彙がないことを露呈している感じだが...

動詞

validate, impact, fund, analyse, uncover, debug, maximize, mitigate, earn, quantify, outperform, replicate, customize, empower, forage, contrast, recognise, discard, tackle, craft, ...

※ analyse, recognise は、それぞれ analyze, recognize を使うようにしているからだろう。ちなみにvalidateは参照文書中のランキングでは352位。

形容詞

mean, domestic, false, persuasive, challenging, ethical, demographic, inherent, fine-grained, median, comprehensive, playful, reflective, salient, semi-structured, user-defined, longitudinal, interpersonal, narrative, ethnographic, ...

※ なんと統計の基本用語であるmeanとかmedianを使っていない.. 語彙力というよりも定量的ユーザー評価をしない論文ばかり書いているのがばれてしまっている..

副詞

interestingly, empirically, critically, truly, emotionally, Nonetheless, seemingly, apparently, last, nowadays, aloud, accidentally, quantitatively, upwards, subjectively, progressively, marginally, aesthetically, severely, ...

※ 興味深いことに、interestinglyを使ったことがないらしい。

名詞:

sustainability, assessment, narrative, risk, persona, bias, provider, dog, truth, gas, planning, garment, subset, stakeholder, diversity, bus, therapist, textile, experimenter, interviewee, ...

※ これはCHIの中でもエスノグラフィー系の論文や環境もので使われている語彙かもしれない。


インストール・利用方法(MacOSでのみ確認)

スクリプトダウンロード
$ git clone https://github.com/rkmt/vocab.git

vocabというディレクトリが出来る。

品詞判定ソフト(TreeTagger)のインストール

vocab/tree-tagger というサブディレクトリに移動して、

http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/

から tree-tagger-MacOSX-3.2-intel.tar.gz, tagger-scripts.tar.gz, install-tagger.sh, english-par-linux-3.2.bin.gz

ダウンロードし、

$ sh install-tagger.sh 

を実行する。これで

$ echo “A quick brown fox jumps over the lazy black dog.” | tree-tagger/cmd/tree-tagger-english

などとすると品詞が解析されているのがわかるはずだ。

pdftotext のインストール

PDFファイルからテキストを抽出するためにpdftotextをインストールする。

これはxpdfパッケージに含まれているので、homebrewを使っている場合は

$ brew install xpdf  

インストールする。( /usr/local/bin/pdftotext が出来ているはず)

文書解析

以上の準備ができたら、vocabディレクトリ上で

$ ruby vocab.rb  自分の文書ディレクトリ 参考にしたい文書ディレクトリ

で解析を開始する。解析可能なファイルタイプは .tex, .txt, .pdf, .doc, .docx 。サブディレクトリ内に置かれたものも階層的に解析する。

結果は yourV.txt, yourA.txt, yourAdv.txt, yourN.txt がそれぞれ自分の文書から抽出された動詞形容詞副詞、名詞の頻度順のリスト、refV.txt refA.txt, refAdv.txt, refN.txt が同様に参考にした文書から抽出した頻度順リストになる。自分が使っていない中でランキングの高い品詞が、suggestions.txt にセーブされる。

2013-04-06

MS Word で LaTeXのソースを書く (macos)

Wordで(英文)論文を書こうとしても、図はどっかに飛んで行くわ文献管理はしにくいわで大変なので、だいたいはLaTeXEmacs論文を書いているのですが、Wordにも2点だけいいところがあります。

ひとつめはスペルチェッカーと文法チェッカーが入っていること。オンザフライでスペルミスが分かるのありがたい。文法チェッカーは単純な主語と動詞の数の一致ぐらいなのですが、それでも見つけてくれるとケアレスミスが減る。Emacsでもispellは論外としてもflyspellみたいにリアルタイムにスペルチェックしてくれるモードもあるけど、使い勝手はWordのほうがよい。よい文法チェッカーがEmacsにもあればいいのにと思ってました。

もうひとつは編集履歴が残せることで、複数人で論文をリバイズしたり、コメントを書き込んだり、英文校正業者に出したりするときに便利。

しかしWordですべて論文の割り付けまで含めてやるのはいやだと思っていたので、WordでLaTeXソースを書けるように工夫してみました。

まずWordにEmacsキーバインドを設定します(ここなどを参考に:http://d.hatena.ne.jp/phithon/20111127/emacs_like_shortcuts_on_microsoft_office_word

)。

次に、wordフォーマット(**.docx)のままではLaTeXが処理できないので、プレーンテキストに変換します。Wordはテキストファイルも読み込めるのですが、そうすると上で言った第2の利点である編集履歴が残せません。またTeXコマンドの"\"(バックスラッシュ)をWordのほうでも解釈して変な文字に変換してしまって収集つかなくなってきます。そこで、以下のようなRubyスクリプトを作りました(macos専用)。ポイントはtextutilというmacosに備わっている便利コマンド。wordフォーマットをテキストに変換してくるのですね。さらに、TeX記号である"\"がそのままでは別の文字に変換されるので元に戻し、引用記号"abc"などもTeX式に``abc''に変換してます。

#!/opt/local/bin/ruby

word=ARGV[0]
tex=ARGV[1]
temp="/tmp/word2tex#{$$}.txt"

system("rm -f #{temp}")
system("textutil -convert txt #{word} -output #{temp}")

File.open(temp, "rb") { |f|
   line = f.read
   line.gsub!(/\xC2\xA5/n, "\\")
   line.gsub!(/\xE2\x80\x9C/n, "``")
   line.gsub!(/\xE2\x80\x9D/n, "''")
   line.gsub!(/\xE2\x80\x98/n, "`")
   line.gsub!(/\xE2\x80\x99/n, "'")
   File.open(tex, "wb") { |out|
      out.write(line)
   }
}

system("rm -f #{temp}")

あとはronbun.docxなどにLaTeXソースを(Word)で書いていって、こんな感じのshell script でフォーマットすればOKです。

TARGET=ronbun
LATEX=pdflatex
ruby word2tex.rb ${TARGET}.docx ${TARGET}.tex
${LATEX} ${TARGET}
jbibtex ${TARGET}
${LATEX} ${TARGET}
${LATEX} ${TARGET}

何と快適!

2013.11.1 追記

という感じで使ってましたが、最近執筆環境がsublime2に以降したのでだんだん上のようなことはやらなくなってきてます。というのはsublime2だとキーバインディングEmacs準拠だし文法チェッカーもプラグインであるみたいだしで英文執筆環境(LaTeXでの英文執筆環境)としても快適です:

Gingerを使って英文校正を行うSublime Textプラグインをつくった

http://blog.zoncoen.net/blog/2013/08/11/plugin-to-check-grammar-by-ginger-for-sublime-text-2/

2013-02-03

安村先生最終講義 - Most of them have tricks of their own

f:id:rkmt:20130203132926p:image


昨日2月2日は慶應義塾大学湘南藤沢キャンパス慶應SFC)で安村通晃先生の最終講義だった。安村先生は日立中央研究所でS810の並列コンパイラのチーフデザイナなどコンピュータシステムの研究開発をされたあと、SFC創設時に大学に転じられ、以降20年以上にわたってヒューマンインタフェースの研究と教育に従事された大先輩だ。

安村先生の研究室からは、後にイグノーベル賞を受賞することになる塚田浩二君(お茶の水女子大学)や、ERATO五十嵐プロジェクトで活躍されている渡邊慶太君といった多くの個性的な人材が輩出している。未踏プロジェクトの採択数も単一研究室としては最多ではないだろうか。

最終講義「「インタラクションデザインとSFCと私」では、日立時代のお話から(今からは隔世の感があるけれど、当時のスパコンは日本の独壇場で日立のS810とNECのSX-1/2 が世界最高速コンピュータとして凌ぎを削っていたのです)、SFC創立時のエピソードや学生との研究の話など盛りだくさんの内容で、予定の90分があっという間にすぎてしまった。

講演終了後の質疑の時間に、学生の指導についてどういうことに気をつけているか、とお聞きしたところ「学生のアイデアをなるべく尊重するようにしている/それでもこれはどうなのか、というところにはアドバイスする/いつも楽しくやるように心がけている」とお答えいただいて、なるほど安村研の明るくポジティブな雰囲気が伝わってくるような気がした。

私自身も2007年から大学にも身を置く立場になり、企業研究所から大学という、安村先生が歩まれた道を辿ることになった。そして人に何かを教えるというのはいったいどういうことだろうと自分なりに考えるようになった。もちろん教えることについて単一の答えはないし、教える相手やフェーズによっても違ってくるので日々模索の過程だが、ネガティブであるよりはポジティブに、そして皆の「持ち味」をなるべく引き出せるように心がけている(つもりである)。

また、個人的にはスタイルを見せることが重要かなと思っている。自分自身ではそれなりにスタイルを持って研究をしているつもりで、それが唯一無二ではもちろんないのだが、どういうところを大事だと思っているのか、揺るがせにしてはならないところ、力を抜いてもいいところ、がどこなのか、という方法論のひとつのインスタンスとして観てもらえればと思っている。


安村先生の講義を聞いて、そのあとも教えるって何だろうと考えていたら、シェーンという古い映画のことを思い出した。「シェーン、カムバック!」という最後のシーンで有名だが、いろいろ含蓄のある台詞が多いので好きな作品だ。その中で、シェーンが少年ジョーイに拳銃の使い方を教えるシーンがあって、こんなやりとりがある:



Shane: Most of them have tricks of their own.

One, for instance, likes a shoulder holster.

Another one puts it in the belt of his pants.

And some like two guns.

But one's all you need if you can use it.

Joey: Which is the best way?

Shane: What I'm telling you is as good as any, better than most.

シェーン:たいてい皆、それぞれに自分のやり方を持っている。たとえば肩掛けのホルスターを使いたがるのもいるし、ズボンのベルトにガンを差すのもいる。2丁拳銃を好む連中もいる。でも、使いこなせるんだったらひとつで充分だ。

ジョーイ:どれが一番いいやり方なの?

シェーン:今教えている方法は他のどれとも同じぐらいはいいし、大抵のものより優れているよ。


ということで、私も自分のやり方が better than most だと信じて観てもらうしかないのかなと思った昨日だった。

So all I can do is keep telling my own trick, hoping that it is better than any other.

P.S.: 安村先生は、退官後、SFCの非常勤をされる傍ら、「起業」に挑むとのことです。Mike先生の今後のますますのご活躍が楽しみです。

2011-10-02

Ubicomp, Mark Weiser, 梅棹忠夫

先日、北京で開催されたユビキタスコンピューティングの国際学会 Ubicomp 2011 で、Mark Weiser の Scientific American論文"Computer for the 21th Century" 20周年記念のパネルセッションが開催された。

http://www.ubicomp.org/ubicomp2011/panel.html

セッションチェアは元Xerox PARC, 現Georgia TechのBeth Mynatt, パネリストはWeiserの同僚でもありPARCの所長でもあったJohn Seely Brown (JSB), UC IrvineのPaul Dourish, Georgia Tech のGregory Abowd, と私(暦本) だった。

Weiser の"Computer for the 21th Century" は、コンピュータサイエンス論文としてもっとも重要かつビジョン指向の論文のひとつであり、その後の情報通信技術の方向性を決定づけたといってもよい。冒頭の美しい文章:

The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it.

(もっとも深淵なる技術はみえなくなる。それ自身が生活の一部として織り込まれ、不可分のものとなる)

からもわかるように、ユビキタスというのは単にコンピュータが沢山あることではなく、生活の背景に技術が溶け込んでいくありさまを指向している、つまりCalm Technology(静かな技術)というのがWeiserの哲学である。この論文が醸し出す一種独特な格調の高さと、永遠に新しく見える何かには、再読するたびに強く感銘を受ける。すべての古典がそうであるように。パネリストのGregory Abowdも、「年に一度は読み返している」と言っていた。

そこから20年、我々は何を成し遂げてきたか。そして未来に向けて何をすべきなのか。

パネルセッションJSBのWeiserとの回想にはじまった。Mark Weiserはすぐれた科学者であると同時に傑出したビジョナリーであり、人間をもっとも深いレベルで考えている、という趣旨で、ショーペンハウアーの言葉を引いていた:

“Thus, the task is not so much to see what no one yet has seen, but to think what nobody yet has thought about that which everybody sees.”

私自身は、Weiser以降のUbicompの広がりが、文明の発達過程を逆にたどりながら、より生活の基盤となる分野に浸透してきていると指摘した。人類学者/文明学者であり日本を代表するビジョナリーでもある梅棹忠夫の「情報産業論」になぞらえて、文明の進化を内胚葉(農業時代)→中胚葉(工業時代)→外胚葉(情報時代)とするならば、Ubicompは外胚葉時代から逆に文明を遡り、農業(食)やエネルギー、健康などに浸透してきている。

パネルでは時間の都合上、詳しく説明できなかったが、梅棹は「知的生産の技術(1969)」のなかでも"Calm Computing"に関連することを述べている:

秩序としずけさ

知的生産の技術の話全体が、能率の問題としてうけとられやすいのである。しかし、じっさいをいうと、こういう話は能率とは無関係ではないにしても、すこしべつのことかもしれない。… これはむしろ、精神衛生のもんだいなのだ。つまり、人間を人間らしい状態につねにおいておくために、何が必要かということである。… 整理や事務のシステムをととのえるのは、「時間」がほしいからではなく、生活の「秩序としずけさ」がほしいからである。

梅棹忠夫知的生産の技術」)

国際会議の出席者がどれくらい梅棹忠夫とその言説を認知しているかはわからない(たぶんほとんど知られていないだろう)。が、個人的には文明を 「装置+社会の系(システム)」 として捉えていた梅棹の文明論とUbiquitous Computing, Calm Computingの関連についてはもっと考えてみたいと思っている。それは、工学/技術としてのUbicompから、「システム文明論」としてのUbicompへの発展につながるという思いも含んでいる。

一方、Gregory Abowdはこのように拡大しているUbicompについて、領域としてのidentity crisisが起きていると指摘している。たしかに、すべてのコンピュータサイエンス(あるいはすべての「技術」)は何らかの意味でUbicompであるし、実際にUbicompの学会が捉えていないアクティビティのほうがむしろ重要になってきているのかも知れない。彼は問う:「もしMark Weiserが生きてたとして、彼はこの学会に参加するだろうか」。

パネルセッションプレゼンテーション部分は録画されているのでより詳しくは以下からどうぞ:

http://www.slideshare.net/search/slideshow?searchfrom=header&q=%22ACM+UbiComp+2011+Panel%22