## 序言
别笑,我可以以我的名义起誓,这是一本全文检索、数据挖掘、推荐引擎在社会化电子商务中应用的专著。当前这三方面的专著很多,但是大多是讲理论基础和实现细节的,还没有发现把这些技术真正用到实际项目中例子,因此我们还是不很清楚应该在什么地方用,应该怎么用。
在这本书里,主人公吴言是一个老程序员,突然有一天再也不愿忍受每天被人呼来喝去的程序员生涯,准备开创自己的事业,然后到google上搜了一下什么是最热门的领域,机缘巧合发现了社会化电子商务很热门,联想到自己全文检索、数据挖掘、推荐引擎的技术背景,准备在这个领域尝试创业。
联想到一个清华学生做了一个左百度右谷歌搜索结果聚合页面的应用就融到资的案例启发,他准备做一个3C产品的电子商务网站,将产品从京东、卓越、当当、库巴还有五百城网站上扒过来,每个产品可以同时显示各个网上商城的价格,省去客户去每个商城比较的麻烦。接着租用服务器,利用开源软件,进行简单的开发,产品第一个版本就这样上线了。当然,我们的主人公尝试去融资了,但是我们用脚也能想到结果,由于他只是程序员,没有团队,产品可复制性又极强,他连与VC面谈的机会都没得到。但是他还是准备坚持做下去。
接下来他发现,他只能收集到用户浏览产品的信息,用户是否购买他并不知道,于是他申请了通过程序打通了各个网上商城的支付环节,用户可以在他的网站上进行购买了。这时,他可以将各种产品的Top10推荐列表呈献给客户,同时,他允许用户将这些Top10列表通过邮件发送给他们朋友,同时允许用户可以将推荐列表发送到新浪微博。在这个版本中,他加上了最原始的推荐引擎的功能,利用集体智慧帮助用户进行选择。同时,通过邮件及微博等形式,进行社会化营销。
吴言的网站渐渐有了一些浏览量,而且产生了一些交易。他接着希望加入社交网络功能,允许每个用户进行注册,记录用户的各种属性信息,注册过程十分简单,只需要提供邮箱、昵称和密码即可,但是如果用户愿意,还可以填写自己更多信息,对于每种需要填的信息,他都告诉用户他为什么需要这个信息,利用这些信息可以给用户提供哪些增值服务,如提供性别信息,这样系统可以对女性用户优先显示女性专用产品,填写收入信息后,可以优先显示合理价位的产品等等。同时,他记录下用户浏览的产品记录、购买的产品记录。通过用户注册填写的信息以及网站记录的用户行为信息,他可以得到完整的用户信息模型。
吴言注意到诸如亚马逊等电子商务网站,有“浏览了该产品的用户还浏览了**”的功能,他也想加入这个功能。首先通过用户行为记录,可以提取出浏览了该产品的用户还浏览了**的信息。但是由于他的网站处于早期阶段,很多产品没有类似记录,为了实现类似功能,他开发了基于内容的推荐系统。通过分析产品的描述、规格等信息,提取出关键字,计算各个产品间关键字矢量距离,得到各个产品间的相似度,这样可以向用户推荐相似的产品。
当前是Web2.0时代,吴言也想在自己的网站中加入Web2.0元素,他允许用户可以对产品添加评论,可以对每个产品进行打分(五分制),也可以对产品进行顶或贬的投票,同时用户还可以对其他用户关于产品的评论进行评论、打分及投票,所有这些内容用户都可以通过邮件及新浪微博进行分享。这些打分及投票信息,通过机器学习算法,可以通过推荐引擎给用户推荐更有针对性的产品。
由于3C产品各类繁多,按产品类别的组织方式对用户挑选产品非常不方便,吴言通过中文分词程序对所有产品进行分词,找出常用关键词,形成机器生成的标签库,然后根据各个关键词关联产品受欢迎程度,为每个关键词赋与不同权值,这样就形成了网站中通用的标签云。当用户点击这些标签时,将显示标签关联的产品,同时显示更加精确的标签云。根据用户的行为数据,可以向每个不同的用户显示不同的标签云,点击某个标签时,也可以显示不同的产品内容。
用户开始尝试标签导航功能,初步反响不错。但是也有用户反映说标签有些不能准确反映产品特性,因这些标签是通过程序自动获取的,这种情况是不可避免的。于是吴言加入了允许用户为产品添加标签的功能,同时允许用户为某个产品设置标签。很快他发现,用户产生的标签可以将用户与用户、用户与产品更有意义的联系在一起,不仅可以更加有效的向用户推荐产品,或者通过产品相似度向用户推荐产品外,还可以根据用户标签更有针对性地投放广告。
吴言还不满足于产品的功能,又添加了博客功能,用户可以发表对产品功能、使用、保养等各方面的信息,其他用户可以对博客进行评论、打分及投票。用户还可以发布各种产品相关照片,其他用户可以分享、评论、打分及投票。对每个产品,都有自己的博客门户,里面有该产品相关的所有博客、照片的信息。吴言还为每个产品加入了Wiki功能,用户可以对产品的方方面面进行完善。同时每个产品都有一个问答群,用户可以提出问题,也可以解答其他用户的问题,用户可以对问题和答案进行打分、投票及评论。为了让用户更方便的利用这些内容,吴言加入了全文检索功能,用户可以通过关键词搜索到相关的条目,为用户购买决策服务。
用户开始越来越喜欢这个应用,用户量及交易量越来越大,网站架构渐渐不能满足要求,于是吴言将所有后台程序全文检索、数据挖掘、推荐引擎放到了Hadoop上。
通过对用户及产品进行分析,吴言可以产生很多对电子商城、制造商、广告商有用的报告,因此电子商城,3C产品制告商和广告商自然就成为了吴言的客户。
在本书的余下章节中,将按照上面的顺序,一步步将全文检索、数据挖掘、推荐引擎应用到这个具体的项目中来,使读者可以通过实例理解各种技术的具体应用场景和场合。