import sys import numpy as np if len(sys.argv) != 3: print("Usage: python3 show_result_py3.py synset_words.txt result.npy") sys.exit(1) label_file = sys.argv[1] result_file = sys.argv[2] # synset_words.txt の読み込み labels = [] with open(label_file, 'r') as f: for line in f: line = line.strip() if not line: continue parts = line.split(' ', 1) labels.append(parts[1] if len(parts) > 1 else parts[0]) # 推論結果の読み込み probs = np.load(result_file)[0] # 上位5件 top5 = probs.argsort()[::-1][:5] for rank, idx in enumerate(top5, 1): print("#%d | %s | %.1f%%" % (rank, labels[idx], probs[idx] * 100.0))