consec-model-weights / src /scripts /data /compute_sense_count.py
Harsha909's picture
Upload 47 files
6dc7c27 verified
Raw
History Blame Contribute Delete
1.1 kB
import collections
from typing import List
import argparse
from src.utils.wsd import read_from_raganato, expand_raganato_path
def compute_sense_count(raganato_paths: List[str], output_path: str) -> None:
sense_counter = collections.Counter()
for rag_path in raganato_paths:
for _, _, wsd_sentence in read_from_raganato(*expand_raganato_path(rag_path)):
for wsd_instance in wsd_sentence:
if wsd_instance.labels is None:
continue
sense_counter.update(wsd_instance.labels)
with open(output_path, "w") as f:
for sense, count in sense_counter.items():
f.write(f"{sense}\t{count}\n")
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser()
parser.add_argument("--raganato-paths", nargs="+", required=True)
parser.add_argument("--output-path", required=True)
return parser.parse_args()
def main():
args = parse_args()
compute_sense_count(args.raganato_paths, args.output_path)
if __name__ == "__main__":
main()