shubham1206agra 1ea72a60ab Squashed commit of the following:
commit 54c6ebe03a
Merge: 775a3b55f b406fc150
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun May 1 13:24:24 2022 -0400

    Merge pull request #3200 from shubham1206agra/go-cli-fix

    Go Build Fix

commit 775a3b55f7
Merge: 8e72ed698 54e291443
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 30 10:41:45 2022 -0400

    Merge pull request #3198 from shubham1206agra/py-cli-fix

    Python Build Fix

commit 8e72ed6986
Merge: f7cd03866 1c1182301
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 30 10:40:59 2022 -0400

    Merge pull request #3199 from shubham1206agra/r-cli-fix

    R Build Fix

commit b406fc1506
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Fri Apr 29 10:42:32 2022 +0530

    changes according to suggestion

commit 54e2914430
Author: Shubham Agrawal <58412969+shubham1206agra@users.noreply.github.com>
Date:   Fri Apr 29 10:20:14 2022 +0530

    Update src/mlpack/bindings/python/copy_artifacts.py

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit f7cd038660
Merge: 065fcee29 3eb8ae67e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Apr 28 19:00:58 2022 -0700

    Merge pull request #2777 from zoq/ann-vtable

    Swap boost::variant with vtable.

commit ad4569213a
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 19:32:14 2022 +0530

    temp sol to version issue

commit 1bfa385663
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 18:48:03 2022 +0530

    initial fix by disabling go modules

commit 1c1182301e
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 12:46:18 2022 +0530

    force install pkgbuild

commit 3cfbb4e65d
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 12:36:51 2022 +0530

    cleanup

commit feab906927
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 11:28:32 2022 +0530

    missing '/' added

commit 577cc2d692
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Thu Apr 28 10:33:02 2022 +0530

    new directory structure using glob

commit 3eb8ae67ec
Merge: 6f98ab7bc 065fcee29
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Apr 27 20:51:46 2022 -0400

    Merge remote-tracking branch 'origin/master' into ann-vtable

commit 6f98ab7bc9
Author: Eshaan Agarwal <eshaan060202@gmail.com>
Date:   Wed Apr 13 20:13:06 2022 +0530

    Fix style issues

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit ac3097e875
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Wed Apr 13 18:22:03 2022 +0530

    fix error in size_t cast

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit d03aafacf6
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Apr 5 13:02:00 2022 +0530

    add parameter documentation in size checks

commit e55609d5be
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Apr 5 00:51:27 2022 +0530

    Add transpose parameter in size check

commit a485da2b71
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 31 04:22:53 2022 +0530

    fixed issues in styling

commit dff01492ed
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Mon Mar 14 22:25:27 2022 +0530

    fixed styling issues

commit ca50361083
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 22:50:03 2022 +0530

    fix build issue by removing row vector assert condition

commit 5b7d36db85
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 20:15:07 2022 +0530

    fix failed build

commit 614f924a4e
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 19:50:54 2022 +0530

    fixed redundancy in size-checks

commit f67c566a5f
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 19:30:22 2022 +0530

    fix matrix completion size-checks

commit e1e2b5308b
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 12:19:37 2022 +0530

    remove incorrect checks in adaboost

commit e5d701df32
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 10 16:30:49 2022 +0530

    fix size checks

commit 2656b300f9
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 10 12:24:15 2022 +0530

    fix styling issue

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit ef4d293fed
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Wed Mar 9 02:33:08 2022 +0530

    Add: size checks for kmeans and linear regression

commit 640dd0cde8
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Mar 8 02:27:38 2022 +0530

    Add : Size checks for adaboost and matix completion

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit 66bc9cbe00
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:29:30 2022 -0400

    Huh, I guess it is a new year.

commit 7b0c1e157b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:29:15 2022 -0400

    Update HISTORY.

commit e4be17defe
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:42 2022 -0400

    Add test for KFoldCV and Perceptron.

commit a70437ffc3
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:28 2022 -0400

    Add constructor to Perceptron for weighted data for KFoldCV.

commit 9b86271002
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:08 2022 -0400

    Make Classify() set the output predictions' size.

commit a35fc3b994
Author: Yashwants19 <Yashwants19@users.noreply.github.com>
Date:   Sun Apr 17 10:02:24 2022 +0000

    Upgrade Catch to 2.13.9

commit a1bb763729
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Apr 16 21:40:15 2022 +0200

    Update src/mlpack/core/data/save_image.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 57cec6f081
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Apr 16 16:20:14 2022 +0100

    Apply @rcurtin modification to check STB version

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 8e34862cf6
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Mar 13 21:28:32 2022 +0000

    Let us see inital try for STB test

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit afcc862ced
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Feb 3 21:46:40 2022 +0000

    Adding the missing starts, shitty regexp

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 0c076cca19
Author: Omar Shrit <omar@shrit.me>
Date:   Tue Jan 25 12:09:08 2022 +0000

    Finish this PR

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit b26f2d2a15
Author: Omar Shrit <omar@shrit.me>
Date:   Mon Jan 24 22:15:55 2022 +0000

    Refactor save_image into save_image_impl finally done!!

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 8fffbd55fa
Author: Omar Shrit <omar@shrit.me>
Date:   Mon Jan 24 21:20:12 2022 +0000

    Adjust namespace of mlpack::Log

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 37367c7ec5
Author: Omar Shrit <omar@shrit.me>
Date:   Mon Jan 24 19:51:55 2022 +0100

    Update src/mlpack/core/data/image_info_impl.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 3cc2d250b5
Author: Omar Shrit <omar@shrit.me>
Date:   Mon Jan 24 19:51:49 2022 +0100

    Update src/mlpack/core/data/image_info_impl.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 55c6cfd7df
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 23 19:38:29 2022 +0000

    Apply @rcurtin patch to fix the STB issue.

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 8cdb53a313
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 18:20:04 2022 +0000

    Commenting all #defines that are causing the problems

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit e2e000b06f
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 16:21:27 2022 +0000

    Move constructor to implementation

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 981f57c4be
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 16:03:30 2022 +0000

    Compiling locally, adding all modifications

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 4d29f5f9c1
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:59:31 2022 +0000

    Provide more details for namespace in src/mlpack/methods/det/dtree_impl.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit e8a76f8f35
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:59:03 2022 +0000

    Remove mlpack namspace from src/mlpack/methods/hmm/hmm_util_impl.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 9dd15d0865
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:58:50 2022 +0000

    remove mlpack namespace from src/mlpack/methods/reinforcement_learning/q_networks/categorical_dqn.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit aa057ccb8b
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:58:38 2022 +0000

    Remove mlpack namespace from src/mlpack/methods/hmm/hmm_util_impl.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 61cc69b1a5
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:58:22 2022 +0000

    Remove mlpack namespace from src/mlpack/methods/reinforcement_learning/q_networks/dueling_dqn.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 31f9545685
