バイオインフォマティクスからは離れるということで,このブログでの更新は一旦終了し,新しいブログに移行します.これからどんな形で書いていけるかは分からないですが,ブログという形式で文章を書くこと,そして情報発信をすることは,社会人になっても続けていきたいと思いますので,ぜひともよろしくお願いします.
今までありがとうございました.ではでは.
]]>まずはじめに,本書はNicholas G. Carrによる”The Glass Cage”の訳書である.前作の「ネット・バカ インターネットがわたしたちの脳にしていること」を踏襲しているとはいえ,タイトルの訳があまりに酷いので,この点をまず触れておきたい.タイトルと中身を考慮すると,yomoyomo氏による書評(link)の「自動化は我々をバカにする?」くらいが適当だろう.急速に発達した電子機器任せで思考と判断をなかば放棄した人間は,ディスプレイという名のガラスの檻に捉えられているのと同じだ,というのが本書のタイトルのニュアンスだろうか.
というわけで本書は行き過ぎた科学技術に対する自動化(オートメーション化)に警鐘を鳴らすという内容だが,それ以上に,人間と科学技術の在り方についてかなり広範囲にわたって議論している.「科学技術の発達で雇用がなくなった!?」「科学技術の発達で人間は脳を使わなくなった!?」「科学技術の発達で人間は倫理的判断まで放棄した!?」そういった分かりやすいトピックを各所に散りばめながらも,科学技術が発達することによって,人間はどう変わったのかということが本書の中心にある.もともと自動化というものは,人間の行動を機械に委託して時間や労力を短縮しうるものだった.それが,時に人間の意図とは別に行動までをも変化してしまう場合がある.道具を持って手作業で製品を作っていた熟練工は,レバーを引いて数値を眺めるだけの単純作業者となってしまった.そういった変化を,飛行機のパイロットや医師,車の運転者などの様々な側面から眺めていく.
まず個人的なスタンスを表明しておきたい.ここでは科学技術で作られる産物を一般に機械と呼ぶことにする.人間と機械の関係において問題があるならば,それは機械の設計や使い方が間違っている.人間と機械の接点にあるインターフェイスに改良の余地があるのであって,それはすべて今後の人間工学や工業デザイン的な側面から解決しうるものであると考える.
というわけで私は科学を信奉する者として常に科学技術寄りの考えなので,本書を読んでいるとページごとにツッコミを入れたくなるくらいだった.前半は特に歴史的観点から雇用との関連が出てきて,科学の発達で雇用は失われたと主張する始末で,それはよそでやってくれよと正直辟易した.個々の記述に反論するのは枝葉の問題なんだけれども,例えば飛行機が発明されなかったらパイロットなんてものは必要なかったわけで,それが科学の発達で飛行機の通信士などが不要になったことを強調されてもねぇ,と思ってしまう.それに,パイロットの絶対数や航空業界全体で見た時の雇用人数であったり,離着陸する便数を考慮して正規化した上で考えた時に,本当に減ってるのかみたいな話をするべきだと感じる.正直なところ雇用に関しては完全に蛇足だ.ただ自分に関心がないだけなのかもしれないけど…….
それが後半では少しマシになるというか,ようやく純粋に科学技術と人間の関係性について純粋に議論されるようになる.ここらへんの話は,純粋に道具を使う人間の性質と現在の科学技術の限界と捉えることができるので,だいぶ安心して読める.自動化にはテクノロジー中心的オートメーションと人間中心的オートメーションがあるとか,建築家のドローイングなどを例として抽象化する能力と創造性に関連があるだとか,設計理念として現在のテクノロジーはどうなんだというところが焦点になる.それを踏まえて考えると,人間の意識における知覚は身体的なものの延長線上にあり,それが現実を規定しうるものとして重要だから,それを殺さないようにするべきという感じだろうか.近年突出して出てきたグーグルグラスやスマートフォンなどに対し,本書の中で著者は「使い方次第で全にも悪にも見えるサイクルを,私たちは起動させた (P.258)」と言っているが,それは両面的であり,科学技術を使う人間に委ねられているといえる.
本書の締めの1章では,草刈りという題材で人間の道具との関連性について述べている.草を刈る大鎌は,人間が立ちながら構えることが可能で上半身全体を使って効率よく作業することができる.一方,片手で持つ小鎌は屈んで作業しなければいけないし,大鎌と比べると効率が悪い.でも,小鎌は目に止まった花を無意味に刈ることを避け,小さな動物を間違って殺さずに済む.効率には,無慈悲さや無神経さが伴い,道具を使った行為には倫理的や道徳的な側面があるという.本書で書かれているこの話だけを抜粋して聞くと何のことやらと思うかもしれないが,だいたいの人は大量生産品よりも手作りの料理や工芸品を有難がったりと,そこにはクオリティ以上の精神的な何かが意思決定に働いているのかもしれない.そういったところから,大鎌以上に効率の良いコンバインなどの大型農業機械が登場した現在,これから科学技術がもっと発展して農業の自動化などがよりすすんだ未来,道具の精神性はどのようになるのかという思索で本書は終わっている.色々書かれていて個人的に反発も覚えたものの,本書最後の一段落は,自分の意見と同じ内容で,希望を感じさせるものだった.
]]>日本人人質事件で急激に関心が高まっているイスラーム国(ISIS/ISIL)についての解説本.2015年1月に発刊されたばかりで,直近で言うと北海道大学学生のイスラーム国への渡航計画あたりまでの話が盛り込まれている.と言っても基本的にはイスラーム国についての網羅的な解説本であり,中東情勢を含めた成り立ちの歴史やイスラーム国のメディア戦略などが詳細に解説されている.著者がブログで書いている通り(link),新書ながらもクオリティは高く,非常に濃密な内容となっている.とにかくイスラーム国関連の日本語で読める書籍としては,第一級の情報源といえる.
歴史や地政学が苦手な自分としては,イスラーム国に対する興味で大きいのはやはりメディア戦略の手法だろう.情報発信/情報操作の重要性は,高木徹氏の「戦争広告代理店」を思い出す.同著者の「国際メディア情報戦」ではアル・カーイダについても少し述べられていたが,イスラーム国の戦略は遥かに現代的でかつ緻密に練られている.イスラーム国としてのカリフ制復活の宣言に始まり,欧米人を人質に取った身代金要求の映像や外国人戦闘員の勧誘としての広報誌の作成,奴隷制復活における正当化など,事情を知らない自分が見ても高度に計画され趣向を凝らした内容になっていると感じる.著者はブログで日本人人質事件においても詳細に分析しており(link),その背景知識としても本書に書かれている内容はとても役立つ.
当面の興味としては,イスラーム国の今後が最も気になるところだろう.本書においてもイスラーム国自体の宗教的地政的な側面からの分析や,オバマ政権の立ち位置とともに,奴隷制の正当化に絡んだ宗教改革の可能性についても論じられているのが興味深い(これは山形浩生氏との対談でも述べられている:ISISについて:池内恵と対談).こういった部分も含め,本書で得られた知識を元にイスラーム国について今後も注目していきたい.
]]>会社というものがどういう形で法律により規定されているかを手っ取り早く知りたかったので手に取った1冊.題名通り会社法を解説した新書.表紙に改訂版と書いてある通り,2014年の会社法改定を盛り込んだ内容となっている.
会社法を網羅的に平易な言葉で解説しており,素人の自分が読んでも難しくて理解できないというところは無い.一方では,それぞれの法や精度に関する具体例が少ないために,実感がわかない部分もある.その点は他の書籍を参考にしなければいけない.会社法を知るための最初の1冊として分量も少なく短時間で読めてかつ分かりやすいという点で最適だと言えるし,新書には珍しく索引も付いているので,アンチョコとしても使用できる.
本書を飛び越えてさらに会社などのシステムについて勉強するとしたら,次は財務三表の読み方だろうか.本書では計算書類という表現で紹介しているが,何が書かれているか等の概念のみで,実際にどうやって読んだり内容を理解したりといったことは書かれていない.もし勉強するなら「決算書がスラスラわかる 財務3表一体理解法 (朝日新書 44)」などを読むところから始めようかな.
]]>はてな界隈ではみなさんご存知NATROM先生の著作.題名の通り「ニセ医学」と呼ばれる根拠のない病気の治療であったり健康になるための謳い文句について,個々の豊富な事例からその真偽を現代医学をもとに検証し明らかにしていくという本書.おそらくNATROM先生がこれまでに書きためてきたblog記事が元になっているとは思うが,恐らくほぼすべての文章を書き下ろしているであろう本書は,より一般読者向けの内容になっており1冊の書籍として非常に読みやすい.
当然ながら本書は一貫して科学的なスタンスで進んでいく.ただ頭ごなしに否定するのではなく,きちんと相手の意見を踏まえた上での反証や矛盾を突いた意見を述べることで,一つ一つ検証していく.例えば本書の最初に出てくる「日本人は薬中毒か」という問いには国際的に集計された医療統計を出して反証し,その背景にある日本の過去の医療事情を引き合いに出す.
それに加えて,良くある論調として「医者や政府は利益のための重大なことを隠している!」ということがあるが,それについても医者と保険者と患者の関係性についてきちんと解説している点が評価できる.というよりこの辺りは実際に中の人に解説してもらわないと見えてこない部分もあるので,概要ながらも内情について知ることができたのは良かった.当たり前といえばそうなんだけれども,日本であれば国民皆保険制度を元にした医療行為への支払いを考えれば明らかなんだと感じる.
本書を読めば誰でもニセ医学を暴けるかというと,必ずしもそうはならない.「健康」という分野は広大でかつ未だに未知の領域だ.医学的な知識のみならず,栄養学といった他分野であったり統計の素養が必要になる.そういうときに,目に入る情報すべてについて元論文を当たったり検証することは不可能だ.結局は「人の甘い言葉に乗るな」ということになるのだけれども,人間というものは親族が病気にかかったり心的余裕が無いときには,つい藁をもつかむ思いで騙されてしまうものだ.それは本書著者も指摘しておりかつそれを悪いとは言っていない.そこに漬け込むニセ医者や悪徳業者が悪いのであって,それについてきちんと追求していくことは医療従事者や政府の社会的責任といえる.そういう意味で,出版社を背後に堂々と批判しづらい現状において,本書は非常に価値ある出版だと思う.それと同時に,日頃から自衛できるような知識を身につけること,そこまでいかなくても注意を払うことの大事さを思い直す1冊だった.
]]>「ドキュメント 戦争広告代理店〜情報操作とボスニア紛争」の高木徹氏の2014年の著作.前作は1990年代のボスニア紛争を題材にした作品だったが,今回はその後の21世紀に起こったテロリズムの台頭とメディアを取り巻く情報戦について書かれている.前作と比較して全体的に情報の厚みが薄く物足りない部分も見受けられるが,それでも著者ならではのポイントを抑えた簡潔な解説を読むことができる.
本書冒頭は「戦争広告代理店」のおさらいといった立ち位置で,ボスニア紛争での民間PR会社の影響力を振り返るというもの.当時の取材時の印象であったり後日談的なものが少し加えられている.そしてその次に取り上げられる題材が,オサマ・ビン・ラディンとアメリカの対テロ戦争である.そもそものオサマ・ビン・ラディンがいかに情報戦に優れていたか,そのオサマ・ビン・ラディンが殺害された後の主導者不在の中でのテロリズムの変化,それらと対峙してきたアメリカの政党や大統領候補同士での情報戦などが語られる.この時代の情報戦では,ボスニア紛争で登場しなかったインターネットであったりSNS,動画共有サイトなどが登場し,TV放送局のグローバル展開も相まって,情報戦はより一層複雑化する.例えば,アルジャジーラというカタールの国際衛星ニュース局が,イスラム過激派による映像を頻繁に放送していたことはまだ記憶に新しいが,このメディアをうまく活用したのがオサマ・ビン・ラディンだったという.一方でアメリカも,メディアをうまく活用した情報公開の戦術によって,オサマ・ビン・ラディン殺害の正当性を主張したり,オサマ・ビン・ラディン自体の神格化を防ぐように悪いイメージを植え付けるようなことを行ったとされる.
本書で出てくる個々の事実は日本でもニュースで放送されるものばかりだが,本書のような専門家の見る目をもってして解説されると,その本質が見えてくる.ではそういった情報に私たちはどう向き合っていけばいいのか,高木徹氏は本書あとがきでこのように述べている.
問題の解決は、私達一人一人情報の受け手に託されている。自分のもとに届く情報が、そこまでにどのような「情報戦」をくぐり抜けてきたかを考える。それを続けていれば、自分なりの真実と世界観を自分の中に形成できるようになる。それをまた他の情報と比較して検証してみる。
「国際メディア情報戦」の時代を生き抜くには、そのようにして情報戦そのものを「楽しむ」ような余裕とタフさが必要なのではないかと私は考える。
国際メディア情報戦 (講談社現代新書) (pp. 258-259)
本書も含め,真の意味で中立な立場で解説してくれる人は誰もいない.他人からもたらされる情報は常に他人の思想や立場によって切り取られ加工されたものであることを強く意識して,身の回りにあふれる情報と向き合っていかなければならないと思い知らされる.
]]>戦争は情報戦だといった話はよく耳にするが,それが常に秘密軍事工作といった影の存在とは限らない.通信手段の発達によってメディア報道が高速化し,国際世論の形成がより迅速かつ平等になった現代において,真の情報戦とは国民や国家に向けられたオープンな場が舞台であることを,本書は露わにする.
本書「戦争広告代理店」は,ボスニア紛争を影で操ったフィクサーが実は米国PR会社だったという衝撃のドキュメンタリーだ.クウェート侵攻後の1990年台において勃発した旧ユーゴスラビア地域における民族対立は,アメリカにとって石油利権も何もない辺境の地でのただの紛争の1つだった.唯一知られていることは1984年にボスニア・ヘルツェゴビナ共和国首都のサラエボで冬季オリンピックが開催されたことだけ.そのような状態のアメリカに,自国の支援を訴えてボスニア・ヘルツェゴビナ共和国の一人の外務大臣が降り立つところから話は始まる.
何より本書の内容に驚きを覚えるのは,紛争という国家間の衝突に民間会社が介入していることだろう.それも政治の中枢にまで入り込み,必要とあらば国連での国際会議の討論原稿すら書き上げるような,そんな民間PR会社が存在することだ.そしてそれがボスニア紛争の世論形成にどれほどの影響力を及ぼしてきたかということに尽きる.それが奇しくも,民間PR会社の協力を得られたボスニア・ヘルツェゴビナ共和国側と,民間PR会社の協力が得られなかったセルビア共和国・ユーゴスラビア連邦側の2局にきれいに分かれたということも,民間PR会社の実力を如実に示している.
結果的に世論は,モスレム人(ムスリム)を中心としたボスニア・ヘルツェゴビナ共和国が,セルビア人を中心としたセルビア共和国に弾圧されているという構図となった.善と悪,弱き者と強き者といった単純な構造を世論は好む.民間PR会社はこの対立構造を巧みに作り上げ,顧客を悲劇の主人公に仕立てあげたということだ.唯一言えるのは,この紛争に対するアメリカの世論が,メディアによる公正な報道と法のもとでの正義によって自然に組み上がったわけでは決して無いということだろう.
著者は本書の最後で,今回の取材の総まとめとしてのボスニア紛争について「どちらにも責任がある」とした上で,PRの重要性とその効果,情報操作の倫理的側面について考察している.いくらマスコミの偏向報道が悪い,情報操作は良くない,正義は中立であるべきだ,といった綺麗事を並べても,世論自体がそれに答えてくれるわけではない.本書で描かれるような事実をもとにして,如何に自分を中心としたコミュニティが成功を収めるか,そのことについて真剣に考えていかなければならない.
]]>企業向けの情報誌「現代産業情報」を刊行し,兜町の石原と呼ばれた情報屋である石原俊介を追ったノンフィクション作品.彼と親睦の深かった同業者の著者が,石原俊介が生きた時代に起きた平和相銀事件やリクルート事件などの政官財を巻き込む事件を中心に,その仕事の軌跡を紐解いていく.
そもそも私に本書を読むためのバックグラウンドが無いのは当然といえば当然で,本書に登場する平和相互銀行をはじめとした数々の銀行の名前は,私が物心付いた頃にはもう既になくなっており,かろうじて現在の大手銀行の名前に名残があるくらいだ.当然ながら,そういった銀行が起こしてきた事件はそもそもあったことすら知らなかった.そういう状態で本書を手に取ったものの,自分の知識不足を感じることはほとんどなかったと思う.事件の概要から始まり,中心人物たちの経歴,まだ総会屋が活躍し暴力団が今ほどに影を潜めてなかった時代の世相,そして石原の仕事とその役割など,そういった事件を多面的に理解するための材料はひと通り本書の中に揃っていた.そもそもが業界の裏を書いたノンフィクションであり,他の読者も私と同様に知識を持ち合わせていない人が大多数なのだろう.そういう意味で,読者を選ばないような丁寧な解説ぶりが印象に残る.
一方で,あまりに自分の世界とかけ離れていて想像が及ばない部分もある.そもそもの高度経済成長期からバブル崩壊までの日本,情報誌というものが重宝された時代,そして政官財の世界.過去のことだと割り切ってなかば昔話として考えることも可能だけれども,とりあえずはいままで見聞きしたことや本書を読んで学んだことをもとに再構築していくしかない.
ただそこに存在した情報屋の価値は,今でもはっきりとわかる.インターネットで様々な情報が瞬時に手に入る時代だからこその,生の情報の大切さ.新聞やマスコミの偏向が明らかになるほどに,情報というものがいかに不確実なもの,一つの側面を映し出したにすぎないということがわかってくる.そういうときに,石原俊介のような情報屋が,利害や契約関係を超えて情報誌として告発や批判記事を公開することや,相談役としての企業へのアドバイスが重宝された理由というものがわかる.と同時に,それが並大抵の人では不可能なほどに難しく,稀有な存在であったことも事実だ.本書では石原がそれを成し得た理由というものが各所で考察されるが,彼の卓越した情報処理能力や立場を限定しない取材態度,銀座のクラブを起点とした情報のハブとしての役割など,その仕事術の一端を垣間見ることができる.
個人的な経験として,インターネットに本格的に触れ始めた時に叩きこまれた教訓として「情報というのもは自ら発信することによって集まってくる」ということがある.本書はある意味でその教訓をまさに体現する1冊として,興味深い内容だった.
]]>本書はむしろ確率論・統計学の科学史についてのライトな読み物だ.著者は本書のことを「確率や統計の教科書にあるようなコラムをまとめて1冊にした本」のように言い表しているが,そういった欄外の豆知識にとどまらない,科学史としての体系だった内容になっている.
本書は基本的に確率や統計にまつわる逸話をもとにして,その背景にある数学的な理論であったり,数学の一分野として発展してきた歴史やそれを支えた数学者を紹介するという流れになっている.例えば「サイコロを4回振って6の目が1回以上出る確率と,2つのサイコロを24回振って6のゾロ目が1回以上出る確率をそれぞれ求めよ」(本書P.25より)といった具体的な問題から,当時の天才数学者のだれそれが分野の発展に一役買っただとか,数学者の名前が付けられた定理や手法は数あれど実際に初めてそれを発見した人物の名が付けられていない場合が多いといった逸話などが,本書題名にある通りいくつも盛り込まれている.
取り扱う確率や統計の内容だって.そこいらの教科書に引けを取らない充実ぶりだ.むしろ本書は歴史的経緯や逸話と絡めて紹介されるぶん,教科書よりもはるかに分かりやすいところも多い.例えば,母関数とジッシャーマン・ダイスの例なんてのは目から鱗だった.それこそ教科書では何故そのような関数が出てくるかなんて分からなかったから,実際の使い方を見ることで私はやっと腑に落ちた.具体的な内容はぜひ本書を読んでもらいたい.そういった点で,確率や統計について既に知識がある人でも,どれだけ勉強してもいまだに苦手意識が拭えない人にとっても面白い内容だと思う.
確率や統計の科学史に関する読み物だと「統計学を拓いた異才たち―経験則から科学へ進展した一世紀」や「異端の統計学 ベイズ」があり,本書後半でもたびたびこの2冊の内容に触れている.ただし,これらの本はかなり分量があり,この分野に関する前提知識もそれなりに要求される.その点本書は基本的な部分についてもその都度きちんと解説が入るし,解説を読み飛ばしたとしても問題ないようになっている点で,気構えず読み進められる1冊となっている.
]]>LASSOの発音、ラスーみたいな感じなのか
— 便所糞虫 (@y_benjo) November 6, 2014今までLassoはラッソだと思っていたのだけれども,どうやら違うらしい.YouTubeにある幾つかの動画で確認してみると,ラッソというよりかはラッスーに近い.無理矢理カタカナで書くと「ラッスゥー」で,スにアクセントがある感じ.
実際の発音は以下の動画で確認できる.発音している箇所に動画再生ポイントを合わせてあるので,聞き逃しに注意.
ちなみにこれはThe Elements of Statistical Learningでお馴染みのHastie&Tibshirani先生の動画.
他にも幾つか確認してみたが,同様の発音だった.
ただし,オンライン辞書で調べてみると,どうやらどちらの発音もあるらしい.British Englishだと「ラッスゥー」,American Englishだと「ラッソ」,と発音しているようだ.なので厳密にはどちらでも間違いではないけれども,機械学習の文脈で発音するときには「ラッスゥー」が無難かもしれない.
]]>Appleのデザイン哲学とともいうべき本書は,”Think Different”やiMacのマーケティングに携わってきたクリエイティブディレクターのケン・シーガルによるAppleのマーケティング戦略の裏側を描いている.Appleにおけるスティーブ・ジョブズの異常なまでのデザインへのこだわりは有名であり,なぜそれが成功したのか,今までの大企業ができなかったことがなぜできたのか,その哲学を第三者の視点から捉えようとする書籍は多数出版されている.しかし本書は,実際にスティーブ・ジョブズとともにマーケティングのパートナーとしてAppleのブランドとマーケティング戦略を作り上げてきた人物によるものだ.奇しくも彼が関わっていたのは,Appleが一度スティーブ・ジョブズの手から離れた後の凋落の時期と,スティーブ・ジョブズ復帰後の華麗な復活を遂げるまでの間である.製品としてはiMacが生まれiPodが生まれ,Appleという会社のイメージが洗練された時代である.その内部で何が行われていたのかが本書にはこれでもかというくらい詰め込まれている.キーワードはもちろん「シンプル」だ.
この本は読んでいると不思議な気分になる.どこを切り取ってもおんなじことしか書いてないように思えるのだ.少なくとも全10章,Think Brutalにはじまり,Small, Minimal, Motion,Iconic,Phrasal,Casual,Human,Skeptic,Warというそれぞれの考え方に分かれているものの,出てくる逸話はどれも「Appleらしさ」以外の何者でもないという感じだ.もちろんスティーブ・ジョブズというAppleそのものを体現する人物が出ているというのもあるのだが,著者らの考え方であったり,マーケティングという理詰めでは不可能な課題に対するアプローチは,一貫して私たちが想像するAppleそのものだ.
このようにAppleのデザイン哲学を知ることができる一方で,スティーブ・ジョブズの芸術肌によって独裁的に決められていったわけではないことも次第に見えてくる.言ってみればスティーブ・ジョブズの失敗談だ.自分の感性を強く信じる一方で,人に意見を求めることが多かったり,周囲の意見も広く取り入れたようだ.例えば,初代iPodのシルエットのCMを最初は嫌がったり(それまで白が背景のシンプルなCMが多かったから),iMacを当初はMacManと付けようとしたり,今となっては信じられないような話が出てくる.スティーブ・ジョブズのマーケティングに対する考え方や彼の人となりを知ることができる興味深い1冊だった.
これだけApple流のマーケティングが成功していても,依然としてスペックを売りにした広告や人間が読むのを想定していないような商品名が出てくるのは何故なんだろうなというのが,本書を読めば分かる.みんな気付いてはいるし理想だってあるんだけれども,大企業という構造の中でいつの間にか無難なものへと変わっていくのだ.著者がAppleとともにマーケティングを担当したデルやインテルが失敗例として挙げられていて少々可哀想だが,そこから得られる教訓は大きい.
]]>Google前CEOのエリック・シュミットと前プロダクト担当シニア・バイスプレジデントのジョナサン・ローゼンバーグが出した本書「How Google Works」は,21世紀の新しい社会の働き方を決定付ける1冊になるのは間違いない.それは現在もっとも成功している会社として,そしてもっとも今の社会に則した働き方として迎え入れられることになるだろう.インターネットや様々な技術の普及によって私たちの生活が変わったように,私たちの働き方も変える必要がある.その下地はインターネットの普及によって進み,そしてGoogle自体がそれに沿うようにともに作り上げてきたといえる.その試行錯誤の結果,失敗と成功,それらの一部始終が本書には詰まっている.
本書は,Googleにまつわる文化,戦略,人材,意思決定,コミュニケーション,イノベーションという6つの章から成り立っているが,そのどれもに共通しているのが人の大切さである.Googleはエンジニアの会社だ.それはセルゲイ・ブリンとラリー・ペイジが会社を興した時から変わらない.本書ではGoogleが雇いたいと思う有能な人材のことを「スマート・クリエイティブ」と呼ぶ.スマート・クリエイティブとは,知的労働において専門性と創造性を併せ持つ人材のことを指し,旧来のナレッジワーカーとは別のタイプだという.そのスマート・クリエイティブが最大限に成果を生み出せるような場所を作り上げるのが会社の目的だ.そのために人材を雇用し,会社のシステムを作り上げたといえる.例えば,おもちゃの散乱した遊び場のようなイメージで有名なGoogleも,実際に机に向かうオフィス部分では手を伸ばせば隣の人に届くようなスペースに社員を詰め込んで,お互いにコミュニケーションが生まれるようなデザインにしているという.これも文化の一つとしてよく知られていることだが,きちんとした理由が裏にはある.
この他にも本当にたくさんのGoogleらしさが本書には詰まっている.明日から実践できそうなことや,そもそも成功しているGoogleじゃないと到底できそうにないこと,そもそもスマート・クリエイティブなんてどこにいてどうやったら採用できるんだといったことまで様々だ.少なくともこれまで数々のGoogleにまつわる本が出版されてきたが,この本ほどGoogleの本質に迫るものは無いだろう.とにかく読んでみて,Googleという巨人の巨人たる所以に触れてみてほしい.
]]>8月終わりからKaggleで行われていた“Africa Soil Property Prediction Challenge”,通称AfSISが終わりました.このコンペは衛星から取得したアフリカの各地点の吸光度などの数値情報を元に,その場所のSOC,pH,Ca,P,Sandの計5種類の地質学的な測定値を推定するという問題でした.問題設定としては定番っぽくて取っ付き易いものの,実際にやってみるとこれまた難しい感じでした.
私は開催当初から参加していて,一時期9位まで上がったものの,そこから何もしなかったらどんどん抜かされたというわけです.
Hold my calls. Top 10 on #kaggle - https://t.co/EUmPGDB0oq
— やぐ (@yag_ays) September 3, 2014
忙しさが一段落したのでkaggleに戻ってきたらランクが150位くらい下がってて厳しさがある
— やぐ (@yag_ays) September 19, 2014
それに加えて開催期間が終わってテストデータ全体での評価が出た結果,おそらく過学習でスコアが下がり,開催側が設定したBART Benchmarkよりも下回るという有り様でした.Kaggle怖いです….
今回は時間があったので,今回は色々試した気がします.定番のSVRに始まり,Gradient Boosting Regression Treesしたり,Random Forest Regressor使ったり,あとはForumに投稿されたH2Oでのdeep learningもどきもひと通り動かしたのですが,結果的に一番良かったのがSVRだったのでその中から前処理を幾つかやったやつを最終的にサブミット.実際はAbhishekのBeating the Benchmark ;)のやり方とほとんど変わらないと思います.どこで差が付いたのか,あとAbhishekを代表とするSVR勢は過学習を回避して大勝利となったのか,気になるところです.
いや確かにpublic leaderboardは手元で算出したスコアとかなり乖離があって謎いとは常々思っていたのですが,一応scikit-learnのgrid searchでチューニングはしているので大丈夫だと…厳しい.
といっても上位陣もかなり大荒れだった模様.以下のランクはpublic→privateの順で,これを見てもらえればわかる通り上位陣は著しくランクを落としている人が多い.逆にprivateでは100位以内くらいから上がってきた人が多く,今回は本当に結果が読めなかったようでした.
Public Leaderboard - Africa Soil Property Prediction Challenge | Kaggle
Private Leaderboard - Africa Soil Property Prediction Challenge | Kaggle
詳しいことは後々明らかになっていくことでしょう.Forumを静観.
あと,悔しいので念のために書いておきますが最終サブミッションに選択した以外のやつではきちんとベンチマーク上回っているのありました.ただ,スコアがいいやつに限って最初の方にサブミットした何のひねりも無いSVRだったりして,心が折れそう.
社会は厳しい.
]]>さて,こんな中途半端な順位のヤツの解法なんて見てもどうしょうもないとは思うけれども,個人的な記録のためにも書いておく.
使用したのはVowpal Wabbit(VW).主に参考にしたのはMLWaveのPredicting CTR with online machine learningで,とりあえず動くコードの例があって,あとはVWのパラメータチューニングで頑張ったという流れ.実はこれ以前にscikit-learn + pandasも試していたのだけれども,あまりにデータ量が多すぎてpandasのget_dummiesでダミー変数作るのが不可能だったりと早々に諦めていた.その点VWは高速で動いてメモリ消費量も少ないので,初心者にとっては使いやすいソフトウェアだった.あとMLWave/kaggle-criteoでデータ形式の変換コードがあったのが助かった.
さて,最終的なサブミットに使用したのは以下のパラメータ.
少し前の記事の私的Vowpal Wabbitまとめ - Wolfeyes Bioinformatics betaにも書いたけど,loss_functionはlogisticにしておくと学習が終わったときにだいたいのスコアがわかって便利.あと-bを増やすとfeature hashingでcollisionしなくなるけれども,そのかわり必要なメモリ容量が増える.L2正則化はL1とともに1e-01から1e-12くらいまで試したんだけど,スコアが劇的に変わるわけではなかった.–passesは必須だけど,ある程度のイテレーション回数でスコアに変動がなければ途中で切られるみたいなので,パラメータを変更後に必要回数を確認してからは変えていない.
1 2 |
|
Kaggleのフォーラムで上位ランクの人が自分の解析方法を公開してくれているので,その中からVWに関するトピックを幾つか拾ってみる.
まずは,15thのLuca MassaronがVWを使った解析例を示してくれている(link).VWのコマンドは非常に参考になるし,自分もNNのHidden Unitsを10とか20でやったんだけどなーと思いつつ,何よりもまずデータの前処理の必要性を感じた.
あとは19thのKonrad BanachewiczはVWのより詳細な結果を示してくれていて(link),こっちではNNが効かないみたいな話があったり,quadratic feature頑張ってたり.
あとはLibFMとかNNとかAutoencoderとか色々な方法で予測している人がいて,非常に参考になる.
Kaggleでのコンペは終わってしまったが,上に書いたようなフォーラムでの議論は続くし,それにコンペ用のデータセットが学術向けに公開された.これでもしかしたら上位ランクのグループの成果が論文として出てくるかもしれない.
あと,Criteoの資料によると”Winners will release code publicly(Popular OSI-approved license)”らしいので,ぜひともコードを公開してほしいところ.
といった感じで,まだまだCriteo Display Advertising Challengeは終わらない.
@yag_ays kaggleのコンペのほとんど(全て?)は、Prizeに入った人は手法の説明とコード(OSI承認ライセンス)をフォーラムに投稿しなければならないとルールに書いてあるので、なんらかトラブルがない限り上位陣の成果は公開されると思います。
— id:ultraist (@ultraistter) September 26, 2014
]]>「われわれ自身が自らの行動を通して人生に意味を与え,物語を紡いでいく」
暴露:スノーデンが私に託したファイル P.76
“it is we who infuse life with meaning through our actions and the stories we create with them.”
これは本書の中で語られるエドワード・スノーデンの言葉だ.彼がなぜNSAやCIA,そしてアメリカという国家が作り上げた監視システムに異を唱えて機密書類を暴露したか,その理由を本書著者であるグレン・グリーンワルドに聞かれたときの答えの一つである.
これはエドワード・スノーデンの内部告発をめぐる一連の事件を一番近くで見ていたジャーナリストの著作である.彼がローラ・ポイトラスとともに,スノーデンの内部告発の報道をガーディアン紙に掲載した.そのスクープまでの長い道のりと,スノーデンがもたらした機密文章の内容,内部告発後の世界の反応,そしてジャーナリズムという本質を,本書「暴露」は露わにする.
本書はまるで別の本を繋ぎあわせたと思うくらいに内容が章によって異なる.まず第1章は,著者とスノーデンの出会いから接触と情報提供までの一連の流れを時系列で記述した,なかば小説的な内容.次に2章と3章ではスノーデンが持ちだした機密文章をもとにNSAやアメリカ国家が行ってきた監視システムの解明.そして第4章では監視システムの是非について,最後に5章ではジャーナリズムの意義について,告発後に著者のグレン・グリーンウォルドが経験した賞賛とバッシングなどの反応を元に書かれている.ジャーナリズムに身を奉じる一人の記者として一貫した信念を持つ著者には,どこか自身の自由や立場を犠牲にしてでも告発に踏み切ったスノーデン氏と同じものを感じる.
情報科学に身を置く者としても,そして多少なりとも他の人よりかはインターネットやプライバシーや暗号に関して知識はあるだろうという少しの傲慢さをもってしても,今回のスノーデンをめぐる事実については今でも信じ切れない部分がある.それはテロ対策という名目の元に監視システムを作り上げてしまったアメリカ自体よりも,それを実際に運用して何億通ものメールや電話を収集しメタデータを含めた個人情報を掌握するという異常なスケールの情報処理を行っている技術すべてに対してだ.それこそ昨今のビックデータなんて霞むほどの想像のつかないほどのデータ量になるだろう.実際は集めるだけ集めて解析なんてまともにできていないだろうという,なかば希望的な推測もあるけれども,それを差し置いても監視システムの持つポテンシャルにはただ圧倒されるしかない.それに,その体制を支える技術自体も想像がつかない.ネットワークの盗聴や暗号解読.しまいにはIBM,Yahoo,Google,Facebookなどの企業からの情報提供など,世の中の前提が崩れかねない内容だ.いっそ007などのスパイ映画さながらの奇抜な方法でやってくれていたほうが幾分マシだったと思える.それくらい今回発覚した事実には驚かざるをえない.
世界は変わる.身体,宗教,政治思想,職業,人種,そうしたすべての立ち位置において,昨日までマジョリティだった人間が突然マイノリティになる瞬間が訪れる可能性がある.社会の自由は弱者に対する寛容さをもってして計られる.自分が安全だからという短期的な考えではなく,もっと長期的で大域的な,どんな状態になっても自分の望む自由な世界にするべく,考えて行動していかなければならない.
]]>どっちにしろ素人のまとめなので,以下のメモは参考程度にお願いします.
Kdd 2014 Tutorial - the recommender problem revisited
(追記:2014.10.8) RECSYSのスライドも公開された.
Recsys 2014 Tutorial - The Recommender Problem Revisited
レコメンドのこれまでと現状をひと通り網羅した資料.情報過多の時代においてレコメンドは必要不可欠な技術であり,いまでは従来のレコメンドに加えてパーソナライズやインターフェイスなどの複合要素を考慮したレコメンドが必要になってきた.それにともなって,レコメンド手法としても古典的な協調フィルタリングから,Netflix Prizeにより出現した次元削除の手法,ランキングアルゴリズムやディープラーニングを用いたコンテンツベースのレコメンドなどへと広がりをみせている.
協調フィルタリングの基本
モデルベースの協調フィルタリング Model-based CF
Simon Funk’s SVD
Restricted Boltzmann Machines
クラスタリング Clustering
クラスタリング:ユーザを特定の好みごとにクラスタリングして推薦する
相関ルール Association Rule
分類器 Classifiers
協調フィルタリングの限界 Limitations of Collaborative Filtering
コンテンツベースの特徴
The Vowpal Wabbit (VW) project is a fast out-of-core learning system sponsored by Microsoft Research and (previously) Yahoo! Research.
要Boost.
vowpal_wabbit/README.mdに書いてある通り,git cloneしてmakeする.それが駄目なら./autogen.shしてからmakeする.
自分の場合は./autogen.shがエラーを吐いたので調べたところ,./autogen.sh内部でldconfigに失敗してBOOST_DIR_ARGが取得できていないのが原因だった.su権限でldconfigをしてLIBFILEの箇所を以下のように書き換えて対処した.当然ながらこれは環境に依存するので,自身の環境でLIBFILEに渡すコマンドを実行して置き換える.
1 2 |
|
Mac OS Xの場合Homebrewでバイナリをインストール可能だが,vw-varinfo等のutil系は入らない.
1 2 3 4 5 6 7 8 9 10 |
|
vw --help
して適宜読み替えるvw-varinfoを使うことによって,変数ごとに重み等の情報を出力することができる.
--loss_function
をlogisticにしてくとVWの標準出力のaverage lossの部分がだいたいKaggleのスコアになるという話
-b
でhashing spaceをちょっと大きめにしておくといいという話
-b
を大きくするとGBレベルでメモリ消費するようになる.最大の-b 32
だと64GB程度手動でクローラーを書いてもいいのだけれども,今回はkimonoというクローラーを使ってみた.
kimonoはWebから簡単にクローラーを作成してAPIやJSON形式で取得できるようにするようなアプリケーションで,Chrome Extensionを使うことでインタラクティブにクロールする内容を選択することができる.今回は,Kaggle Rankingsのランキング500ページ分をクロールして,20000人分のユーザの情報(名前,ランク,ポイント,ロケーション)を取得した.今回クロールした結果は,以下のkimonoのウェブページから誰でも利用できるはず(アカウント持ってないと見れないかな).ただしrankとptsが一緒になってたりとちょっと汚いので注意.
ちなみに,どれくらい簡単にできるかをgif動画にしてみた.最初は色々戸惑った部分もあったけれど,慣れてしまえば本当に簡単に扱える.以下の場合だと,ユーザ情報がページあたり50人分あるので,ある部分を選択したあとに他の部分も同様に取得するようにチェックを付けるのが重要.あと,paginationはいわゆる「次」にあたる部分を選択する.本当は選択した部分に対して正規表現を掛けてテキスト処理をかけることもできるのだけれども,今回は行っていない.
クロール自体はkimonoに任せることができたので,ここからはpythonスクリプトをちゃちゃっと書いて整形作業.クロールしたデータはJSON形式やcsv形式でダウンロードすることもできるが,今回はAPIから叩いてみる.kimonoの”Use in code”というタブに,CurlやjQuery,Node,PHP,Python,Rubyでそれぞれ書かれたスクリプトがあるので,それを使ってデータを取得する.例えば,curlとPythonだと以下のようになる
1
|
|
1 2 3 4 |
|
今回は日本人のアカウント一覧が欲しいので,”Country of residence”にJapanと書かれていてかつポイントを持っているアカウント一覧を出力した.なお,ユーザプロフィールの記入は基本任意なので,プロフィールで”Country of residence”を編集していない日本人は対象外になっている.
ユーザページに飛べるように一応HTMLにした.気が向いたら定期的にアップデートするようにして,もっときちんと体裁整えるかも.こういった公開も含めてkimono側で簡単なインターフェイスがあると楽なんだけどなーと思った.
]]>最近流行りの華々しいデータ解析の現実をつきつけられる1冊.ビッグデータといって騒いでいるお偉いさんは「顧客の行動データを収集して解析することで業務効率化」といった言葉を軽々しく口にするけれども,実際はそんな一言で片付けられるほど容易ではない.現実のデータ解析は泥臭く,手垢にまみれていて,そしていつも試行錯誤の繰り返しだ.手に入るデータがどれも十分な量あって構造化されていて綺麗なことなんてあるわけがない.そんなバッドデータを相手にどう立ち振る舞うかについて,大学で統計学を教えている講師から,データサイエンティスト,経済学者,スタートアップの共同創業者などなど,様々な分野の人間が自身の体験や知識をもとに書いている.それぞれがコンパクトにまとまっていて関連性が無いので,雑誌をペラペラめくる感覚で好きな箇所を読むことができる.
そのなかで個人的に面白かった章を幾つかピックアップして紹介してみる.
いわゆるネ申エクセルのような人間が読むことを前提にした非構造化データを,いかにプログラムで読み取るかという話.ここではニュージーランドの学校ごとの成績の統計を取ろうとしているのだけれども,Excelのスプレッドシートにまとめられているうえに,男子校だからという理由で女生徒の情報が入力されていなかったり,男子校なのになぜか女生徒の結果が入っていたり…とデータ取得の苦労が見られる.それでも著者は,コードを書くことが解決法であり,データフォーマットを自在に変換できることこそが重要な能力であると断言する.実際には厳しい道だけれども,まさにその通りだと思う.
英国安全衛生研究所に持ち込まれる大量のサンプルの化学的解析を行っていた著者の話.化学者のカルチャーを身をもって体験した話がとても面白く,実験系の人のことを知っていれば非常に共感できる内容になっている.著者の同僚の化学者はその道のプロフェッショナルで,データの測り方に必要な計器のキャリブレーション,実験で出てくるデータのピアレビューといった方法など,化学の世界で独自に発展させてきた技術や経験があるものの,いまだにExcelですべて完結させていたりと,データ解析の面では改良の余地がある.なんとかして構造化データとしてまとめた上で自動化したいんだけど,現実にはデータのタイプや欠損値の扱いなど様々なハードルがある.それでも怠惰という自動化は素晴らしいし,適切なコードを書くことで達成できるというもの.
この章はちょっと系統が違っていて,データ解析というよりかはクラウドの現実に焦点が当てられている.著者はMongoDBを開発している10genのエバンジェリスト.内容はストーリー仕立てで,自分のサービスをクラウドで運用しはじめたスタートアップCTOの主人公が,次第に規模が大きくなっていくにつれて様々な障害に直面していくという流れになっている.地道なパフォーマンスチューニングにはじまり,クラウドが落ちてどうしようもなくなったり,小規模だからといって手動で行っていたことが仇となったり,次第にスケールしなくなっていく水平方向のサーバ増強,コストの増加など,非常にリアルな話が次々と出てくる.結局はバズワードに飛びつくのは勝手だが現状を打破して何でも解決してくれる技術なんて存在しないということなんだけれども,将来的に技術が発展してそういう未来になるといいよねという,本来私たちが望んでいる理想で締められているところが良い.
Kaggleというデータ解析のコンテストに出題側として参加したスタートアップの創業者の話.サービスに合う機械学習アルゴリズムの開発をKaggleを通してアウトソースするのは,一見簡単そうに見えて実は大変で,データセットの作成から評価方法の検討,匿名化,コンテスト運営など,クリアしなければいけない関門は意外に多い.それでもコンテストの結果は満足のいくものだったし,自分たちで正解セットをタグ付けしたり特徴量を考えたりすることによって,結果的に出題者自身が問題を正しく理解できたという側面もあったという.こういったデータ解析分野としての新しいコミュニティやプラットフォームが出てきて企業の問題解決につながるというのは,データ解析に身をおく人間として望む未来だよなぁとしみじみ思う.
]]>ipython notebook --pylab inline
のかわりにipython notebook --matplotlib inline
を使おう.もしくはipythonの始めに%matplotlib inline
を実行しておく.
周知の事実だとは思うが,iPythonは超便利なPythonのインタラクティブシェルだ.その一部としてiPython Notebookというのがあり,ブラウザでコードを実行できたり,実行結果をノートとして保存したり,matplotlibなどで描写したグラフをノートの中にそのまま表示したりできる.RでいうところのRstudio+knitrのような,解析レポートを作るときには重宝するツールとなっている.
(http://nbviewer.ipython.org/gist/twiecki/3962843より)
で,iPython Notebookに関する記事を見ていると,だいたい以下のようなコマンドで実行している.
1
|
|
ipython notebookで起動,それにくわえて–pylab inlineとすることでiPython Notebook内で描写したグラフが展開できて嬉しいわけだけど,一つ問題がある.それはpylabをインポートしている点だ.
pylab自体は色々と便利なパッケージなんだけれども,そのpylabの挙動に少し問題がある.上で示したようなコマンドでpylabフラグを付けて実行すると,実は裏ではnumpyのモジュールがnpのエイリアスとともに,トップレベルでもインポートされている.実際にコマンドを叩いて確かめてみると以下のようになる.
1 2 3 4 5 6 7 |
|
どっちも実行できていて何の変哲もないように見えるんだけど,よくNumpyの実行環境で見るimport numpy as npの場合だと,1行目の書き方では実行できるが,2行目の書き方では実行できない.それが,pylabをインポートしているとどちらもできてしまう,正確に言えば,Numpyの関数がモジュール名もしくはエイリアスを先頭に付けなくても実行できてしまう.
ではこれの何が問題かというと,関数の名前がかぶるというわけだ.たとえば組み込み関数のsum()やall()は,実はNumpyにも同様の名前の関数がある(sum(),all()).なのでpylabをインポートすると,勝手にsumやallがNumpyのモジュールのものに置き換わってしまう.
1 2 3 4 5 6 7 8 9 10 11 |
|
意識的にpylabを使おうと思って書くコードなら良いんだけど,もしpylab関係なくいつもiPython Notebook使ってるからという感覚でpythonのコードを書いたとして,あとで普通のpythonで実行したら動かない,なんてことが起こりかねない.まあ気をつければ済む話かもしれないが,こういう地雷は踏まないに限る.
あと,–pylabを使ってiPython Notebookを起動すると以下のような警告文が出る.
1 2 3 4 5 6 7 8 9 |
|
ということで,iPython Notebookを使うときには–pylabで読み込みをしないほうが良い.
–pylab inlineを回避する方法は2つある.
ipython notebook --matplotlib inline
で起動する%matplotlib inline
をiPython Notebookの冒頭で実行しておくこうすることによって,pylabのインポートを回避しつつiPythonのノート内でグラフを描写することができる.1つ目のiPythonのフラグで指定するほうが簡単だとは思うのだが,ぐぐってもこのコマンドで実行している例があまり出てこないのだけれども,たぶん問題無いと思う.
ここまで読んだならわかるとは思うけれども,pylabの行儀悪いNumpyインポートを避けようということをしたわけだから,当然Numpyは別でインポートしないといけないし,そのへんのウェブページに載っているiPython Notebookの実行例とかのNumpyの関数の入ったコードはそのままでは実行できない.今回の方法を使っているなら,そのあたりは適宜読み替える必要がある.あんまり見たこと無い関数があったら,それがPythonの組み込み関数なのかNumpyやpylabの関数なのか疑ってかかろう.もしNumpyの関数なら,import numpy as npがされていることを確認したうえでnp.を関数の先頭につければ実行できる.なんかコードのサンプルをコピペしたけど動かないというときは,まあ大抵この問題だ.
ipython notebookのコンフィグに追記しておく方法もあるようです.
.@yag_ays http://t.co/BATzhJPepj 拝見しました.自分用のconfigファイル ~/.ipython/profile_default/ipython_notebook_config.py でc.IPKernelApp.pylab = 'inline'
— しましま (@shima__shima) January 25, 2015
参考