cari
RumahPeranti teknologiAIGoogle secara rasmi mengumumkan keluaran TensorFlow-GNN 1.0! Persampelan dinamik dan interaktif untuk membina rangkaian saraf graf pada skala

Pada tahun 2005, kemunculan karya pembuatan zaman "The Graph Neural Network Model" membawa rangkaian saraf graf kepada semua orang.

Sebelum ini, cara saintis memproses data graf adalah dengan menukar graf kepada satu set "perwakilan vektor" semasa peringkat prapemprosesan data.

Kemunculan CNN telah mengubah sepenuhnya kelemahan kehilangan maklumat ini Dalam tempoh 20 tahun yang lalu, generasi model terus berkembang, mempromosikan kemajuan dalam bidang ML.

Hari ini, Google secara rasmi mengumumkan keluaran TensorFlow GNN 1.0 (TF-GNN) - perpustakaan yang diuji pengeluaran untuk membina GNN pada skala.

谷歌官宣TensorFlow-GNN 1.0发布!动态和交互采样,大规模构建图神经网络

Ia menyokong kedua-dua pemodelan dan latihan dalam TensorFlow, serta mengekstrak graf input daripada stor data yang besar.

TF-GNN dibina dari bawah untuk graf heterogen, di mana jenis objek dan perhubungan diwakili oleh set nod dan tepi yang berbeza.

Objek dan hubungannya di dunia nyata muncul dalam jenis yang berbeza, dan tumpuan heterogen TF-GNN menjadikannya sangat semula jadi untuk mewakilinya.

Saintis Google Anton Tsitsulin berkata bahawa pemodelan heterogen kompleks telah kembali!

谷歌官宣TensorFlow-GNN 1.0发布!动态和交互采样,大规模构建图神经网络

TF-GNN 1.0 pertama kali dikeluarkan

Objek dan hubungannya ada di mana-mana di dunia kita.

Kepentingan hubungan untuk memahami objek tidak kurang pentingnya daripada melihat sifat objek itu sendiri secara berasingan, seperti rangkaian pengangkutan, rangkaian pengeluaran, graf pengetahuan atau rangkaian sosial.

Matematik diskret dan sains komputer telah lama memformalkan rangkaian seperti graf, yang terdiri daripada "nod" yang disambungkan secara sewenang-wenang oleh tepi dalam pelbagai cara yang tidak teratur.

Walau bagaimanapun, kebanyakan algoritma pembelajaran mesin hanya membenarkan perhubungan tetap dan seragam antara objek input, seperti grid piksel, urutan perkataan atau tiada perhubungan langsung.

Graphic Neural Network, atau singkatannya GNN, ialah teknologi berkuasa yang bukan sahaja boleh mengeksploitasi ketersambungan graf (seperti algoritma awal DeepWalk dan Node2Vec), tetapi juga menggunakan ciri input nod dan tepi yang berbeza.

谷歌官宣TensorFlow-GNN 1.0发布!动态和交互采样,大规模构建图神经网络

GNN boleh berfungsi pada graf secara keseluruhan (adakah molekul ini bertindak balas dalam beberapa cara?), nod individu (mengikut petikan, apakah topik dokumen ini?), tepi berpotensi (ini Is produk yang mungkin dibeli dengan produk lain ) untuk ramalan.

Selain membuat ramalan pada graf, GNN ialah alat yang berkuasa untuk merapatkan jurang daripada kes penggunaan rangkaian saraf yang lebih tipikal.

Mereka mengekod maklumat hubungan diskret graf secara berterusan, membolehkannya digabungkan secara semula jadi ke dalam sistem pembelajaran mendalam yang lain.

Google hari ini secara rasmi mengumumkan TensorFlow GNN 1.0 (TF-GNN), perpustakaan yang diuji pengeluaran untuk membina GNN pada skala.

Dalam TensorFlow, graf sedemikian diwakili oleh objek jenis tfgnn.GraphTensor.

Ini ialah jenis tensor komposit (kumpulan tensor dalam kelas Python), diterima sebagai "objek kelas pertama" dalam tf.data.Dataset , tf.function dsb.

Ia boleh menyimpan bukan sahaja struktur graf, tetapi juga ciri-ciri nod, tepi dan keseluruhan graf.

Transformasi yang boleh dilatih untuk GraphTensors boleh ditakrifkan sebagai objek Lapisan dalam API Kera peringkat tinggi, atau terus menggunakan tfgnn.GraphTensor primitif.

GNN: Ramalan objek dalam konteks

Seterusnya, terangkan lagi TF-GNN, anda boleh melihat salah satu aplikasi biasa:

Ramalan rujukan silang dalam pangkalan data rujukan silang yang besar jenis nod tertentu dalam graf yang ditakrifkan oleh jadual

