Translation not up to date
Dane wejściowe dla zadania wdrożenia wsadowego można podać na kilka sposobów, w tym bezpośrednio przesyłając plik lub udostępniając odsyłacz do tabel bazy danych. Typy dozwolonych danych wejściowych różnią się w zależności od typu tworzonego zadania wdrażania.
Informacje na temat obsługiwanych typów danych wejściowych według środowiska zawiera sekcja Szczegóły danych wejściowych wdrożenia wsadowego według środowiska.
Dane wejściowe mogą być dostarczane do zadania wsadowego jako dane wstawiane lub odwołanie do danych.
Dostępne typy danych wejściowych dla wdrożeń wsadowych według środowiska i typu zasobu
Środowisko | Typ wdrożenia wsadowego |
---|---|
Optymalizacja decyzji | Informacje dodatkowe |
Funkcja Python | Wstawiony |
PyTorch | Dane wstawiane i odwołanie |
Tensorflow | Dane wstawiane i odwołanie |
Scikit-nauka | Dane wstawiane i odwołanie |
Skrypty w języku Python | Informacje dodatkowe |
Biblioteka Spark MLlib | Dane wstawiane i odwołanie |
SPSS | Dane wstawiane i odwołanie |
XGBoost | Dane wstawiane i odwołanie |
Opis danych wstawianych
Dane wejściowe typu wstawianego dla przetwarzania wsadowego są określone w ładunku zadania wdrożenia wsadowego. Na przykład można przekazać plik CSV jako dane wejściowe wdrożenia w interfejsie użytkownika lub jako wartość parametru scoring.input_data
w notatniku. Po zakończeniu zadania wdrożenia wsadowego dane wyjściowe są zapisywane w odpowiednim parametrze metadanych scoring.predictions
zadania.
Opis odniesienia do danych
Dane wejściowe i wyjściowe typu odwołanie do danych , które są używane na potrzeby przetwarzania wsadowego, mogą być zapisywane:
- W zdalnym źródle danych, takim jak zasobnik Cloud Object Storage lub baza danych SQL/no-SQL
- Jako lokalny lub zarządzany zasób danych w obszarze wdrażania
Szczegóły dotyczące odwołań do danych obejmują:
Odwołanie do źródła danych
type
zależy od typu zasobu. Więcej informacji na ten temat zawiera sekcja Typy odwołań do źródeł danych w sekcji Dodawanie zasobów danych do obszaru wdrażania.W przypadku typu
data_asset
odwołania do danych wejściowych muszą być określone jako /v2/assets href w parametrzeinput_data_references.location.href
w ładunku zadania wdrażania. Określony w tym miejscu zasób danych może być odwołaniem do lokalnego lub połączonego zasobu danych. Ponadto, jeśli dane wyjściowe zadania wdrożenia wsadowego muszą być utrwalone w zdalnym źródle danych, odwołania do danych wyjściowych muszą być określone jako parametr /v2/assets href woutput_data_reference.location.href
ładunku zadania wdrożenia.Wszystkie odwołania wejściowe i wyjściowe
data_asset
muszą znajdować się w tym samym identyfikatorze obszaru, co wdrożenie wsadowe.Jeśli dane wyjściowe zadania wdrożenia wsadowego muszą zostać utrwalone w obszarze wdrożenia jako lokalny zasób aplikacyjny, należy określić parametr
output_data_reference.location.name
. Po pomyślnym zakończeniu zadania wdrożenia wsadowego w obszarze zostanie utworzony zasób o podanej nazwie.Dane wyjściowe mogą zawierać informacje o tym, gdzie w zdalnej bazie danych znajduje się zasób danych. W takiej sytuacji można określić, czy dołączyć dane wyjściowe zadania wsadowego do tabeli, czy obciąć tabelę i zaktualizować dane wyjściowe. Parametr
output_data_references.location.write_mode
umożliwia określenie wartościtruncate
lubappend
.- Podanie wartości
truncate
powoduje obcięcie tabeli i wstawienie danych wyjściowych zadania wsadowego. - Podanie wartości
append
powoduje dodanie danych wyjściowych zadania wsadowego do tabeli zdalnej bazy danych. - Parametr
write_mode
ma zastosowanie tylko w przypadku parametruoutput_data_references
. - Parametr
write_mode
ma zastosowanie tylko w przypadku zasobów danych związanych ze zdalną bazą danych. Ten parametr nie ma zastosowania do lokalnego zasobu danych ani do zasobu danych opartego na usłudze COS.
- Podanie wartości
Przykładowy ładunek data_asset
"input_data_references": [{
"type": "data_asset",
"connection": {
},
"location": {
"href": "/v2/assets/<asset_id>?space_id=<space_id>"
}
}]
Przykładowy ładunek connection_asset
"input_data_references": [{
"type": "connection_asset",
"connection": {
"id": "<connection_guid>"
},
"location": {
"bucket": "<bucket name>",
"file_name": "<directory_name>/<file name>"
}
<other wdp-properties supported by runtimes>
}]
Tworzenie struktury danych wejściowych
Sposób ustrukturyzowania danych wejściowych, zwanych również ładunkiem, dla zadania wsadowego zależy od struktury wdrażanego zasobu.
Plik wejściowy .csv lub inne ustrukturyzowane formaty danych muszą być sformatowane w taki sposób, aby były zgodne ze schematem zasobu aplikacyjnego. Lista nazw kolumn (pól) w pierwszym wierszu i wartości do oceny w kolejnych wierszach. Na przykład:
PassengerId, Pclass, Name, Sex, Age, SibSp, Parch, Ticket, Fare, Cabin, Embarked
1,3,"Braund, Mr. Owen Harris",0,22,1,0,A/5 21171,7.25,,S
4,1,"Winslet, Mr. Leo Brown",1,65,1,0,B/5 200763,7.50,,S
Plik wejściowy JSON musi udostępniać te same informacje o polach i wartościach, używając następującego formatu:
{"input_data":[{
"fields": [<field1>, <field2>, ...],
"values": [[<value1>, <value2>, ...]]
}]}
Na przykład:
{"input_data":[{
"fields": ["PassengerId","Pclass","Name","Sex","Age","SibSp","Parch","Ticket","Fare","Cabin","Embarked"],
"values": [[1,3,"Braund, Mr. Owen Harris",0,22,1,0,"A/5 21171",7.25,null,"S"],
[4,1,"Winselt, Mr. Leo Brown",1,65,1,0,"B/5 200763",7.50,null,"S"]]
}]}
Przygotowywanie ładunku zgodnego ze schematem istniejącego modelu
Zapoznaj się z następującym kodem przykładowym:
model_details = client.repository.get_details("<model_id>") # retrieves details and includes schema
columns_in_schema = []
for i in range(0, len(model_details['entity']['schemas']['input'][0].get('fields'))):
columns_in_schema.append(model_details['entity']['schemas']['input'][0].get('fields')[i]['name'])
X = X[columns_in_schema] # where X is a pandas dataframe that contains values to be scored
#(...)
scoring_values = X.values.tolist()
array_of_input_fields = X.columns.tolist()
payload_scoring = {"input_data": [{"fields": [array_of_input_fields],"values": scoring_values}]}
Ograniczenie dotyczące używania dużych ilości danych jako danych wejściowych dla zadań oceniania wsadowego
Jeśli zostanie uruchomione zadanie oceniania wsadowego, które używa dużych ilości danych jako danych wejściowych, zadanie może zakończyć się niepowodzeniem z powodu wewnętrznych ustawień limitu czasu. Jeśli przekroczenie limitu czasu wystąpi podczas oceniania wsadowego, należy skonfigurować ograniczenie limitu czasu na poziomie zapytania źródła danych w celu obsługi zadań długotrwałych. Więcej informacji na temat ustawień limitu czasu zapytania zawiera sekcja Znane problemy i ograniczenia dotyczące produktu Watson Machine Learning.
Temat nadrzędny: Tworzenie wdrożenia wsadowego