Algorithm 推荐人:记录用户操作&;数据挖掘it–;好办法

Algorithm 推荐人:记录用户操作&;数据挖掘it–;好办法,algorithm,machine-learning,recommendation-engine,Algorithm,Machine Learning,Recommendation Engine,我计划记录所有用户操作,如查看页面、标记等 对于数据挖掘此数据以获得建议,什么是一个好的精益解决方案? 比如说: 从查看的URL中计算所有兴趣(假设我知道 相关标签) 找出有相似兴趣的人。例如约翰和简 查看与汽车等相关的URL 编辑: 这是我在这个领域缺乏知识的一个限制因素 让我重新措辞。 比如说像stackoverflow或Quora这样的站点。我所有浏览不同问题的历史记录都会被记录下来,Quora做了一项数据挖掘工作,查看并用相关问题填充我的流。我浏览了与养育子女有关的问题,下次登录时,

我计划记录所有用户操作,如查看页面、标记等

对于数据挖掘此数据以获得建议,什么是一个好的精益解决方案?
比如说:

  • 从查看的URL中计算所有兴趣(假设我知道 相关标签)
  • 找出有相似兴趣的人。例如约翰和简 查看与汽车等相关的URL
编辑:
这是我在这个领域缺乏知识的一个限制因素

让我重新措辞。
比如说像stackoverflowQuora这样的站点。我所有浏览不同问题的历史记录都会被记录下来,Quora做了一项数据挖掘工作,查看并用相关问题填充我的流。我浏览了与养育子女有关的问题,下次登录时,我会看到一系列关于养育子女的问题。亚马逊购物也是如此。我浏览手表和搅拌机,两天后他们给我发了一封我感兴趣的相关购物邮件


我的问题是,他们如何高效地存储这些数据,然后对其进行数据挖掘以显示下一组相关数据

数据挖掘是一种需要巨大存储空间和巨大计算能力的方法

我举一个例子:

想象一下,你是一家大型连锁超市(如沃尔玛)的老板,你想知道如何将你的产品投放到你的市场中,以便消费者在进入你的商店时花很多钱

首先,你需要一个想法。您的想法是找到经常一起购买的不同产品组的产品。如果你有这样一对产品,你应该把这些产品放在尽可能远的地方。如果客户想同时购买这两种产品,他/她必须走遍你的整个店铺,这样你就可以放置其他可能适合其中一种产品的产品,但不会经常出售。一些客户会看到并购买此产品,而此附加产品的收入就是您的数据挖掘过程的收入

所以你需要大量的数据。您必须存储从所有商店中所有客户的所有购买中获得的所有数据。当一个人买了一瓶牛奶、一根香肠和一些面包时,你需要储存已经售出的商品、数量和价格。如果你想让人注意到牛奶和香肠是一起买的,那么每次购买都需要自己的ID

所以你有大量的购买数据。你们有很多不同的产品。比如说,你在你的商店里销售了10000种不同的产品。每种产品都可以相互搭配。这使得10000*10000/2=50000000(5000万)对。对于每一个可能的配对,你必须找出它是否包含在购买中。但也许你认为周六下午的顾客与周三上午的顾客不同。因此,你也必须存储购买时间。Maybee你每周定义20个时间段。这创造了50米*20=10亿条记录。而且因为孟菲斯人可能会购买与贝弗利山人不同的东西,所以你也需要在你的数据中占有一席之地。比方说,您定义了50个区域,因此您的数据库中有500亿条记录

然后处理所有数据。如果客户在一次购买中购买了20种产品,则您有20*19/2=190对。对于每一对,您都会在数据库中增加购买时间和地点的计数器。但是,你应该通过什么来增加计数器呢?就在1点?还是按购买产品的数量?但是你有一对两种产品。你应该把两者加起来吗?还是最大值?你最好使用一个以上的计数器,以便能够以你能想到的所有方式来计数

你还得做些别的事情:顾客买的牛奶和面包比香槟和鱼子酱多得多。因此,如果他们选择任意的产品,当然这对牛奶面包比这对香槟鱼子酱的含量要高。因此,当你分析数据时,你也必须注意其中的一些影响

然后,当您完成所有这些之后,您就可以进行数据挖掘查询。选择实际计数与估计计数比率最高的一对。您可以从包含数十亿条记录的数据库表中选择它。这可能需要几个小时来处理。因此,在提交查询之前,请仔细考虑您的查询是否真的是您想要知道的

你可能会发现,在农村环境中,人们在周六下午买的啤酒和尿布比你想象的多得多。所以你只需要把啤酒放在商店的一端,把尿布放在另一端,这使得很多人在你的整个商店里走来走去,在那里他们看到(并希望购买)许多其他东西,如果啤酒和尿布放在一起,他们就不会看到(并购买)这些东西

请记住:您的数据挖掘过程的成本仅由您的客户提供的额外优惠支付

结论:

  • 您必须存储成对、三元组甚至更大的项目元组,这将需要大量空间。因为你不知道最后会发现什么,你必须存储所有可能的组合
  • 你必须数一数那些元组
  • 必须将计算值与估计值进行比较

    • 我应该说推荐是机器学习的问题。
      如何存储数据取决于您选择的算法。

      将每个事务存储为标记向量(即包含这些标记的访问页面)。然后对这些数据进行关联分析(我可以推荐Weka),以使用可用的“关联”算法找到关联。当然,效力取决于许多不同的因素

      我大学的一个家伙告诉我的一件事是,通常你可以简单地创建所有乘积的向量