2013 年 第 22 卷 第 7 期 计 算 机 系 统 应 用 1 协 同 过 滤 推 荐 算 法 与 Hadoop 平 台 1.1 协 同 过 滤 推 荐 算 法 传 统 的 基 于 项 目 (Item-based) 的 协 同 过 滤 推 荐

Similar documents
说 明 为 了 反 映 教 运 行 的 基 本 状 态, 为 校 和 院 制 定 相 关 政 策 和 进 行 教 建 设 与 改 革 提 供 据 依 据, 校 从 程 资 源 ( 开 类 别 开 量 规 模 ) 教 师 结 构 程 考 核 等 维 度, 对 2015 年 春 季 期 教 运 行 基

何 秋 琳 张 立 春 视 觉 学 习 研 究 进 展 视 觉 注 意 视 觉 感 知

2006年顺德区高中阶段学校招生录取分数线

,,,,, :,, (.,, );, (, : ), (.., ;. &., ;.. &.., ;, ;, ),,,,,,, ( ) ( ),,,,.,,,,,, : ;, ;,.,,,,, (., : - ),,,, ( ),,,, (, : ),, :,


( ) 信 号 与 系 统 Ⅰ 学 科 基 础 必 修 课 教 周 2016 年 06 月 13 日 (08:00-09:35) ( )

中 国 软 科 学 年 第 期!!!

¹ º ¹ º 农 业 流 动 人 口 是 指 户 口 性 质 为 农 业 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个 月 及 以 上 的 流 动 人 口 非 农 流 动 人 口 是 指 户 口 性 质 为 非 农 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个

一 开 放 性 的 政 策 与 法 规 二 两 岸 共 同 的 文 化 传 承 三 两 岸 高 校 各 自 具 有 专 业 优 势 远 见 杂 志 年 月 日

龚 亚 夫 在 重 新 思 考 基 础 教 育 英 语 教 学 的 理 念 一 文 中 援 引 的 观 点 认 为 当 跳 出 本 族 语 主 义 的 思 维 定 式 后 需 要 重 新 思 考 许 多 相 连 带 的 问 题 比 如 许 多 发 音 的 细 微 区 别 并 不 影 响 理 解 和

课程类 别

采 取 行 动 的 机 会 90% 开 拓 成 功 的 道 路 2

一 从 分 封 制 到 郡 县 制 一 从 打 虎 亭 汉 墓 说 起

<433A5C446F63756D656E E E67735C41646D696E F725CD7C0C3E65CC2DBCEC4CFB5CDB3CAB9D3C3D6B8C4CFA3A8BCF2BBAFA3A95CCAB9D3C3D6B8C4CF31302D31392E646F63>

I

一 公 共 卫 生 硕 士 专 业 学 位 论 文 的 概 述 学 位 论 文 是 对 研 究 生 进 行 科 学 研 究 或 承 担 专 门 技 术 工 作 的 全 面 训 练, 是 培 养 研 究 生 创 新 能 力, 综 合 运 用 所 学 知 识 发 现 问 题, 分 析 问 题 和 解 决


<4D F736F F D D323630D6D0B9FAD3A6B6D4C6F8BAF2B1E4BBAFB5C4D5FEB2DFD3EBD0D0B6AF C4EAB6C8B1A8B8E6>

《C语言基础入门》课程教学大纲

马 克 思 主 义 公 正 观 的 基 本 向 度 及 方 法 论 原 则!! # #

0 年 上 半 年 评 价 与 考 核 细 则 序 号 部 门 要 素 值 考 核 内 容 考 核 方 式 考 核 标 准 考 核 ( 扣 原 因 ) 考 评 得 3 安 全 生 产 目 30 无 同 等 责 任 以 上 道 路 交 通 亡 人 事 故 无 轻 伤 责 任 事 故 无 重 大 质 量

随着执业中医师资格考试制度的不断完善,本着为我校中医学专业认证服务的目的,本文通过对我校中医类毕业生参加2012年和2013年的中医执业医师考试成绩及通过率、掌握率进行分析,并与全国的平均水平进行差异比较分析,以此了解我校执业中医师考试的现状,进而反映我校中医类课程总体教学水平,发现考核知识模块教学中存在的不足,反馈给相关学院和教学管理部门,以此提高教学和管理水平。


中 日 信 息 化 的 比 较 与 合 作 一 中 日 信 息 化 的 规 模 比 较

评 委 : 李 炎 斌 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单


第 期 李 伟 等 用 方 法 对 中 国 历 史 气 温 数 据 插 值 可 行 性 讨 论

18 上 报 该 学 期 新 生 数 据 至 阳 光 平 台 第 一 学 期 第 四 周 至 第 六 周 19 督 促 学 习 中 心 提 交 新 增 专 业 申 请 第 一 学 期 第 四 周 至 第 八 周 20 编 制 全 国 网 络 统 考 十 二 月 批 次 考 前 模 拟 题 第 一 学

抗 战 时 期 国 民 政 府 的 银 行 监 理 体 制 探 析 % # % % % ) % % # # + #, ) +, % % % % % % % %

上证指数

西 南 民 族 学 院 学 报 哲 学 社 会 科 学 版 第 卷 资 料 来 源 中 国 统 计 年 鉴 年 年 新 中 国 五 十 年 统 计 资 料 汇 编 中 国 人 口 统 计 年 鉴 年 数 据 资 料 来 源 中 国 统 计 年 鉴 中 国 统 计 出 版 社 年 版 资 料 来 源

