- 11 May, 2021 2 commits
-
-
Adrià Arrufat authored
* Fix serialize variant with C++17 * fix order of parameters
-
pfeatherstone authored
* added support for std::optional if using C++ * oops, bug fix + check if item already holds a type * oops, another bug fix * remove warnings about unused parameters Co-authored-by:pf <pf@me>
-
- 10 May, 2021 1 commit
-
-
pfeatherstone authored
* [SERIALIZATION] addes support for std::variant * [SERIALIZATION] bug fix + added tests * support immutable types * put an immutable type in std::variant Co-authored-by:pf <pf@me>
-
- 01 May, 2021 4 commits
-
-
Davis King authored
-
Davis King authored
-
Davis King authored
-
Davis King authored
Do this by just making all layers have a .input_layer() method, which in that context can be implemented in a simple manner.
-
- 28 Apr, 2021 1 commit
-
-
Davis King authored
Also fix this error from cmake 3.5.1: ``` CMake Error at CMakeLists.txt:62 (if): if given arguments: "CMAKE_COMPILER_IS_GNUCXX" "AND" "CMAKE_CXX_COMPILER_VERSION" "VERSION_LESS_EQUAL" "4.8.5" Unknown arguments specified ```
-
- 27 Apr, 2021 1 commit
-
-
Adrià Arrufat authored
* do not attempt to build with gcc 4.8.5 or older * add comment
-
- 24 Apr, 2021 2 commits
-
-
Davis King authored
-
pfeatherstone authored
-
- 22 Apr, 2021 1 commit
-
-
pfeatherstone authored
* [TYPE_SAFE_UNION] use std::aligned_union instead of stack_based_memory_block. std::aligned_union was specifically designed to do this kind of stuff and we are better off trusting the standard library deciding what the correct storage type should be and what the appropriate alignment should be * [TYPE_SAFE_UNION] as per Davis' suggestion, std::aligned_union can take Len parameter 0. Also, the content's of validate_type() has been bugging me for ages, so i created is_any which is based on std::is_same. I've also replaced is_same_type with std::is_same Co-authored-by:Peter Featherstone <peter@grampus-server.com>
-
- 14 Apr, 2021 3 commits
-
-
chokomancarr authored
-
Davis King authored
-
Adrià Arrufat authored
* Make ELU an inplace layer * Fix CUDA implementation of clipped_relu and update tests
-
- 13 Apr, 2021 1 commit
-
-
Adrià Arrufat authored
-
- 12 Apr, 2021 1 commit
-
-
Adrià Arrufat authored
* wip: add apis for clipped_relu and elu, and layer implementation for clipped_relu * add tensor_tools documentation * add cpu implementations for new activations * add elu layer * use upperbound and lowerbound for clipped_relu * fix clipped_relu gradient due to wrong variable naming * fix elu_gradient due to wrong variable naming * fix elu_gradient documentation * add documentation * WIP: add test_layer cases for clipped_relu and elu For some reason that I can't see, ELU is failing... * add clipped_relu and elu tests... cuda elu layer still does not work * fix spacing * add custom cuda implementation for elu_gradient (this one works) * Revert "add custom cuda implementation for elu_gradient (this one works)" This reverts commit 446dd803964cc6ecca598ddf6688e5d89ca0b112. * Revert "Revert "add custom cuda implementation for elu_gradient (this one works)"" This reverts commit 0b615f50081d0d90e71d502b6767fcb6ba62f28a. * add comment about custom elu gradient implementation * add gradient tests, restore cudnn elu gradient * re add custom elu gradient implementation * update docs * use own cuda implementation for clipped_relu and elu Co-authored-by:Davis E. King <davis@dlib.net>
-
- 04 Apr, 2021 2 commits
-
-
Adrià Arrufat authored
* Fix input/output mappings with repeat layers * add test for input/output tensor mappers * fix output to input order
-
Adrià Arrufat authored
* Add letterbox image * use && instead of and * make function adhere to the generic image interface * avoid extra copy * add some overloads and a simple test * add documentation * use zero_border_pixels and remove superfluous temporary image * allow different input and out images and update docs * remove empty line * be more explicit about output image size
-
- 28 Mar, 2021 3 commits
-
-
Davis King authored
-
Davis King authored
-
Davis King authored
-
- 22 Mar, 2021 1 commit
-
-
Adrià Arrufat authored
-
- 08 Mar, 2021 1 commit
-
-
Adrià Arrufat authored
* Add softmax function for matrix type * make softmax inherit from basic_op_m * fix comment * add test for matrix softmax * remove include * take inspiration from op_normalize * use multiplication instead of division * fix typo in documentation
-
- 20 Feb, 2021 1 commit
-
-
Davis King authored
This reverts commit 8b9d0439. Reverting this because the cmake pip pakage is still busted. I've been getting messages from many people about how it's breaking their systems/installs.
-
- 17 Feb, 2021 1 commit
-
-
Davis King authored
-
- 16 Feb, 2021 1 commit
-
-
Davis King authored
This dependency was explicitly removed two years ago because pip was installing a broken cmake on some systems. I'm adding the dependency back in the hope that the pip copy of cmake has been fixed on all systems by this point.
-
- 13 Feb, 2021 1 commit
-
-
pfeatherstone authored
Co-authored-by:pf <pf@pf-ubuntu-dev>
-
- 12 Feb, 2021 1 commit
-
-
pfeatherstone authored
* [SERIALIZATION] - vectorstream can now be used with vector<int8_t> and vector<uint8_t> * [SERIALIZATION] - update proxy_serialize and proxy_deserialize to work with vector<int8_t> and vector<uint8_t> * [SERIALIZATION] - updated vectorstream tests * [SERIALIZATION] - updated serialize tests. check you can go to and from any of vector<char>, vector<int8_t> and vector<uint8_t> * [SERIALIZATION] - updated matrix tests. check you can go to and from any of vector<char>, vector<int8_t> and vector<uint8_t> * [SERIALIZATION] - updated dnn tests. check you can go to and from any of vector<char>, vector<int8_t> and vector<uint8_t> * [SERIALIZATION] improved and possibly safer * [SERIALIZATION] use placement new. best of all worlds i think. we have least object overhead. but code looks a tad uglier. oh well, user doesn't have to care * [SERIALIZATION] i hope this is easier on the eyes. Co-authored-by:pf <pf@pf-ubuntu-dev>
-
- 11 Feb, 2021 1 commit
-
-
Adrià Arrufat authored
* fix set_learning_rate_multipliers not working * add tests for set_learning_rate_multipliers
-
- 09 Feb, 2021 1 commit
-
-
Adrià Arrufat authored
Since we are dividing by 1024, the unit should be MiB instead of MB. I also added a space between the number and the unit
-
- 28 Jan, 2021 1 commit
-
-
Davis King authored
-
- 18 Jan, 2021 2 commits
-
-
pfeatherstone authored
[MATRIX] bug fix. If you #include <dlib/matrix.h> in a header file you might get a compiler error saying ambiguous call to max(). This commit fixes that. (#2287) Co-authored-by:pf <pf@pf-ubuntu-dev>
-
Davis King authored
-
- 17 Jan, 2021 3 commits
-
-
pfeatherstone authored
* [FFT] added fft, ifft, fft_inplace and ifft_inplace overloads for std::vector * [FFT] - static_assert T is a floating point type. There are static asserts in mkl_fft and kiss_fft, but it doesn't hurt adding them in the matrix API too so users get helpful warnings higher up in the API. * [FFT] - added documentation for std::vector overloads in matrix_fft_abstract.h file Co-authored-by:pf <pf@pf-ubuntu-dev>
-
Davis King authored
I'm finding there are other issues with gcc 4.8 now and it's old enough that we can just drop support for gcc 4.8.
-
Robert Underwood authored
* Early termination for find_{min,max}_global This patch adds a callback to allow the user to request cancellation of a search using find_{min,max}_global. This enables users to cancel searches when they are no-longer relevent, or when the user has some special knowledge of the solution that they can use the stop the search early. closes #2250 * Moved default stopping condition into find_max_global.h since that's the code it relates to and did some minor cleanup. Co-authored-by:Davis King <davis@dlib.net>
-
- 16 Jan, 2021 3 commits
-
-
Davis King authored
-
Davis King authored
-
Davis King authored
This also makes it so the num and max_runtime arguments can now appear in any order. This does include a minor backwards compatibility break. Which is someone passing in initial function evaluations by directly supplying an initializer list like {function_evaluation({1.1, 0.9}, rosen({1.1, 0.9}))} may have to do std::vector<function_evaluation>{function_evaluation({1.1, 0.9}, rosen({1.1, 0.9}))} instead or make it a variable. This is due to C++ not supporting direct use of initializer lists with variadic templates in this context. But in any case, I doubt many users do this and it is not hard for those that do to update as described above.
-