Author: Omar Shrit <omar@shrit.me>
Date:   Sun Jan 16 12:58:06 2022 +0000

    Remove mlpack namespace from src/mlpack/methods/reinforcement_learning/q_networks/simple_dqn.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 665711b9ce
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:33:51 2021 +0100

    Remove additional line in src/mlpack/core/kernels/pspectrum_string_kernel.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit 895c885b44
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:33:08 2021 +0100

    Fix indentation in src/mlpack/core/data/detect_file_type.hpp

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit cf6f60aee8
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:32:55 2021 +0100

    Add forgetten dot in src/mlpack/core/math/random_basis.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 21e045928a
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:32:38 2021 +0100

    Add spaces in src/mlpack/core/math/lin_alg_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 1f79e4fc83
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:32:16 2021 +0100

    Remove additional line in src/mlpack/core/math/lin_alg_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 6dc2d63af6
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:32:00 2021 +0100

    Fix indentation src/mlpack/core/math/lin_alg_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit ed07d9f05a
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:31:41 2021 +0100

    Fix indentation in src/mlpack/core/math/lin_alg_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 047dc47b3b
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:31:24 2021 +0100

    Add parantheses in src/mlpack/core/math/lin_alg_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 2dae84947a
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:31:00 2021 +0100

    Fix style in src/mlpack/core/kernels/epanechnikov_kernel_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 8666165293
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 16 15:30:43 2021 +0100

    Update style in src/mlpack/core/kernels/epanechnikov_kernel_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 6254b4b49a
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 2 23:54:27 2021 +0000

    Add forgetten layer name

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 407b563330
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 2 22:54:06 2021 +0000

    Clean all using namespaces from the headers.

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 4a713818ab
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 2 19:40:02 2021 +0000

    Fix the random_basis_impl in addition

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 99a485b6be
Author: Omar Shrit <omar@shrit.me>
Date:   Thu Dec 2 19:39:05 2021 +0000

    Clean partly the namespace. Let us see if this resolve the macOS issues

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 986bdb6bdd
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 20 22:03:31 2021 +0000

    Adjust namespace in preprocess

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit c3691bdf65
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 20 20:33:55 2021 +0000

    Remove the mlpack:: namespace

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit adbedb857b
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 20 19:56:14 2021 +0000

    Adding missing math/random headers

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit d246f94286
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 20 19:29:07 2021 +0000

    Fix the gmm error

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 10ed5c1c96
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 20 17:06:11 2021 +0000

    Let us if this resolves the binding issues

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 8b0c8038dd
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:52:19 2021 +0000

    Adding a missing std string

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit ff2f37c4e7
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:40:23 2021 +0000

    Finish the pspectrum_string_kernel

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit c6bf80178a
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:39:32 2021 +0000

    Deleting epanechnikov_kernel and adding pspectrum_string_kernel

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 09f508c6de
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:33:05 2021 +0000

    Finishing the epanechnikov_kernel

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 61d01a3949
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:23:57 2021 +0000

    remove epanechnikov_kernel

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit bd84bb2d0d
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:15:58 2021 +0000

    inline random_basis

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 90b80ea766
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 19:11:32 2021 +0000

    Adding missing headers

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit e0c5ac34fb
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 18:56:00 2021 +0000

    move the impl from .cpp to .impl

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 85a53b486f
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 18:43:17 2021 +0000

    Fix the compilation warning related to include implementations

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit c1d3833ff1
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 18:24:15 2021 +0000

    Fix comments and compilation bugs

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit b037f4f69f
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 18:12:02 2021 +0000

    Finish inlining the data dir

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit 0941f65038
Author: Omar Shrit <omar@shrit.me>
Date:   Sat Nov 13 18:04:01 2021 +0000

    Make save image header only

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit ba84188163
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Wed Mar 16 23:23:01 2022 -0400

    Prettify C++ code used to check for atomic linkage.

commit f9cc2f6bfa
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Tue Mar 15 22:14:12 2022 -0400

    If we use MSVC no need to check for atomic.

commit 119da780ed
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Feb 20 21:15:50 2022 -0500

    Check if libatomic is bundled.

commit 96f4d9aea6
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Wed Feb 16 21:42:44 2022 -0500

    Check if atomics need -latomic linking.

commit 47f94fbaee
Author: zoq <zoq@users.noreply.github.com>
Date:   Thu Apr 14 10:05:15 2022 +0000

    Upgrade Boost Version in CMake script.

commit c31961bc46
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Thu Apr 14 09:53:55 2022 +0800

    Update contributor list

commit 2d77be64d9
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Wed Apr 13 09:33:03 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit aa4a8b3922
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Wed Apr 13 00:40:08 2022 +0800

    Add vector and queue to standard includes

commit d9145891a7
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Wed Apr 13 00:38:40 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit 58518ab811
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Wed Apr 13 00:27:28 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit bc30907f5a
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Sat Apr 9 15:04:31 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit e117627c7f
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Sat Apr 9 14:58:28 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit 4d962ebab6
Author: LiuZhuojin <zhuojinliu.cs@gmail.com>
Date:   Fri Apr 8 13:53:10 2022 +0800

    Replace boost::heap::priority_queue with std::vector

commit 65afadc4af
Author: Yashwants19 <Yashwants19@users.noreply.github.com>
Date:   Fri Apr 1 10:00:54 2022 +0000

    Upgrade CLI11 to 2.2.0

commit 5875d3625a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Apr 27 16:10:15 2022 -0400

    Apply suggestions from code review

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit fef34ea8db
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Wed Apr 27 19:25:31 2022 +0530

    trying something else

commit 64e1f75b65
Author: shubham1206agra <tt1191044@iitd.ac.in>
Date:   Wed Apr 27 19:11:02 2022 +0530

    trying config file

commit 065fcee296
Merge: 56d3f1636 01fa1241c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 18 15:43:03 2022 -0700

    Merge pull request #3164 from eshaanagarwal/size-checks

    Added Size checks for Matrix Completion, Kmeans and Linear Regression

commit 56d3f16368
Merge: 2994570a0 152094dbb
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 18 06:01:10 2022 -0700

    Merge pull request #3190 from mlpack/fix-perceptron-cv

    Add weighted data constructor to `Perceptron`

commit 2994570a05
Merge: fdc7af7a6 c47cebdd8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 18 05:55:12 2022 -0700

    Merge pull request #3191 from mlpack/catch-header-updates-2.13.9

    Upgrade Catch to 2.13.9

commit c47cebdd82
Author: Yashwants19 <Yashwants19@users.noreply.github.com>
Date:   Sun Apr 17 10:02:24 2022 +0000

    Upgrade Catch to 2.13.9

commit 1645bb22eb
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 16 21:05:15 2022 -0400

    Use `typename` instead of `class` for consistency.

commit d8a1c27b7f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 16 20:55:50 2022 -0400

    Add serialization to GlorotInit.

commit 152094dbbe
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:29:30 2022 -0400

    Huh, I guess it is a new year.

commit c17e9c2f0f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:29:15 2022 -0400

    Update HISTORY.

commit 9a6551a1b5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:42 2022 -0400

    Add test for KFoldCV and Perceptron.

commit 3133a4abbd
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:28 2022 -0400

    Add constructor to Perceptron for weighted data for KFoldCV.

commit 80e65d8a5d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 15 21:26:08 2022 -0400

    Make Classify() set the output predictions' size.

commit 01fa1241ce
Author: Eshaan Agarwal <eshaan060202@gmail.com>
Date:   Wed Apr 13 20:13:06 2022 +0530

    Fix style issues

    Co-authored-by: Ryan Curtin <ryan@ratml.org>

commit cb35eba204
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Wed Apr 13 18:22:03 2022 +0530

    fix error in size_t cast

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit f12d714c50
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 13:34:43 2022 -0400

    Comment on the weightsPtr parameter.

