タグ

ブックマーク / echizen-tm.hatenadiary.org (11)

  • 文系でも機械学習がわかるようになる教科書 - EchizenBlog-Zwei

    社内の有志で機械学習数学の勉強会をいくつかやっています(私以外の方が主催しているものもある)。とくに理系ではない方も参加されていますが、きちんと頑張ればだんだん機械学習ができるようになるということがわかってきたのでメモしておきます。 なお、機械学習をとりあえず実装するだけだったらもっと簡単に学ぶ方法もいろいろあり、今回はあくまで正攻法で機械学習を勉強する、という観点での書籍の選択となっています。急がば回れという言葉もあるように、焦って成果を求めないのであれば地道に頑張るほうが後々応用が効いて良いということもあります。 高専の数学 おそらく数学ができないという方は高校の数学あたりから理解が怪しいことになっていると思います。「高専の数学」は中学数学までの前提知識で読める教科書で、わかりやすい例題や理解の助けになる練習問題が多数用意されているため、きちんと問題を解いていけば無理なく高専の数学(

    文系でも機械学習がわかるようになる教科書 - EchizenBlog-Zwei
  • 社会は厳しい - EchizenBlog-Zwei

    社会が厳しいのでメモしておきます。 勤怠について 前職がブラックだったので精神状態があまりよくないです。毎日最低8時間は寝たいところです。充分な睡眠をとるためには定時帰宅が何より大切です。 今の環境では(ホワイトではあるのですが、何故か)残業が推奨されているのであまりよくないです。定時帰宅が徹底されているか、定時出社が要求されないか、そもそも勤怠管理がないような環境に興味があります。 とにかく安定した睡眠時間の確保は以降のあらゆることに優先します。 外出がつらい 外出すると疲れるので休日は家から一歩も出ない生活がしたいです。 興味があることについて 機械学習と簡潔データ構造に興味があります。ほかにもデータ構造とアルゴリズムまわりのことは大体好きです。今の環境ではあんまりこういう話ができる人がいないので悲しい限りです。(話せるよ、というひと一緒に勉強会しましょう) 論文読んだり実装したりする

    社会は厳しい - EchizenBlog-Zwei
  • 機械学習の有益な書籍情報を共有します - EchizenBlog-Zwei

    機械学習の有益な書籍情報を共有します。 初心者向け 最初に読むとしては「オンライン機械学習」「フリーソフトではじめる機械学習入門」「言語処理のための機械学習入門」がオススメです。 「オンライン機械学習」は3章までが入門的な内容になっています。4章以降は発展的な内容なのである程度力がついてからが良いです。オンライン機械学習という分野は実装が簡単で実用性が高いので最初に取り組むのに適しています。 広い範囲で機械学習を概観したい場合は「フリーソフトではじめる機械学習入門」がよいです。こちらは全体像がつかみやすい反面、数式の展開がわかりにくい箇所がちらほらあるので適当なスルー力が必要とされます。 「言語処理のための機械学習入門」はやや実装よりのです。数式をみるより具体例をみたほうがわかりやすい、という人はこのが良いと思います。 数学 何をやるにしても基礎体力は大切。数学の理解が深まれば深まる

    機械学習の有益な書籍情報を共有します - EchizenBlog-Zwei
  • 簡潔データ構造の入門の入門 - EchizenBlog-Zwei

    最近、簡潔データ構造(Succinct Data Structure)がじわじわ人気が出てきているように感じるので入門の入門、くらいの記事を書いておく。 この記事では簡潔データ構造において最も基的なデータ構造である完備辞書(Fully Indexable Dictionary)について説明する。 新しい概念が出てきた時に気になるのは「どうやって実現するのか」「それができると何が嬉しいのか」という2点だと思う。 前者についてはこの記事(http://d.hatena.ne.jp/takeda25/20140201/1391250137)がわかりやすいのでここでは述べない。この記事では「完備辞書があると何が嬉しいのか」について説明する。 完備辞書とは 完備辞書はrankおよびselectという操作が定数時間で実行できるビット列のこと。rank(i)はi番目のビットより前にいくつ1があるかを返

    簡潔データ構造の入門の入門 - EchizenBlog-Zwei
  • 5/1は転職記念日なので記事を書く - EchizenBlog-Zwei

    転職して2年が経った。 転職は私の人生における最大の勝利であるので、2周年を記念して記事を書く。 さしあたり、現時点で考えていることを書いておくことで後々の参考にしたい。 転職してよかったか これは「よかった」と断言できる。 2年経ったのでさすがにそろそろ前の環境と比較してもよい頃合い(転職してすぐはバイアスがかかって何でもよく見えるので)なので書いておくが、あらゆる点で今の環境のほうが良い。 私が転職を考えていたころ「辞めて幸せになった」という資料が少なく、周辺の人の「すぐ辞める人は何をやってもダメ」的な論調に随分脅されたものだった。なので「転職して幸せになった」という事は何度でも繰り返し伝えていきたい。 能力の伸びと幸せ 人の能力は伸び続けると思う。成長が頭打ちになることはないという印象がある。 ではだれでも頑張れば幸せになれるのか?というとそうでもないと思う。何故かというと人生は有限

    5/1は転職記念日なので記事を書く - EchizenBlog-Zwei
  • 文法圧縮を使った完備辞書(簡潔ビットベクトル)を作った - EchizenBlog-Zwei

    @marugorithmさんの文法圧縮の解説資料(http://research.preferred.jp/2014/03/nlp2014_grammar/)があまりにも有益すぎて感動したので、文法圧縮を使った完備辞書(簡潔ビットベクトル)を作った。 文法圧縮の部分は実装の簡単さからRe-Pairアルゴリズムを使った。 https://github.com/echizentm/GCFID 作ってみて感じたメリット・デメリットをメモしておく。 簡単に言うと、rank、selectがO(1)でないという欠点があるものの理解のしやすさ、実装のしやすさを考えると利点が大きいように感じた。 文法圧縮を用いて完備辞書を作るメリット ビット列が変換規則(X1 => X2, X3みたいなの)の集合で表現できるのでpopcountとかのややこしいビット演算が不要 ビット演算が不要なのでperl,python

    文法圧縮を使った完備辞書(簡潔ビットベクトル)を作った - EchizenBlog-Zwei
  • 手元に置いておくと安心できる、情報系の人向けな日本語の本のリスト - EchizenBlog-Zwei

    最近、人にを薦める事が多くなった。とりあえずこの辺を読むといいですよ的なリストを作っておくと便利だと思ったので作ることにした。 以下、「事前知識のいらない入門」「事前知識はいらないけど格的な」「事前知識がないと何言ってるかわからないけど有益な情報が満載な」の3つにわけて列挙する。 事前知識のいらない入門 数式少なめ、脳負荷の小さめなをいくつか。何をやるにしてもデータ構造、アルゴリズム、数学はやっておくと幸せになれるよ。 情報検索と言語処理 データマイニングとか自然言語処理とかやりたい人にはとりあえずこれ。さすがに古い話が多くなってきたのでそろそろ新しい入門用情報検索がでないかなあと思っている。 図解・ベイズ統計「超」入門 伝説のベイジアン先生がベイズの基礎を教えてくれる。ベイズやりたい人はこれ。 珠玉のプログラミング データ構造とかアルゴリズムとかの考え方の基礎を教えてく

    手元に置いておくと安心できる、情報系の人向けな日本語の本のリスト - EchizenBlog-Zwei
  • 伝説のベイジアン先生にベイズの基礎を教えてもらえる「図解・ベイズ統計「超」入門」を読んだ - EchizenBlog-Zwei

    「図解・ベイズ統計「超」入門 あいまいなデータから未来を予測する技術」というを読んだ。 社会人のアヤとケンが社内研修で伝説のベイジアン先生からベイズの基礎を教わる、という設定の会話形式でベイズについて書かれた入門書。社内研修でベイズのプロから指導を受けるとかどんだけ恵まれてるんだ。 アヤさんは大学で統計をやったが数学は詳しくないという設定。ただ時々鋭い質問をする。また統計に詳しいイケメン兄がいる。 ケンくんは知識は全くなく最後まで「わかりません」を連発する。彼女持ちのリア充。 伝説のベイジアン先生は社内研修の講師。ベイズの基礎を豊富な具体例で教えてくれるまじぱない先生。あまりにもいけてるので数カ月後に転職しそうな感じ。 内容は1章が導入、2章が同時確率・条件付き確率、3章がベイズの定理、4章がベイズの定理を用いた事後確率計算の具体例、5章が事例の追加による事前確率の更新(具体例としてナイ

    伝説のベイジアン先生にベイズの基礎を教えてもらえる「図解・ベイズ統計「超」入門」を読んだ - EchizenBlog-Zwei
  • 機械学習超入門III 〜機械学習の基礎、パーセプトロンを30分で作って学ぶ〜 - EchizenBlog-Zwei

    機械学習には大きく分けて「識別関数」「識別モデル」「生成モデル」の3つの種類がある。このなかで識別関数は確率を使わないので初心者が入門するのに最適。 識別関数で有名なのはSVM(Support Vector Machine、サポートベクターマシン)。名前を聞いたことがある人も多いと思う。そこで早速SVMを学ぼうとすると敷居が高くて挫折しがち。 実はSVMは(大雑把に言うと)パーセプトロンという基礎的な識別関数に「マージン最大化」と「カーネル関数」という考え方を導入したもの。なので機械学習入門者は最初にパーセプトロンを学ぶのが良いと思われる。 そこで早速パーセプトロンを作ってみよう!というのが記事の意図するところ。自分で実装できるとモチベーションが維持しやすいので、詳しく理論を学ぶ前にまずは作ってみようという考え。ちなみに実装にはperlを用いた。 参考: これからはじめる人のための機械学

    機械学習超入門III 〜機械学習の基礎、パーセプトロンを30分で作って学ぶ〜 - EchizenBlog-Zwei
  • これからはじめる人のための機械学習の教科書まとめ - EchizenBlog-Zwei

    最近では企業における機械学習の認知度も高まっていてエンジニアの求人募集でも「望ましいスキル:機械学習」というのをよく見かける。特にweb系の企業だと当たり前のように機械学習を活用した魅力的なサービスが生み出されているようだ。 そんなわけで先日書いた機械学習の入門記事もそれなりに好評で末尾の教科書リストも結構参考にしていただいた様子。ということで、これから機械学習をはじめる人のためにオススメの教科書を10冊ほどピックアップしてみた。 幸いにして機械学習の分野には良書が多い。5年前はナイーブベイズすら知らなかった私も、これらの教科書のおかげでなんとか機械学習を使えるようになりました!(個人の体験談です。効果には個人差があります) 参考: 機械学習超入門 〜そろそろナイーブベイズについてひとこと言っておくか〜 - EchizenBlog-Zwei 最初に既存の機械学習の教科書まとめを挙げておくの

    これからはじめる人のための機械学習の教科書まとめ - EchizenBlog-Zwei
  • 「高速文字列解析の世界」を読む前に知っておくと良いこと - EchizenBlog-Zwei

    「高速文字列解析の世界」という大変すばらしいが発売された。わりと敷居が高いではあるので読む前に知っておくとよさそうなことを書いておく。 「高速文字列解析」とは 書でいう高速文字列解析というのは主に2つのことを指している。ひとつはデータを圧縮して小さくしてディスクよりメモリ、メモリよりキャッシュというようにより高速な記憶装置で扱いましょう、という話。もうひとつはデータ構造を工夫することで複雑な操作もそこそこ高速に扱えますよ、という話。つまり「圧縮」の話と「効率的なデータ構造」の話があると考えておくと良い。 キーワードは3つ オビにも書いてあるけれど、書が主に扱うのは「BWT」「簡潔データ構造」「ウェーブレット木」の3つ。具体的には「BWT」が「圧縮」に関わっていて「ウェーブレット木」が「効率的なデータ構造」に関わっている。「簡潔データ構造」は基的な道具として書の色々なところで出て

    「高速文字列解析の世界」を読む前に知っておくと良いこと - EchizenBlog-Zwei
  • 1