<4D F736F F D20B9D8D3DAB0BABBAAA3A8C9CFBAA3A3A9D7D4B6AFBBAFB9A4B3CCB9C9B7DDD3D0CFDEB9ABCBBE C4EAC4EAB6C8B9C9B6ABB4F3BBE1B7A8C2C9D2E2BCFBCAE92E646F6378>

Microsoft Word - 文件汇编.doc

国债回购交易业务指引

名 称 生 命 科 学 学 院 环 境 科 学 1 生 物 学 仅 接 收 院 内 调 剂, 初 试 分 数 满 足 我 院 生 物 学 复 试 最 低 分 数 线 生 命 科 学 学 院 生 态 学 5 生 态 学 或 生 物 学 生 命 科 学 学 院

抗 日 战 争 研 究 年 第 期

新, 各 地 各 部 门 ( 单 位 ) 各 文 化 事 业 单 位 要 高 度 重 视, 切 实 加 强 领 导, 精 心 组 织 实 施 要 根 据 事 业 单 位 岗 位 设 置 管 理 的 规 定 和 要 求, 在 深 入 调 查 研 究 广 泛 听 取 意 见 的 基 础 上, 研 究 提

内 容 二 : 建 立 并 完 善 了 三 点 的 网 络 教 学 管 理 体 系 内 容 三 : 注 重 培 养 学 生 的 听 说 能 力 14

<433A5C C6B73625C B746F705CB9FABCCAD6D0D2BDD2A9D7A8D2B5B8DFBCB6BCBCCAF5D6B0B3C6C6C0C9F3C9EAC7EBD6B8C4CFA3A CDA8D3C3B0E6A3A92E646F63>

HSK( 一 级 ) 考 查 考 生 的 日 常 汉 语 应 用 能 力, 它 对 应 于 国 际 汉 语 能 力 标 准 一 级 欧 洲 语 言 共 同 参 考 框 架 (CEF) A1 级 通 过 HSK( 一 级 ) 的 考 生 可 以 理 解 并 使 用 一 些 非 常 简 单 的 汉 语

Template BR_Rec_2005.dot

金 不 少 于 800 万 元, 净 资 产 不 少 于 960 万 元 ; (3) 近 五 年 独 立 承 担 过 单 项 合 同 额 不 少 于 1000 万 元 的 智 能 化 工 程 ( 设 计 或 施 工 或 设 计 施 工 一 体 ) 不 少 于 2 项 ; (4) 近 三 年 每 年

深圳市新亚电子制程股份有限公司

( 二 ) 现 行 统 一 高 考 制 度 不 利 于 培 养 人 的 创 新 精 神,,,,,,,,,,,,, [ ],,,,,,,,,,, :, ;,,,,,,? ( 三 ) 现 行 统 一 高 考 制 度 不 利 于 全 体 学 生 都 获 得 全 面 发 展,, [ ],,,,,,,,,,,

3 月 30 日 在 中 国 证 券 报 上 海 证 券 报 证 券 时 报 证 券 日 报 和 上 海 证 券 交 易 所 网 站 上 发 出 召 开 本 次 股 东 大 会 公 告, 该 公 告 中 载 明 了 召 开 股 东 大 会 的 日 期 网 络 投 票 的 方 式 时 间 以 及 审

修改版-操作手册.doc


目 录 关 于 图 标... 3 登 陆 主 界 面... 3 工 单 管 理... 5 工 单 列 表... 5 搜 索 工 单... 5 工 单 详 情... 6 创 建 工 单... 9 设 备 管 理 巡 检 计 划 查 询 详 情 销 售 管

中 中 中 中 部 中 岗 位 条 件 历 其 它 历 史 师 地 理 师 生 物 师 体 与 健 康 师 从 事 中 历 史 工 从 事 中 地 理 工 从 事 中 生 物 工 从 事 中 体 与 健 康 工 2. 课 程 与 论 ( 历 史 ); 2. 科 ( 历 史 )

年 第 期 % %! & % % % % % % &

!!

评 委 : 徐 岩 宇 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单

Microsoft Word - 第7章 图表反转形态.doc

!!!!!!!!!!

 编号:

定 位 和 描 述 : 程 序 设 计 / 办 公 软 件 高 级 应 用 级 考 核 内 容 包 括 计 算 机 语 言 与 基 础 程 序 设 计 能 力, 要 求 参 试 者 掌 握 一 门 计 算 机 语 言, 可 选 类 别 有 高 级 语 言 程 序 设 计 类 数 据 库 编 程 类

第 期 王 兴 涛 等 猪 流 行 性 乙 型 脑 炎 病 毒 种 猪 精 液 分 离 株 的 鉴 定 及 进 化 分 析 病 料 毒 株 及 细 胞 试 剂 引 物 设 计 提 取 及 基 因 克 隆 及 测 序

黄 金 原 油 总 持 仓 增 长, 同 比 增 幅 分 别 为 4.2% 和 4.1% 而 铜 白 银 以 及 玉 米 则 出 现 减 持, 减 持 同 比 减 少 分 别 为 9.4%,9.4% 以 及 6.5% 大 豆, 豆 粕 结 束 连 续 4 周 总 持 仓 量 增 长, 出 现 小 幅

第1篇 道路桥梁工程技术核心专业课程标准及学习绩效考评体系

小 学 语 文 是 小 学 语 文 是 小 学 语 文 是 小 学 语 文

ETF、分级基金规模、份额变化统计


伊 犁 师 范 学 院 611 语 言 学 概 论 全 套 考 研 资 料 <2016 年 最 新 考 研 资 料 > 2-2 语 言 学 纲 要 笔 记, 由 考 取 本 校 本 专 业 高 分 研 究 生 总 结 而 来, 重 点 突 出, 借 助 此 笔 记 可 以 大 大 提 高 复 习 效

