All Projects → yuehhua → Geometricflux.jl

yuehhua / Geometricflux.jl

Licence: mit
Geometric Deep Learning for Flux

Programming Languages

julia
2034 projects

Projects that are alternatives of or similar to Geometricflux.jl

Nucleo
🏋️‍♀️ Nucleo is a strongly typed and predictable state container library for JavaScript ecosystem written in TypeScript
Stars: ✭ 109 (-37.71%)
Mutual labels:  flux
React Todo
A sample todo app with React and Flux in ES2015 (ES6) served by Hapi
Stars: ✭ 130 (-25.71%)
Mutual labels:  flux
Qframework
Unity3D System Design Architecture
Stars: ✭ 2,326 (+1229.14%)
Mutual labels:  flux
Go Sct
A color temperature setting library and CLI that operates in a similar way to f.lux and Redshift.
Stars: ✭ 112 (-36%)
Mutual labels:  flux
Fluxcapacitor
This is what makes the Flux design pattern possible.
Stars: ✭ 126 (-28%)
Mutual labels:  flux
Goes
Go Event Sourcing made easy
Stars: ✭ 144 (-17.71%)
Mutual labels:  flux
Clean State
🐻 A pure and compact state manager, using React-hooks native implementation, automatically connect the module organization architecture. 🍋
Stars: ✭ 107 (-38.86%)
Mutual labels:  flux
Retalk
🐤 The Simplest Redux
Stars: ✭ 168 (-4%)
Mutual labels:  flux
Influxdb Client Csharp
InfluxDB 2.0 C# Client
Stars: ✭ 130 (-25.71%)
Mutual labels:  flux
Fluxible
A pluggable container for universal flux applications.
Stars: ✭ 1,811 (+934.86%)
Mutual labels:  flux
Undux
⚡️ Dead simple state for React. Now with Hooks support.
Stars: ✭ 1,488 (+750.29%)
Mutual labels:  flux
React I18nify
Simple i18n translation and localization components and helpers for React.
Stars: ✭ 123 (-29.71%)
Mutual labels:  flux
Suas Ios
Unidirectional data flow architecture implementation for iOS, macOS, tvOS and watchOS
Stars: ✭ 147 (-16%)
Mutual labels:  flux
Tiny Atom
Pragmatic and concise state management.
Stars: ✭ 109 (-37.71%)
Mutual labels:  flux
Redux Zero
A lightweight state container based on Redux
Stars: ✭ 1,977 (+1029.71%)
Mutual labels:  flux
Reactor Netty
TCP/HTTP/UDP/QUIC client/server with Reactor over Netty
Stars: ✭ 1,743 (+896%)
Mutual labels:  flux
Stockroom
🗃 Offload your store management to a worker easily.
Stars: ✭ 1,745 (+897.14%)
Mutual labels:  flux
General Store
Simple, flexible store implementation for Flux. #hubspot-open-source
Stars: ✭ 171 (-2.29%)
Mutual labels:  flux
Influxdb Client Python
InfluxDB 2.0 python client
Stars: ✭ 165 (-5.71%)
Mutual labels:  flux
Firedux
🔥 🐣 Firebase + Redux for ReactJS
Stars: ✭ 148 (-15.43%)
Mutual labels:  flux

GeometricFlux.jl

Build Status codecov pipeline status coverage report

GeometricFlux is a geometric deep learning library for Flux. This library aims to be compatible with packages from JuliaGraphs ecosystem and have support of CUDA GPU acceleration with CUDA. Message passing scheme is implemented as a flexbile framework and fused with Graph Network block scheme. GeometricFlux is compatible with other packages that are composable with Flux.

Suggestions, issues and pull requsts are welcome.

Installation

]add GeometricFlux

Features

  • Extend Flux deep learning framework in Julia and compatible with Flux layers.
  • Support of CUDA GPU with CUDA.jl
  • Integrate with existing JuliaGraphs ecosystem
  • Support generic graph neural network architectures
  • Variable graph inputs are supported. You use it when diverse graph structures are prepared as inputs to the same model.
  • Integrate GNN benchmark datasets (WIP)

Graph convolutional layers

Construct GCN layer:

graph = # can be adj_mat, adj_list, simple_graphs...
GCNConv([graph, ]input_dim=>output_dim, relu)

Use it as you use Flux

model = Chain(GCNConv(g, 1024=>512, relu),
              Dropout(0.5),
              GCNConv(g, 512=>128),
              Dense(128, 10),
              softmax)
## Loss
loss(x, y) = logitcrossentropy(model(x), y)
accuracy(x, y) = mean(onecold(model(x)) .== onecold(y))

## Training
ps = Flux.params(model)
train_data = [(train_X, train_y)]
opt = ADAM(0.01)
evalcb() = @show(accuracy(train_X, train_y))

Flux.train!(loss, ps, train_data, opt, cb=throttle(evalcb, 10))
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].