タイトルって難しい。

学力も体力もない人間の雑記帳。

Xperia Z3を買った

今更ながら、XperiaZ3を買ったレビューをしてみます。
といっても、購入したのは、先月末…。
比較として、iPhone5sおよび、XPeria acro HDと比べてどうかって感じで書いていきます。メインはiPhone5sなので…。

良い点

  • カメラの画質
    • やすもんのコンデジよりいいかもしれない
    • 実際使ってて気持ちいい
  • レスポンス
    • acro HDと桁違いに良い
    • iPhoneと遜色ない気がする
  • 地デジが見られる
  • (購入費用が)安い
    • 割と重要

ダメな点

  • 内蔵アプリが多すぎ
    • 国内キャリア向けAndroid端末の使命か
  • でかい
    • 片手で持つのは結構しんどい
  • バージョンごとでUIが変わりすぎ
    • ただのAndroidに対する悪口でしかない

こんな感じでしょうか。興味ある方は、MNPとかで買ったら良いかと思います。

【OS X Yosemite】USBメモリでリカバリ

便利さとその功罪?

OS XはネットワークからOSをダウンロードしてリカバリすることが可能なのですが、何故かネットワークエラーに会うことが多々有ります。
先日も、せっかくクリーンインストールしようとしたのに、OSのダウンロードでエラーを出されて困っていました。

解決

【OS X Yosemite】インストール用 USB メモリ起動ディスクを作成して再インストールと復元をできるようにしておく

こちらの手順でUSBメモリOS XのリカバリメディアとしてしまえばOKです。ただし、少なくとも8GBは必須。まぁ最近は、秋葉原のお店とか行くとこんなのとかこんなのがあって、そんなに高くないのですが。

ただし、この技は予めOS Xが入っている(& Yosemiteがインストールできる)PCが必須です。なかったら誰かに借りるしかないかも。

ダウンロードで手間取ったらこの手段を是非。

UbuntuにR

問題と解決

研究室から貸し出されたデスクトップ端末にもせっかくなのでRをインストールしました。
しかしながら、ある落とし穴に…。

通常、Ubuntuで何かをインストールする際には、apt-getを使用しますが、Rの場合は事前にある操作をしないとめっちゃ古いバージョンしかインストールできません(たしか、2013-10あたりのやつだった気が…)
というわけで同じ落とし穴にはまらないためにメモ。

以下、すべて端末上の操作になります。

まず、Ubuntuのバージョンを確認。

cat /etc/lsb-release

ここで出てくる、「DISTRIB_CODENAME=hogehoge」は要確認です。
次ダウンロード元のミラーサイトを登録します。

$ sudo vim /etc/apt/sources.list

vimを開いて、一番下の行に
DISTRIB_CODENAME=hogehogeの場合

deb http://cran.md.tsukuba.ac.jp/bin/linux/ubuntu hogehoge/

を追加します。

次に公開鍵登録のため、次のコマンド入力

$ gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
$ gpg -a --export E084DAB9 | sudo apt-key add -

最後に

sudo apt-get update  
sudo apt-get install r-base

これで終了です。

そういや、最近お前Rで何も書いてなくね?春休み遊んでばっかじゃね?

Enjoy!

[参考]
UbuntuにRをインストールするための手順 | トライフィールズ
The Comprehensive R Archive Network

追記

RStudioは普通にダウンロードしてインストールしてください。

東京大学大学院 情報理工学系研究科に合格して入学しました

はじめに

2014年8月と2015年2月に受験しました。創造情報学専攻というところです。
結果がついてきたので良かったものの、できれば二度と受けたくないなーっていうのが本音です。

使った本とかサイトとか需要ありそうなので書いていきます。アフィリエイト満載の記事で申し訳ないです。許してください。
一応、軽く経歴だけ書きますと、理系だったのですが、半分は情報系、半分は数理系という具合で、純粋な情報系ではありません。非情報系で受けられる方には参考になるかもしれませんね。(私自身は数理系の方にいました。)
本については、優先度の高さで図書館で借りるか買うか決めてました。本ってあればうれしいですけど、とにかく高いんですよね・・・。

プログラミング&数学

