はてなキーワード: クラスタリングとは
特に説明するまでもない事実だと思うが、はてなブックマーカーには特定の話題に特定の同様のコメントをしがちなアカウントからなるクラスタが複数存在する。はてサ、ニセ科学批判クラスタ、・・・(モヒカン?)
とすると、ある程度のブックマークが集まったページのブックマークコメントを形態素分解し、同じようなページに同じようなコメントを付けるようなアカウントをあらかじめクラスタリングして、各ページについてその各クラスタのブックマーカーによるコメント頻度や各クラスタごとのコメント傾向を表してくれると、ブックマークされたページがどういうものかあらかじめわかりやすい。Deep Learningならもっとうまくやれるのかもしれない。実装してくれないかな。最近暇がないから、無駄なページを読みたくないんだよ。
xevraやmidas、blueboyのようなブックマーカーをoutlierとしてクラスタリング除外する機能も実装している必要がある。無論、midas閣下とxevra先生については独立して鑑賞したいのだが、それはお気に入りを使えばいい話である。
どうも、id:BigHopeClasicです。
本当はこんな内容、自分ではてなブログに投稿したほうが見た目もきれいになるしいいんでしょうが、持続できないブログを作るのも気後れするので、増田を使います。
さて、掲題の件、はびこりそうな誤解がいくつかありそうなのが将棋ファンとして気になったので書こうと思ったものです。
「日本将棋連盟が三浦九段に対して、カンニングをしていないという悪魔の証明を求めた」
としか解釈できません。つまり、将棋連盟は三浦九段に対して、決定的な物証などを何一つ押さえないまま
この点については続報を待つ必要がありますが、あくまでも現段階での私個人の感想としては
「下策中の下策、愚の骨頂」
なるほど確かに、三浦九段が疑わしいとする複数の棋士からの申し立てはあったのでしょう。
連盟がそれを黙殺すれば、その疑惑が文春砲などで火を噴いた可能性も否定できません。
しかしながら、決定的な物証がなければ、いくら週刊誌が書きたてようが大きなダメージにはならないのは日本相撲協会と週刊ポスト、週刊現代の顛末を見れば明らかです。
大相撲八百長問題が警察からの情報提供で明らかになる前、週刊ポストは30年にわたって角界の八百長を告発する記事を書き続けてきましたが、その内容は元力士らの極めて具体的かつ迫真性のある証言に基づくものとはいえ、決定的な物証をおさえたものではなく、大相撲はそれによってはなんら決定的ダメージを負うことはありませんでした。
週刊ポストに対しては、日本相撲協会は徹底的に無視をし続けることで対応したのです。
また、週刊現代の八百長報道に関しては相撲協会と各力士は、週刊ポストとの対応とは一転して大量の名誉毀損訴訟を起こしそのことごとくに勝訴しています(週刊現代の八百長報道は週刊ポストと比較してもあまりにお粗末だった)。
日本将棋連盟は、こうした大相撲の八百長問題におけるリスクの評価と対策から何も学ぶことなく、あくまでも現段階の報道に基づくところからは、およそ愚劣な対応をしたと言わざるを得ません。
さて、上記とは別にこの問題が深刻なのは、自宅にあるパソコンを遠隔操作するまでもなく、2016年7月におけるスマホ将棋アプリの棋力は、渡辺明竜王、佐藤天彦名人、羽生善治三冠といったトップ棋士の棋力をすでに上回っているという有力な推測があるからにほかなりません。
「対局室へのスマホを含む電子機器の持ち込み禁止、昼食休憩時における将棋会館外への外出禁止」
を定め、これに違反したものは除名を含む厳しい処分を課すことを決め、さらに今週末から開幕する竜王戦では、対局者に対し対局前に金属探知機で持ち物チェックをするという対応を決めていたわけです。
(新聞報道ではこの金属探知機での調査については渡辺竜王、三浦挑戦者双方の同意の下とされています)
(なお、上記のルールは12月中旬から適用とある通り、仮にこの時点で将棋連盟が不正に関する動かぬ物証をつかんでいたとしても、それを三浦九段に対して遡及適用できないことは当然です)
この件を報じた朝日新聞の記事についていたブコメからいくつか代表的な反応を取り上げます。
b:id:temtex 仮に事実としてもだ、たかがスマホアプリでどうにかなるものなのか…と思ったら、別のとこで走らせたソフトの結果さえ判れば良いのか(但し"スマホ搭載"と記事にはある)。プロに勝てる有力なソフトってどんなの?
b:id:namnchichi スマホのアプリでタイトル取れるのか?
b:id:symbioticworm 現時点でスマホで走らせられる将棋ソフトなんてたかが知れてるから、不正があったとすれば外部との通信が必要なはずだけど。現段階では情報が少なすぎる……。
b:id:buu さすがにスマホ搭載のアプリじゃ参考にならないだろうが、協力者と連携すればカンニングは可能だろう。人間よりもソフトが強くなるとどういう将棋界になるのかと興味深かったのだが、こうきたか。
b:id:kaitoster 『対局中、スマートフォンなどに搭載された将棋ソフトを使って不正をした疑い』←スマホの将棋ゲームすでにプロのタイトルホルダーより強いソフトあるのかな?
なるほど、確かにプロ棋士とコンピュータ将棋が戦う電王戦ではコンピュータ将棋が大きく勝ち越しているとは言え、最新の事情を詳しくご存知でなければ上記のような反応は出てくるのが自然かもしれません。また、今回の当事者である三浦九段が電王戦に出場した際の対戦相手が、東大駒場の情報基盤センターの学生用iMac680台をクラスタリングしたGPS将棋であったことも、上記のような反応につながるかもしれません。そこで、これらの誤解を解消するため、コンピュータ将棋の現況について説明したいと思います。
まず、上記の三浦vsGPS将棋が行われて以降、ドワンゴ主催の電王戦では使用されるCPUが制限されています。この制限に基づき電王戦で使われたCPUは、2014年がcorei7 4960X(6コア12スレッド)、2015年がcorei7 5960X(8コア16スレッド)とここまではその時点で調達可能なcorei7シリーズのエクストリームエディションを使用していますが、今年2016年は世代こそ最新のskylakeとなったものの4コア8スレッドのcore i7 6700K、そして来年2017年の使用CPUは同じく4コア8スレッドのcorei7 6700と、使用するハードウェアの性能は年ごとに抑制されるフェーズに入りました。
ではそれによってコンピュータ将棋のパフォーマンスの伸びに制約がかかっているかというと、全くそんなことはありません。将棋ソフトponanzaの開発者の山本一成さんは、2016年電王戦開幕前に「corei7 6700K1台で動くponanzaは、iMac680台をクラスタリングしたGPS将棋より遥かに強くなった」と宣言しています。これは根拠のないことではありません。
現在フリーで入手できる将棋ソフトについては、有志が統計的に有意な手法を用いてその相互間の強さをeloレーティングを用いて計測しています。その一例として、こちらのウェブサイトがあります。eloレーティングの仕組みについては[wikipedia:イロレーティング]を参考にしていただくとして、目安としてはレート上位から見て下位に100差あれば期待勝率64%、以下同じく200差で75%、300差で85%、400差で91%、500差で95%、600差で97%、となります。
ponanzaはフリーで公開されていないため、上記のウェブサイトにはレートは計算されていません。しかし、2016年に電王戦に出場したponanzaは、このウェブサイトで「Apery twig」として掲載されているソフトに対し勝率97%を上げていることが、電王戦に出場した山崎隆之八段をサポートした千田翔太五段の調査によりわかっています。つまりこのponanzaのレートは「Apery twig」の3250に600を足した3850前後であろうと推定できます(なお、上記のサイトで検証に用いているハードウェアはIvybridgeおよびskylake世代の4コア8スレッドメモリ16GBであり、これは2016年電王戦における使用ハードと大きな差はありません)。
一方、2013年に電王戦に出場して三浦九段と対戦したGPS将棋は、この表に掲載されているGPSFish(レート2879)をスレーヴとしてこれを680台クラスタリングしたものでした(厳密に言えば電王戦に出場したGPSfishはこれより一つ前のエディションですが大きな棋力向上はないものと仮定します)。この680台クラスタリングした際の棋力向上幅については、GPS将棋開発チームの田中哲朗東大准教授が、根拠は全く無く経験に基づく推測にすぎないとしながらもレートにして400程度と語っており、これを採用します。
そうすると2013年電王戦のGPS将棋の推定レートは3279となり、2016年電王戦ponanzaとのレート差はおよそ570、ponanzaから見た期待勝率は96%となります。わずか3年の間に、コンピュータ将棋は1台のデスクトップPCで、680台のパソコンをクラスタリングした将棋システムに96%勝利する成長を遂げたのです。
(なお、コンピュータ将棋がかくも異常な速度で成長したのは、ドワンゴが電王戦において「使用ハードウェアの制限」と「提出後対局まで6ヶ月間一切のアップデート不可その間棋士は研究し放題」という条件をつけてしまったからだと考えています。こんな条件をつけなければ開発者はここまでしゃかりきに強化はしなかったはずです。ドワンゴがコンピュータ将棋の大会に出してる優勝賞金の300万円なんて開発費の元手にもなりゃしないし、強いコンピュータ将棋を作ったって売り物にはならないので、モティベーションはこんな厳しい条件のもとで恥をかかないためにはひたすら強くするしかない、ってとこだけなんですから)
もうひとつ、これらの将棋ソフトとプロ棋士の強さの関係はどうなのだということも前提として必要になります。まず、プロ棋士のレーティングについては、こちらのウェブサイトが現在最も信頼され参考にされています。eloレーティングは、基準となる値を何点に設定するかで絶対値はいくらにでも設定できますが、上記の点差と期待勝率の関係は基準値を何点にしようが変わらないので、異なる基準値をとる異なるレート表間での比較が可能になります。
さて、コンピュータ将棋の公開対局場として、GPS将棋の開発チームが開設しているfloodgateというサイトがあります。ここでも参加者の対戦成績に基づいてレーティングが計測されています。また、この対局場は、コンピュータ将棋だけでなく人間も参加することができます。このfloodgateに、一時期上記の千田五段が参戦されていました。その際に記録されたレートは2800ほどでした。千田五段が参戦されていた時期のプロ棋士レーティングにおける数値と、その当時の羽生三冠との数値の比較から、羽生三冠がfloodgateに参戦した場合の予測されるレートは3000から3100程度だろうと見込まれています。また、先に紹介したコンピュータ将棋レーティングサイトのレートは、floodgateのレートの数値と大きく変わらないようにする工夫がされています。なお、羽生三冠のここ数年のプロ棋士レーティングは時期による前後はあれど概ね1900プラスマイナス50程度であり、佐藤天彦名人や渡辺竜王の棋力もほぼこの幅に安定していて、現時点ではこの3人が名実ともにほぼ拮抗した最高レベルの棋力といえます。
ここから考えた際に、2016年電王戦ponanzaと羽生天彦渡辺といったトップ棋士の棋力差はおよそレート差800、ponanzaの期待勝率は99%超、という推測になります。第2期叡王戦本戦PVで千田五段が、羽生のponanzaに対する勝率を0.5%と仮定しているのは、まずこの推測に基づくものと考えて相違ないでしょう。もちろんすべての基準となるfloodgateでの千田五段の数値は、普通のプロ棋士の公式戦ではありえない短い持ち時間の下で行われたものであるため、実際の羽生とponanzaの実力差はこの通りではない、という反論は容易ですが、そもそも持ち時間が9時間に増えたからと言ってレート800の差は埋まるものではなく、コンピュータ将棋も持ち時間を長くすればそれだけ強くなることを考慮すれば本質的な議論とは言い難いでしょう。
ここまで長い前置きを置かないと、なかなかこの本題に説得力が出ないと思いましたが、いよいよここからが現在のスマホ将棋アプリの話題です。
これだけ強くなったコンピュータ将棋ではありますが、これまでは基本的にパソコン上で動かすものでした。スマホ用の将棋アプリも多数出てはいましたが、プロ棋士の最上位に匹敵すると見られているものはありませんでした。
ところが今年の7月、android用の将棋アプリとしてshogidroidがリリースされます。これ自体は将棋ソフトのGUIであって思考エンジンはないのですが、このshogidroidの売りは、今年の6月に一般公開された当時の最強フリー将棋ソフト「技巧」をandroidスマホの上で動かせるようにしたことでした。技巧の強さは先のコンピュータ将棋レーティングサイトで4コア8スレッドで動かした際に3578。ponanzaの3850には及ばないとは言え、今年6月当時ではponanzaに次ぐ2番めに強いソフトで、人間から見れば驚異的な棋力です。
もちろん、この技巧といえど、その棋力がCPUの能力に依存することは言うまでもありません。しかし、スマホも今日日クァッドコアは当たり前、Huawei P9のようにオクタコアを搭載してGeekbenchを用いたベンチマークテストで高い数値を出すスマホもある時代です。第4回将棋電王トーナメントで3位になったやねうら王の開発者で、皆様もよくご存知のやねうらおさんは、2016年9月時点のハイスペックのスマホに、一切のスマホ用のチューニングを行わずに思考エンジンを搭載しても、レートの落ち幅は400程度と推定しています。この推定を当てはめて技巧をshogidroidで動かした時のレートを推定すると3178。やはり羽生天彦渡辺を上回っていることになります。実際にはもちろんやってみないとわかりませんが、あくまでも推測上では、すでに電王戦はプロ棋士対スマホで十分に成立し、それでもプロ棋士の分が悪いことが予測される段階に突入しているのです。
※ちなみに、先の電王トーナメントで優勝し来年の電王戦に出場する最新のponanzaは、今年の電王戦に出場するponanzaに9割勝つとの開発者山本さんの発言がありました。これを信じるならponanzaのレートは4200となり、スマホに積んでも3800で、やはり羽生三冠の期待勝率は1%に満たないことになります。
これが2016年10月における、スマホで動かすコンピュータ将棋の現状になります。恐ろしいことには、shogidroidは無料のアプリであり、その思考エンジンの技巧もフリーウェア。それを最高スペックで動かすHuawei P9は54000円で買える、というところにあります。この状況をどう考えるかは皆様のご想像におまかせします。
さて、お気づきの方もいるかもしれませんが、疑われた三浦九段の棋譜をソフトで検証してみれば白黒はっきりするのでは?と思われるかもしれません。しかしそれは極めて困難であると申し上げましょう。
まず、Shogidroidの上で動かせるソフトは技巧に限りません。その他のソフトも動かすことが可能です。次に、同じ将棋ソフトであっても、ある局面を検討させたときに導く最善手は、CPUの性能や検討させる時間によって異なります。そもそも将棋ソフトにはある特定の局面において常に同じ結果とならないよう検討においては乱数も使用されており、一局の将棋の棋譜からではその人がカンニングしたかを導くのは容易ではありません。
さらに、将棋は二人零和有限確定完全情報ゲームである以上、ある局面における最善解というのが必ず存在します。ということは、その最善解を自力で導いたかカンニングしたかの区別は、着手から「だけ」では判定できないことになります。
以上の理由から、カンニングしたか否かの実験を第三者が行っても、その結果についてはいくらでも疑義をつけることができ、有効ではないと言えましょう。
こういう知ったかぶりのバカが偉そうに新参者を除外しようとするのは典型的なパターンですが、非常に良くないですね。
ベクトルのクラスタリングは奥の深い話ですし、現在考案されているアルゴリズムはどれも完璧とは程遠いものばかりです。
この分野ではアイデアが勝負なのです。いきなり初心者がブレイクスルーする可能性はまだまだ十分ありえます。
ある問題が単体で面白いと思えてそこで独自のアイデアを思い付き、そのアイデアを自分なりに調査して一週間かけて実装する根性のある人は実のところあまりいないので、それだけでも大いに価値のあることなのです。
ベクトルのクラスタリングですか。面白いトピックだと思います。
是非そのアイデアだけでもどこかで共有していただきたいものです。
うまくいかなかったとしても一度はそれでいける!と考えたものだと思いますのでそこには何らかのヒントが含まれているかもしれません。
研究は根気です。
自分が面白いと思ったアイデアをひたすら考え続けていくといつのまにかその分野のトップになっていたりするかもしれませんよ。
慣れてくると最初に先行研究がないか調べている段階で自分のアイデアのおかしな部分に気付いたりするものですし、1週間のロスみたいなケースはあまりなくなると思います。
1週間前、あっ……これ良いかもっていうアイデアを思いついた
ベクトルデータのクラスタリングに関することだったんだけど、ググったり関連文献あさっても同じような事してる人は全然いない
なので今までそういう経験はほぼなかったんだけど、自分で1から実装してみることにした
結果、大失敗、意味なかった、というか無理だった
3日目くらいまでは、凄い順調で、おお、これ凄いぞ!やばいやばい!って一人でテンション上がってたんだけど
5日目の終わりに、あれこれもしかしたら、この概念を拡張したらアウトじゃない?拡張できなくない!?っていう疑問が湧いてきて
ただ、自分の数学力ではそれを数式で証明なり検証するのは不可能だったので確認できるところまで実装を進めることにした
で今日、というかさっき、自分が1週間前からやってたことは全部無駄だったというのが確定した
もう気分の落ち込みが半端じゃない、本当に最悪、何もする気おきない
フリーだから24時間×7日間まるまる使ってるし、1週間もかけて残ったものゼロ
そりゃ今までだって1日かけて書いたコードを全部破棄とか書き直しとかそんな事いくらでもあったけど
なんかそういうのとは全然質が違う気がする
で思ったんだけど、研究者って日常的にこういう思いしてるんだよね?
自分がやってた実験が何の意味もなかった、半年かけたけど成果ゼロ、最初の想定から間違ってた!とかさ
当然、結果が全ての世界だからその半年の頑張りなんかもまったく評価されないし意味がないんでしょ
凄くない?
更にそういうの全部乗り越えて、結果を出すんでしょ
ほんと凄いよ
学生の頃、友達とキムワイパーとか言ってバカにしてたけど謝りたい
頑張ってるんだよね?
俺があげたサイトの「次元の呪い」のセクションには「計算はとっても時間がかかってしまいます。」とあるんだがな。関数値を計算するのは簡単、というのは不正確な言い方で、真の関数値を計算するのが困難だからこそ、簡単に計算可能な関数で代用して、近似的に真の関数値を計算するための仕組みがMCMCだろう。そりゃ、代用で使う関数の値を計算するのは簡単だよ、そのために導入したんだから。
まぁ、計算量の話はどうでもいい。他に知ってる「次元の呪い」の普通の用法は、クラスタリングの際に、高次元空間だとほとんどのデータ点間の類似度が同じ値になってしまって、クラスタリングが失敗しやすくなるという話だな。この現象を「関数が望む性質を持たなくなる」と表現したのが伝わらなかったのかな。クラスタリングの際に使う類似度も関数の一種で、それが望む性質を持たなくなるのだから、間違ってないと思うのだけどな。
http://ibisforest.org/index.php?%E6%AC%A1%E5%85%83%E3%81%AE%E5%91%AA%E3%81%84
で、クラスリングでも計算量でもいいから、それが、遺伝的多様性が確保できない問題と何の関係があるんだ?教えろよ。
俺があげたサイトは「次元の呪い」と「遺伝的多様性」について何も述べていない。少なくとも、「次元の呪い」が、分野によって遺伝的多様性とは関係ない文脈で使われる言葉であることは確かなわけだ。
そこ、ちゃんと説明してもらわないと、「遺伝的多様性が確保できる」ことと「次元の呪い」がどう関係しているかはわからないし、何の反証にもなってないぞ。
クラスタリングの時点で素人ではないと思ってたけど、やっぱりこっち系の人なんだね。
Mecab入れようと思ってたんだけど、pythonラッパーのインスコが遅すぎ and Yahooの方がクオリティが高いらしい ということでYahooでやってた。
一応クローリングはPythonで簡単なスクリプト書いてたんだけど、ページごとにざっくり取得してるんだわ。記事ごとに取得できるスクリプト貰えると嬉しい。
手元あるオライリーのペンギン本に記事の特徴を検出するサンプルがあった気がするから、できると思う。
増田で「増田のデータをクラスタリングしたら面白いんじゃね?」って話になった
クラスタリングはメタデータとか必要だったので、まずは簡単な統計をしてみた。
とりま2014/1/1〜1/26のデータを収集。テキストだけで6MBという鬼畜っぷり。(データ1) それをYahoo形態素分析APIで単語に分解、集計(データ2) 見てもらえば分かるが、ノイズがひどい。「トラックバック」とか「こと」「それ」みたいな、意味も無い言葉が混じっている。こっからは手作業でノイズ単語を除去していく。その結果がこれ。1位から10位までを勝手に解説
なぞ。子連れの奴が多いのか、少年愛or少女者が多いのか。はたまた煽り文なのか。
これは某塾講師の影響だろうな。いつ言うんだよ?
右翼の方々かな?島の問題で色々あったもんな。
まぁそうだな。
これは自覚症状あるだろ?
6位 問題 == 846
7位 男 == 789
8位 相手 == 754
9位 意味 == 739
初めまして。前回「Web系の会社を解雇されて思った事 」を皆さんに読んで頂いて大変うれしい。自分はと言うととりあえず会社らしき所で働いているが、もう辞めたい病発症中だ。以下辞めたい病の内容を職種別に話そうと思う。
Webという仕事をやってて一番嫌いなのがこのデザインと言う仕事だ。大手企業に入社できない大手病まっしぐらの28歳の自分としては、どうしても事業規模の小さい会社で仕事する事が多く、デザインの方向性から自分が担当する事がある。ここで俺がデザインを嫌いな理由は「そもそも何でデザイン作成や改修をするんですか?」とやる目的が見えない時があるからだ。まずデザインや文章を書いていく上で重要な事を書くと、
1.相手に何を伝えたいか?
2.どのような伝えていく事で、相手にどのような印象を与えていくか?
の2つ。例えばこの文章は「俺が仕事の愚痴を書いて、皆さんに共感してもらう」事や「こいつはこういう仕事が向いていない奴」「こいつは仕事本体より愚痴になると心が踊る奴だ」と言う印象を皆さんに与える為に書いている。
さてAKB48だろうと「普通な女の子が歌う歌」と言う方向性があるし、西野カナにしても「失恋に悩む女の子」と言う方向性があって、それに則ってお金を取っているわけだ。その点を煮詰める事が一番肝心だし、そもそもの方向性が定まってないのにサイトを作るのは「敢えて言おう。無駄であると」と言いたい。
それこそサイトを受注する料金がかかるのならば無料ブログでも良い。それこそキャバ嬢や風俗嬢の女の子が個人サイトでも持って営業したからと言って、収益に結びつくのだろうか?否そうではない。要は見た目の良さや機能性のみだけがサイトや商品の善し悪しを決める訳ではなく、相手に合わせ的確なものを選ぶのが肝要であり、そういう話が無いデザイン会社を受けるのは絶対に受験するのを止めろと言いたい。キャバ嬢から話を話して、千葉県のCafe GAKEのブログなどを見ていても思う事で、そのお店の雰囲気や店長の人柄が伝わればそれで良いと思っている。
さて3社目にいた時はどうだったか?機能や見た目に浮かれるような上だったからこそ最悪だった。結論から言えば「Photoshopでスライスし、パーツ画像を作成するコツと方法(Webクリエイターボックス)」に書いてあるようなPhotoshopのスライスの切り方や、各部分の間隔のそろえ方などデザインに関する技術を覚えられたのは良かったと思う。しかし企画としては明らかに失敗と思うケースは意外にある。
具体的には「○○をユーザーによく見せる為に、△△なサイトのデザインにしていく」と言う何故このデザインにするの?と言う説明が無いままいきなり作ってと言う流れに。そりゃあ慣れないプログラム言語を使ってデザイン部分〜データーベース部分に至るまでほぼ一人でやっていた訳だ。しかし終始上は上で俺が作ったページが最高だ!と言わん顔。クライアントとの打ち合わせ会議から帰って来ると「サイトの画像のエフェクトを使うという冒険をしたくないのか?」とクライアントを非難する事を陰で言ってるあたり、そもそも何の為に作っているのかをお互い摺り合わせていない事がわかった。
無論技術を見せびらかして「素人目に見てこうした方が凄い」とのたまっていたが、はっきり言って見る人は絶対に見ない。そもそも今の俺がそうだから。と言う訳でどうも俺はデザインが似合わない事が分かった。
と同様に俺はプログラムと言う名の現場開発もどうも苦手だった。俺はエロ系のサイトの改修をやっていたときは「世界最強のエロサイトを作ってやるぜ」と息を巻いていた。しかしソーシャルゲームはどうか?お姉ちゃんのおっぱいも関係ないし、かといってお尻も関係ない生活が3ヶ月続いた。そもそも無機質なカードを見て欲情できる奴らの気持ちが理解できず、なんでこんな物で満足できるのだろうと思っていた。
しかし会社をクビになる頃、俺はすばらしい数学の問題に出会ったのだ。Twitter経由で「コンプガチャの数理 -コンプに必要な期待回数の計算方法について-:doryokujin's blog」に書かれていた、Coupon Collectors Ploblemと言う命題に非常に感激した。これはnを自然数としてn種類のクーポンの出現確率が同じと仮定した場合、n種類のクーポン全てが出そろう枚数の期待値 E(n) = n(1 + 1/2 +1/3 + …… + 1/n)(枚)となると言うもの。
この時マクドナルドで3種類のコーラグラスを集めるキャンペーンをやっていて、セットを幾ら頼めば良いかなんてのを暗算で弾いたのは良い思い出。n=3なのでE(3) = 11/2で、セット一種類当たりの値段が600円だから3種類全て出そろう期待金額= 600 * 11/2 = 3'300(円)なので、最初っから3種類買って全て集めたのは良い思い出だ。これがソーシャルゲーム時代に一番感激したないようで、ソーシャルゲームの運用のやり方とこのCoupon Collector's Ploblemの証明どっちを取るかと聞かれたら、すかさず後者を取るだろう。それくらい俺は物を作ると言う仕事に向いていないらしいことが分かった。むしろ統計学やデータマイニングと言った数学を駆使してできる商売や、商品企画などもっと上流の過程で仕事がしたいと思い探している。
6月の面接の段階で、機械学習やクラスタリングと言った知識に穴があった。最近ではその点を補う為に「データサイエンティスト養成読本 [ビッグデータ時代のビジネスを支えるデータ分析力が身につく! ] (Software Design plus)」のような本を読んで、取り合えず次の会社の面接官の話のタネになる知識を集めている最中だ。大学時代が贈処理の研究をしていて、クラスタリングと言う単語は聞いた事があった。しかし実際に触れてなかったので改めてここで復習をしているのだ。
最後にこの文章をはてな匿名ダイヤリーで書いたのは、顔を隠そうと思っての事だ。「明らか向かない仕事をどうしてやるのだろう?」「デザインに関しては俺はクライアントの要求以上の事は出来ない。寧ろ美術関係の学校をでているような人に座を譲りたい。デザインに対する情熱が俺とは違う」「俺の好きな数学やデータを駆使するしごとにいきたい」としきりに思いながら仕事をしている。そして長々と愚痴を書いたが、こんな愚痴をここまでお読み頂いた皆さんには感謝だ。又こういった場を提供してくださった株式会社はてなの皆さんにも感謝する次第である。
試験業務中心だった。
その中でもシステムテストとかやったりしてるのでネットワークやサーバー、アプリは商用の状態に近い環境で試験をしている。
具体的にはサーバーはLB使って冗長化/スケールアウトされていたり、クラスタリングされていたり、データセンターにあるサーバーにリモートでログインして試験をしたりとか。
rebootコワイヨーとかHW障害うざいよーとか思いながら。
ソフトウェアの受託開発の会社で、Javaの業務アプリを設計・開発・試験していた様な人達が集まっているので、ネットワークやLinuxなどアプリよりは低レイヤなところに詳しい人が地味にいなかった。
システムテストの項目書をExcelで作るお仕事や、試験を実施するお仕事は凄くやる気しなかったが、試験の実施方法を検討するお仕事や、試験をするための環境を構築したり、仕様書を読んでミドルウェアやアプリにコンフィグを投入する仕事は楽しかった。コンフィグを投入する作業をスクリプトで怠惰に自動化したりするのは、けっこー楽しかった。
リグレッションテストや、バージョンアップでの改修テストなどで環境を再構築する際に、作成した自動化スクリプトは腐らさせずに誰かに展開することが出来たので、自動化した工数も無駄にはならなかった(ちゃんと効率化に!)大量にデータを投入するとき、さすがにだるい。ツールも使えば使うほどバグなくなるし良い感じ。PerlやBashを覚えるきっかけにもなるし。
今思うと出向も楽しかった!メーカーSIの会社は社員食堂とかあったので、うわすげぇドラマみたい!とか朝はエレベーターの前に人が並ぶのでうわすげぇ人多い!とか。(最初だけだけど)
後はサーバー室でサーバーとかLBとかを目の前で見れたのがテンション上がった。うわこれF5じゃね?うわこれJuniperやん…いくらすんだよ…HPのブレードサーバーだ!いくらするのかググった。
まぁ、普通に誰も興味示さないw あの時は商用ネットワーク機器という物に憧れている少年だったw
作業で疲れたときはぶらぶらして眺めてた。
何かの見学の時は「おいふらつくな」とか誰かに怒られそうだけど、仕事で来てると誰も何も言わないので見たい放題。転んでケーブル抜いた日には大問題になりそうなので、さすがにそこは気をつけた。
あの1UサーバーにRHELをインストールするとか、少年には楽しすぎた。でも手順はMacのVirtualBoxにCentOS入れるのと変わりはなかった…。ただ、仕事として1UサーバーにRHELをインストールした、という経験を持つことが嬉しかった(少年だから)
でもいいさ。
F5なんか使わずにLVSやUltraMonkey-L7で負荷分散すればいいし、商用のアプライアンス機器なんか使わずにオープンソースで解決してしまおう。AWS使うならELB使えばいいし。そういう環境行ってみようぜー。