tf_geometric 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
tf_geometric 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
tf_geometric 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 GPL
开发语言 Python
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 CrawlScript
适用人群 未知
收录时间 2020-01-22

软件简介

tf_geometric是一个高效且友好的图神经网络库,同时支持TensorFlow 1.x 和 2.x。

受到rusty1s/pytorch_geometric项目的启发,我们为TensorFlow构建了一个图神经网络(GNN)库。 tf_geometric 同时提供面向对象接口(OOP API)和函数式接口(Functional API),你可以用它们来构建有趣的模型。

高效且友好的API


tf_geometric使用消息传递机制来实现图神经网络:相比于基于稠密矩阵的实现,它具有更高的效率;相比于基于稀疏矩阵的实现,它具有更友好的API。 除此之外,tf_geometric还为复杂的图神经网络操作提供了简易优雅的API。 下面的示例展现了使用tf_geometric构建一个图结构的数据,并使用多头图注意力网络(Multi-head GAT)对图数据进行处理的流程:

# coding=utf-8
import numpy as np
import tf_geometric as tfg
import tensorflow as tf

graph = tfg.Graph(
    x=np.random.randn(5, 20),  # 5个节点, 20维特征
    edge_index=[[0, 0, 1, 3],
                [1, 2, 2, 1]]  # 4个无向边
)

print("Graph Desc: \n", graph)

graph.convert_edge_to_directed()  # 预处理边数据,将无向边表示转换为有向边表示
print("Processed Graph Desc: \n", graph)
print("Processed Edge Index:\n", graph.edge_index)

# 多头图注意力网络(Multi-head GAT)
gat_layer = tfg.layers.GAT(units=4, num_heads=4, activation=tf.nn.relu)
output = gat_layer([graph.x, graph.edge_index])
print("Output of GAT: \n", output)

输出:

Graph Desc:
 Graph Shape: x => (5, 20)  edge_index => (2, 4)    y => None

Processed Graph Desc:
 Graph Shape: x => (5, 20)  edge_index => (2, 8)    y => None

Processed Edge Index:
 [[0 0 1 1 1 2 2 3]
 [1 2 0 2 3 0 1 1]]

Output of GAT:
 tf.Tensor(
[[0.22443159 0.         0.58263206 0.32468423]
 [0.29810357 0.         0.19403605 0.35630274]
 [0.18071976 0.         0.58263206 0.32468423]
 [0.36123228 0.         0.88897204 0.450244  ]
 [0.         0.         0.8013462  0.        ]], shape=(5, 4), dtype=float32)

入门教程


使用示例进行快速入门

强烈建议您通过下面的示例代码来快速入门tf_geometric:

引用

如果您在科研出版物中使用了tf_geometric,欢迎引用下方的论文:

