Projekt
Odrzuć różne długości oraz nieznane etykiety, pozostawiając zera dla klas, które nie wystąpiły.
Zbuduj macierz pomyłek z etykiet oczekiwanych i przewidzianych.
def confusion(expected, predicted, labels):
if len(expected) != len(predicted) or len(set(labels)) != len(labels):
raise ValueError("labels or lengths")
index = {label: i for i, label in enumerate(labels)}
matrix = [[0] * len(labels) for _ in labels]
for actual, guess in zip(expected, predicted):
if actual not in index or guess not in index:
raise ValueError("unknown label")
matrix[index[actual]][index[guess]] += 1
return matrixOdrzuć różne długości oraz nieznane etykiety, pozostawiając zera dla klas, które nie wystąpiły.
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
def confusion(expected, predicted, labels):
if len(expected) != len(predicted) or len(set(labels)) != len(labels):
raise ValueError("labels or lengths")
index = {label: i for i, label in enumerate(labels)}
matrix = [[0] * len(labels) for _ in labels]
for actual, guess in zip(expected, predicted):
if actual not in index or guess not in index:
raise ValueError("unknown label")
matrix[index[actual]][index[guess]] += 1
return matrixMatrixTern zapewnia programistom środowisko AI w Windows do badania kodu stojącego za wynikiem ewaluacji. Otwórz folder projektu i określ, co raport ma mierzyć, zanim poprosisz o zmiany. Rozmowa może wtedy powiązać obliczenia, dane wejściowe i kod prezentujący wynik zamiast uznawać wydrukowaną liczbę za wystarczający dowód.
W przypadku raportu klasyfikacji poproś model o zbadanie, jak etykiety oczekiwane i przewidywane stają się macierzą pomyłek. Dostarcz deklarowaną kolejność etykiet i mały przypadek testowy, którego liczności możesz sprawdzić samodzielnie. Daje to konkretny sposób omawiania implementacji bez zakładania, że raport został już niezależnie zweryfikowany.
Wykorzystaj proponowane zmiany do wyjaśnienia założeń wpływających na interpretację: czy nieznane etykiety są odrzucane, jak reprezentowane są puste klasy i czy długości wejść muszą się zgadzać. Przejrzyj objęte zmianą pliki i uruchom testy ewaluacji. Porównaj wyświetlane etykiety z macierzą źródłową oraz sprawdź poprawność sum.
Model AI ze zniesionymi ograniczeniami odpowiedzi może być dostępny przez skonfigurowany w MatrixTern punkt końcowy zgodny z OpenAI lub Anthropic. Dodaj wymagane dane uwierzytelniające i sprawdź połączenie. Wybrany model i serwer określają ograniczenia, kontekst i narzędzia; ich wynik nadal należy ocenić wraz z dowodami z projektu.
Użyj krótkiej sekwencji ze znaną poprawną predykcją i znaną błędną klasyfikacją, jawnie zachowując kolejność etykiet. Niezależnie oblicz oczekiwane liczności. Ułatwia to wykrycie zamienionych osi lub niespójnego indeksowania etykiet podczas przeglądu.
Zdecyduj, czy raport używa stałego zbioru etykiet, czy wyprowadza go z każdej próbki. Pokaż wymaganie modelowi i zbadaj również kod prezentacji. Znikająca klasa może utrudniać porównywanie raportów.
Opisany tu sposób pracy dotyczy przeglądu Twojego oprogramowania ewaluacyjnego. Odpowiedź modelu nie jest zmierzonym wynikiem benchmarku. Ty określasz eksperyment, uruchamiasz jego kontrole i sprawdzasz dowody przed wyciągnięciem wniosków o jakimkolwiek systemie.
Używaj reprezentatywnych, oczyszczonych z wrażliwych danych przypadków testowych i sprawdź punkt końcowy modelu oraz podłączone narzędzia przed udostępnieniem danych. Nawet osobno działający lokalny serwer modelu nie sprawia, że każde narzędzie jest lokalne, więc zbadaj całą drogę danych.
MatrixTern · Zaktualizowano 2026-10-25