Hatena::ブログ(Diary)

西尾泰和のはてなダイアリー

2014-06-06

「word2vecによる自然言語処理」を出版しました

オライリー・ジャパンから「word2vecによる自然言語処理」という電子書籍を出版しました。予定外のドタバタがあってブログで紹介するのが遅くなってしまいましたが、その間にオライリーのEbook Store Sales Rankingでは1位になっていました。

word2vecは2013年に論文が出たばかりの新しい技術です。色々な方がブログで取り上げていて、興味をもった方も多いと思います。知らない方のためにいくつかリンクを紹介しておきます:

本書の目標は、読者のみなさんがこういうことをできるようになることです。1章でまずは使ってみるところから始め、2章で色々なデータ(コーパス)を使う方法を、実際に使ったソースコードも紹介しつつ、具体的に解説しています。例に上がっているのは、TwitterはてなダイアリーFacebook、電子辞書(岩波の理化学辞典・生物学辞典)、電子書籍(スキャン+OCRで作ったPDF、元からPDFのもの)、Wikipediaです。

3章以降では「なぜword2vecが生まれたか」「何の役に立つのか」「どんな弱点があるのか」を解説しています。

また、付録ではword2vecの結果を可視化するスクリプトを紹介し、そこで使われている主成分分析のメリット・デメリットについて解説しています。このスクリプトを使うと例えば以下のような図を作ることができます。

f:id:nishiohirokazu:20140606005140p:image

プログラミング言語の名前と、データベースの名前と、オペレーティングシステムの名前が混ざっていますが、だいたい3つにわかれているのが見て取れるかと思います。人間はどれがプログラミング言語でどれがデータベースなのかは教えていないのですが、word2vecは与えられた文章から「これは似た意味の単語だな」と判断して近い位置に配置しているわけです。

本書を読んで、わかりづらいところや気になる点などがありましたらぜひお気兼ねなくご連絡ください。

tnaltnal 2014/09/01 13:36 正誤や表現上気になる点について報告します。

(1) p.61, 4章, 図4-6の次に続く段落, 括弧内の図参照番号について。
 誤: 図4-6
 正: 図4-7
が、正しいでしょうか?

(2) p.57, 4章の「ニューロンYは伝達された信号x1w1 x2w2 x3w3を合計します。」について。
図4-2があるので理解はできますが、本文はスペース区切りではなく「x1w1, x2w2, x3w3」か、C言語での例えとして「x1*w1, x2*w2, x3*w3」のように記載した方が読みやすいと感じました。

nishiohirokazunishiohirokazu 2015/02/01 18:23 ありがとうございます!修正します!

torotoro 2015/02/21 15:15 書店での販売はしないのですか?

nishiohirokazunishiohirokazu 2015/03/08 01:21 その予定はありません。

conbconb 2015/10/29 18:29 電子書籍の購入サイトにアクセス出来ないのですが・・・

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/nishiohirokazu/20140606/1401983909