简 报 要 点 ESI 共 有 22 个 学 科 门 类, 江 苏 高 校 目 前 只 有 16 个 学 科 门 类 进 入 了 世 界 1%, 分 别 是 一 般 社 会 科 学 临 床 医 学 农 业 科 学 分 子 生 物 学 和 遗 传 学 动 植 物 科 学 化 学 地 球 科 学 工 程

际 联 考 的 非 美 术 类 本 科, 提 前 批 本 科 体 育 类 第 一 批 第 二 批 第 三 批 的 理 工 类 和 文 史 类 本 科 平 行 志 愿, 考 生 可 以 填 报 6 所 院 校 志 愿 符 合 贫 困 地 区 专 项 计 划 和 农 村 考 生 专 项 计 划 报 考

(1) 信 息 系 统 项 目 管 理 综 合 知 识, 考 试 时 间 为 150 分 钟, 笔 试, 选 择 题 ; (2) 信 息 系 统 项 目 管 理 案 例 分 析, 考 试 时 间 为 90 分 钟, 笔 试, 问 答 题 ; (3) 信 息 系 统 项 目 管 理 论 文, 考 试

untitled



全国建筑市场注册执业人员不良行为记录认定标准(试行).doc

国家职业标准:网络课件设计师


珠江钢琴股东大会

正 规 培 训 达 规 定 标 准 学 时 数, 并 取 得 结 业 证 书 二 级 可 编 程 师 ( 具 备 以 下 条 件 之 一 者 ) (1) 连 续 从 事 本 职 业 工 作 13 年 以 上 (2) 取 得 本 职 业 三 级 职 业 资 格 证 书 后, 连 续 从 事 本 职 业

2009—2010级本科课程教学大纲与课程简介格式

2016年南开大学MBA招生信息



(1) 连 续 从 事 本 职 业 工 作 2 年 以 上, 经 本 职 业 助 网 络 编 辑 师 正 规 培 训 达 规 定 标 准 学 时 数, 并 取 得 结 业 证 书 (2) 取 得 本 职 业 网 络 编 辑 员 职 业 资 格 证 书 后, 连 续 从 事 本 职 业 工 作 2 年

<4D F736F F D20BFC9B1E0B3CCD0F2BFD8D6C6CFB5CDB3C9E8BCC6CAA6B9FABCD2D6B0D2B5B1EAD7BC2E646F63>


国 际 中 国 研 究 动 态 是 中 国 社 会 科 学 院 国 际 中 国 学 研 究 中 心 出 品 的 以 介 绍 国 际 中 国 问 题 研 究 最 新 成 果 为 宗 旨 的 电 子 杂 志 计 划 每 月 出 版 一 期 除 编 译 和 摘 编 网 络 和 中 外 期 刊 库 上 可

(Microsoft Word - NCRE\314\345\317\265\265\367\325\37313\324\27221\272\3051.doc)

附 件 : 上 海 市 建 筑 施 工 企 业 施 工 现 场 项 目 管 理 机 构 关 键 岗 位 人 员 配 备 指 南 二 一 四 年 九 月 十 一 日 2

国际财务报告准则第13号——公允价值计量


Microsoft Word - 资料分析练习题09.doc

关于修订《沪市股票上网发行资金申购


第 三 章 审 计 证 据 2

人 工 抗 原 的 鉴 定

·岗位设置管理流程

导 数 和 微 分 的 概 念 导 数 的 几 何 意 义 和 物 理 意 义 函 数 的 可 导 性 与 连 续 性 之 间 的 关 系 平 面 曲 线 的 切 线 和 法 线 导 数 和 微 分 的 四 则 运 算 基 本 初 等 函 数 的 导 数 复 合 函 数 反 函 数 隐 函 数 以

<443A5C6D B5C30312EB9A4D7F7CEC4B5B55C30322EBACFCDACCEC4B5B55C C30342EC8CBC9E7CCFC5C31332ECFEEC4BFC5E0D1B55C E30385C322EB2D9D7F7CAD6B2E12E646F63>

数 学 标 准 不 练 习 1.1 理 解 问 题 并 坚 持 解 决 这 些 问 题 1.2 以 抽 象 和 定 量 方 式 推 理 1.3 建 构 可 行 参 数 和 评 判 他 人 的 推 理 1.4 使 用 数 学 方 法 建 模 1.5 策 略 性 地 使 用 合 适 的 工 具 1.6

<4D F736F F D20CAAEC8FDCEE5B9E6BBAED7EED6D5B8E5352E33312E646F63>

Microsoft Word - 第3章.doc

教师上报成绩流程图


<4D F736F F D20B2CEBFBC3232C6DAD1A7CFB0D3EBCBBCBFBCC4DAD2B3>

Transcription:

