word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。
![](https://i-blog.csdnimg.cn/blog_migrate/fab972ab787e30450e474ed2a3ba7e12.png)
![](https://i-blog.csdnimg.cn/blog_migrate/3c2a84dc78e6391b9cebce8988632e1a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/bf894e9a53e18bf3d9e86f526800d87c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/af87db0d6ce24dbbc0643c94b3381c88.png)
![](https://i-blog.csdnimg.cn/blog_migrate/68a45d6f1086dd7b4c6b6e7bf6ceefd7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/74ceaa7d1a78bb14603306b0391a772d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/087f1ee0260d35d7725a2be5e4886517.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e58c274e4fd06d532d1c9a132696e8b5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a2ccfdbb71d8bafdf79c257acfb6dd00.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c537989108d365111cc665c66f4bb836.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1b1fd0f0df4de522e150dbab78c94023.png)
![](https://i-blog.csdnimg.cn/blog_migrate/db136a1be4320849eaf602a300afc60a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/273bc2219aa04d4a39132ce28947e48f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/3f4db3bbe7678a7f281e58b6797b40fb.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c8559239f39031616cd5149bb3f4cce4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83d6f765cbff88242396caf0b49a451f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8811b3693f1a67eb8f866edc974d2772.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a90c1f63fd91b0a73e94ebc5774b3dd0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d55fe5021fa445cd6234c51846d45fc3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a44102fce9a03d15198a3f07fa58b078.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b97816e17bf8d7edff2acdf31b928501.png)
![](https://i-blog.csdnimg.cn/blog_migrate/00a8731ec1f55290a4ec750a9f3fff29.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f6e021a45def339480ff5d2163ac0b90.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f65ce49668d97b03d6f2e6dfc77f2c1c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/049c1d027eaa281d495d39e94b90330d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5957e1fc34d34996cf0e45b24019c3e2.png)
![](https://i-blog.csdnimg.cn/blog_migrate/194c4fd485400081fd6bb0ec0d10ed43.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f410d7d84abb104f3dd6b50334d272c3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6014061d3fa3d7bbcf0e8d626b3264d7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9eda699d43c6953b99a38b4a2fcbb1ac.png)
![](https://i-blog.csdnimg.cn/blog_migrate/32eefaac7dfed0bb116e3969f87a9d5d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2671b0d55118059051fd1feaa25fede4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1abb82ee4d40d09b13e535462ba8df34.png)
![](https://i-blog.csdnimg.cn/blog_migrate/62559e05dc72a4d2d2497b7517967b80.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e97ebb88c170f1cce9404bfd6e8001bc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/89fb12c6ad4d9e5a9009d47f588e08de.png)
![](https://i-blog.csdnimg.cn/blog_migrate/12e7022d20cbe0cb387701f72e26f460.png)
![](https://i-blog.csdnimg.cn/blog_migrate/48a597afe4d1d2696c71a85a19d23785.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a3bfb53eb3dd7cf54d684e906ab9787b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a675a82ac98c29c1aa3b46be199471ac.png)
![](https://i-blog.csdnimg.cn/blog_migrate/36f21916f8b39ea89fa06c03098fda11.png)
![](https://i-blog.csdnimg.cn/blog_migrate/17cb6154b045c024e2c352def9f718fd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1ffd37ebd4820980fd6580ea260d0fee.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d4202f0f048c3323eae5a1dc30039028.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2689b8779f6bcffaa129a127bf3c6952.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f3ec06a1c5e72093cbfe270946ecf86f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/671c28ffe847014ef2b8a9ffae50e29a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2592baa185cf7b3727b1577ba66a3b78.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1a9d83e66911ded8df66152027c975d1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d7f0775171ac4336eef0984dedb76d1c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/70c5826a2beb42f88bd2c01420e61b88.png)
![](https://i-blog.csdnimg.cn/blog_migrate/34c90fc1e8f17a691620a026ef0dacf0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e9ff227121defecf6b7781d9a2cd5e9c.png)
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。