用户点击行为模型分析

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据挖掘实验报告基于用户网站点击行为预测

...数据挖掘实验报告. (1)

一.概要: (3)

二.背景和挖掘目标: (3)

三.难点分析: (4)

四.难点解答: (4)

五.数据采集: (5)

六.分析方法: (6)

七.数据探索: (8)

7.1数据无效: (8)

7.2数据缺失: (8)

八.数据预处理 (9)

8.1数据清洗 (9)

8.2数据丢弃 (10)

8.3数据转换 (10)

九.挖掘过程: (11)

9.1计算用户爱好 (11)

9.2基于协同过滤算法进行预测 (12)

十.结果分析: (13)

十一.实验总结 (14)

11.1数据的采集 (14)

11.2在试验过程中遇到的问题 (14)

11.3解决方案以及改进 (14)

11.4数据挖掘学习体会: (15)

一.概要:

这次的数据挖掘我们团队做的是基于用户网站点击行为预测,其中遇到的问题有数据量大,机器难以处理,含有时序关系,特征难以描述等,我们运用正负样本比例平衡的方法和时间衰减函数来解决这些问题,运用到的算法有基于协同过滤算法进行预测。

二.背景和挖掘目标:

随着互联网和信息技术的快速发展,广告的精准投放一直是各大广告商面临的问题。点击网络广告的一般有两类人。第一种是不小心点错的,相信大部分人都是不喜欢广告的,但由于网络的互动性,仍然会有部分人把广告当内容点击,其中网站诱导用户点击占了很大一部分比例。第二种是真的想看广告内容,这部分人对广告的内容感兴趣,或是符合他们的需求,才会点击网络广告。认真去研究这两类的行为,进行广告个性化的投放将产生巨大的价值。

基于这个背景,本次课题我们进行了网站点击行为的数据挖掘。数据来自网络,包含了2015年1月1日-2015年6月22日间广告曝光和点击日志。目的是预测每个用户在8天内即2015年6月23日-2015年6月30日间是否会在各检测点上发生点击行为。

利用数据挖掘技术可以帮助获得决策所需的多种知识。在许多情况下,用户并不知道数据存在哪些有价值的信息知识,因此对于一个数据挖掘系统而言,它应该能够同时搜索发现多种模式的知识,以满足用户的期望和实际需要。此外数据挖掘系统还应能够挖掘出多种层次(抽象水平)的模式知识。数据挖掘系统还应容许用户指导挖掘搜索有价值的模式知识

三.难点分析:

1.数据量大,机器难以处理;

2.含有时序关系,特征难以描述;

3.针对行为预测,评价标准要创新。

四.难点解答:

1.如何解压数据,导入数据库?

使用XZCAT等命令工具,结合LIUNX管道,直接读取并处理压缩文件,分布式存储平台和分布式计算框架处理大数据。

2.如何对点击行为进行准确描述?

One hot encoding扩展提取特征,One-Hot编码,又称为一位有效编码,主要是采用位状态寄存器来对个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。在实际的机器学习的应用任务中,特征有时候并不总是连续值,有可能是一些分类值,如性别可分为“male”

和“female”。在机器学习任务中,对于这样的特征,通常我们需要对其进行特征数字化。

在分析变量时加上时间要素的角度而形成的。对于变量的考察,凡能用时间单位来表达的,就必须在分析中加上时间这一维度,才能使变量准确的表达出来。

3.如何在数据分布不平衡时有效地学习?

运用探索式下采样算法,把问题转化为N个平衡分布的子问题,依次解决平衡分布的子问题,把单模型的输出作为特征,自动学习模型权重。把收集到的数据集划分为第一层和第二层中的最终模型,经过分析得到最终结果。

五.数据采集:

原始数据总共包含60G的txt文本数据,每条记录包含六列,分别是用户id,监测点id,ip地址,浏览器类型,国家,时间,点击或曝光。同一网站的不同广告检测点id不同,如新浪网的衣服广告和新浪网的手机广告有不同的加测点id,不同网站相同广告有不同的检测点id,如百度网的手机广告和新浪网相同的手机广告有不同的检测点id。如图:

鉴于数据量巨大,经过探讨我们决定抽取部分数据进行分析。依据所提供的原始数据,试着分析如下目标:

每个用户在8天内即2015年6月23日-2015年6月30日间是否会在各检测点上发生点击行为。

六.分析方法:

本课题的目标是进行广告行为预测,数据量越大预测的准确率越高,因为数据量巨大,如果对数据不进行处理就会出现内存空间不足的情况。因此我们抽取部分数据进行分析。因为原始数据检测点是乱序的,我们第一步进行检测点分类,将同一个监测点的数据统一进行处理,如图:

将数据进行分类后,我们采用基于时间戳的衰减算法进行处理,示意图如下:

对于同一个监测点的数据统一处理,对于每一位用户在该监测点上的点击行为进行统计,比较,计算该用户对该检测点的偏好。如图用户A分别在3月1日、3月5日、3月10日访问了三次。而用户B只在3月3日访问了一次,这样用户A相对用户B对该网站的偏好更高。对于另一个用户C也访问了三次,但是这三次相对于用户A的距离2015年6月23日-2015年6月30日期间更近,显然用户C比用户A更有可能在2015年6月23日-2015年6月30日间继续访问该网站,我们认为用户C比用户A对该网站有更高的偏好。我们将对比各用户的偏好,我们选择偏好最高的那个用户,这里选择用户C。

七.数据探索:

在进行数据分析前我们发现我们得到的第一手数据是不可靠的,有的行缺少数据,有的出现重复,有的数据是无效的,所以我们有必要进行数据探索,保证数据的有效性。

7.1数据无效:

我们发现有的数据是无效的。如下图:

通过观察,我们发现图中的数据只有一个用户曝光了该站点,我们认为该站点是无效的,将其剔除。

7.2数据缺失:

在获取的数据过程中有一些数据缺失了网站id,这些数据是不能用来挖掘的数据,否则会影响到最终挖掘的结果,因此我们把这类数据剔除。

相关文档
最新文档