1 基 于 Hadoop 平 台 协 同 过 滤 推 荐 算 法 杨 志 文, 刘 波 ( 华 南 师 范 大 学 计 算 机 学 院, 广 州 510631) 摘 要 : 针 对 协 同 过 滤 推 荐 算 法 在 数 据 稀 疏 性 及 在 大 数 据 规 模 下 系 统 可 扩 展 性 的 两 个 问 题, 在 分 析 研 究 Hadoop 分 布 式 平 台 与 协 同 过 滤 推 荐 算 法 后, 提 出 了 一 种 基 于 Hadoop 平 台 实 现 协 同 过 滤 推 荐 算 法 的 优 化 方 案. 实 验 证 明, 在 Hadoop 平 台 上 通 过 MapReduce 结 合 Hbase 数 据 库 实 现 算 法, 能 够 有 效 地 提 高 协 同 过 滤 推 荐 算 法 在 大 数 据 规 模 下 的 执 行 效 率, 从 而 能 够 进 一 步 地 搭 建 低 成 本 高 性 能 动 态 扩 展 的 分 布 式 推 荐 引 擎. 关 键 词 : Hadoop; MapReduce; Hbase; 协 同 过 滤 推 荐 算 法 Hadoop-Based Collaborative Filtering Recommendation Algorithm YANG Zhi-Wen, LIU Bo (School of Computer Science, South China Normal Universit, Guangzhou 510631, China) Abstract: In order to solve data sparsit and scalabilit of the Collaborative Filtering (CF) recommendation algorithm when the volume of the dataset is ver large. After deepl analzing the Hadoop distributed computing platform and the characteristic of Collaborative Filtering recommendation algorithm, the paper propose a optimization scheme on Hadoop platform. The experimental results show that it can effectivel improve the execution efficienc of Collaborative Filtering recommendation algorithm in large data size, when it is realized b MapReduce with Hbase database on the Hadoop platform.and then, it contribute to build one recommendation sstem which is low cost, high-performance and dnamic scalabilit. Ke words: Hadoop; MapReduce; Hbase; collaborative filtering recommendation algorithm 随 着 互 联 网 的 迅 速 发 展, 人 们 如 何 在 繁 多 的 信 息 获 取 自 己 需 要 的 内 容 成 为 了 一 个 越 来 越 重 要 的 问 题. 至 20 世 纪 90 年 代 提 出 推 荐 系 统 概 念 以 来, 对 于 推 荐 系 统 的 研 究 得 到 了 广 泛 的 关 注 和 飞 速 的 发 展. 其 中, Goldberg 等 人 提 出 的 协 同 过 滤 算 法 以 其 很 强 的 普 适 性 在 各 类 个 性 化 推 荐 系 统 中 得 到 了 广 泛 的 重 视 和 应 用. 目 前 的 大 部 分 协 同 过 滤 推 荐 算 法 主 要 是 通 过 计 算 某 一 用 户 对 未 评 分 项 目 的 预 测 评 分 并 以 此 作 为 主 要 依 据 向 该 用 户 进 行 推 荐 [1]. 根 据 算 法 采 用 最 近 邻 对 象 的 不 同 可 分 为 基 于 用 户 (User-based) 的 协 同 过 滤 基 于 项 目 (Item-based) 的 协 同 过 滤 和 基 于 模 型 (Model-based) 的 协 同 过 滤 三 种 算 法. 但 协 同 过 滤 推 荐 算 法 存 在 着 与 生 俱 来 的 稀 疏 性 问 题 冷 启 动 问 题 和 可 扩 展 性 等 缺 陷, 一 直 无 法 得 到 有 效 的 解 决 [2]. 迄 今 为 止 很 多 学 者 致 力 于 采 用 各 种 方 法 对 基 本 的 协 同 过 滤 算 法 本 身 进 行 改 进. 如 文 献 [3] 利 用 神 经 网 络 预 测 用 户 未 评 分 项 的 评 分 从 而 降 低 数 据 的 稀 疏 性, 文 献 [4] 提 出 基 于 项 目 间 相 似 性 提 高 协 调 过 滤 推 荐 算 法 的 可 扩 展 性. 然 而 随 着 评 分 数 据 规 模 的 急 剧 扩 大, 庞 大 的 计 算 量 将 严 重 影 响 协 同 过 滤 推 荐 算 法 的 执 行 效 率 与 推 荐 效 果. 针 对 协 同 过 滤 推 荐 算 法 数 据 稀 疏 性 和 可 扩 展 性 问 题, 本 文 将 跳 开 对 推 荐 算 法 本 身 的 改 进, 在 实 现 机 制 上 提 出 一 种 基 于 Hadoop [5,6] 分 布 式 平 台 实 现 协 同 过 滤 推 荐 算 法 的 改 进 方 案, 即 使 用 对 稀 疏 数 据 具 有 良 好 支 持 的 分 布 式 数 据 库 Hbase 来 保 存 用 户 评 分 矩 阵 作 为 数 据 源, 在 此 基 础 上 实 现 MapReduce 框 架 下 协 同 推 荐 算 法 的 分 布 式 计 算, 将 计 算 任 务 分 配 给 Hadoop 集 群 内 的 每 台 机 器, 从 而 有 效 地 提 高 荐 算 法 的 执 行 效 率. 1 收 稿 时 间 :2012-12-16; 收 到 修 改 稿 时 间 :2013-01-14 108 软 件 技 术 算 法 Software Technique Algorithm

