Translation not up to date
Můžete použít produkt assetframe-lib
k vytvoření, zobrazení a úpravě informací o skupině funkcí pro datová aktiva v přenosných počítačích Watson Studio .
Skupiny funkcí definují dodatečná metadata na sloupcích vašeho datového aktiva, které lze použít v následných úlohách Machine Learning . Další informace o použití skupin funkcí v uživatelském rozhraní viz Správa skupin funkcí .
Nastavení knihoven assetframe-lib
a ibm-watson-studio-lib
Knihovna assetframe-lib
pro Python je předinstalovaná a lze ji importovat přímo do notebooku v produktu Watson Studio. Ale spoléhá se na knihovnu ibm-watson-studio-lib
. Následující kroky popisují, jak nastavit obě knihovny.
Chcete-li vložit token projektu do notebooku, postupujte takto:
Klepněte na ikonu Více na panelu nástrojů zápisníku a poté klepněte na volbu Vložit token projektu.
Pokud token projektu existuje, přidá se do notebooku buňka s následujícími informacemi:
from ibm_watson_studio_lib import access_project_or_space wslib = access_project_or_space({"token":"<ProjectToken>"})
<ProjectToken>
je hodnota tokenu projektu.Je-li ve zprávě řečeno, že neexistuje žádný token projektu, klepněte na odkaz ve zprávě a přesměrovává se na stránku projektu Řízení přístupu , kde můžete vytvořit token projektu. Chcete-li vytvořit token projektu, musíte být způsobilí.
Chcete-li vytvořit token projektu:
- Na kartě Spravovat vyberte stránku Řízení přístupu a klepněte na volbu Nový přístupový token pod Tokeny přístupu.
- Zadejte název, vyberte roli Editor pro projekt a vytvořte token.
- Přejděte zpět na svůj notebook, klepněte na ikonu Více na panelu nástrojů zápisníku a poté klepněte na volbu Vložit token projektu.
Importujte
assetframe-lib
a inicializujte ji s vytvořenou instancíibm-watson-studio-lib
.from assetframe_lib import AssetFrame AssetFrame._wslib = wslib
Funkce a metody knihovny assetframe-lib
Knihovna assetframe-lib odkrývá sadu funkcí a metod, které jsou seskupeny následujícím způsobem:
Vytvoření rámce aktiva
Rámec aktiva se používá k definování metadat skupiny funkcí v existujícím datovém aktivu nebo v pandoru DataFrame. Pro každé aktivum můžete mít přesně jednu skupinu funkcí. Vytvoříte-li rámec aktiva na pandu DataFrame, můžete ukládat pandy DataFrame společně s metadaty skupiny funkcí jako datové aktivum ve vašem projektu.
K vytvoření vašeho rámce aktiv můžete použít jednu z následujících funkcí:
AssetFrame.from_data_asset(asset_name, create_default_features=False)
Tato funkce vytvoří nový rámec aktiva obtékání existujícího datového aktiva ve vašem projektu. Pokud již existuje skupina funkcí pro toto aktivum, například vytvořená v uživatelském rozhraní, přečte se z metadat aktiva.
Pokud již má aktivum definované popisy sloupců nebo značek sloupců, například v produktu Watson Knowledge Catalog, budou tyto informace automaticky dostupné pro vytvořené funkce.
Parametry:
asset_name
: (Povinné) Název datového aktiva ve vašem projektu.create_default_features
: (Volitelné) Vytvoří funkce pro všechny sloupce v datovém aktivu.
AssetFrame.from_pandas(name, dataframe, create_default_features=False)
Tato funkce vytvoří nový rám aktiva obtékání pandby DataFrame.
Parametry:
name
: (Povinné) Název rámce aktiva. Tento název bude použit jako název datového aktiva, pokud ukládáte skupinu funkcí do projektu v pozdějším kroku.dataframe
: (požadováno) Pandas DataFrame , který chcete uložit spolu s informacemi o skupině funkcí.create_default_features
: (Volitelné) Vytvořte funkce pro všechny sloupce v datovém rámci.Příklad vytvoření rámce aktiva z pandy DataFrame:
# Create an asset frame from a pandas DataFrame and set # the name of the asset frame. af = AssetFrame.from_pandas(dataframe=credit_risk_df, name="Credit Risk Training Data")
Vytvoření, načtení a odebrání funkcí
Funkce definuje metadata, která mohou být použita po následných úlohách Machine Learning . Ve své datové sadě můžete vytvořit jednu funkci pro každý sloupec.
K vytvoření, načtení nebo odebrání sloupců z rámce aktiv můžete použít jednu z následujících funkcí:
add_feature(column_name, role='Input')
Tato funkce přidá novou funkci k vašemu rámci aktiva s danou rolí.
Parametry:
column_name
: (Required) Název sloupce, pro který má být vytvořena funkce.role
: (Volitelné) Role funkce. Výchozí hodnota je Vstup.Platné role jsou:
- Vstup: Vstup pro výukový model počítače
- Cíl: Cíl modelu předpovědí
- Identifikátor: Identifikátor řádku ve vaší datové sadě.
- Vstup: Vstup pro výukový model počítače
create_default_features()
Tato funkce vytváří funkce pro všechny sloupce v datové sadě. Role těchto funkcí budou standardně nastaveny na hodnotu Vstup.
get_features()
Tato funkce načte všechny funkce rámce aktiva.
get_feature(column_name)
Tato funkce načte funkci pro daný název sloupce.
Parametry:
column_name
: (Povinné) Řetězec názvu sloupce, pro který se má vytvořit funkce.
get_features_by_role(role)
Tato funkce načte všechny funkce datového rámce s danou rolí.
Parametry:
role
: (Povinné) Role, kterou funkce musí mít. Může se jednat o Vstup, Cíl nebo Identifikátor.
remove_feature(feature_or_column_name)
Tato funkce odebere funkci z rámce aktiva.
Parametry:
feature_or_column_name
: (Povinné) Funkce nebo název sloupce, pro který má být funkce odebrána.
Příklad zobrazující vytváření funkcí pro všechny sloupce v datové sadě a načítání jednoho z těchto sloupců pro další specifikace:
# Create features for all columns in the data set and retrieve a column
# for further specifications.
af.create_default_features()
risk_feat = af.get_feature('Risk')
Uvedení atributů funkce
Funkce určují další metadata na sloupcích, které lze použít v následných úlohách Machine Learning .
Můžete použít následující funkci k načtení sloupce, pro který je funkce definována:
get_column_name()
Tato funkce načte název sloupce, pro který je funkce definována.
Role
Tato role určuje zamýšlené použití funkce v úloze Machine Learning .
Platné role jsou:
Input
: Funkci lze použít jako vstup pro model Machine Learning .Identifier
: Funkce jedinečně identifikuje řádek v datové sadě.Target
: Funkce může být použita jako cíl v algoritmu předpovědi.
V této chvíli musí mít funkce právě jednu roli.
Pro práci s rolí můžete použít následující metody:
set_roles(roles)
Tato metoda nastavuje role funkce.
Parametry:
roles
: (Povinné) Role, které mají být použity. Buď jako jeden řetězec, nebo pole řetězců.
get_roles()
Tato metoda vrací všechny role dané funkce.
Příklad, který zobrazuje získání funkce a nastavení role:
# Set the role of the feature 'Risk' to 'Target' to use it as a target in a prediction model.
risk_feat = af.get_feature('Risk')
risk_feat.set_roles('Target')
Popis
Volitelný popis funkce. Výchozí hodnota je None
.Pokud má aktivum již definované popisy sloupců, například v produktu Watson Knowledge Catalog, budou tyto informace automaticky k dispozici pro danou funkci.
K práci s popisem můžete použít následující metody.
set_description(description)
Tato metoda nastavuje popis funkce.
Parametry:
description
: (Povinné) Buď řetězec, neboNone
, abyste odebrali popis.
get_description()
Tato metoda vrací popis funkce.
Fairness informace pro příznivé a nepříznivé výsledky
Pro funkci s rolí produktu Target
můžete zadat příznivé a nevýhodné popisky.
Můžete použít následující metody k nastavení a načtení příznivých nebo nevýhodných popisků.
Příznivé výsledky
Pro nastavení a získání příznivých štítků můžete použít následující metody:
set_favorable_labels(labels)
Tato metoda nastavuje příznivé popisky pro funkci.
Parametry:
labels
: (Povinné) Řetězec nebo seznam řetězců s příznivými popisky.
get_favorable_labels()
Tato metoda vrací příznivé popisky funkce.
Nepříznivé výsledky
Pro nastavení a získání nepoškozných štítků můžete použít následující metody:
set_unfavorable_labels(labels)
Tato metoda nastaví nevýhodné popisky pro funkci.
Parametry:
labels
: (Povinné) Řetězec nebo seznam řetězců s nepříznivými popisky.
get_unfavorable_labels()
Tato metoda dostane nevýhodné popisky funkce.
Příklad, který ukazuje nastavení příznivých a nepoškozných štítků:
# Set favorable and unfavorable labels for the target feature 'Risk'.
risk_feat = af.get_feature('Risk')
risk_feat.set_favorable_labels("No Risk")
risk_feat.set_unfavorable_labels("Risk")
Informace o plavebních dráhách pro sledované a referenční skupiny
Některé sloupce ve vašich datech mohou být náchylné k nepřiměřenými předpojatosti. Monitorované a referenční skupiny můžete určit pro další použití v úlohách Machine Learning . Mohou být určeny pro funkce s rolí Input
.
Můžete buď uvést jednotlivé hodnoty, nebo rozsahy číselných hodnot jako řetězec s hranatými závorkami a počáteční a koncovou hodnotou, například [0,15]
.
Pro nastavení a načtení monitorovaných a referenčních skupin můžete použít následující metody:
set_monitored_groups(groups)
Tato metoda nastaví monitorované skupiny pro funkci.
Parametry:
groups
: (Povinné) Řetězec nebo seznam řetězců s monitorovanými skupinami.
get_monitored_groups()
Tato metoda získá monitorované skupiny funkce.
set_reference_groups(groups)
Tato metoda nastavuje referenční skupiny pro funkci.
Parametry:
groups
: (Povinné) Řetězec nebo seznam řetězců s referenčními skupinami.
get_reference_groups()
Tato metoda získá referenční skupiny funkce.
Příklad, který ukazuje nastavení monitorovaných a referenčních skupin:
# Set monitored and reference groups for the features 'Sex' and 'Age'.
sex_feat = af.get_feature("Sex")
sex_feat.set_reference_groups("male")
sex_feat.set_monitored_groups("female")
age_feat = af.get_feature("Age")
age_feat.set_monitored_groups("[0,25]")
age_feat.set_reference_groups("[26,80]")
Popisy hodnot
Můžete použít popisy hodnot k uvedení popisů pro hodnoty sloupců ve vašich datech.
K nastavení a načítání popisů můžete použít následující metody:
set_value_descriptions(value_descriptions)
Tato metoda nastavuje popisy hodnot pro funkci.
Parametry:
value_descriptions
: (požadováno) Slovník Pyton nebo seznam slovníků v následujícím formátu:{'value': '<value>', 'description': '<description>'}
get_value_descriptions()
Tato metoda vrací všechny popisy hodnot funkce.
get_value_description(value)
Tato metoda vrací popis hodnoty pro danou hodnotu.
Parametry:
value
: (Required) Hodnota, pro kterou se má načíst popis hodnoty.
add_value_description(value, description)
Tato metoda přidá popis hodnoty se zadanou hodnotou a popisem do seznamu popisů hodnot pro danou funkci.
Parametry:
value
: (Povinné) Hodnota řetězce popisu hodnoty.description
: (Povinné) Popis řetězce popisu hodnoty.
remove_value_description(value)
Tato metoda odstraní popis hodnoty se zadanou hodnotou ze seznamu popisů hodnot funkce.
Parametry:
value
: (Required) Hodnota popisu hodnoty, která má být odebrána.
Příklad, který ukazuje, jak nastavit popisy hodnot:
plan_feat = af.get_feature("InstallmentPlans")
val_descriptions = [
{'value': 'stores',
'description': 'customer has additional business installment plan'},
{'value': 'bank',
'description': 'customer has additional personal installment plan'},
{'value': 'none',
'description': 'customer has no additional installment plan'}
]
plan_feat.set_value_descriptions(val_descriptions)
Recipe
Recept můžete použít k popisu toho, jak byla funkce vytvořena, například se vzorcem nebo s úsekem kódu. Výchozí hodnota je None
.
Při práci s receptem můžete pracovat pomocí následujících metod.
set_recipe(recipe)
Tato metoda nastavuje recept na funkci.
Parametry:
recipe
: (Povinné) Buď řetězec, nebo Žádný, abyste odstranili recept.
get_recipe()
Tato metoda vrací receptu na funkci.
zobrazení náhledu dat
Můžete zobrazit náhled dat datového aktiva nebo pandu DataFrame s dalšími informacemi o vašich funkcích, jako jsou informace o spravedlnosti.
Data se zobrazí jako pandy DataFrame s nepovinnými informacemi o záhlaví o rolích funkcí, popisech nebo receptech. Informace o plavebních dráhách se zobrazují se zabarvením pro příznivé nebo nevýhodné popisky, sledované a referenční skupiny.
V tuto chvíli můžete načíst až 100 řádků dat vzorku pro datové aktivum.
Chcete-li zobrazit náhled dat, použijte následující funkci:
head(num_rows=5, display_options=['role'])
Tato funkce vrací prvních
num_rows
řádků datové sady v pandám DataFrame.Parametry:
num_rows
: (Volitelné) Počet řádků, které se mají načíst.display_options
: (Volitelné) Záhlaví sloupce může zobrazit další informace o sloupci v datové sadě.Použijte tyto volby k zobrazení atributů funkce:
role
: Zobrazí roli funkce pro tento sloupec.description
: Zobrazí popis funkce pro tento sloupec.recipe
: Zobrazí receptu na funkci pro tento sloupec.
Získání informací o spravedlnosti
Informace o spravedlivosti pro všechny funkce ve vašem rámci aktiva můžete načíst jako slovník Python . To zahrnuje všechny funkce, které obsahují monitorované nebo referenční skupiny (nebo obojí) jako chráněné atributy a cílovou funkci s příznivými nebo nepříznivými popisky.
Je-li datový typ sloupce s údaji o spravedlivosti číselné, jsou hodnoty popisků a skupin transformovány na číselné hodnoty, je-li to možné.
Informace o plavebních dráhách mohou být použity přímo v AutoAI nebo Am Fairness 360.
Chcete-li získat informace o spravedlivosti vašeho rámce aktiva, můžete použít následující funkci:
get_fairness_info(target=None)
Tato funkce vrací slovník Python s příznivými a nepříznivými popisky cílových sloupců a chráněných atributů s monitorovanými a referenčními skupinami.
Parametry:
cíl: (Volitelné) Cílová funkce. Existuje-li pouze jedna funkce s rolí
Target
, bude použita automaticky.Příklad, který ukazuje, jak získat informace o spravedlnosti:
af.get_fairness_info()
Výstup s informacemi o spravedlnosti:
{ 'favorable_labels': ['No Risk'], 'unfavorable_labels': ['Risk'], 'protected_attributes': [ {'feature': 'Sex', 'monitored_group': ['female'], 'reference_group': ['male']}, {'feature': 'Age', 'monitored_group': [[0.0, 25]], 'reference_group': [[26, 80]] }] }
Uložení informací o skupině funkcí
Po úplném zadání nebo aktualizaci vašich funkcí můžete uložit celou definici skupiny funkcí jako metadata pro vaše datové aktivum.
Pokud jste vytvořili rámec aktiva z pandas DataFrame, v úložišti projektu se vytvoří nové datové aktivum s názvem rámce aktiva.
K uložení informací o skupině funkcí můžete použít následující metodu:
to_data_asset(overwrite_data=False)
Tato metoda uloží informace o skupině funkcí do metadat aktiv. Vytvoří nové aktivum dat, pokud byl rámec aktiva vytvořen z pandas DataFrame.
Parametry:
overwrite_data
: (Volitelné) Také přepište obsah aktiva s daty z rámce aktiva. Výchozí hodnota jeFalse
.
Další informace
Viz ukázkový projekt Vytvoření a použití dat úložiště funkcí v Galerii.
Nadřízené téma: Načítání a přístup k datům v zápisníku