Sebagai contoh, dalam kertas arxiv pangkalan data sains komputer (CS), terdapat petikan satu-dengan-banyak dan hubungan petikan banyak-dengan-satu, yang boleh meramalkan kawasan subjek setiap kertas.

Seperti kebanyakan rangkaian saraf, GNN dilatih pada set data dengan banyak sampel berlabel (kira-kira berjuta-juta), tetapi setiap langkah latihan hanya terdiri daripada sekumpulan sampel latihan yang jauh lebih kecil (seperti Beratus-ratus).

Untuk menskalakan kepada berjuta-juta sampel, GNN dilatih pada aliran subgraf yang agak kecil dalam graf asas. Setiap subgraf mengandungi data mentah yang mencukupi untuk mengira keputusan GNN bagi nod berlabel pusat dan melatih model.

Proses ini, selalunya dipanggil pensampelan subgraf, amat penting untuk latihan GNN.

Kebanyakan alatan sedia ada melengkapkan pensampelan dalam cara kelompok dan menjana subgraf statik untuk latihan.

Dan TF-GNN menyediakan alatan untuk menambah baik perkara ini melalui pensampelan dinamik dan interaktif.

谷歌官宣TensorFlow-GNN 1.0发布!动态和交互采样,大规模构建图神经网络

Proses pensampelan subgraf, yang mengekstrak subgraf kecil yang boleh diambil tindakan daripada graf yang lebih besar untuk mencipta contoh input untuk latihan GNN

TF-GNN 1.0 memperkenalkan subgraf Python yang fleksibel, atau untuk subconfiguring API flexible pensampelan semua skala yang berkaitan: pensampelan interaktif dalam nota Colab.

Secara khusus, "pensampelan cekap" set data kecil yang disimpan dalam memori utama hos latihan tunggal, atau set data besar (sehingga ratusan juta nod dan data) yang disimpan dalam sistem fail rangkaian melalui Apache Beam tepi) untuk pensampelan teragih.

Pada subgraf sampel yang sama ini, tugas GNN adalah untuk mengira keadaan tersembunyi (atau potensi) nod punca agregat keadaan tersembunyi dan mengekod maklumat yang berkaitan kejiranan nod akar.

Kaedah biasa ialah "message passing neural network".

Dalam setiap pusingan pemesejan, nod menerima mesej daripada nod jiran di sepanjang tepi masuk dan mengemas kini keadaan tersembunyinya sendiri daripada tepi ini.

Selepas n pusingan, keadaan tersembunyi nod punca mencerminkan maklumat agregat semua nod dalam n tepi (seperti ditunjukkan dalam rajah di bawah, n=2). Mesej dan keadaan tersembunyi baharu dikira oleh lapisan tersembunyi rangkaian saraf.

Dalam graf heterogen, selalunya masuk akal untuk menggunakan lapisan tersembunyi yang dilatih secara berasingan untuk pelbagai jenis nod dan tepi. . nod. Setelah nod akar dicapai, ramalan akhir boleh dibuat

谷歌官宣TensorFlow-GNN 1.0发布!动态和交互采样,大规模构建图神经网络Persediaan latihan adalah dengan meletakkan lapisan output di atas keadaan tersembunyi GNN nod berlabel, mengira kerugian (untuk mengukur ralat ramalan) dan mengemas kini model melalui perambatan belakang Ini dilakukan menggunakan pemberat, yang biasa dalam mana-mana latihan rangkaian saraf.

Selain latihan diselia, GNN juga boleh dilatih dengan cara tanpa pengawasan, membolehkan kami mengira perwakilan berterusan (atau pembenaman) struktur graf diskret nod dan cirinya.

Perwakilan ini kemudiannya biasanya digunakan dalam sistem ML lain.

Dengan cara ini, maklumat hubungan diskret yang dikodkan oleh graf boleh digabungkan ke dalam kes penggunaan rangkaian saraf yang lebih tipikal. TF-GNN menyokong spesifikasi terperinci bagi sasaran yang tidak diawasi pada graf heterogen.

Membina seni bina GNN

Perpustakaan TF-GNN menyokong pembinaan dan latihan GNN pada tahap abstraksi yang berbeza.

Pada tahap tertinggi, pengguna boleh menggunakan mana-mana model pratakrif yang digabungkan dengan perpustakaan, yang diwakili sebagai lapisan Kera.

Selain set kecil model daripada literatur penyelidikan, TF-GNN didatangkan dengan templat model yang sangat boleh dikonfigurasikan yang menyediakan pilihan pemodelan yang dipilih dengan teliti.

Google menemui pilihan ini, memberikan garis dasar yang kukuh untuk banyak isu dalaman kami. Templat melaksanakan lapisan GNN pengguna hanya perlu memulakannya bermula dari lapisan Kera.