2013 年 第 22 卷 第 7 期 http://www.c-s-a.org.cn 计 算 机 系 统 应 用 1 协 同 过 滤 推 荐 算 法 与 Hadoop 平 台 1.1 协 同 过 滤 推 荐 算 法 传 统 的 基 于 项 目 (Item-based) 的 协 同 过 滤 推 荐 算 法 为 例, 它 基 于 这 样 一 个 假 设 [7] : 如 果 用 户 对 一 些 项 目 的 评 分 比 较 相 似, 则 他 们 对 其 他 项 目 的 评 分 也 比 较 相 似. 通 过 统 计 技 术 搜 索 目 标 用 户 的 若 干 最 近 邻 居, 然 后 根 据 最 近 邻 居 对 项 目 的 评 分 预 测 目 标 用 户 对 项 目 的 评 分, 产 生 对 应 的 推 荐 列 表. 其 具 体 算 法 的 工 作 流 程 一 般 可 以 分 为 三 步 : 1) 数 据 表 述 输 入 数 据 一 般 被 表 述 为 一 个 m n 的 用 户 - 项 目 评 估 矩 阵 R, 如 图 1 所 示, m 是 用 户 数, n 是 项 目 数, 矩 阵 元 素 Rij 表 示 第 i 个 用 户 对 第 j 个 项 目 的 评 估 值. R R L R R R L R M M O M R R L R 11 12 1n 21 22 2n m1 m1 mn 图 1 用 户 - 项 目 矩 阵 2) 最 近 邻 搜 索 [8] (Nearest neighbor search, NNS) 得 出 目 标 项 目 的 最 近 邻 集 合, 即 计 算 项 目 I 与 其 它 项 目 的 相 似 度, 根 据 相 似 度 的 大 小 进 行 排 序 从 而 确 定 目 标 项 目 的 最 近 邻, 比 较 常 用 的 方 法 有 余 弦 相 似 度 或 者 皮 尔 逊 相 关 系 数 等, 以 余 弦 相 似 性 为 例. sim( i, i ) = x x ix x R R R 2 i 在 评 分 矩 阵 中, 每 个 项 目 的 所 有 评 分 可 以 视 为 这 个 矩 阵 的 一 个 列 向 量, 计 算 两 个 项 目 的 相 似 度 就 可 以 通 过 计 算 两 个 项 目 对 应 的 两 个 列 向 量 之 间 的 余 弦 值, 用 这 个 余 弦 值 来 表 示 这 两 个 项 目 的 相 似 度. sim(i x,i ) 表 示 项 目 i x 和 项 目 i 之 间 的 相 似 度, U x 表 示 评 价 过 i x 与 i 的 用 户 集 合, U x 和 U 分 别 表 示 评 价 过 项 目 i x 和 项 目 i 的 用 户 集 合, R ix 和 R i 分 别 表 示 u i 对 项 目 i x 和 i 的 评 分. 3) 得 出 目 标 用 户 的 推 荐 结 果 根 据 目 标 用 户 的 最 近 邻 用 户 的 所 有 评 分 项, 预 测 其 对 项 目 i 的 评 分 P a, 其 中 N 表 示 目 标 项 目 的 最 近 邻, r ai 表 示 目 标 用 户 对 项 目 i i 的 评 分. P a, = i sim R 2 i r, i ai i N sim, i i N (1) (2) 得 出 用 户 对 所 有 项 目 的 预 测 评 分 后, 根 据 P a 的 大 小 顺 序 排 列 选 择 最 佳 的 推 荐 结 果 给 目 标 用 户. [9] 1.2 Hadoop 平 台 Hadoop 是 当 前 热 门 的 云 计 算 解 决 方 案 之 一, 是 Apache 组 织 的 一 个 开 源 的 分 布 式 计 算 平 台, 以 Hadoop 分 布 式 文 件 系 统 (HDFS) 和 MapReduce 为 核 心 为 用 户 提 供 了 系 统 底 层 细 节 透 明 的 分 布 式 基 础 架 构. 从 而 用 户 可 以 利 用 Hadoop 轻 松 地 组 织 计 算 机 资 源, 搭 建 自 己 的 分 布 式 计 算 平 台, 并 且 可 以 充 分 利 用 集 群 的 计 算 和 存 储 能 力, 完 成 海 量 数 据 的 处 理. 现 在 Hadoop 已 经 发 展 成 为 包 含 了 多 个 子 项 目 的 集 合, 它 们 提 供 互 补 性 服 务 或 在 核 心 层 上 提 供 了 更 高 层 的 服 务. MapReduce 是 Google 提 出 的 一 个 软 件 编 程 框 架, 用 于 大 规 模 数 据 集 的 并 行 运 算. 如 图 2 所 示 : 一 个 MapReduce 作 业 执 行 时 会 被 拆 分 为 Map 和 Reduce 两 个 阶 段, Map 阶 段 对 输 入 数 据 进 行 分 布 式 处 理 映 射 成 一 组 新 的 键 值 对 <ke, value>, 经 过 一 定 处 理 后 交 给 Reduce 阶 段, Reduce 对 相 同 ke 下 的 所 有 value 进 行 处 理 后 再 输 出 键 值 对 作 为 最 终 的 结 果. 2 推 荐 算 法 的 实 现 图 2 MapReduce 作 业 流 程 图 如 上 所 述, 对 于 基 于 项 目 的 协 同 过 滤 推 荐 算 法 的 主 要 计 算 集 中 在 项 目 相 似 度 计 算 和 预 测 评 分 计 算 两 个 阶 段. 因 此, 下 面 分 别 给 出 这 两 个 阶 段 的 算 法 过 程 描 述 和 MapReduce 框 架 下 实 现 方 法. 2.1 相 关 Web 页 面 获 取 算 法 1 项 目 间 的 相 似 度 计 算 输 入 : 项 目 集 合 I 用 户 集 合 U 评 分 矩 阵 R U I 输 出 : 项 目 间 的 相 似 度 矩 阵 SIM I I 第 1 步 : 设 i=1; 第 2 步 : 若 i>= I, 结 束 ; 第 3 步 : i++, 若 i> I, 则 跳 转 至 第 2 步 ; Software Technique Algorithm 软 件 技 术 算 法 109

