Doc2Vecで類似文章を検索してみたので、実装を紹介します。 Doc2Vecとは コンピュータが自然言語を処理するためには、まず人間の言葉をコンピュータで扱える値にする必要があります。 単語の意味をベクトル化する手法としてWord2Vecが存在します。 詳しくはリンク先がとてもわかりやすいのですが、ざっくり言うと前後n単語のリストでその単語を表現します。 こうすることで、例えば「犬」と「猫」は同じような文脈で使われるため、似た「意味」であると考えることができます。 Doc2VecはWord2Vecを応用し、文章をベクトル化するものです。 実装サンプル 今回Doc2Vecを用いて実現するのは、以下の2つの機能です。 単語で文章を検索 類似文章の検索 サンプルとして、青空文庫の文章を使用しました。 なお、この記事で使用するコードはGitHubで公開しています。 (学習に使用した文章もzipに
![文章をベクトル化して類似文章の検索 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/1681ec6b3961fb0d3c4586ad9e31138b67e668db/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-1150d8b18a7c15795b701a55ae908f94.png%3Fixlib%3Drb-1.2.2%26w%3D1200%26mark%3Dhttps%253A%252F%252Fqiita-user-contents.imgix.net%252F~text%253Fixlib%253Drb-1.2.2%2526w%253D840%2526h%253D380%2526txt%253D%2525E6%252596%252587%2525E7%2525AB%2525A0%2525E3%252582%252592%2525E3%252583%252599%2525E3%252582%2525AF%2525E3%252583%252588%2525E3%252583%2525AB%2525E5%25258C%252596%2525E3%252581%252597%2525E3%252581%2525A6%2525E9%2525A1%25259E%2525E4%2525BC%2525BC%2525E6%252596%252587%2525E7%2525AB%2525A0%2525E3%252581%2525AE%2525E6%2525A4%25259C%2525E7%2525B4%2525A2%2526txt-color%253D%252523333%2526txt-font%253DAvenir-Black%2526txt-size%253D54%2526txt-clip%253Dellipsis%2526txt-align%253Dcenter%25252Cmiddle%2526s%253D2de026e2f021b791436259c99e9224b4%26mark-align%3Dcenter%252Cmiddle%26blend%3Dhttps%253A%252F%252Fqiita-user-contents.imgix.net%252F~text%253Fixlib%253Drb-1.2.2%2526w%253D840%2526h%253D500%2526txt%253D%252540akira_%2526txt-color%253D%252523333%2526txt-font%253DAvenir-Black%2526txt-size%253D45%2526txt-align%253Dright%25252Cbottom%2526s%253D6a6e55ea87a7393c9eb3a3489d14b265%26blend-align%3Dcenter%252Cmiddle%26blend-mode%3Dnormal%26s%3Ddf0ee01afb62b699db3133400216e4a6)