import tensorflow_gnn as tfgnnfrom tensorflow_gnn.models import mt_albisdef model_fn(graph_tensor_spec: tfgnn.GraphTensorSpec):"""Builds a GNN as a Keras model."""graph = inputs = tf.keras.Input(type_spec=graph_tensor_spec)# Encode input features (callback omitted for brevity).graph = tfgnn.keras.layers.MapFeatures(node_sets_fn=set_initial_node_states)(graph)# For each round of message passing...for _ in range(2):# ... create and apply a Keras layer.graph = mt_albis.MtAlbisGraphUpdate(units=128, message_dim=64,attention_type="none", simple_conv_reduce_type="mean",normalization_type="layer", next_state_type="residual",state_dropout_rate=0.2, l2_regularizatinotallow=1e-5,)(graph)return tf.keras.Model(inputs, graph)

在最低层,用户可以根据用于在图中传递数据的原语,从头开始编写GNN模型,比如将数据从节点广播到其所有传出边,或将数据从其所有传入边汇集到节点中。

当涉及到特征或隐藏状态时,TF-GNN 的图数据模型对节点、边和整个输入图一视同仁。

因此,它不仅可以直接表示像MPNN那样以节点为中心的模型,而且还可以表示更一般形式的的图网络。

这可以(但不一定)使用Kera作为核心TensorFlow顶部的建模框架来完成。

训练编排

虽然高级用户可以自由地进行定制模型训练,但TF-GNN Runner还提供了一种简洁的方法,在常见情况下协调Kera模型的训练。

一个简单的调用可能如下所示:

from tensorflow_gnn import runnerrunner.run( task=runner.RootNodeBinaryClassification("papers", ...), model_fn=model_fn, trainer=runner.KerasTrainer(tf.distribute.MirroredStrategy(), model_dir="/tmp/model"), optimizer_fn=tf.keras.optimizers.Adam, epochs=10, global_batch_size=128, train_ds_provider=runner.TFRecordDatasetProvider("/tmp/train*"), valid_ds_provider=runner.TFRecordDatasetProvider("/tmp/validation*"), gtspec=...,)

Runner为ML Pain提供了现成的解决方案,如分布式训练和云TPU上固定形状的 tfgnn.GraphTensor 填充。

除了单一任务的训练(如上所示)外,它还支持多个(两个或更多)任务的联合训练。

例如,非监督任务可以与监督任务混合,以形成具有特定于应用的归纳偏差的最终连续表示(或嵌入)。调用方只需将任务参数替换为任务映射:

from tensorflow_gnn import runnerfrom tensorflow_gnn.models import contrastive_lossesrunner.run( task={"classification": runner.RootNodeBinaryClassification("papers", ...),"dgi": contrastive_losses.DeepGraphInfomaxTask("papers"),},...)

此外,TF-GNN Runner还包括用于模型归因的集成梯度实现。

集成梯度输出是一个GraphTensor,其连接性与观察到的GraphTensor相同,但其特征用梯度值代替,在GNN预测中,较大的梯度值比较小的梯度值贡献更多。

总之,谷歌希望TF-GNN将有助于推动GNN在TensorFlow中的大规模应用,并推动该领域的进一步创新。

Atas ialah kandungan terperinci Google secara rasmi mengumumkan keluaran TensorFlow-GNN 1.0! Persampelan dinamik dan interaktif untuk membina rangkaian saraf graf pada skala. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:51CTO.COM. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
从VAE到扩散模型:一文解读以文生图新范式从VAE到扩散模型:一文解读以文生图新范式Apr 08, 2023 pm 08:41 PM

1 前言在发布DALL·E的15个月后,OpenAI在今年春天带了续作DALL·E 2,以其更加惊艳的效果和丰富的可玩性迅速占领了各大AI社区的头条。近年来,随着生成对抗网络(GAN)、变分自编码器(VAE)、扩散模型(Diffusion models)的出现,深度学习已向世人展现其强大的图像生成能力;加上GPT-3、BERT等NLP模型的成功,人类正逐步打破文本和图像的信息界限。在DALL·E 2中,只需输入简单的文本(prompt),它就可以生成多张1024*1024的高清图像。这些图像甚至

普林斯顿陈丹琦:如何让「大模型」变小普林斯顿陈丹琦:如何让「大模型」变小Apr 08, 2023 pm 04:01 PM

“Making large models smaller”这是很多语言模型研究人员的学术追求,针对大模型昂贵的环境和训练成本,陈丹琦在智源大会青源学术年会上做了题为“Making large models smaller”的特邀报告。报告中重点提及了基于记忆增强的TRIME算法和基于粗细粒度联合剪枝和逐层蒸馏的CofiPruning算法。前者能够在不改变模型结构的基础上兼顾语言模型困惑度和检索速度方面的优势;而后者可以在保证下游任务准确度的同时实现更快的处理速度,具有更小的模型结构。陈丹琦 普

