统一识别_图计算| 学习笔记

简介: 快速学习统一识别_图计算

开发者学堂课程【2020版大数据实战项目之 DMP 广告系统(第七阶段)统一识别_图计算】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/682/detail/11840


统一识别_图计算

统一识别的环境对象已经完成了,回到 mainId 方法中

// 格式:mainId, tads

// mainId -> ID,按照顺序取得,第一个非空的就是主 ID

// tags -> GDmale:1,A20:1

// 步骤:

①将数据集转换为 Vertex Edge 的数据集

②图计算

③结果聚合

①将数据集转换为 Vertex Edge 的数据集

val vertex = idsAndTags.map(item => Vertex(item.mainId,

item.ids, item.tags))

// vertex 可以直接通过idsAndTags进行map, idsAndTags

中的类型是 IdsWithTags

item 转成 Vertex 对象,

Vertex 对象第一项接收 id, item 有一个mainId, 第二项 item

中有一个 ids, 第三项item 中有一个 tags

生成之后val edge = idsAndTags.flatMap(item => {

// uuid -> lasdkfakjh mac -> jaksdhfiah1231kjjh

// 一定要注意边的生成,是一对多的,是一个笛卡尔积

val ids: Map[String, String] = item.ids

val result: immutable.Iterable[Edge] = for (id <- ids; otherId

<- ids if id != otherId) yield Edge(id Edge(id._2,otherId._2)

result

})

// 生成一个边的集合 edge , 拿到 idsAndTags.Map(item ,生

Edge , Edge 中第一项是一个 source, 第二项是一个

destination, 但这样不能直接创建出 Edge;所以先拿到 ids, 可

通过 item.ids 获取到,ids是一个 map 类型,对应的第一项是 id

key 也是类型,第二项是id 的值“value”;

Ids 中可能是 uuid 对应 lasdkfakjh, 第二项 mac 对应

jaksdhfiah1231kjjhuuid 要和 mac 地址连接起来。生成全链接,

for 循环,拿到 id, ids 中取出一个 id, 它对应的是一个元

组,第一项是key,第二项是“value”,使用分号,嵌套 for 循环,

拿到 otherId <- ids,判断 if id != otherId,写一个 yield  生成

Edge, id otherId 取其中的第二项,数据集命名为val result

展平使用 flatMapEdge生成了,也生成了多个边。

// ②图计算

Val components = GraphFrame(vertex.toDF(), edge.toDF()).connectedComponents.run()

// GraphFrame 接收的对象为 vertex edge 的数据集,但 GraphFrame 只能接收 dateFrame, 所以需使用 toDF, 进行connectedComponents.run就获取到了components

// ③聚合

}

注意点:

边的生成是一对多的,是一个笛卡尔积

相关文章
|
9月前
|
机器学习/深度学习 并行计算 算法
龚大视频学习笔记:上帝视角看GPU(2)-逻辑上的模块划分
龚大视频学习笔记:上帝视角看GPU(2)-逻辑上的模块划分
155 0
|
数据可视化 大数据 定位技术
I+关系网络分析发布,提供完整的可视化分析和关系引擎功能
I+关系网络分析是以OLP模型为核心,面向业务快速建模,为开发者和终端用户提供大数据关系计算引擎(含API服务)和可视化交互分析能力,面向安防、关税、银行、保险、互联网等提供的产品化方案。目前,I+关系网络分析已在阿里巴巴、蚂蚁金服集团内广泛应用于反欺诈、反作弊、反洗钱等风控业务。
4586 0
|
4月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
109 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
7月前
|
运维 监控 JavaScript
函数计算产品使用问题之如何查询文生图接口地址
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
EMQ
|
9月前
|
数据采集 消息中间件 并行计算
NeuronEX 3.2.0 发布:增强数据采集、分析计算和管理功能
工业边缘网关软件 NeuronEX 3.2.0 版本现已正式发布,本次发布带来了一系列的增强功能和新特性,旨在为用户提供更多数据采集、分析计算以及管理的能力。
EMQ
133 2
NeuronEX 3.2.0 发布:增强数据采集、分析计算和管理功能
|
存储 uml
「业务架构」TAGAF建模:业务服务/信息图
「业务架构」TAGAF建模:业务服务/信息图
|
Serverless
函数计算的典型用户场景
函数计算的典型用户场景自制脑图
143 0
函数计算的典型用户场景
|
Java API 图计算
统一识别_图计算| 学习笔记
快速学习统一识别_图计算
统一识别_图计算| 学习笔记
|
图计算 开发者 iOS开发
统一识别-标签聚合| 学习笔记
快速学习统一识别-标签聚合
统一识别-标签聚合| 学习笔记
|
开发者
统一识别_完成| 学习笔记
快速学习统一识别_完成
统一识别_完成| 学习笔记

热门文章

最新文章