⬆️ [Update] mAP from 0~1 to percentage
Browse files- yolo/tools/solver.py +1 -1
- yolo/utils/logging_utils.py +2 -1
- yolo/utils/solver_utils.py +2 -2
yolo/tools/solver.py
CHANGED
@@ -247,7 +247,7 @@ class ModelValidator:
|
|
247 |
for mAP_key, mAP_val in mAP.items():
|
248 |
mAPs[mAP_key].append(mAP_val)
|
249 |
|
250 |
-
avg_mAPs = {key: torch.mean(torch.stack(val)) for key, val in mAPs.items()}
|
251 |
self.progress.one_batch(avg_mAPs)
|
252 |
|
253 |
predict_json.extend(predicts_to_json(img_paths, predicts, rev_tensor))
|
|
|
247 |
for mAP_key, mAP_val in mAP.items():
|
248 |
mAPs[mAP_key].append(mAP_val)
|
249 |
|
250 |
+
avg_mAPs = {key: 100 * torch.mean(torch.stack(val)) for key, val in mAPs.items()}
|
251 |
self.progress.one_batch(avg_mAPs)
|
252 |
|
253 |
predict_json.extend(predicts_to_json(img_paths, predicts, rev_tensor))
|
yolo/utils/logging_utils.py
CHANGED
@@ -117,6 +117,7 @@ class ProgressLogger(Progress):
|
|
117 |
@rank_check
|
118 |
def start_train(self, num_epochs: int):
|
119 |
self.task_epoch = self.add_task(f"[cyan]Start Training {num_epochs} epochs", total=num_epochs)
|
|
|
120 |
|
121 |
@rank_check
|
122 |
def start_one_epoch(
|
@@ -218,7 +219,7 @@ class ProgressLogger(Progress):
|
|
218 |
|
219 |
@rank_check
|
220 |
def finish_pycocotools(self, result, epoch_idx=-1):
|
221 |
-
ap_table, ap_main = make_ap_table(result, self.ap_past_list, self.last_result, epoch_idx)
|
222 |
self.last_result = np.maximum(result, self.last_result)
|
223 |
self.ap_past_list.append((epoch_idx, ap_main))
|
224 |
self.ap_table = ap_table
|
|
|
117 |
@rank_check
|
118 |
def start_train(self, num_epochs: int):
|
119 |
self.task_epoch = self.add_task(f"[cyan]Start Training {num_epochs} epochs", total=num_epochs)
|
120 |
+
self.update(self.task_epoch, advance=-0.5)
|
121 |
|
122 |
@rank_check
|
123 |
def start_one_epoch(
|
|
|
219 |
|
220 |
@rank_check
|
221 |
def finish_pycocotools(self, result, epoch_idx=-1):
|
222 |
+
ap_table, ap_main = make_ap_table(result * 100, self.ap_past_list, self.last_result, epoch_idx)
|
223 |
self.last_result = np.maximum(result, self.last_result)
|
224 |
self.ap_past_list.append((epoch_idx, ap_main))
|
225 |
self.ap_table = ap_table
|
yolo/utils/solver_utils.py
CHANGED
@@ -21,9 +21,9 @@ def make_ap_table(score, past_result=[], last_score=None, epoch=-1):
|
|
21 |
ap_table = Table()
|
22 |
ap_table.add_column("Epoch", justify="center", style="white", width=5)
|
23 |
ap_table.add_column("Avg. Precision", justify="left", style="cyan")
|
24 |
-
ap_table.add_column("", justify="right", style="green", width=5)
|
25 |
ap_table.add_column("Avg. Recall", justify="left", style="cyan")
|
26 |
-
ap_table.add_column("", justify="right", style="green", width=5)
|
27 |
|
28 |
for eps, (ap_name1, ap_color1, ap_value1, ap_name2, ap_color2, ap_value2) in past_result:
|
29 |
ap_table.add_row(f"{eps: 3d}", ap_name1, f"{ap_color1}{ap_value1:.2f}", ap_name2, f"{ap_color2}{ap_value2:.2f}")
|
|
|
21 |
ap_table = Table()
|
22 |
ap_table.add_column("Epoch", justify="center", style="white", width=5)
|
23 |
ap_table.add_column("Avg. Precision", justify="left", style="cyan")
|
24 |
+
ap_table.add_column("%", justify="right", style="green", width=5)
|
25 |
ap_table.add_column("Avg. Recall", justify="left", style="cyan")
|
26 |
+
ap_table.add_column("%", justify="right", style="green", width=5)
|
27 |
|
28 |
for eps, (ap_name1, ap_color1, ap_value1, ap_name2, ap_color2, ap_value2) in past_result:
|
29 |
ap_table.add_row(f"{eps: 3d}", ap_name1, f"{ap_color1}{ap_value1:.2f}", ap_name2, f"{ap_color2}{ap_value2:.2f}")
|