@misc{hu2021efficient,
      title={Efficient Graph Deep Learning in TensorFlow with tf_geometric},
      author={Jun Hu and Shengsheng Qian and Quan Fang and Youze Wang and Quan Zhao and Huaiwen Zhang and Changsheng Xu},
      year={2021},
      eprint={2101.11552},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
Google TensorFlow缓冲区溢出漏洞
使用未经初始化的指针
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow存在安全漏洞,攻击者可利用漏洞通过引用绑定到\"BoostedTreesCalculateBestGainsPerFeature\"中的nullptr来生成未定义的行为,类似的攻击可能会发生在\"BoostedTreesCalculateBestFeatureSplitV2\"中。
CVE-2021-37662 MPS-2021-17271
2022-08-08 20:16
Google TensorFlow 安全漏洞
对异常条件的处理不恰当
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4 存在安全漏洞,该漏洞源于传递一个复杂参数给tf.transpose在传递 conjugate=True 参数的同时转置会导致崩溃。
CVE-2021-29618 MPS-2021-6368
2022-08-08 20:16
Google TensorFlow 输入验证错误漏洞
整数溢出或超界折返
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在安全漏洞,攻击者可利用该漏洞可以通过“CHECK”触发拒绝服务。
CVE-2021-29584 MPS-2021-6392
2022-08-08 20:16
Google TensorFlow 缓冲区错误漏洞
跨界内存写
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3存在缓冲区错误漏洞,该漏洞源于如果split参数没有指定一个有效的SparseTensor 攻击者可利用该漏洞就可以触发堆缓冲区溢出。
CVE-2021-29514 MPS-2021-6454
2022-08-08 20:16
Google TensorFlow 数字错误漏洞
除零错误
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在数字错误漏洞,该漏洞源于TFLite操作符TransposeConv 实现容易出现被零除的错误。
CVE-2021-29588 MPS-2021-6587
2022-08-08 20:16
Google Tensorflow数字错误漏洞
除零错误
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。Google Tensorflow存在数字错误漏洞,攻击者可利用该漏洞制作一个TFLite模型,在“BiasAndClamp”实现中触发除零。
CVE-2022-23557 MPS-2022-1984
2022-08-08 20:16
Google TensorFlow 数字错误漏洞
除零错误
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow 中存在数字错误漏洞,该漏洞源于产品的 tf.raw_ops.UnravelIndex 未对除数做有效限制,攻击者可通过除0导致拒绝服务。以下产品及版本收到影响:TensorFlow 2.5.1、TensorFlow 2.4.3 和 TensorFlow 2.3.4。
CVE-2021-37668 MPS-2021-17299
2022-08-08 20:16
Google TensorFlow 数字错误漏洞
除零错误
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在数字错误漏洞,攻击者可利用该漏洞可以导致tf.raw_ops.FractionalAvgPool中的运行时除零错误和拒绝服务。
CVE-2021-29550 MPS-2021-6423
2022-08-08 20:16
Google Tensorflow存在未明漏洞
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。Google TensorFlow存在安全漏洞,该漏洞源于TensorFlow使用tempfile.mktemp 来创建临时文件。目前没有详细漏洞细节提供。
CVE-2022-23563 MPS-2022-1990
2022-08-08 20:16
google tensorflow-2.7.0整数溢出或超界折返漏洞
整数溢出或超界折返
Tensorflow is an Open Source Machine Learning Framework. The implementation of shape inference for `Dequantize` is vulnerable to an integer overflow weakness. The `axis` argument can be `-1` (the default value for the optional argument) or any other positive value at most the number of dimensions of the input. Unfortunately, the upper bound is not checked, and, since the code computes `axis + 1`, an attacker can trigger an integer overflow. The fix will be included in TensorFlow 2.8.0. We will also cherrypick this commit on TensorFlow 2.7.1, TensorFlow 2.6.3, and TensorFlow 2.5.3, as these are also affected and still in supported range.
CVE-2022-21727 MPS-2021-37085
2022-08-08 20:16
Google Tensorflow代码问题漏洞
空指针解引用
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。Google TensorFlow存在代码问题漏洞,攻击者可利用该漏洞导致崩溃。
CVE-2022-23577 MPS-2022-2004
2022-08-08 20:16
Google TensorFlow缓冲区溢出漏洞
使用未经初始化的指针
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow存在安全漏洞,攻击者可利用漏洞通过在所有类型为\"tf.raw_ops.MatrixDiagV*\"的操作中绑定对空指针的引用来导致未定义的行为。
CVE-2021-37657 MPS-2021-17267
2022-08-08 20:16
Google TensorFlow 安全漏洞
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在安全漏洞,该漏洞源于TFlite图的节点之间不能有循环。
CVE-2021-29591 MPS-2021-6389
2022-08-08 20:16
Google TensorFlow 安全漏洞
数值类型间的不正确转换
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 存在安全漏洞,该漏洞源于代码假定张量内容是纯标量,变体会导致实现中的段错误。
CVE-2021-29539 MPS-2021-6432
2022-08-08 20:16
Google TensorFlow除零错误漏洞
除零错误
Google TensorFlow是一个端到端开源机器学习平台。 Google TensorFlow 2.6.0之前版本中的tf.raw_ops.ResourceGather存在除零错误漏洞。攻击者可利用该漏洞导致拒绝服务。
CVE-2021-37653 MPS-2021-17241
2022-08-08 20:16
Google TensorFlow拒绝服务漏洞
数值类型间的不正确转换
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow存在安全漏洞,攻击者可利用漏洞使用否定参数在\"boosted_trees_create_quantile_stream_resource\"中导致拒绝服务。
CVE-2021-37661 MPS-2021-17270
2022-08-08 20:16
Google TensorFlow 数字错误漏洞
除零错误
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在安全漏洞,该漏洞源于SpaceToDepth TFLite 操作符实现容易受到零错误除法的影响。
CVE-2021-29587 MPS-2021-6395
2022-08-08 20:16
Google TensorFlow 缓冲区错误漏洞
跨界内存读
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在缓冲区错误漏洞,该漏洞源于tf.raw_ops.Dequantize缺少验证。攻击者可利用该漏洞可以从堆分配的数据边界之外触发读取。
CVE-2021-29582 MPS-2021-6399
2022-08-08 20:16
Google TensorFlow输入验证错误漏洞
整数溢出或超界折返
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow存在输入验证错误漏洞,攻击者可利用该漏洞导致 `CHECK` 失败相关的中止(和拒绝服务)。
CVE-2021-41195 MPS-2021-31964
2022-08-08 20:16
Google TensorFlow存在未明漏洞
数值类型间的不正确转换
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。Google TensorFlow 2.7.0之前版本存在安全漏洞,该漏洞源于TensorFlow在计算tf.range内核中的输出大小时存在溢出问题。 目前没有详细的漏洞细节提供。
CVE-2021-41202 MPS-2021-31971
2022-08-08 20:16
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
0 评论
16 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部