Ugrás a fő tartalomhoz

_evaluator

Modul egy megoldó teljesítményének kiértékeléséhez.

Ez a modul függvényeket biztosít egy megoldó teljesítményének kiértékeléséhez egy adathalmazon. Tartalmaz függvényeket a megoldó keresési hatékonyságának és időbeli teljesítményének kiértékelésére.

MEGJEGYZÉS: A modul funkcionalitása opcionális függőségeket igényel. Használatukhoz telepítse az AlphaCube-ot az 'eval' extrával: pip install 'alphacube[eval]'

get_dataset

def get_dataset(
filename="deepcubea-dataset--cube3.json",
cache_dir=os.path.expanduser("~/.cache/alphacube")
)

Egy adathalmaz lekérése fájlból, vagy letöltése, ha nem létezik.

Argumentumok:

  • filename str - Az adathalmaz fájlneve.

Visszatérési érték:

  • dict - Az adathalmaz.

evaluate_search_efficiency

def evaluate_search_efficiency(
solver,
num_samples=1000,
beam_width=2**10 if device.type == "cpu" else 2**13,
verbose=False
)

A modell keresési hatékonyságának kiértékelése. (Elérhető solver.benchmark néven is)

Ez a függvény megold egy sor keverést, és jelentést készít a kulcsfontosságú teljesítménymutatókról, pillanatképet adva a megoldó hatékonyságáról meghatározott körülmények között.

Argumentumok:

  • solver - A kiértékelendő megoldó példány.
  • num_samples int - A kiértékeléshez megoldandó keverések száma.
  • beam_width int - A kereséshez használt sugárszélesség (beam width).
  • verbose bool - Megjelenítse-e a folyamatjelző sávot.

Visszatérési érték:

  • dict - Egy szótár, amely tartalmazza a megoldási idő (t), a megoldás hossza (lmd) és a kibontott csomópontok (nodes) átlagos eredményeit.

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
)

A modell teljesítményének kiértékelése egy downstream időbeli teljesítményen.

Ez a függvény a modell teljesítményét értékeli ki egy sor keverés megoldásával, különböző sugárszélességek (beam width) használatával. Ezután egy prediktort illeszt a megoldás hossza és az idő közötti kapcsolat modellezésére, és megjósolja a megoldás hosszát t=1 időpontban.

Argumentumok:

  • solver - A kiértékelendő megoldó.
  • num_samples int - A kiértékeléshez használt minták száma.
  • t_standard float - A standard idő.
  • beam_width_space array - A kiértékeléshez használt sugárszélességek (beam width).
  • verbose bool - Megjelenítse-e a folyamatjelző sávot.

Visszatérési érték:

  • float - A megjósolt megoldási hossz t=1 időpontban.