commit 44b30019f4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 13:32:39 2022 -0400

    Add another padding test for Convolution.

commit 1a9f7ccd5b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 11:56:39 2022 -0400

    Return correct type of Weights().

commit bacd18db55
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 11:53:54 2022 -0400

    Update src/mlpack/methods/ann/layer/concatenate_impl.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 3dfe5a000d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 11:53:40 2022 -0400

    Update src/mlpack/methods/ann/layer/concatenate.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 6b47a9cd67
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 11:53:33 2022 -0400

    Update src/mlpack/methods/ann/layer/alpha_dropout.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 77203b84cf
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 11 11:53:25 2022 -0400

    Update src/mlpack/methods/ann/layer/alpha_dropout.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 845a5a0aed
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Apr 5 13:02:00 2022 +0530

    add parameter documentation in size checks

commit 07be7313a7
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 4 22:23:36 2022 -0400

    Use network.Forward() to avoid the extra output copy.

commit 0710d9f111
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Apr 4 22:05:35 2022 -0400

    Update src/mlpack/methods/ann/ffn.hpp

    Co-authored-by: Marcus Edel <marcus.edel@fu-berlin.de>

commit 0e9f05adbc
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Apr 5 00:51:27 2022 +0530

    Add transpose parameter in size check

commit 2cd38b3c9e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 22:02:45 2022 -0400

    Some additional cleanups.

commit c38625f8d4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 22:01:13 2022 -0400

    Change 'rho' to 'bpttSteps' for clarity.

commit 6eecba768a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 21:55:50 2022 -0400

    Include numeric header for std::accumulate.

commit 12287174e4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 21:29:51 2022 -0400

    Fix TODOs in LSTM layer.

commit 71ecddf8f6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 20:49:03 2022 -0400

    Some cleanups of the RNN class.

commit 83a178dffa
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:53:25 2022 -0400

    Some additional type fixes.

commit f5b3885998
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:30:02 2022 -0400

    Remove unused typedef.

commit eae99cfaca
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:27:29 2022 -0400

    Simplify Shuffle() implementation.

commit 250ab5cdd0
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:24:42 2022 -0400

    Remove unused Swap() function declaration.

commit 1432420917
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:23:28 2022 -0400

    Use MakeAlias() in the RNN implementation.

commit 03045b0235
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:08:59 2022 -0400

    Fix line wrap.

commit fe8a288613
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 16:07:01 2022 -0400

    Minor fixes to tests.

commit 44a18de28c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:58:36 2022 -0400

    Clarify RNN comment.

commit 10d04c4153
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:57:02 2022 -0400

    Add clarifying comment about where MakeAlias() is used.

commit 19c60244a7
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:56:06 2022 -0400

    More CEREAL_NVP() fixes.

commit d45d8787b9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:54:58 2022 -0400

    Fix serialization: use CEREAL_NVP().

commit 194211feec
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:53:45 2022 -0400

    Fixes for RBFType implementation comments.

commit 9c33d6b780
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:52:02 2022 -0400

    Fix header guard name.

commit 880c95bee5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:50:50 2022 -0400

    Fix typo.

commit 2fdd4b823b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:50:27 2022 -0400

    Add explanatory comment.

commit 416dfc7c4a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 15:48:36 2022 -0400

    Fix inaccurate comment.

commit 19563e3f63
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:49:37 2022 -0400

    Update comment.

commit ff3717bc53
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:41:01 2022 -0400

    Fix typo in comment.

commit ac42ea450b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:40:39 2022 -0400

    Clarify implementations.

commit 20c7b5a836
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:37:01 2022 -0400

    Remove unused method.

commit 4fb0dd4965
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:36:36 2022 -0400

    Fix includes.

commit 5253b1427a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:28:42 2022 -0400

    Clarify comment.

commit f0aceda809
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:27:38 2022 -0400

    Fix serialization for base layer.

commit 2413a1cdf5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:26:38 2022 -0400

    Add a comment.

commit 2f0a9419ef
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 14:26:05 2022 -0400

    Use MakeAlias() instead.

commit c599ecfd1a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:23:32 2022 -0400

    Change BaseLayer names for consistency.

commit 6d69ea45f1
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:18:45 2022 -0400

    Clear member that is not serialized on loading.

commit 8f52887fb5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:16:29 2022 -0400

    Remove inaccurate comments (we did not drop these).

commit cb952537e2
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:15:56 2022 -0400

    Re-add removed files from CMake.

commit c75d03ff6f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:14:53 2022 -0400

    Fix line spacing.

commit 8b2e57d32e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:13:46 2022 -0400

    Add a clarifying comment.

commit 454c746491
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:12:52 2022 -0400

    Remove duplicated `training` member.

commit c6443a43d8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:05:37 2022 -0400

    Add clarifying comment.

commit 6258a8a9fc
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 13:02:25 2022 -0400

    Clean up copy and move operators.

commit 07fc52fba3
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 12:51:28 2022 -0400

    Some clarifying comments.

commit 0ed1971ce0
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 12:50:24 2022 -0400

    Some cleanups of Forward() and Backward().

commit cade46d605
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 12:31:27 2022 -0400

    Some extra paranoia about `Network()`.

commit 20bf26651c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Apr 3 12:18:34 2022 -0400

    Use a separate file for forward declarations.

commit 56ef5ded8a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 21:38:09 2022 -0400

    Oops, revert unintentional CMake changes.

commit a1e3a8dbef
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 21:28:20 2022 -0400

    Fix minor merge issues.

commit f52a977dac
Merge: 835499fdb c4bb721ef
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 19:15:59 2022 -0400

    Merge remote-tracking branch 'origin/master' into ann-vtable

commit 835499fdb4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 18:39:16 2022 -0400

    Fix comments and remove working comments.

commit 2950e1ff9d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 18:36:29 2022 -0400

    Add comments to RecurrentLayer implementation.

commit 23d27c9b5d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 18:20:59 2022 -0400

    Minor style fixes.

commit e542fd8404
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 18:19:44 2022 -0400

    Comment default typedefs.

commit 59ca9428c6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 18:16:28 2022 -0400

    Add standardized comment about MatType.

commit cc4e3aec28
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 17:52:48 2022 -0400

    Use 'Type' and typedef conventions for loss functions.

commit 232ce2a342
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 15:37:55 2022 -0400

    Adapt CustomLayer for testing to have only one template parameter.

commit 9a9b6334a6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 15:37:41 2022 -0400

    Adapt tests for FFNs and RNNs having only one template parameter for type.

commit 9fe42a2d7b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 15:37:21 2022 -0400

    Adapt to use only one template parameter.

commit 6ff20e912b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 15:36:52 2022 -0400

    Adapt to use only one template parameter for types.

commit 48685d3483
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Apr 2 15:36:34 2022 -0400

    Adapt to use only one template parameter.

commit d79df40382
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 1 19:42:59 2022 -0400

    Don't allow calling Parameters() on a layer with no weights.

commit 6cdd49ab88
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 1 18:21:50 2022 -0400

    Some early attempts to adapt some tests.

commit 0d73c5e1e2
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 1 18:20:50 2022 -0400

    Early attempts at refactoring Q-learning code.

commit a446c67f5a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Apr 1 17:53:47 2022 -0400

    Re-enable RLComponentsTest.