受かったのは、プログラミングなのでそちらだけ参考にして下さい。数学は反面教師として・・・(笑)
プログラミングは、後述する専門と同様に解いてなんぼという作戦でいったため、そんなに多くはないものの、以下のサイトを利用したりしていました。
AIZU ONLINE JUDGE: Programming Challenge
基礎から練習できます。オススメ。
ACM/ICPC国内予選突破の手引き
これも練習に。苦手なDPとか特にやってました。今も苦手です。
あとは、暇な時は蟻本とかやってました。某ラボの先輩がおっしゃってたんですが、蟻本を2週間ひたすらやれば合格するとかなんとか。たしかにわからなくもないですね。

プログラミングコンテストチャレンジブック [第2版] ?問題解決のアルゴリズム活用力とコーディングテクニックを鍛える?

プログラミングコンテストチャレンジブック [第2版] ?問題解決のアルゴリズム活用力とコーディングテクニックを鍛える?

あと、この本は私が受験した頃はありませんでしたが、非常におすすめです。

プログラミングコンテスト攻略のためのアルゴリズムとデータ構造

プログラミングコンテスト攻略のためのアルゴリズムとデータ構造

夏入試では、数学で受験しました。落ちましたけど。
数学は年によってはめっちゃ難しくてとにかく変動がでかいです。
できるならばプログラミングのほうが良いと思います…。あくまで個人的な意見ですが。
一応、数学では、たまたま戴いた過去問とその答えに加えて、併願先も含めた院試対策でも部分的に使った以下の問題集とか解いていました。解答が間違っていて焦ったことが多々ありましたが・・・。まぁ落ちましたけど(2回目)。

詳解 大学院への数学―理学工学系入試問題集

詳解 大学院への数学―理学工学系入試問題集

演習大学院入試問題〈数学〉I

演習大学院入試問題〈数学〉I

演習 大学院入試問題[数学]II

演習 大学院入試問題[数学]II

アルゴリズム

蟻本とかやっていればある程度いけるかと思います。
あと、私は元々そこまで詳しくなかったので、夏の受験前にこんな本とか読んでました。

データ構造とアルゴリズム (新・情報 通信システム工学)

データ構造とアルゴリズム (新・情報 通信システム工学)

薄くて大体のことを網羅してるのでオススメです。

一応、パラパラっとではありますが、アルゴリズムイントロダクションも読みました。

アルゴリズムイントロダクション 第3版 総合版 (世界標準MIT教科書)

アルゴリズムイントロダクション 第3版 総合版 (世界標準MIT教科書)

  • 作者: T.コルメン,R.リベスト,C.シュタイン,C.ライザーソン,Thomas H. Cormen,Clifford Stein,Ronald L. Rivest,Charles E. Leiserson,浅野哲夫,岩野和生,梅尾博司,山下雅史,和田幸一
  • 出版社/メーカー: 近代科学社
  • 発売日: 2013/12/17
  • メディア: 大型本
  • この商品を含むブログ (6件) を見る
分厚いですね。鈍器です。内容も濃いので、非情報系の方には薦められません。

ハードウェア関連

アーキテクチャ論理回路
アーキはあんま得意じゃなかったです。
一方、論理回路は後述する過去問を解きまくったらなんとかなりました(といっても出題されませんでしたが)。

コンピュータアーキテクチャ (電子情報通信レクチャーシリーズ)

コンピュータアーキテクチャ (電子情報通信レクチャーシリーズ)

論理回路入門

論理回路入門

この2冊でOKだと思います。夏の受験前にパタヘネも一応読んだんですけど、あれは個人的には辛かったです。

コンピュータの構成と設計 第5版 上

コンピュータの構成と設計 第5版 上

コンピュータの構成と設計 第5版 下

コンピュータの構成と設計 第5版 下

いま気づいたんですけど、第5版が出てたんですね・・・。僕が持っているのは、中古で買った第3版です(笑)

平成27年度入試の過去問が公開されたら分かる話なんですけど、通信の問題が出てます。しかもまさかの冬でも出題されました。ってことで通信もやっておいた方がいいと思います。

用語問題

用語問題は、他のブログにも書かれてる通り、Wikipediaで頑張ってください。
冬入試だと、「最尤推定法」、「中心極限定理」、「カルマンフィルタ(過去に出てます)」、「ラプラス変換」、「交流回路のインピーダンス」とか出てました。

解いた過去問