第 4 步 : 从 评 分 矩 阵 里 面 找 到 表 示 评 价 过 i x 与 i 的 用 户 集 合 U x, 分 别 表 示 评 价 过 项 目 i x 和 项 目 i 的 用 户 集 合 U x 和 U, 分 别 表 示 ui 对 项 目 i x 和 i 的 评 分 R ix 和 R i ; 第 5 步 : 根 据 公 式 (1) 计 算 项 目 i x 与 i 的 相 似 度 sim(i x,i ); 第 6 步 : i++, 跳 转 至 第 3 步 ; 算 法 2 预 测 评 分 计 算 输 入 : 目 标 用 户 ua 目 标 项 目 i 选 取 的 最 近 邻 数 量 评 分 矩 阵 R U I 项 目 间 相 似 度 矩 阵 SIM I I 输 出 : 用 户 u a 对 项 目 i 的 预 测 评 分 第 1 步 : 从 项 目 相 似 度 矩 阵 中 选 择 K 个 与 项 目 i 相 似 度 最 高 的 项 目 组 成 最 近 邻 集 合 N ; 第 2 步 : 根 据 公 式 (2) 计 算 用 户 u a 对 项 目 i 的 预 测 评 分 P a ; 2.2 MapReduce [10] 以 Grouplens 网 站 下 载 的 数 据 视 频 数 据 MovieLens 1M 为 例, 包 含 的 3 个 文 件 (movies.dat ratings.dat 和 users.dat) 分 别 存 储 了 电 影 信 息 评 分 信 息 以 及 用 户 信 息. Rating.dat 的 数 据 格 式 如 下 所 示 : UserID::MovieID::Rating::Timestamp 个 等 级. UserID 表 示 用 户 ID, 从 1 至 6040. MovieID 表 示 电 影 ID, 从 1 至 3952. Rating 表 示 用 户 对 电 影 的 评 级, 从 1 到 5 共 5 Timestamp 表 示 用 户 给 电 影 评 分 的 时 间 戳. Hadoop 是 用 JAVA 语 言 实 现, 然 而 它 的 基 本 数 据 类 型 不 是 标 准 的 JAVA 对 象, 而 是 对 它 们 的 一 个 封 装, 序 列 化. 根 据 第 二 节 对 协 同 过 滤 推 荐 算 法 的 分 析, org.apache.hadoop.io 包 中 提 供 了 一 套 可 用 于 序 列 优 化 的 Writable 基 本 类 型 并 不 能 满 足 需 求. 所 以 首 先 需 要 通 过 实 现 Writable 接 口 和 WritableComparable 接 口 定 制 灵 活 合 适 的 Writable 类 型. 然 后 根 据 算 法 实 现 的 三 个 步 骤 如 图 3 所 示 对 应 地 分 成 三 个 MapReduce 任 务 进 行 联 合 计 算. 这 里 需 要 将 Reduce 默 认 的 TextOutputFormat 纯 文 本 格 式 输 出 改 成 SequenceFileOutputFormat 二 进 制 输 出 格 式. 以 便 直 接 通 过 它 里 面 存 放 的 键 值 对 的 数 据 格 式 读 取 数 据, 而 不 需 要 像 纯 文 本 文 档 输 入 时 对 每 行 数 据 进 行 格 式 分 析, 减 少 了 大 量 中 间 数 据 的 存 储, 适 合 多 个 MapReduce 任 务 组 成 一 个 作 业 链, 提 高 执 行 效 率. 图 3 算 法 流 程 图 Step1: 得 到 用 户 - 项 目 评 分 矩 阵. 针 对 MapReduce 并 行 程 序 设 计 原 则 可 知, 输 入 数 据 的 切 分 步 骤 与 数 据 不 相 关, 可 以 并 行 化 处 理, map 阶 段 接 收 输 入 的 <ke, value>(ke 是 当 前 输 入 的 行 号, value 是 对 应 行 的 内 容 ), 然 后 对 此 行 内 容 进 行 切 分 工 作, shuffle 排 序 聚 集 分 发 都 是 按 照 ke 值 进 行 的, map 的 输 出 设 计 有 UserID 作 为 ke, MovieID 和 Rating 作 为 value 输 出. Reduce 阶 段 接 收 到 用 户 对 每 个 MovieID 的 评 分 后 合 成 用 户 - 项 目 评 分 矩 阵. Step2: 根 据 算 法 1 计 算 出 所 有 项 目 MovieID 间 的 相 似 度. map 阶 段 接 收 到 用 户 项 目 评 分 矩 阵 后, 对 每 个 用 户 下 的 项 目 评 分 进 行 提 取, 以 项 目 对 (MoiveID(i), MovieID(j)) 作 为 ke, 项 目 对 应 的 (Rating(i), Rating(j)) 作 为 value 输 出 给 reduce 阶 段 进 行 项 目 间 相 似 度 的 计 算, 并 将 计 算 结 果 保 存 输 出. Step3: 根 据 所 有 项 目 MovieID 间 的 相 似 度, 得 出 每 个 项 目 MovieID 相 似 度 最 高 的 N 个 项 目 定 义 最 近 邻 居. 而 后, 根 据 算 法 2 计 算 出 每 个 用 户 UserID 对 未 评 分 的 项 目 MovieID 的 预 测 评 分, 通 过 对 评 分 的 排 序, 得 出 推 荐 项 目 结 果 返 回 给 用 户. 3 数 据 源 的 优 化 Hadoop 平 台 支 持 文 本 数 据 以 及 RDBMS 数 据 库 ( 如 MSQL) 作 为 输 入 数 据 源. 但 文 本 输 入 时 需 要 对 数 据 进 行 格 式 分 析 和 序 列 化 处 理, 占 用 了 大 量 的 计 算 时 间. 而 传 统 的 RDBMS 数 据 库 在 数 据 量 过 大 时 会 出 现 读 写 分 离 策 略. 考 虑 到 协 同 过 滤 推 荐 算 法 计 算 数 据 评 分 矩 阵 的 稀 疏 性 ( 一 般 用 户 评 价 信 息 所 涉 及 的 项 目 只 能 占 总 数 的 1%~2% 左 右 ), 本 文 引 用 Hadoop 平 台 项 目 组 下 对 稀 疏 性 数 据 具 有 良 好 支 持 的 HBase 分 布 式 数 据 库 作 为 数 据 源. 110 软 件 技 术 算 法 Software Technique Algorithm