commit 263d1ddd15
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 22:07:37 2022 -0400

    Allow the Rho parameter to be reset (it should also be renamed).

commit bcbeebcf27
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 22:07:27 2022 -0400

    Adapt CustomLayer.

commit 53d903d1c4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 21:17:29 2022 -0400

    Re-add the callback tests.

commit f34513341f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 21:15:36 2022 -0400

    We don't have an arbitrary type; move() should be used here.

commit 5a2f58f559
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 20:03:55 2022 -0400

    Re-enable some of the activation function tests.

commit 0155643e72
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 30 19:36:28 2022 -0400

    Forward() should not worry about whether we are in single mode (that's only relevant for training).

commit b3b5c6827a
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 31 04:22:53 2022 +0530

    fixed issues in styling

commit ed424ae4a1
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 21:23:37 2022 -0400

    Remove other bits of boost::visitor things.

commit be9a3882ad
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 21:23:28 2022 -0400

    Comment out RBMNetworkTests.

commit f1f5fc7fa2
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 21:23:22 2022 -0400

    Fix includes for moved files.

commit 112016ccf1
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 21:22:59 2022 -0400

    Remove boost usage.

commit 2da71b1f36
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 21:22:46 2022 -0400

    Move some files that aren't yet adapted or are unneeded.

commit 1998227d9c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 29 19:58:28 2022 -0400

    Fix header guard name.

commit f2a1b79e99
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 14:16:58 2022 -0400

    Fix incorrect step reference.

commit 7fa7eb15f0
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:16:33 2022 -0400

    Don't forget virtual destructor for LSTMType.

commit a501389238
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:16:14 2022 -0400

    Make sure to be able to serialize RecurrentLayer.

commit 4c8364c169
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:15:52 2022 -0400

    No need to serialize the training-time-only predictors and responses.

commit c219a57da3
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:15:38 2022 -0400

    Reference local `results` instead of class-wide `responses`.

commit 9b7b7f875d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:15:20 2022 -0400

    Add copy and move operator implementation.

commit accce42b35
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Mar 27 12:14:55 2022 -0400

    Oops, add RecurrentLayer to the repository.

commit df613499f3
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Mar 25 11:59:49 2022 -0400

    Adapt test to use multiple epochs.

commit aa0ce85656
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Mar 25 11:58:43 2022 -0400

    Fix alias computation.

commit 20b109fe42
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Mar 25 11:57:57 2022 -0400

    Set step correctly for forward pass.

commit 9ff1fb11f5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 23 22:40:52 2022 -0400

    Test that the RNN and FFN give the same output for only one time step.

commit 66d929f923
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 23 22:40:42 2022 -0400

    Handle series with only one time step.

commit 0c97b42d80
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Mar 23 17:58:28 2022 -0400

    Be sure to serialize rho and single too.

commit 76992e86d6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 22 21:26:19 2022 -0400

    Add serialization for some more initializations.

commit d6e200ff37
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 22 21:26:09 2022 -0400

    Fix include issue (this may not be the right fix).

commit 080dcfccb4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Mar 22 21:25:59 2022 -0400

    Correct NumFunctions() implementation.

commit 4816d7ccfe
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Mar 19 23:48:10 2022 -0400

    Some other minor bugfixes; now the tests pass.

commit 80efe31e5b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Mar 17 22:06:01 2022 -0400

    Fix a few bugs---now LSTMBatchSizeTest works!
    (That doesn't mean that RNNs actually work...)

commit eab019541d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Mar 17 21:12:19 2022 -0400

    Comment out tests that don't work yet.

commit 9ff8fd401d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Mar 17 21:11:47 2022 -0400

    Clean up (in some places) RNN implementation.

commit 5683066a66
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Mon Mar 14 22:25:27 2022 +0530

    fixed styling issues

commit 68e40a6b23
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 22:50:03 2022 +0530

    fix build issue by removing row vector assert condition

commit ca353778a4
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 20:15:07 2022 +0530

    fix failed build

commit 6883c30cb2
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 19:50:54 2022 +0530

    fixed redundancy in size-checks

commit 2685d69097
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 19:30:22 2022 +0530

    fix matrix completion size-checks

commit f4db66192b
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Fri Mar 11 12:19:37 2022 +0530

    remove incorrect checks in adaboost

commit 05d74baffd
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 10 16:30:49 2022 +0530

    fix size checks

commit 54f6506015
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Thu Mar 10 12:24:15 2022 +0530

    fix styling issue

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit 8714c77a95
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Wed Mar 9 02:33:08 2022 +0530

    Add: size checks for kmeans and linear regression

commit 0a0681f2a5
Author: eshaanagarwal <eshaan060202@gmail.com>
Date:   Tue Mar 8 02:27:38 2022 +0530

    Add : Size checks for adaboost and matix completion

    Signed-off-by: eshaanagarwal <eshaan060202@gmail.com>

commit bd08f9a92e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 16 22:18:54 2022 -0500

    Remove debugging output.

commit d8b72a862b
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Wed Feb 9 22:14:32 2022 -0500

    Some RNN refactoring.

commit 93fecce9c8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Feb 15 23:00:08 2022 -0500

    Significant cleanup of all layers.

    The ones not in not_adapted/ (other than the LSTM) are ready for review.

commit ce12cd3e25
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:44:07 2022 -0500

    Remove files from CMakeLists.txt.

commit ee117f355b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:43:38 2022 -0500

    Remove layer_traits.hpp since it's no longer needed.

commit 7b969f3014
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:41:54 2022 -0500

    Move two layers that got missed.

commit e2502cbb9c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:41:09 2022 -0500

    Move unadapted layers into a separate directory (for organization).

commit f72340106c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:09:08 2022 -0500

    Add some documentation about what will happen.

commit 637b93ddc0
Merge: 2065e17df cf190e11f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 22:05:56 2022 -0500

    Merge remote-tracking branch 'origin/master' into ann-vtable

commit 2065e17df8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 9 21:45:29 2022 -0500

    Add a test for uneven stride.

commit c532632ce9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Feb 5 20:41:43 2022 -0500

    Remove comments that turn out to be unnecessary to address.

commit 5e09ed1671
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Feb 5 18:08:06 2022 -0500

    Fix implementations of NaiveConvolution for stride and dilation.

commit 5cd0e38eb6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Feb 5 18:07:39 2022 -0500

    Add tests for different strides and dilations.

commit 8c1a818540
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Feb 2 22:55:35 2022 -0500

    Fix stride usage for backwards pass.

commit 110ed75b6f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Feb 1 18:06:55 2022 -0500

    Fix some minor issues and merge problems.

commit a77d290214
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jan 27 16:28:22 2022 -0500

    Add/fix final set of copy/move constructors/operators.

commit 11cc9a122b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jan 26 22:29:45 2022 -0500

    Add and fix a bunch more copy/move constructors/operators.

commit ec06bcbbff
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jan 25 22:44:34 2022 -0500

    Start implementing copy and move constructors correctly.

commit f842111039
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jan 25 22:44:25 2022 -0500

    Set sizes correctly for test.

commit 3f5e06e9c5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Jan 22 11:20:35 2022 -0500

    Restructure PaddingTest for slight behavior changes.

commit abb1450102
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jan 21 23:32:35 2022 -0500

    Fix minor bugs in shape computation.

commit d600ece415
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jan 21 23:03:24 2022 -0500

    Fix failing padding tests.

commit 94b3294a5d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jan 21 14:40:53 2022 -0500

    Fix some merge issues.

commit c3caed0490
Merge: 09a28caa9 3264cd87e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jan 20 20:23:26 2022 -0500

    Merge remote-tracking branch 'origin/master' into ann-vtable

commit 09a28caa90
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jan 19 17:41:18 2022 -0500

    Some minor bugfixes to FFN.  Some need further cleanup.

commit 96f97421f2
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jan 19 17:16:57 2022 -0500

    Fix bug in Gradient() implementation.

commit 6dc0596ad6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jan 19 17:16:44 2022 -0500

    Consider bias term in gradient.

commit 9a71a61aac
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jan 7 18:16:18 2022 -0500

    Fix setting of inputDimensionsAreSet.

commit a4ee2545f6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jan 4 20:12:34 2022 -0500

    Add a sanity check test.  It passes.

commit f5c4b95860
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 28 21:47:40 2021 -0500

    Remove debugging output.

commit d8fef7eed6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 28 21:47:17 2021 -0500

    Adapt to new mlpack 4 conventions.

commit bda6e0969f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 28 21:46:59 2021 -0500

    Fix failing tests.

commit 8d1c05c36f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 28 21:46:44 2021 -0500

    Update to mlpack 4 conventions.

commit ead043c9b8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 28 21:45:41 2021 -0500

    Oops, make sure to add the bias in the forward pass.

commit eae19f7c28
Author: Omar Shrit <omar@shrit.me>
Date:   Tue Nov 16 17:43:09 2021 +0000

    Finishing the Alphadroput layer, tests are passing

    Signed-off-by: Omar Shrit <omar@shrit.me>

commit c19e39a152
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 14 22:30:39 2021 -0500

    Turns out the MaxPooling adaptation I did was wrong---this seems more correct.

commit a1fd4829a1
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 14 22:30:15 2021 -0500

    Redo Convolution layer implementation.  I think this is right but not 100% sure.

commit ca010221e9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Nov 14 22:29:26 2021 -0500

    Enable LeakyReLU layer.

commit 49954574e9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Nov 1 19:17:24 2021 -0400

    Add gradient test for Convolution layer... but it seems to work?

commit be5b4e5e01
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Oct 20 17:46:03 2021 -0400

    Fix shape of input to reflect the number of input maps.

commit 19f06709d4
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Oct 19 10:18:14 2021 -0400

    Use MakeAlias() to avoid accidental copies.

commit 081c32593d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Sep 28 11:35:41 2021 -0400

    Bias should be one per output map.

commit 58f1718be1
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Sep 28 11:22:07 2021 -0400

    Huh, it seems like this fixes ConvolutionLayerPaddingTest.

commit 6fff4457c6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Sep 20 11:09:36 2021 -0400

    Fix two more tests by making sure the inputs and outputs are right.

commit ad2cb74d05
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Sep 19 00:10:20 2021 -0400

    Fix some tests.

commit 051205d78f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Sep 15 22:12:20 2021 -0400

    Now at least the tests don't segfault. :)

commit 1152c75d23
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Sep 15 13:59:43 2021 -0400

    Update some ann_layer tests.

commit f05590b878
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Sep 15 13:59:29 2021 -0400

    Fix convolution.

commit 1cbdaa8ac5
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Sep 15 13:58:09 2021 -0400

    Fix bug for uninitialized output.

commit 3a00d82a23
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Sep 9 12:02:31 2021 -0400

    Some cleanups for the convolution layer.

commit 72c0f58a27
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Sep 9 12:02:06 2021 -0400

    Fix some incorrect dimension usages.

commit a46542b25f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Sep 7 18:05:04 2021 -0400

    Too much writing Julia...

commit 06f7b34d73
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Sep 3 18:43:21 2021 -0400

    Fix max pooling bug.

commit c9df713091
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Aug 21 10:44:43 2021 -0400

    First attempt at refactoring Padding, MaxPooling, and Convolution.

commit 498afa0ab7
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat Aug 7 11:15:14 2021 -0400

    Fix various bugs in the MultiLayer implementation.

commit 8105bb8583
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Aug 4 21:19:54 2021 -0400

    Refactor to use MultiLayer inside an FFN.

commit 5f7a9cd684
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Mon Aug 2 18:19:58 2021 +0200

    Filter some 'unused' layers.

commit 8a4e5b9bdf
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Aug 1 21:42:09 2021 -0400

    Refactor Highway (and fix MultiLayer).

commit 0375e7d575
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Aug 1 21:42:00 2021 -0400

    Extra paranoia to avoid include boost::visitor...

commit d3972c16da
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Aug 1 21:41:49 2021 -0400

    Just make sure boost isn't included...

commit 57884df9f6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Aug 1 21:41:33 2021 -0400

    Split out into convenience function.

commit d136ac3df3
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Aug 1 21:41:00 2021 -0400

    Hey, this is no longer needed! :)

commit be7eeb134d
Merge: ce3c3bcee e3f4654a8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jul 23 16:45:08 2021 -0400

    Merge branch 'ann-vtable-attempt' into HEAD

commit e3f4654a8a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jul 23 16:43:46 2021 -0400

    Update RBF<> layer so tests pass.

commit ce3c3bcee6
Merge: 34cf419bb 927fabff8
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Tue Jul 20 08:56:37 2021 -0400

    Merge pull request #2 from rcurtin/ann-vtable-attempt

    Further refactoring of ANN to remove boost::visitor.

commit 927fabff8a
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 17:53:33 2021 -0400

    Adapt the last commented test in FeedforwardNetworkTest.

commit ed8881d2b6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 17:48:46 2021 -0400

    Uncomment another test.

commit b05736d42c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 17:48:34 2021 -0400

    Make sure Parameters() returns the correct thing.

commit 522ebd11fe
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 17:48:27 2021 -0400

    Adapt AddType<>.

commit c8c0797c9d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 17:19:57 2021 -0400

    Adapt a few more layers, and uncomment some more tests.

commit 2b7429594f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 13 16:47:06 2021 -0400

    Oops, I didn't really need to refactor this, but it might work.

commit ab67249f9f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jul 8 17:49:57 2021 -0400

    Fix additional warnings.

commit a5bb31b824
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jul 8 17:38:04 2021 -0400

    Remove debugging output.

commit 188759042c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jul 8 17:37:42 2021 -0400

    Fix a compilation warning.

commit 130890c85d
Author: Ryan Curtin <ryan@ratml.org>
Date:   Thu Jul 8 17:36:09 2021 -0400

    Some additional refactoring and cleanups.

    Notably, the adapted layers no longer need an input size.

commit 32b19eb7ef
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jul 7 19:08:32 2021 -0400

    Refactor Reparametrization layer.

commit d180cc3639
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jul 7 19:08:12 2021 -0400

    Serialize output dimensions also.

commit a87672665c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jul 7 18:24:15 2021 -0400

    Remove unnecessary copy/move constructor/operators.

commit af68997a6c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jul 7 18:22:30 2021 -0400

    This function should be const.

commit 60fe292da9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jul 7 18:22:10 2021 -0400

    These are all the default versions anyway (but don't consider inheritance...).

commit 30e4ff741b
Author: Ryan Curtin <ryan@ratml.org>
Date:   Tue Jul 6 16:22:37 2021 -0400

    Update comments.

commit 7f7f56481f
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Jul 5 21:53:33 2021 -0400

    Remove unnecessary functions.

commit 30aca349cf
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Jul 5 19:26:55 2021 -0400

    Fix train/test modes.

commit ffba7a966c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Jul 5 18:52:20 2021 -0400

    Remove unnecessary utilities.

commit a3dd3739c6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Mon Jul 5 18:51:18 2021 -0400

    Change 'deterministic' to 'training'.

commit afa76d6ae8
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sun Jul 4 16:05:47 2021 -0400

    Make sure that we save layerOutputs.back() in case we need it later...

commit 2875194721
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 23 19:58:38 2021 -0400

    Fix FFNReturnModel test.

commit 292bfbef9c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 23 19:32:34 2021 -0400

    Serialize deterministic in whatever state it is currently in---no assumptions.

commit a30e15fca7
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 23 19:32:20 2021 -0400

    Remove unnecessary output.

commit 5d27a4d43e
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 23 19:24:36 2021 -0400

    Add the 'MultiLayer', although maybe we can just use the FFN class itself?

commit c2b54b7af6
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 23 19:24:21 2021 -0400

    Set the size correctly in Predict() and fix a few other errors.

commit 0c307e89de
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jun 18 14:11:47 2021 -0400

    Initialize totalInputSize and totalOutputSize in the right place.

commit d2fd462a8c
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jun 18 13:51:46 2021 -0400

    Use aliases for layer outputs and deltas.

commit 064cb7b296
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri Jun 18 12:42:29 2021 -0400

    Okay, this passes FFVanillaNetworkTest!

commit 9a521c8080
Author: Ryan Curtin <ryan@ratml.org>
Date:   Wed Jun 16 14:07:23 2021 -0400

    Step 1: something compiles at all.

commit 5220de7d14
Author: Ryan Curtin <ryan@ratml.org>
Date:   Fri May 28 12:52:21 2021 -0400

    Fix some minor compilation issues.

commit f8123469e9
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat May 22 05:27:37 2021 -0400

    Add serialization file.

commit 1b3ea01b45
Author: Ryan Curtin <ryan@ratml.org>
Date:   Sat May 22 05:19:41 2021 -0400

    In-progress, does not quite compile yet.

commit 34cf419bb8
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 31 19:05:00 2021 +0100

    Update FFN tests to use the base layer class.

commit b700f8d311
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 31 04:36:35 2021 +0100

    Update FFN copy/move constructor tests to use the layer base class.

commit eafac8609d
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Jan 30 04:39:08 2021 +0100

    Add Clone() function which handles polymorphism correctly.

commit 0c4db57106
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 29 10:14:53 2021 +0530

    typo fix

commit 21057324f3
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Thu Jan 28 16:21:27 2021 +0530

    add ResetCell and Reward methods to base class and add method to push layer to ffn model

commit 43e7639e61
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Tue Jan 26 00:47:55 2021 +0100

    Use layer base class for the network initialization.

commit fadaaa59a2
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Mon Jan 25 00:04:26 2021 +0100

    Update layer to use updated layer base class interface.

commit 3cdd972be8
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 24 23:17:26 2021 +0100

    Adjust determenistic parameter interface.

commit 5b453b712a
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 24 23:14:04 2021 +0100

    Add utiliy functions to update layer parameters and states.

commit c641bc527c
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 24 23:13:09 2021 +0100

    Restructure FFN class to use the layer base class.

commit 9c29e5b603
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Tue Jan 19 21:17:32 2021 +0530

    update weight_norm layer to use abstract class, and some other fixes

commit 5d62339e02
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Sun Jan 17 18:04:32 2021 +0530

    update fast_lstm to use abstract class (without unit test)

commit f2f84991ce
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Sun Jan 17 17:30:36 2021 +0530

    migrate vr_class_reward to loss_functions

commit ecd2fae814
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Sat Jan 16 10:32:18 2021 +0530

    update reinforce_normal and reparametrization layer to use abstract class

commit 826be5b404
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 23:29:21 2021 +0530

    update virtual_batch_norm to support abstract class

commit f694114805
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 23:14:22 2021 +0530

    update select, subview, padding and transposed convolution to use abstract class

commit dfec0f787d
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 18:28:43 2021 +0530

    updated sequential layer to use abstract class

commit c6675f4ba3
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 16:34:30 2021 +0530

    update concat and highway layers to use abstract class

commit 0da7330f01
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 09:11:57 2021 +0530

    update positional_encoding and multiply_merge layers to use abstract class

commit c30d9ed85c
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Fri Jan 15 07:18:52 2021 +0530

    slight style fixes and lexicographical ordering of layer_types

commit cfdb84173a
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Thu Jan 14 11:22:58 2021 +0530

    some corrections and updating layer_norm, max_pooling and mean_pooling

commit 97d865df79
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Thu Jan 14 10:25:47 2021 +0530

    correction in convolution and update join and glimpse layer to use abstract class

commit 270aab791e
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Thu Jan 14 10:05:39 2021 +0530

    update glimpse layer to use abstract class method

commit 28d56b1693
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Wed Jan 13 10:52:22 2021 +0530

    corrected documentation and updated convolution layer

commit 09e2995346
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Wed Jan 13 09:19:09 2021 +0530

    update multihead attention layer

commit dd6b70c2f2
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Tue Jan 12 09:34:23 2021 +0530

    update concatenate layer

commit 004818cca2
Author: Mrityunjay Tripathi <mrityunjay2668@gmail.com>
Date:   Mon Jan 11 23:26:42 2021 +0530

    update bilinear_interpolation, linear3d, lookup and base_layer

commit aef1158187
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 3 23:31:22 2021 +0100

    Add Deterministic() to the abstract layer class.

commit 3f4d24f7f5
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Jan 3 23:06:40 2021 +0100

    Update SpatialDropout layer to use the abstract layer class and add typedef.

commit 5193102f09
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Jan 2 20:57:20 2021 +0100

    Update PReLU layer to use the abstract layer class and add typedef.

commit a57d13f838
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Jan 2 20:40:07 2021 +0100

    Update CELU layer to use the abstract layer class and add typedef.

commit 47f35337f6
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Jan 2 20:25:57 2021 +0100

    Update CReLU layer to use the abstract layer class and add typedef.

commit cd05cbecd4
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Jan 2 18:54:42 2021 +0100

    Update MultiplyConstant layer to use the abstract layer class and add typedef.

commit 8b0abc219a
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 22:57:13 2020 +0100

    Update Softshrink layer to use the abstract layer class and add typedef.

commit 8cf621f4fd
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 19:57:37 2020 +0100

    Update Softmin layer to use the abstract layer class and add typedef.

commit 3b0318a50d
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 17:44:04 2020 +0100

    Update Softmax layer to use the abstract layer class and add typedef.

commit f4f66af580
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 17:23:13 2020 +0100

    Update Constant layer to use the abstract layer class and add typedef.

commit cebce07398
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 16:25:25 2020 +0100

    Update LeakyReLU layer to use the abstract layer class and add typedef.

commit 0217a19b25
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 14:39:47 2020 +0100

    Update HardShrink layer to use the abstract layer class and add typedef.

commit 69f0d5b56a
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 14:24:29 2020 +0100

    Update NoisyLinear layer to use the abstract layer class and add typedef.

commit c927971363
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sun Dec 27 13:43:57 2020 +0100

    Update LinearNoBias layer to use the abstract layer class and add typedef.

commit dea01f7215
Author: Aakash kaushik <kaushikaakash7539@gmail.com>
Date:   Fri Dec 25 22:41:46 2020 +0530

    tests pass

commit 09d905f2e5
Author: Aakash kaushik <aakash@pop-os.localdomain>
Date:   Fri Dec 25 17:28:02 2020 +0530

    update adaptive_mean_pooling_layer to use the abstract class and added typedef

commit a893867f37
Author: Aakash kaushik <aakash@pop-os.localdomain>
Date:   Fri Dec 25 17:27:30 2020 +0530

    update adaptive_mean_pooling_layer to use the abstract class and added typedef

commit 66853d1a5b
Author: Aakash kaushik <aakash@pop-os.localdomain>
Date:   Fri Dec 25 16:57:51 2020 +0530

    update adaptive_max_pooling_layer to use the abstract class and added typedef

commit 60afb1e1bc
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Sat Dec 26 01:13:17 2020 +0100

    Update Dropconnect layer to use the abstract layer class and add typedef.

commit 322753be75
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 11:57:47 2020 +0100

    Update HardTanH layer to use the abstract layer class and add typedef.

commit 80ecca1356
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 11:41:37 2020 +0100

    Update Dropout layer to use the abstract layer class and add typedef.

commit 9acac6838d
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 01:23:32 2020 +0100

    Update ELU/SELU layer to use the abstract layer class and add typedefs.

commit 5ea2b93618
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 00:59:45 2020 +0100

    Update SoftMax layer to use the abstract layer class and add typedef.

commit 2232915792
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 00:39:44 2020 +0100

    Update FlexibleReLU layer to use the abstract layer class, add documentation and typedef.

commit 4fd7ae9da7
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Thu Dec 24 00:38:25 2020 +0100

    Remove functions that are already part of the base class.

commit a6995f83ee
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Wed Dec 23 17:14:07 2020 +0100

    Update Linear layer to use the abstract Layer class and add documentation and typedef.

commit a3f746580b
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Wed Dec 23 17:12:32 2020 +0100

    Clean-up abstract layer class and add some further documentation.

commit aa6d2b1aad
Author: Marcus Edel <marcus.edel@fu-berlin.de>
Date:   Mon Dec 21 17:23:08 2020 +0100

    Swap boost::variant with vtable.
2022-05-10 13:53:21 +05:30
2022-05-10 13:53:21 +05:30
2022-05-10 13:53:21 +05:30
2022-05-10 13:53:21 +05:30
2020-11-26 11:02:03 -05:00
2020-10-28 13:28:03 -04:00
2020-07-11 12:44:25 -04:00
2019-06-14 21:34:36 +02:00
2020-03-13 08:47:19 -04:00
2022-05-10 13:53:21 +05:30
2021-10-21 21:14:49 +05:30

mlpack: a fast, flexible machine learning library
a fast, flexible machine learning library

Home | Documentation | Doxygen | Community | Help | IRC Chat

Azure DevOps builds (job) License NumFOCUS

Download: current stable version (3.4.2)

mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. It is meant to be a machine learning analog to LAPACK, and aims to implement a wide array of machine learning methods and functions as a "swiss army knife" for machine learning researchers. In addition to its powerful C++ interface, mlpack also provides command-line programs, Python bindings, Julia bindings, Go bindings and R bindings.

mlpack uses an open governance model and is fiscally sponsored by NumFOCUS. Consider making a tax-deductible donation to help the project pay for developer time, professional services, travel, workshops, and a variety of other needs.


0. Contents

  1. Introduction
  2. Citation details
  3. Dependencies
  4. Building mlpack from source
  5. Running mlpack programs
  6. Using mlpack from Python
  7. Further documentation
  8. Bug reporting

1. Introduction

The mlpack website can be found at https://www.mlpack.org and it contains numerous tutorials and extensive documentation. This README serves as a guide for what mlpack is, how to install it, how to run it, and where to find more documentation. The website should be consulted for further information:

2. Citation details

If you use mlpack in your research or software, please cite mlpack using the citation below (given in BibTeX format):

@article{mlpack2018,
    title     = {mlpack 3: a fast, flexible machine learning library},
    author    = {Curtin, Ryan R. and Edel, Marcus and Lozhnikov, Mikhail and
                 Mentekidis, Yannis and Ghaisas, Sumedh and Zhang,
                 Shangtong},
    journal   = {Journal of Open Source Software},
    volume    = {3},
    issue     = {26},
    pages     = {726},
    year      = {2018},
    doi       = {10.21105/joss.00726},
    url       = {https://doi.org/10.21105/joss.00726}
}

Citations are beneficial for the growth and improvement of mlpack.

3. Dependencies

mlpack has the following dependencies:

  Armadillo      >= 9.800
  Boost (math_c99, spirit) >= 1.58.0
  CMake          >= 3.6
  ensmallen      >= 2.10.0
  cereal         >= 1.1.2

All of those should be available in your distribution's package manager. If not, you will have to compile each of them by hand. See the documentation for each of those packages for more information.

If you would like to use or build the mlpack Python bindings, make sure that the following Python packages are installed:

  setuptools
  cython >= 0.24
  numpy
  pandas >= 0.15.0

If you would like to build the Julia bindings, make sure that Julia >= 1.3.0 is installed.

If you would like to build the Go bindings, make sure that Go >= 1.11.0 is installed with this package:

 Gonum

If you would like to build the R bindings, make sure that R >= 4.0 is installed with these R packages.

 Rcpp >= 0.12.12
 RcppArmadillo >= 0.8.400.0
 RcppEnsmallen >= 0.2.10.0
 BH >= 1.58
 roxygen2

If the STB library headers are available, image loading support will be compiled.

If you are compiling Armadillo by hand, ensure that LAPACK and BLAS are enabled.

4. Building mlpack from source

This document discusses how to build mlpack from source. These build directions will work for any Linux-like shell environment (for example Ubuntu, macOS, FreeBSD etc). However, mlpack is in the repositories of many Linux distributions and so it may be easier to use the package manager for your system. For example, on Ubuntu, you can install the mlpack library and command-line executables (e.g. mlpack_pca, mlpack_kmeans etc.) with the following command:

$ sudo apt-get install libmlpack-dev mlpack-bin

On Fedora or Red Hat (EPEL):

$ sudo dnf install mlpack-devel mlpack-bin

Note: Older Ubuntu versions may not have the most recent version of mlpack available---for instance, at the time of this writing, Ubuntu 16.04 only has mlpack 3.4.2 available. Options include upgrading your Ubuntu version, finding a PPA or other non-official sources, or installing with a manual build.

Note: If you are using RHEL7/CentOS 7, gcc 4.8 is too old to compile mlpack. One option is to use devtoolset-8; see here for more information.

There are some useful pages to consult in addition to this section:

mlpack uses CMake as a build system and allows several flexible build configuration options. You can consult any of the CMake tutorials for further documentation, but this tutorial should be enough to get mlpack built and installed.

First, unpack the mlpack source and change into the unpacked directory. Here we use mlpack-x.y.z where x.y.z is the version.

$ tar -xzf mlpack-x.y.z.tar.gz
$ cd mlpack-x.y.z

Then, make a build directory. The directory can have any name, but 'build' is sufficient.

$ mkdir build
$ cd build

The next step is to run CMake to configure the project. Running CMake is the equivalent to running ./configure with autotools. If you run CMake with no options, it will configure the project to build with no debugging symbols and no profiling information:

$ cmake ../

Options can be specified to compile with debugging information and profiling information:

$ cmake -D DEBUG=ON -D PROFILE=ON ../

Options are specified with the -D flag. The allowed options include:

DEBUG=(ON/OFF): compile with debugging symbols
PROFILE=(ON/OFF): compile with profiling symbols
ARMA_EXTRA_DEBUG=(ON/OFF): compile with extra Armadillo debugging symbols
BOOST_ROOT=(/path/to/boost/): path to root of boost installation
ARMADILLO_INCLUDE_DIR=(/path/to/armadillo/include/): path to Armadillo headers
ARMADILLO_LIBRARY=(/path/to/armadillo/libarmadillo.so): Armadillo library
BUILD_CLI_EXECUTABLES=(ON/OFF): whether or not to build command-line programs
BUILD_PYTHON_BINDINGS=(ON/OFF): whether or not to build Python bindings
PYTHON_EXECUTABLE=(/path/to/python_version): Path to specific Python executable
PYTHON_INSTALL_PREFIX=(/path/to/python/): Path to root of Python installation
BUILD_JULIA_BINDINGS=(ON/OFF): whether or not to build Julia bindings
JULIA_EXECUTABLE=(/path/to/julia): Path to specific Julia executable
BUILD_GO_BINDINGS=(ON/OFF): whether or not to build Go bindings
GO_EXECUTABLE=(/path/to/go): Path to specific Go executable
BUILD_GO_SHLIB=(ON/OFF): whether or not to build shared libraries required by Go bindings
BUILD_R_BINDINGS=(ON/OFF): whether or not to build R bindings
R_EXECUTABLE=(/path/to/R): Path to specific R executable
BUILD_TESTS=(ON/OFF): whether or not to build tests
BUILD_SHARED_LIBS=(ON/OFF): compile shared libraries and executables as
    opposed to static libraries
DISABLE_DOWNLOADS=(ON/OFF): whether to disable all downloads during build
ENSMALLEN_INCLUDE_DIR=(/path/to/ensmallen/include): path to include directory
   for ensmallen
STB_IMAGE_INCLUDE_DIR=(/path/to/stb/include): path to include directory for
   STB image library
USE_OPENMP=(ON/OFF): whether or not to use OpenMP if available
BUILD_DOCS=(ON/OFF): build Doxygen documentation, if Doxygen is available
   (default ON)

For example, to build mlpack library and CLI bindings statically the following command can be used:

$ cmake  -D BUILD_SHARED_LIBS=OFF ../

Other tools can also be used to configure CMake, but those are not documented here. See this section of the build guide for more details, including a full list of options, and their default values.

By default, command-line programs will be built, and if the Python dependencies (Cython, setuptools, numpy, pandas) are available, then Python bindings will also be built. OpenMP will be used for parallelization when possible by default.

Once CMake is configured, building the library is as simple as typing 'make'. This will build all library components and bindings.

$ make

If you do not want to build everything in the library, individual components of the build can be specified:

$ make mlpack_pca mlpack_knn mlpack_kfn

If you want to build the tests, just make the mlpack_test target, and use ctest to run the tests:

$ make mlpack_test
$ ctest .

If the build fails and you cannot figure out why, register an account on Github and submit an issue. The mlpack developers will quickly help you figure it out:

mlpack on Github

Alternately, mlpack help can be found in IRC at #mlpack on chat.freenode.net.

If you wish to install mlpack to /usr/local/include/mlpack/, /usr/local/lib/, and /usr/local/bin/, make sure you have root privileges (or write permissions to those three directories), and simply type

$ make install

You can now run the executables by name; you can link against mlpack with -lmlpack and the mlpack headers are found in /usr/local/include/mlpack/ and if Python bindings were built, you can access them with the mlpack package in Python.

If running the programs (i.e. $ mlpack_knn -h) gives an error of the form

error while loading shared libraries: libmlpack.so.2: cannot open shared object file: No such file or directory

then be sure that the runtime linker is searching the directory where libmlpack.so was installed (probably /usr/local/lib/ unless you set it manually). One way to do this, on Linux, is to ensure that the LD_LIBRARY_PATH environment variable has the directory that contains libmlpack.so. Using bash, this can be set easily:

export LD_LIBRARY_PATH="/usr/local/lib/:$LD_LIBRARY_PATH"

(or whatever directory libmlpack.so is installed in.)

5. Running mlpack programs

After building mlpack, the executables will reside in build/bin/. You can call them from there, or you can install the library and (depending on system settings) they should be added to your PATH and you can call them directly. The documentation below assumes the executables are in your PATH.

Consider the 'mlpack_knn' program, which finds the k nearest neighbors in a reference dataset of all the points in a query set. That is, we have a query and a reference dataset. For each point in the query dataset, we wish to know the k points in the reference dataset which are closest to the given query point.

Alternately, if the query and reference datasets are the same, the problem can be stated more simply: for each point in the dataset, we wish to know the k nearest points to that point.

Each mlpack program has extensive help documentation which details what the method does, what each of the parameters is, and how to use them:

$ mlpack_knn --help

Running mlpack_knn on one dataset (that is, the query and reference datasets are the same) and finding the 5 nearest neighbors is very simple:

$ mlpack_knn -r dataset.csv -n neighbors_out.csv -d distances_out.csv -k 5 -v

The -v (--verbose) flag is optional; it gives informational output. It is not unique to mlpack_knn but is available in all mlpack programs. Verbose output also gives timing output at the end of the program, which can be very useful.

6. Using mlpack from Python

If mlpack is installed to the system, then the mlpack Python bindings should be automatically in your PYTHONPATH, and importing mlpack functionality into Python should be very simple:

>>> from mlpack import knn

Accessing help is easy:

>>> help(knn)

The API is similar to the command-line programs. So, running knn() (k-nearest-neighbor search) on the numpy matrix dataset and finding the 5 nearest neighbors is very simple:

>>> output = knn(reference=dataset, k=5, verbose=True)

This will store the output neighbors in output['neighbors'] and the output distances in output['distances']. Other mlpack bindings function similarly, and the input/output parameters exactly match those of the command-line programs.

7. Further documentation

The documentation given here is only a fraction of the available documentation for mlpack. If doxygen is installed, you can type make doc to build the documentation locally. Alternately, up-to-date documentation is available for older versions of mlpack:

To learn about the development goals of mlpack in the short- and medium-term future, see the vision document.

8. Bug reporting

(see also mlpack help)

If you find a bug in mlpack or have any problems, numerous routes are available for help.

Github is used for bug tracking, and can be found at https://github.com/mlpack/mlpack/. It is easy to register an account and file a bug there, and the mlpack development team will try to quickly resolve your issue.

In addition, mailing lists are available. The mlpack discussion list is available at

mlpack discussion list

and the git commit list is available at

commit list

Lastly, the IRC channel #mlpack on Freenode can be used to get help.

S
Description
No description provided
Readme
274 MiB
Languages
C++ 89.9%
C 6.6%
CMake 1.7%
Python 0.7%
Shell 0.4%
Other 0.7%