SStepMaranta
Pracovní postupy

Pracovní postupy s kódem · Kroky konečných Markovových rozdělení

03
Produkt

Pracovní postupy

Posuňte vektor pravděpodobností nejvýše o 100 přechodů Markovovy matice s nejvýše osmi stavy. Ověřte nula kroků a absorbující stavy a odmítněte záporné hodnoty a součty řádků vzdálené od jedné více než 1e-12.

01

Stáhněte aplikaci

Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.

02

Otevřete složku projektu

Zvolte kompatibilní endpoint. Dostupné nástroje a kvalita odpovědí závisí na nastaveném modelu a serveru.

03

Připojte a otestujte model

Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.

04

Zkontrolujte změny a spusťte testy

Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.

Kroky konečných Markovových rozdělení

Pracovní postupy
from math import fsum, isfinite
def markov_steps(initial, matrix, steps):
    if type(initial) is not list or not 1 <= len(initial) <= 8:
        raise ValueError("state count")
    n = len(initial)
    if type(matrix) is not list or len(matrix) != n or any(
        type(row) is not list or len(row) != n for row in matrix):
        raise ValueError("square matrix")
    rows = [initial] + matrix
    if any(type(x) not in (int, float) or not 0 <= x <= 1 or
           not isfinite(x) for row in rows for x in row):
        raise ValueError("probability values")
    if any(abs(fsum(row)-1) > 1e-12 for row in rows):
        raise ValueError("row sums")
    if type(steps) is not int or not 0 <= steps <= 100:
        raise ValueError("step count")
    result = initial[:]
    for _ in range(steps):
        result = [fsum(result[i] * matrix[i][j] for i in range(n))
                  for j in range(n)]
    return result

Před použitím zkontrolujte. Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.

Pracovní prostředí s AI pro kód

Váš další nápad začíná zde.

Stáhnout pro Windows ↗