2013 年 第 22 卷 第 7 期 http://www.c-s-a.org.cn 计 算 机 系 统 应 用 HBase [11] 是 一 个 分 布 式 面 向 列 的 开 源 数 据 库, 在 Hadoop 之 上 提 供 类 似 Bigtable 的 能 力. 不 同 于 一 般 关 系 数 据 库 的 数 据 模 型, 用 户 将 数 据 存 储 在 一 个 表 里, 一 个 数 据 行 拥 有 一 个 可 选 择 的 键 和 任 意 数 量 的 列. 主 要 用 于 需 要 随 机 访 问 实 时 读 取 的 大 数 据. 相 比 文 本 数 据 及 RDBMS 数 据 库, HBase 数 据 库 有 以 下 优 势. HBase 是 一 个 基 于 列 模 式 的 映 射 数 据 库, HTable 为 null 的 Column 不 会 被 存 储, 这 样 既 节 省 了 空 间 又 提 高 了 读 性 能, 很 适 宜 存 储 松 散 型 数 据. HBase 架 构 在 Hadoop 上, 不 仅 具 有 很 好 的 可 收 缩 性, 当 数 据 越 来 越 大 时, 只 要 扩 展 Hadoop 集 群, HBase 会 自 动 水 平 切 分 扩 展, 跟 Hadoop 的 无 缝 集 合 保 障 了 其 数 据 库 可 靠 性 和 海 量 数 据 分 析 的 高 性 能. HBase 能 够 结 合 使 用 MapReduce 编 程 框 架 并 行 处 理 大 规 模 数 据, 使 得 数 据 存 储 与 并 行 计 算 完 美 地 结 合 在 一 起 [12]. 如 表 1, 使 用 HBase 数 据 库 需 要 对 原 先 MapReduce 程 序 进 行 修 改. 扩 展 ( 继 承 )MapReduce 里 面 的 相 关 类 ( 如 Mapper 和 Reducer, InputFormat 和 OutputFormat) 来 方 便 MapReduce 直 接 读 写 HTable 中 的 的 数 据. 表 1 Hbase 扩 展 包 Hbase MapReduce Hadoop MapReduce reduce.tablemapper.mapper reduce.tablereducer.reducer reduce.tableinputformat.inputformat reduce.tableoutputformat.outputformat 根 据 数 据 源 MovieLens 1M 的 数 据 特 性, 设 计 基 于 HBase 数 据 库 的 数 据 模 型 如 表 2. 将 数 据 写 入 HBase 后 作 为 底 层 存 储 结 构, MapReduce 在 上 进 行 调 用 处 理 数 据, 可 以 有 效 提 高 程 序 的 执 行 效 率. 软 件 环 境 : Ubuntu10.10; JDK1.6; Hadoop0.20.203.0 表 2 数 据 模 型 4.2 实 验 数 据 本 文 使 用 的 是 Grouplens 网 站 上 提 供 的 视 频 评 分 数 据 包 : ml-1m: 数 据 包 括 了 6040 个 用 户 对 3900 部 电 影. ml-10m: 数 据 包 括 了 71567 个 用 户 对 10681 部 电 影. 试 验 过 程 中, 根 据 节 点 数 量 分 别 启 动 1~4 台 Task Tracker 节 点, 构 成 不 同 规 模 的 分 布 式 集 群 环 境. 对 不 同 级 别 的 数 据 量 进 行 分 组 实 验, 每 次 测 试 重 复 进 行 三 次 取 平 均 值. 获 取 不 同 的 数 据 量 在 不 同 规 模 Hadoop 集 群 下 所 需 要 的 计 算 时 间 T. 由 于 计 算 时 间 受 到 集 群 各 节 点 自 身 硬 件 水 平 及 网 络 状 况 等 影 响, 并 不 具 有 稳 定 客 观 的 参 考 价 值, 而 本 文 实 验 是 为 了 验 证 通 过 对 Hadoop 集 群 的 扩 展 能 有 效 地 提 高 超 大 数 据 规 模 下 协 同 过 滤 推 荐 算 法 的 执 行 效 率, 所 以 我 们 采 用 参 数 f=t1/tn 作 比 较. T1 是 TaskTracker 节 点 为 1 时 算 法 的 执 行 时 间, Tn 是 TaskTracker 节 点 为 n 时 算 法 的 执 行 时 间. 通 过 比 较 f 参 数 可 以 得 出 Hadoop 节 点 数 量 对 算 法 执 行 效 率 的 影 响 状 况. 4 实 验 结 果 与 分 析 4.1 实 验 环 境 Hadoop 集 群 : 4 台 普 通 PC 机 搭 建 Hadoop 组 成 集 群, 命 名 为 hd0~hd3, 其 中 hd0 作 为 NameNode 同 时 作 为 JobTracker, 其 它 hd1~hd3 作 为 DataNode 和 TaskTracker. 图 4 Software Technique Algorithm 软 件 技 术 算 法 111

