MIR_EVAL_392 : added SegmentType, optimized segment.evaluate checks#393
MIR_EVAL_392 : added SegmentType, optimized segment.evaluate checks#393Mintas wants to merge 1 commit intomir-evaluation:mainfrom
Conversation
Mintas
commented
Nov 11, 2024
- Added SegmentType enum, allows to use SegmentType.BOUNDARY and provide list of breakpoints instead of intervals into methods deviation and detection; fixes Segment: make it possible to provide boundaries, not only intervals #392
- Refactored some validations to slightly optimize evaluate method
- Reduced copy-paste, increasing readability
|
@bmcfee as our chief segment officer, any thoughts? |
5b7dfe5 to
0906e77
Compare
|
A few thoughts:
|
|
Thank you for your quick response! It took me some time to come up with a good solution and I decided to split this PR into two independent parts. (1) I do agree, that intervals represent the right unit of segmentation, though there are some subtasks of segmentation process that also require proper evaluation, like unsupervised segmentation and boundary detection itself. Some metrics of segment.eval (mostly detection and deviation) come really handy in those applications. Although some (definitely not all) libraries providing algorithm implementations for this kind of tasks expose some api to validate results, there is lack of well-defined standard for them. P.S. |