| 775 | // ---------------------------------------------------------------------------------------- |
| 776 | |
| 777 | void bind_sequence_segmenter(py::module& m) |
| 778 | { |
| 779 | py::class_<segmenter_params>(m, "segmenter_params", |
| 780 | "This class is used to define all the optional parameters to the \n\ |
| 781 | train_sequence_segmenter() and cross_validate_sequence_segmenter() routines. ") |
| 782 | .def(py::init<>()) |
| 783 | .def_readwrite("use_BIO_model", &segmenter_params::use_BIO_model) |
| 784 | .def_readwrite("use_high_order_features", &segmenter_params::use_high_order_features) |
| 785 | .def_readwrite("allow_negative_weights", &segmenter_params::allow_negative_weights) |
| 786 | .def_readwrite("window_size", &segmenter_params::window_size) |
| 787 | .def_readwrite("num_threads", &segmenter_params::num_threads) |
| 788 | .def_readwrite("epsilon", &segmenter_params::epsilon) |
| 789 | .def_readwrite("max_cache_size", &segmenter_params::max_cache_size) |
| 790 | .def_readwrite("C", &segmenter_params::C, "SVM C parameter") |
| 791 | .def_readwrite("be_verbose", &segmenter_params::be_verbose) |
| 792 | .def("__repr__",&segmenter_params__repr__) |
| 793 | .def("__str__",&segmenter_params__str__) |
| 794 | .def(py::pickle(&getstate<segmenter_params>, &setstate<segmenter_params>)); |
| 795 | |
| 796 | py::class_<segmenter_type> (m, "segmenter_type", "This object represents a sequence segmenter and is the type of object " |
| 797 | "returned by the dlib.train_sequence_segmenter() routine.") |
| 798 | .def("__call__", &segmenter_type::segment_sequence_dense) |
| 799 | .def("__call__", &segmenter_type::segment_sequence_sparse) |
| 800 | .def_property_readonly("weights", &segmenter_type::get_weights) |
| 801 | .def(py::pickle(&getstate<segmenter_type>, &setstate<segmenter_type>)); |
| 802 | |
| 803 | py::class_<segmenter_test> (m, "segmenter_test", "This object is the output of the dlib.test_sequence_segmenter() and " |
| 804 | "dlib.cross_validate_sequence_segmenter() routines.") |
| 805 | .def_readwrite("precision", &segmenter_test::precision) |
| 806 | .def_readwrite("recall", &segmenter_test::recall) |
| 807 | .def_readwrite("f1", &segmenter_test::f1) |
| 808 | .def("__repr__",&segmenter_test__repr__) |
| 809 | .def("__str__",&segmenter_test__str__) |
| 810 | .def(py::pickle(&getstate<segmenter_test>, &setstate<segmenter_test>)); |
| 811 | |
| 812 | m.def("train_sequence_segmenter", train_dense, py::arg("samples"), py::arg("segments"), py::arg("params")=segmenter_params()); |
| 813 | m.def("train_sequence_segmenter", train_sparse, py::arg("samples"), py::arg("segments"), py::arg("params")=segmenter_params()); |
| 814 | |
| 815 | |
| 816 | m.def("test_sequence_segmenter", test_sequence_segmenter1); |
| 817 | m.def("test_sequence_segmenter", test_sequence_segmenter2); |
| 818 | |
| 819 | m.def("cross_validate_sequence_segmenter", cross_validate_sequence_segmenter1, |
| 820 | py::arg("samples"), py::arg("segments"), py::arg("folds"), py::arg("params")=segmenter_params()); |
| 821 | m.def("cross_validate_sequence_segmenter", cross_validate_sequence_segmenter2, |
| 822 | py::arg("samples"), py::arg("segments"), py::arg("folds"), py::arg("params")=segmenter_params()); |
| 823 | } |
| 824 | |
| 825 | |
| 826 |
no test coverage detected