Commit Graph

1191 Commits (13cae7fb60283966b45e126c4564c86b3e34ab53)

Author SHA1 Message Date
Alex Black cd41c3540d #8038 Fix Op profiler NaN/Inf triggering + add tests (#93)
Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-08-05 11:25:48 +10:00
Alex Black e18e2dc014 Various ND4J/DL4J fixes (#90)
* Deprecate Old*Op instances

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8063 #8054 Broadcast exceptions + cleanup inplace ops

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Remove bad test condition

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #7993 Fix shape function issue in crop_and_resize op

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* DL4J SameDiff lambda layer fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8029 Fix for pnorm backprop math

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-08-05 11:25:48 +10:00
Robert Altena fbe120031d remove createSparse methods. (#92)
Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:25:48 +10:00
Robert Altena 386a9f057b remove create method with unused parameter. (#89)
* remove create method with unused parameter.

* removed more unused methods.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>

* removing more unused code.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>

* last removal of unused code.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:25:48 +10:00
raver119 065b34c7cb [WIP] Numpy boolean import (#91)
* numpy bool type

Signed-off-by: raver119 <raver119@gmail.com>

* numpy bool java side

Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:25:48 +10:00
Alex Black b95417f7c5 Various ND4J/DL4J fixes and improvements (#87)
* Reshape and reallocate - small fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Reshape and reallocate - small fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #6488 ElementWiseVertex broadcast support

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Constructors and broadcast supported it Transforms.max/min

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8054 ElementWiseVertex now supports broadcast inputs

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8057 Nd4j.create overload dtype fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #7551 ND4J Shape validation fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-08-05 11:24:20 +10:00
Robert Altena aa4af2c36d refactor duplicate code from pad methods. (#86)
* refactor duplicate code from pad methods.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>

* replace switch with if.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:24:20 +10:00
Ryan Nett d4e7997134 SameDiff Convolution Config validation, better output methods (#82)
* Conv Config validation & tests

Signed-off-by: Ryan Nett <rnett@skymind.io>

* stackOutputs utility method

Signed-off-by: Ryan Nett <rnett@skymind.io>

* use constructor for validation, support negative kernel sizes (infered from weights)

Signed-off-by: Ryan Nett <rnett@skymind.io>

* better output methods

Signed-off-by: Ryan Nett <rnett@skymind.io>

* move output to be with fit and evaluate

Signed-off-by: Ryan Nett <rnett@skymind.io>

* fixes

Signed-off-by: Ryan Nett <rnett@skymind.io>

* more fixes

Signed-off-by: Ryan Nett <rnett@skymind.io>
2019-08-05 11:24:20 +10:00
Samuel Audet 8d1fe8b1b3 Fix functions of OpaqueVariablesSet 2019-08-05 11:24:20 +10:00
Susan Eraly b57f1d52cc Keras model import - updater lr fix (#84)
* Keras model import - updater lr fix

Signed-off-by: eraly <susan.eraly@gmail.com>

* Keras model import - updater lr fix, cleanup

Signed-off-by: eraly <susan.eraly@gmail.com>
2019-08-05 11:24:19 +10:00
Robert Altena fa98b83295 remove duplicate code in createBufferDetached. (#83)
Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:22:59 +10:00
Samuel Audet 526b782e51 Create C wrappers for some of the C++ classes currently used by ND4J 2019-08-05 11:22:59 +10:00
Samuel Audet 8881bfe7aa Adapt the Java wrappers in ND4J generated with JavaCPP 2019-08-05 11:22:59 +10:00
Samuel Audet 780ae628a9 Actually export functions from NativeOps.h 2019-08-05 11:22:59 +10:00
Samuel Audet dcc72e23b2 Refactor NativeOps.h to export C functions 2019-08-05 11:22:59 +10:00
Alex Black fad8da878f Various DL4J/ND4J fixes (#81)
* #7954 Force refresh of UI when switching tabs on overview page

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8017 Concurrent modification exception (synchronize) fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8033 Don't initialize updater in middle of writing memory crash dump

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8208 Fix shape checks for ND4J int[] creator methods

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #6385 #7992 Keras import naming fixes + cleanup

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8016 Upsampling3D - add NDHWC format support

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-08-05 11:21:23 +10:00
raver119 7c5c84bea8 4 additional tests
Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:21:23 +10:00
Robert Altena 70dbe70594 fix javadoc. (#76)
* fix javadoc.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>

* replace most @see with @link s.

Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:21:23 +10:00
Ryan Nett ac321265a7 SameDiff fixes and naming (#78)
* remove SDVariable inplace methods

* import methods

* npe fix in OpVal

* removed SameDiff inplace ops from tests

* Naming updates, moved to centralized methods in SameDiff, should use op_#:# for everything

* quick fixes

* javadoc

* SDVariable eval with placeholders

* use regex match

* better matching
2019-08-05 11:21:23 +10:00
raver119 ce0743da17 strided_slice_bp shape fn leak fix
Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:13:42 +10:00
Alex Black ac1fc1a27a DL4J trace logging (#79)
* MLN/CG trace logging for debugging

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Tiny tweak

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-08-05 11:13:42 +10:00
raver119 2cd95dc517 upsampling2d fix CUDA
Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:13:41 +10:00
raver119 4f2dae23a1 - new NDArray methods like()/ulike() (#77)
- fix for depthwise_conv2d_bp + special test

Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:13:41 +10:00
Ryan Nett 00e6296140 Zoo model TF import test updates (#75)
* argLine fix, update compression_gru comment

* updated comment for xception

* undid but commented argLine change

* updated xlnet comment

* copyright headers
2019-08-05 11:13:41 +10:00
raver119 b9708be5db delete temporary TadPack C++/Java side (#74)
Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:11:22 +10:00
raver119 59a006ce29 [WIP] More fixes (#73)
* special tests for ConstantTadHelper/ConstantShapeHelper

Signed-off-by: raver119 <raver119@gmail.com>

* release methods for data buffers

Signed-off-by: raver119 <raver119@gmail.com>

* delete temporary buffer Java side

Signed-off-by: raver119 <raver119@gmail.com>

* delete temporary buffer Java side

Signed-off-by: raver119 <raver119@gmail.com>
2019-08-05 11:11:22 +10:00
Robert Altena ce9c372974 fix pad javadoc and @see links. (#72)
Signed-off-by: Robert Altena <Rob@Ra-ai.com>
2019-08-05 11:11:22 +10:00
Alexandre Boulanger b083c22de5 RL4J - Added a unit test to help refac QLearningDiscrete.trainStep() (#8065)
* Added a unit test to help refac QLearningDiscrete.trainStep()

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed expReplay setter to package private

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-08-02 12:50:28 +10:00
Alexandre Boulanger b2145ca780 RL4J Added listener pattern to SyncLearning (#8050)
* Added listener pattern to SyncLearning

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Did requested changes

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-08-02 12:43:45 +10:00
Alex Black 0527ab8d98
Fix validation (#8059)
Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-29 15:26:18 +10:00
Alexandre Boulanger 87d2b2cd3d Added interface IDataManager (#8034)
Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-07-25 21:34:54 +10:00
jxtps 22993f853f Disallow creating bad classification iterator (#8042)
When doing classification we need to know the `numPossibleLabels`. If it's set to -1, then we get obscure and confusing null-pointers when accessing labels when calling `ComputationGraph.fit` on the iterator. This PR blocks the user from shooting themselves in the foot.
2019-07-25 14:51:57 +10:00
AlexDBlack 57efc2bf95 Fix bad merge
Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-21 00:03:30 +10:00
Alex Black 0d6bb657bc FlatBuffers dtype conversion fix (missing bfloat16) (#71)
Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-20 23:21:15 +10:00
raver119 763a225c6a [WIP] More of CUDA operations (#69)
* initial commit

Signed-off-by: raver119 <raver119@gmail.com>

* - gruCell_bp further

Signed-off-by: Yurii <yurii@skymind.io>

* - further work on gruCell_bp

Signed-off-by: Yurii <yurii@skymind.io>

* Inverse matrix cublas implementation. Partial working revision.

* Separation of segment ops helpers. Max separation.

* Separated segment_min ops.

* Separation of segment_mean/sum/prod/sqrtN ops heleprs.

* Fixed diagonal processing with LUP decomposition.

* Modified inversion approach using current state of LU decomposition.

* Implementation of matrix_inverse op with cuda kernels. Working revision.

* Implemented sequence_mask cuda helper. Eliminated waste printf with matrix_inverse implementation. Added proper tests.

* - further work on gruCell_bp (ff/cuda)

Signed-off-by: Yurii <yurii@skymind.io>

* comment one test for gruCell_bp

Signed-off-by: Yurii <yurii@skymind.io>

* - provide cuda static_rnn

Signed-off-by: Yurii <yurii@skymind.io>

* Refactored random_shuffle op to use new random generator.

* Refactored random_shuffle op helper.

* Fixed debug tests with random ops tests.

* Implement random_shuffle op cuda kernel helper and tests.

* - provide cuda scatter_update

Signed-off-by: Yurii <yurii@skymind.io>

* Implementation of random_shuffle for linear case with cuda kernels and tests.

* Implemented random_shuffle with cuda kernels. Final revision.

* - finally gruCell_bp is completed

Signed-off-by: Yurii <yurii@skymind.io>

* Dropout op cuda helper implementation.

* Implemented dropout_bp cuda helper.

* Implemented alpha_dropout_bp with cuda kernel helpers.

* Refactored helper.

* Implementation of suppresion helper with cuda kernels.

* - provide cpu code fot hsvToRgb, rgbToHsv, adjustHue

Signed-off-by: Yurii <yurii@skymind.io>

* Using sort by value method.

* Implementation of image.non_max_suppression op cuda-based helper.

* - correcting and testing adjust_hue, adjust_saturation cpu/cuda code

Signed-off-by: Yurii <yurii@skymind.io>

* Added cuda device prefixes to declarations.

* Implementation of hashcode op with cuda helper. Initital revision.

* rnn cu impl removed

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:20:41 +10:00
Alex Black 06e4f5f96e Small DL4J/SameDiff fixes (#70)
* More mask fixes + remove debugging println

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small batch norm derivative fixe

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-20 23:19:09 +10:00
Alexander Stoyakin f29f19e9e9 [WIP] Some nd4s tweaks (#68)
* Executioner fallback

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Tests for executioner

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>
2019-07-20 23:18:15 +10:00
Alexander Stoyakin 2fb4a52a02 [WIP] nd4s tests coverage (#59)
* Unit tests added

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added operator + for left integer

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added broadcast tests

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Build fixed after master changes

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Operatable tested

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* -sAdded tests

* Projection tests

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Projection tests

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Benchmarking

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>
2019-07-20 23:17:51 +10:00
Alex Black c3e684d648 DL4J: Switch subsampling layer to custom ops; DL4J samediff mask fix (#67)
* SpaceToDepth layer fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Switch subsampling layer to use dynamiccustomop + add legacy mode support for beta4 and earlier models

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small subsampling fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Subsampling layer eps fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Handle 'no mask provided this minibatch' case for DL4J SameDiff layers

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small comment/javadoc fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-20 23:17:28 +10:00
Alex Black 7939cf384b Misc fixes (#66)
* Small fixes

Signed-off-by: Alex Black <blacka101@gmail.com>

* Flaky test fix

Signed-off-by: Alex Black <blacka101@gmail.com>
2019-07-20 23:17:03 +10:00
Alex Black d94bc7257c Various fixes (#65)
* #7977 deprecate legacy MultiLayerNetwork/ComputationGraph.params(boolean) method

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Fix bad test

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Fix Histogram mapping

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Fix incorrect name handling in DifferentialFunction

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* More fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Histogram fixes

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Proper histogram fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* ToString/NDArrayStrings fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* JSON UTF8 serialization fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-20 23:16:41 +10:00
raver119 c499dc962f - numpy import fix for CUDA (#64)
- skip tagLocation for empty arrays

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:16:19 +10:00
raver119 c9e867b2e8 File existence validation for Nd4j.createFromNpyFile()
Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:15:57 +10:00
raver119 91a8fb0d90 [WIP] More of CUDA (#63)
* less spam

Signed-off-by: raver119 <raver119@gmail.com>

* flatten kernel

Signed-off-by: raver119 <raver119@gmail.com>

* adjust_hue/adjust_saturation tweaks

Signed-off-by: raver119 <raver119@gmail.com>

* adjust_hue cuda single

Signed-off-by: raver119 <raver119@gmail.com>

* adjust_hue cuda batch

Signed-off-by: raver119 <raver119@gmail.com>

* adjust_saturation cuda

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:15:14 +10:00
raver119 cf2311859a cpp tests fixes
Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:08:07 +10:00
raver119 fd6c0df024 [WIP] More CUDA fixes/updates (#62)
* CUDA reallocation update

Signed-off-by: raver119 <raver119@gmail.com>

* Legacy SoftMax/LogSoftMax/SoftMaxDerivative removed from cpp

Signed-off-by: raver119 <raver119@gmail.com>

* SoftMaxDerivative op removed

Signed-off-by: raver119 <raver119@gmail.com>

* few tests updates

Signed-off-by: raver119 <raver119@gmail.com>

* RNG fixes

Signed-off-by: raver119 <raver119@gmail.com>

* few more tests updates

Signed-off-by: raver119 <raver119@gmail.com>

* legacy Histogram/Pooling2D removed

Signed-off-by: raver119 <raver119@gmail.com>

* legacy Histogram removed

Signed-off-by: raver119 <raver119@gmail.com>

* histogram moved

Signed-off-by: raver119 <raver119@gmail.com>

* histogram moved cuda

Signed-off-by: raver119 <raver119@gmail.com>

* Histogram custom op

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:07:42 +10:00
Alex Black 5cf6859fc4 Add SequenceTrimToLengthTransform (#61)
Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-07-20 23:07:12 +10:00
raver119 9cf28ea6c9 [WIP] CUDA tweaks (#60)
* special cpu concat

Signed-off-by: raver119 <raver119@gmail.com>

* special concat fix

Signed-off-by: raver119 <raver119@gmail.com>

* OpProfiler tweak for absent host pointers

Signed-off-by: raver119 <raver119@gmail.com>

* minor test tweak to see orders

Signed-off-by: raver119 <raver119@gmail.com>

* CUDA broadcasting diff orders fix

Signed-off-by: raver119 <raver119@gmail.com>

* faster iterations

Signed-off-by: raver119 <raver119@gmail.com>

* OldSoftMax/OldLogSoftMax gone

Signed-off-by: raver119 <raver119@gmail.com>

* RandomLauncher tweaks

Signed-off-by: raver119 <raver119@gmail.com>

* additional check int randomtests

Signed-off-by: raver119 <raver119@gmail.com>

* skip prepare/register action for empty arrays

Signed-off-by: raver119 <raver119@gmail.com>

* npz float16 fix

Signed-off-by: raver119 <raver119@gmail.com>

* empty reduction cuda fixes

Signed-off-by: raver119 <raver119@gmail.com>

* ShapeBufferTests tweaks

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:06:48 +10:00
raver119 6ce458e949 [WIP] CUDA Java side (#58)
* one crashing test

Signed-off-by: raver119 <raver119@gmail.com>

* stupid issue fixed

Signed-off-by: raver119 <raver119@gmail.com>

* one fix

Signed-off-by: raver119 <raver119@gmail.com>

* dont ensure location for empty arrays

Signed-off-by: raver119 <raver119@gmail.com>

* few more signatures fixed

Signed-off-by: raver119 <raver119@gmail.com>

* few tweaks for DataBuffer creation from java primitives

Signed-off-by: raver119 <raver119@gmail.com>

* get rid of legacy im2col/col2im intercept

Signed-off-by: raver119 <raver119@gmail.com>

* rsubi scalar array fix

Signed-off-by: raver119 <raver119@gmail.com>
2019-07-20 23:06:25 +10:00
Alexander Stoyakin 68b82f3856 [WIP] nd4s - data types (#51)
* Fixed tests

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added conversions for Long

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added conversions for Long

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added data types

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Failing test

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Types in conversions

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Added mixins for integer types

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Conversion of different types to scalar

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Tests added

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Tests for arrays construction

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Construction tests

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Fixed slicing

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Add own Executioner implementation to nd4s

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Filter operation activated

* Collection tests activated

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Types in operations

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Commented unused code

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* Types in operations

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* String implicit conversion added

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>

* String implicit conversion added

Signed-off-by: Alexander Stoyakin <alexander.stoyakin@gmail.com>
2019-07-20 23:06:00 +10:00