夏はとにかく創造情報の過去問をわからないなりに解いてたのですが、結局ダメでした。
冬は卒研発表が終わってからダメ元で勉強したのですが、時間が足らないならばとにかく解きまくって物量で勝負しようと考えました。以下、夏と冬で解いた過去問。
情報理工学系研究科 創造情報学専攻
当たり前ですが、これは全て解きましょう。

以下に記載する他専攻のは、創造情報と被っている分野だけ解きました。時間の制約上、全ての年度は解いていません。

学際情報学府 先端表現情報学コース & 総合分析情報学コース
割と簡単なので、今思うと最初に解いておくべきだったかと。

情報理工学系研究科 電子情報学専攻
アーキテクチャ論理回路対策で。

情報理工学系研究科 コンピュータ科学専攻
アルゴリズムアーキテクチャ論理回路対策で。

結果は別として、「こんだけやったんやし・・・」と精神的な余裕がうまれます。

参考にさせていただいたサイト

参考にさせていただいたサイトです。

東大大学院 情報理工 創造情報学 記事まとめ - My dairy(笑)
まとまっていて読みやすかったです。あとから知ったのですが、ラボのOBの方でした。

電気・情報系院試の対策本まとめ、とくに東大情報理工創造情報 東北大情報科学 電通大ISむけ - ikegamのsuper seriousでsuper awesomeな勉強日記
すごく効率がよさそうな感じがしました。一番参考にさせていただいたサイトです。

最後に

日付上の昨日(4月3日)は入学ガイダンスと懇談会があり正式に学生となりました。とても変わった方々が多く、面白そうだな―なんて思っています。
入学すること自体は、学部に比べると何万分の1ぐらい楽です。なので、ただ学歴欲しさとかそういうので来るのもそう難しくはありません。
でも、そんな理由ではなく、やる気のある仲間と共に磨きあえる場を欲しくてとかそういうのを持っていてくれるとこちらとしてもうれしいなーなんて書きながら思います。このあたりの話は、夏落ちた後に色々な出来事があったのですが、ブログであえて書くことではないので控えておきます・・・。

長々と書きましたが、質問とかありましたら、Twitterでもコメントでも気軽にどうぞ。頑張ってください。

追記(2015.06.17)

某大学新聞に結果が載っていました。
私の専攻は、64人(うち、15人内部生)受験、34人(うち、11人内部生)合格だそうです。

入試説明会とか研究室訪問とかでよくあった質問の回答

プログラミング言語は?

Python3で解きました。インタプリタでちょいちょい確認できますし、Python2みたいにUnicode云々のことで気にしなくてよいので…。
ただ、言語はなんでも良いと思います。本は某自大の図書館にあった、以下のものを持ち込みました。

Python文法詳解

Python文法詳解

勉強期間は?

今だから言えますが、夏入試も冬入試も10日〜14日くらいです…。

過去問の回答持ってる?

消えました…自分で作りましょう…。
学府→電情&CS→創造の順で解いていくと自然とできるようになるかと。

その他

電子情報学専攻の問題を解かれる方は、専攻の同期が書いた下記の記事を読むと幸せになれるかもしれません。

tonton-buhi.hatenablog.com

大学卒業しました

去る3月19日、大学を卒業しました。
とっても充実した4年間でした。

私の所属する大学は、噂では4年ストレート卒業が厳しいとかなんとか言われていたのですが、運が良かったのか、はたまた周りが優秀だったのか、ほぼスムーズにいけました。感謝ですね。

春からは、院生として生活します。頑張りたいですね。

P.S.
Facebookと違って、書いて問題がない内容が少ないので短め…

日経電子版×クックパッド データハッカソン for studentsに参加しました

表題の通り、日経電子版×クックパッド データハッカソン for studentsに参加しました。

一言で言えば、日経電子版さんとクックパッドさんの膨大なデータを用いてなにかを作るというものです。

詳しくは以下のページを参照してください。

参加したきっかけとか動機とか

某社の@tetsuroitoさんの宣伝ツイートよりこのハッカソンを知りました。

機械学習については、まだ駆け出しというかひよこ未満である私なので、抽選とかその手のやつで外れるんじゃないかと思ってましたが、「参加できたら膨大なデータを好きに使えるやん!超!エキサイティン!!」とか思いながら応募しました。

チームについて

