update stat to classify papers (#348)
parent
d56f6823a2
commit
11471ad9bb
|
@ -2,7 +2,7 @@
|
|||
|
||||
## Introduction
|
||||
|
||||
[ALGORITHM]
|
||||
[OTHERS]
|
||||
|
||||
```latex
|
||||
@article{micikevicius2017mixed,
|
||||
|
|
27
docs/stat.py
27
docs/stat.py
|
@ -1,10 +1,12 @@
|
|||
#!/usr/bin/env python
|
||||
import functools as func
|
||||
import glob
|
||||
import os.path as osp
|
||||
import re
|
||||
|
||||
import numpy as np
|
||||
|
||||
url_prefix = 'https://github.com/open-mmlab/mmsegmentation/blob/master/'
|
||||
titles_to_be_excluded = ['Mixed Precision Training']
|
||||
|
||||
files = sorted(glob.glob('../configs/*/README.md'))
|
||||
|
||||
|
@ -18,29 +20,40 @@ for f in files:
|
|||
with open(f, 'r') as content_file:
|
||||
content = content_file.read()
|
||||
|
||||
title = content.split('\n')[0].replace('#', '')
|
||||
if title.strip() in titles_to_be_excluded:
|
||||
continue
|
||||
|
||||
title = content.split('\n')[0].replace('#', '').strip()
|
||||
ckpts = set(x.lower().strip()
|
||||
for x in re.findall(r'https?://download.*\.pth', content)
|
||||
if 'mmsegmentation' in x)
|
||||
if len(ckpts) == 0:
|
||||
continue
|
||||
|
||||
_papertype = [x for x in re.findall(r'\[([A-Z]+)\]', content)]
|
||||
assert len(_papertype) > 0
|
||||
papertype = _papertype[0]
|
||||
|
||||
paper = set([(papertype, title)])
|
||||
|
||||
titles.append(title)
|
||||
num_ckpts += len(ckpts)
|
||||
statsmsg = f"""
|
||||
\t* [{title}]({url}) ({len(ckpts)} ckpts)
|
||||
\t* [{papertype}] [{title}]({url}) ({len(ckpts)} ckpts)
|
||||
"""
|
||||
stats.append((title, ckpts, statsmsg))
|
||||
stats.append((paper, ckpts, statsmsg))
|
||||
|
||||
allpapers = func.reduce(lambda a, b: a.union(b), [p for p, _, _ in stats])
|
||||
msglist = '\n'.join(x for _, _, x in stats)
|
||||
|
||||
papertypes, papercounts = np.unique([t for t, _ in allpapers],
|
||||
return_counts=True)
|
||||
countstr = '\n'.join(
|
||||
[f' - {t}: {c}' for t, c in zip(papertypes, papercounts)])
|
||||
|
||||
modelzoo = f"""
|
||||
# Model Zoo Statistics
|
||||
|
||||
* Number of papers: {len(set(titles))}
|
||||
{countstr}
|
||||
|
||||
* Number of checkpoints: {num_ckpts}
|
||||
{msglist}
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue