V0.9.0 #195
Merged
Merged
Conversation
…Apply() which will incur a LOT of costs
added generated API operations for unary ops
Generated new Gopkg.lock files
…nes in operations.go which were partially generated using a python script
…math.go). Cleaned up some spelling errors
Collaborator
|
Awesome. Excited about the col-major, stuff for more speed. |
…TapeMachine can be done. As a result the example is much less clearer than expected :(
exported BatchNormOp
Added checks for shape inference of linear algebra Added scalar checks for WithShape()
…l work and not hang
…use the cuDNN rectify function
…k like. still not final
…of batchNorm by requiring gamma(scale) and beta(bias) though
… signature for BatchNorm()
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ongoing notes:
ColMajor used by default if engine is CUDA.(ColMajor is supported, but defaults to using RowMajor for all the major cuBLAS versions. Careful reasoning of the parameters obviates the need for ColMajor by default, which causes more headaches. It is still supported)ops/nn(preview for how things will start to look in v0.10.0)Apply, which adds a penalty from repeatedly calling functions.greedy goroutines grabs gigs from a priority queue. This causes faster execution of code in general.(this is moved to a future version of 0.9.xx):Solvernow take a slice ofValueGradinstead ofNodes.ValueGradis an interface, of which a*Nodefulfils. An additional utility functionNodesToValueGradshas been added to aid with refactoring. This was done for two reasons:The support for BatchNorm operation, which is a verily impure and highly stateful function. The BatchNorm Op has internal states that need to have their gradients updated as well. But the internal state of BatchNorm isn't really part of the expression graph, and really it shouldn't be.Turns out there was a better API forBatchNorm.gorgonia.VMnow implementsio.Closer. It should be treated as a resource as well as a computation device - the VM must beClose()d in order for the resources acquired by the VM to actually be released. Turns out, automatic resource management is too difficult. Who'd thunk that?