_evaluator
Module pour évaluer les performances d'un solveur.
Ce module fournit des fonctions pour évaluer les performances d'un solveur sur un jeu de données. Il inclut des fonctions pour évaluer l'efficacité de recherche et les performances temporelles d'un solveur.
get_dataset
def get_dataset(filename="deepcubea-dataset--cube3.json")
Obtient un jeu de données à partir d'un fichier ou le télécharge s'il n'existe pas.
Arguments:
filename
str - Le nom du fichier du jeu de données.
Retourne:
dict
- Le jeu de données.
evaluate_search_efficiency
def evaluate_search_efficiency(solver, num_samples=1000, beam_width=2**10 if device.type == "cpu" else 2**13, verbose=False)
Évalue les performances du modèle sur une performance temporelle en aval.
Cette fonction évalue les performances du modèle en résolvant un ensemble de mélanges en utilisant différentes largeurs de faisceau. Elle ajuste ensuite un prédicteur pour modéliser la relation entre la longueur de la solution et le temps, et prédit la longueur de solution réalisable en une seconde.
Arguments:
solver
- Le solveur à évaluer.num_samples
int - Le nombre d'échantillons à utiliser pour l'évaluation.beam_width
int - La largeur de faisceau à utiliser pour l'évaluation.verbose
bool - Indique s'il faut afficher une barre de progression.
Retourne:
dict
- Les résultats moyens.
evaluate_temporal_performance
def evaluate_temporal_performance(solver, num_samples=1000, t_standard=1.0, beam_width_space=2 ** np.arange(6 if device.type == "cpu" else 10, 16 + 1), verbose=False)
Évalue les performances du modèle sur une performance temporelle en aval.
Cette fonction évalue les performances du modèle en résolvant un ensemble de mélanges en utilisant différentes largeurs de faisceau. Elle ajuste ensuite un prédicteur pour modéliser la relation entre la longueur de la solution et le temps, et prédit la longueur de la solution à t=1.
Arguments:
solver
- Le solveur à évaluer.num_samples
int - Le nombre d'échantillons à utiliser pour l'évaluation.t_standard
float - Le temps standard.beam_width_space
array - Les largeurs de faisceau à utiliser pour l'évaluation.verbose
bool - Indique s'il faut afficher une barre de progression.
Retourne:
float
- La longueur de solution prédite à t=1.