找不到中文语音预训练模型?中文版 Wav2vec 2.0和HuBERT来了找不到中文语音预训练模型?中文版 Wav2vec 2.0和HuBERT来了Apr 08, 2023 pm 06:21 PM

Wav2vec 2.0 [1],HuBERT [2] 和 WavLM [3] 等语音预训练模型,通过在多达上万小时的无标注语音数据(如 Libri-light )上的自监督学习,显著提升了自动语音识别(Automatic Speech Recognition, ASR),语音合成(Text-to-speech, TTS)和语音转换(Voice Conversation,VC)等语音下游任务的性能。然而这些模型都没有公开的中文版本,不便于应用在中文语音研究场景。 WenetSpeech [4] 是

解锁CNN和Transformer正确结合方法,字节跳动提出有效的下一代视觉Transformer解锁CNN和Transformer正确结合方法,字节跳动提出有效的下一代视觉TransformerApr 09, 2023 pm 02:01 PM

由于复杂的注意力机制和模型设计,大多数现有的视觉 Transformer(ViT)在现实的工业部署场景中不能像卷积神经网络(CNN)那样高效地执行。这就带来了一个问题:视觉神经网络能否像 CNN 一样快速推断并像 ViT 一样强大?近期一些工作试图设计 CNN-Transformer 混合架构来解决这个问题,但这些工作的整体性能远不能令人满意。基于此,来自字节跳动的研究者提出了一种能在现实工业场景中有效部署的下一代视觉 Transformer——Next-ViT。从延迟 / 准确性权衡的角度看,

Stable Diffusion XL 现已推出—有什么新功能,你知道吗?Stable Diffusion XL 现已推出—有什么新功能,你知道吗?Apr 07, 2023 pm 11:21 PM

3月27号,Stability AI的创始人兼首席执行官Emad Mostaque在一条推文中宣布,Stable Diffusion XL 现已可用于公开测试。以下是一些事项:“XL”不是这个新的AI模型的官方名称。一旦发布稳定性AI公司的官方公告,名称将会更改。与先前版本相比,图像质量有所提高与先前版本相比,图像生成速度大大加快。示例图像让我们看看新旧AI模型在结果上的差异。Prompt: Luxury sports car with aerodynamic curves, shot in a

五年后AI所需算力超100万倍!十二家机构联合发表88页长文:「智能计算」是解药五年后AI所需算力超100万倍!十二家机构联合发表88页长文:「智能计算」是解药Apr 09, 2023 pm 07:01 PM

人工智能就是一个「拼财力」的行业,如果没有高性能计算设备,别说开发基础模型,就连微调模型都做不到。但如果只靠拼硬件,单靠当前计算性能的发展速度,迟早有一天无法满足日益膨胀的需求,所以还需要配套的软件来协调统筹计算能力,这时候就需要用到「智能计算」技术。最近,来自之江实验室、中国工程院、国防科技大学、浙江大学等多达十二个国内外研究机构共同发表了一篇论文,首次对智能计算领域进行了全面的调研,涵盖了理论基础、智能与计算的技术融合、重要应用、挑战和未来前景。论文链接:​https://spj.scien

​什么是Transformer机器学习模型?​什么是Transformer机器学习模型?Apr 08, 2023 pm 06:31 PM

译者 | 李睿审校 | 孙淑娟​近年来, Transformer 机器学习模型已经成为深度学习和深度神经网络技术进步的主要亮点之一。它主要用于自然语言处理中的高级应用。谷歌正在使用它来增强其搜索引擎结果。OpenAI 使用 Transformer 创建了著名的 GPT-2和 GPT-3模型。自从2017年首次亮相以来,Transformer 架构不断发展并扩展到多种不同的变体,从语言任务扩展到其他领域。它们已被用于时间序列预测。它们是 DeepMind 的蛋白质结构预测模型 AlphaFold

AI模型告诉你,为啥巴西最可能在今年夺冠!曾精准预测前两届冠军AI模型告诉你,为啥巴西最可能在今年夺冠!曾精准预测前两届冠军Apr 09, 2023 pm 01:51 PM

说起2010年南非世界杯的最大网红,一定非「章鱼保罗」莫属!这只位于德国海洋生物中心的神奇章鱼,不仅成功预测了德国队全部七场比赛的结果,还顺利地选出了最终的总冠军西班牙队。不幸的是,保罗已经永远地离开了我们,但它的「遗产」却在人们预测足球比赛结果的尝试中持续存在。在艾伦图灵研究所(The Alan Turing Institute),随着2022年卡塔尔世界杯的持续进行,三位研究员Nick Barlow、Jack Roberts和Ryan Chan决定用一种AI算法预测今年的冠军归属。预测模型图

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),