从 实 验 结 果 图 4, 可 以 看 出, 对 于 同 一 数 据 集, 增 加 TaskTracker 节 点 数 量, 可 以 有 效 地 提 高 推 荐 算 法 的 效 率. 而 且 相 比 较 下 计 算 数 据 集 较 大, Hadoop 集 群 的 大 小 影 响 越 明 显. 因 为 对 Hadoop 集 群 进 行 扩 展 只 需 要 将 新 的 TaskTracker 节 点 地 址 添 加 到 Hadoop 的 slaves 列 表 中, 所 以 在 Hadoop 平 台 实 现 协 同 过 滤 推 荐 算 法, 能 够 有 效 地 克 服 算 法 本 身 数 据 稀 疏 性 和 可 扩 展 性 问 题. 通 过 实 验, 发 现 MapReduce 框 架 下 实 现 协 同 过 滤 推 荐 算 法 存 在 着 一 个 缺 点, 即 在 每 次 的 计 算 中, 多 需 要 对 数 据 源 进 行 初 始 化, 这 个 过 程 耗 费 一 定 的 计 算 时 间, 从 而 影 响 了 推 荐 算 法 的 实 时 响 应 性. 5 总 结 本 文 提 出 了 一 种 基 于 Hadoop 平 台 对 协 同 过 滤 推 荐 算 法 实 现 的 研 究, 试 图 通 过 云 计 算 平 台 实 现 推 荐 算 法 的 分 布 式 计 算, 从 而 克 服 算 法 本 身 数 据 稀 疏 性 及 可 扩 展 性 问 题. 与 基 于 单 机 实 现 协 同 过 滤 推 荐 算 法 的 方 法 相 比, 应 用 Hadoop 云 计 算 平 台, 不 仅 可 以 使 用 更 适 合 存 储 稀 疏 性 数 据 的 分 布 式 数 据 库 HBase 代 替 传 统 关 系 数 据 库 RDBMS, 还 能 结 合 MapReduce 编 程 框 架 实 现 算 法 的 并 行 计 算. 实 验 数 据 表 明, 在 采 用 多 台 PC 机 组 成 的 Hadoop 集 群 通 过 增 加 计 算 节 点 能 够 有 效 减 少 计 算 时 间. 随 着 计 算 数 据 规 模 的 增 加, 可 以 廉 价 动 态 地 扩 展 集 群 的 计 算 能 力. 参 考 文 献 1 范 波, 程 久 军. 用 户 间 相 似 度 协 同 过 滤 推 荐 算 法. 计 算 机 科 学, 2012(1). 2 Sarwar MB. Sparsit, scalabilit and distribution in recommender sstems [Ph.D dissertation]. Universit of Minisota, 2001. 3 张 锋, 常 会 友. 使 用 BP 神 经 网 络 缓 解 协 同 过 滤 推 荐 算 法 的 稀 疏 性 问 题. 计 算 机 研 究 与 发 展,2006:(4). 4 Sarwar B, Karpis G, Konstan Jet. Item-Based Collaborative Filtering Recommendation Algorithms C. Proc. of the 10th International World Wide Web Conference. New York 2001: 285 295. 5 The Apache Hadoop project.http://hadoop.apache.org/. 6 Dean J, Ghemawat S. MapReduce: Simplified data processing on large cluseters. Communications of the ACM, 2005,51(1): 107 113. 7 Brees J, Hecherman D, Kadie C. Empirical analsis of predictive algorithms for collaborative filtering. Proc. of the 14th Conference on Uncertaint in Artificial Intelligence (UAI 98). 1998:43 52. 8 季 昀. 基 于 协 同 过 滤 推 荐 算 法 电 影 网 站 的 构 建 [ 学 位 论 文 ]. 哈 尔 滨 工 业 大 学,2009. 9 White T, 曾 大 聘, 周 傲 英.Hadoop 权 威 指 南. 北 京 : 清 华 大 学 出 版 社,2010.9 10. 10 Miller BN, Albert I, Lam S K, et al. MovieLens unplugged: experiences with an occasiionall connected recommender sstem. Proc. of the Conference on Human Factors in Computing Sstems. 1995:210 217. 11 The Apache HBase project.http://hbase.apache.org/. 12 陆 嘉 恒.Hadoop 实 战. 北 京 : 机 械 工 业 出 版 社.245 246. ( 上 接 第 116 页 ) 6 Zhang ZY. Flexible Camera Calibration B Viewing a Plane From Unknown Orientations. Proc. of IEEE International Conference on Computer Vision, 1999,11(1):666 673. 7 Zhang ZY. MEMBER S.A Flexible New Technique for Camera Calibration. IEEE Trans. on Pattern Analsis And Machine Intelligence, 2000,22(11):1330 1334. 8 马 颂 德, 张 正 友. 计 算 机 视 觉. 北 京 : 科 学 出 版 社,1998. 9 Steve V. Binocular vision-based augmented realit sstem with an increased registration depth using dnamic correction of feature positions. Virtual Realit, Proc. IEEE, 2003: 271 272. 10 于 舒 春, 朱 延 河, 闫 继 红, 等. 基 于 新 型 双 目 机 构 的 立 体 视 觉 系 统 标 定. 机 器 人,2007,29(4):353 362. 11 Heikkila J, Silven O. A Four-step Camera Calibration Procedure with Implicit Image Correction. Proc. of the IEEE Computer Societ Conference on ComputerVision and Pattern Recognition. Los Alamitos, CA, USA: IEEE Computer Societ, 1997:1106 1112. 112 软 件 技 术 算 法 Software Technique Algorithm