元々ホームページとか見ていたら単独参加でもOKっぽそうだったので、一人ぼっちでやる気だったのですが、運良くチームを組むことができました*1
私がいたチームは全チームでも一番メンバーが多く(4人!)、作業場所も何故か奥の方の窓際でしかも、4人中2人が立ちながらコーディングするという不思議なチームでした。
イカれたメンバーを紹介するぜぇ!みたいな感じで軽くチームの構成を。

  • 経済系の分析をなさるM1の方
  • RubyかつVimmerな同じ大学の他キャンパスの同級生の方
  • SwiftとかいじってるB2の方*2
  • RとSASでしか分析したことがない多変量解析マン(私です*3

とまあこんな感じで、本当にバックグラウンドがバラバラでカオスなチームでした。

したこと

大雑把に言いますと、日経電子版の記事データと、クックパッドの検索履歴のデータの相関性や影響について分析しました。
この相関性や影響というテーマを貫きつつ、まずはデータをいじってみたり、分析かけてみたり・・・という感じです。
4人いたので、2組に分かれて片方が日経、もう片方がクックパッドという感じで行いました。ちなみに、私はクックパッド担当でした。
相関性を決定づけるアプローチというかそもそもどのような記事を選出するかについては、色々取り組んだのですが、結果として、これだ!と決定づけられたのが遅くなり、うまく完全には間に合わなかったのが後悔です。

で、お前なにしたの?

主に、クックパッドの検索履歴ログについて分析できるよう前処理しまくって、ちょこっと分析もかんだという感じです。
うちのMacbookのCPUファンがずっとフル回転だったのが、全てを物語っています。
また、データがでかすぎて、チームメイトの1人は使わないソフトをアンインストールしたりしていました*4

感想

まずこのようなイベントが珍しく、非常に面白かったです。
周りの発表をきいていると、自然言語処理を行う方が多く、またRよりもPythonでやってる方が圧倒的に多かったので知識・技術の両面から足りないということを感じました。

あと、結構フロントエンドの開発もしていたそうで、分析とか機械学習させた結果をWebサービスとして提供したチームが多く*5、出来というか完成度の高さに驚かされるばかりでした。

Rでは扱いづらいデータもあり、どのように解決するか試行錯誤したのが大変でしたね。また、以前どなたかが仰っていた、データ分析の9割は前処理であり、一番つらいのもそれだと言うのを痛感しました。

単純に結果を評価するのではなく、アプローチに対して評価していただいたのも良かったです。

最後に

当日サポートしてくださった日経電子版およびクックパッドの方々、参加された皆さん、チームメイト、分析できる気がしなくて前日になって憂鬱になってた私を諭してくださった@tetsuroitoさんと@dichikaさんに感謝です。

*1:というか、みんなチーム作ってたっぽい?

*2:B2とかの参加者が多くて、みんな意識高くてすごいなあと思ってました。私なんてその頃遊んでましたし・・・

*3:Python自体は普段からいじることは多いですが、機械学習とか分析の目的で使ったことは今までで一度もなかったのです

*4:誓約書でデータを削除することとありましたが、削除させてくださいお願いしますと言いたいぐらいSSDの残容量が・・・

*5:というか、私達だけが分析のみやって終わったという感じ?でした

Rのパッケージが消えた

結構前にRを更新したのですが、それっきり1度も起動してなかったので、まさかこんなことになっているとは思ってもいませんでした。
そう、パッケージが消えていたのです。
通常ですと、libraryのフォルダを移行したらいいのですが、何を思ったのか、その時に関連フォルダも一括して消してしまったみたいです(Macには、AppCleanerという素晴らしいアプリがあるもので)。
というわけで地道にインストールを実行しましたよと。
今回は初めて使うのですが、CRAN Task Viewsという有志がまとめてくださった各ジャンルのパッケージ一覧を経由して一括インストールしてみました。

#CRAN
install.packages(c("devtools","dplyr","h2o",
                   "e1071","piper","rvest",
                   "ggplot2", "ctv"))

#GitHub
devtools::install_github(c("dichika/yo",
                           "twitter/AnomalyDetection",
                           "dichika/yeah"))

#CRAN Task Views
ctv::install.views(c("MachineLearning", "SocialSciences",
                "Survival", "TimeSeries", "Multivariate",
                "MetaAnalysis"))

今後自分みたいに、地雷踏んだ人向けに…。Enjoy!