Estruturas Microsoft Azure ML Studio
Você pode usar o Microsoft Azure ML Studio para registrar dados de carga útil ou de feedback e para medir a precisão do desempenho, a detecção de viés em tempo de execução, a capacidade de explicação e os resultados de deduções automáticas para modelos implantados ao avaliar modelos.
As seguintes estruturas do Microsoft Azure Machine Learning Studio são totalmente compatíveis para avaliações de modelos:
Tabela 1. Detalhes do suporte da estrutura
| Estrutura | Tipo de problema | Tipo de dados |
|---|---|---|
| Native | Classificação | Estruturado |
| Native | Regressão | Estruturado |
Azure são compatíveis com as avaliações de modelo.
Adição do Microsoft Azure ML Studio
Você pode configurar avaliações de modelos para trabalhar com o Microsoft Azure ML Studio usando um dos seguintes métodos:
- Na primeira vez em que adicionar um provedor de aprendizado de máquina, você poderá usar a interface de configuração. Para obter mais informações, consulte Especificando uma instância do Microsoft Azure ML Studio.
- Também é possível incluir seu provedor de aprendizado de máquina usando o Python SDK. Deve-se usar esse método se você deseja ter mais de um provedor. Para obter informações adicionais sobre a execução deste programaticamente, consulte Incluir seu mecanismo de aprendizado de máquina Microsoft Azure.
Blocos de notas de amostra
O Bloco de Notas a seguir mostra como trabalhar com o Microsoft Azure ML Studio:
Explorar mais
Consumir um modelo Azure Machine Learning que é implementado como um serviço da web
Especificando uma instância do Microsoft Azure ML Studio
A sua primeira etapa na ferramenta Watson OpenScale é especificar uma instância do Microsoft Azure ML Studio. Sua instância do Azure ML Studio é onde você armazena seus modelos de IA e implementações.
Também é possível incluir seu provedor de aprendizado de máquina usando o Python SDK. Para obter informações adicionais, consulte Incluir seu mecanismo de aprendizado de máquina Microsoft Azure.
Conecte sua instância do Azure ML Studio
Você pode se conectar a modelos e implantações de IA em uma instância Azure ML Studio para avaliações de modelos. Para conectar seu serviço, vá para a guia Configurar "
, adicione um provedor de aprendizado de máquina e clique no ícone Editar "
. Além de um nome e descrição e se o ambiente é um Pré-produção ou Produção, deve-se fornecer as informações a seguir:
- ID do cliente: o valor de sequência real de seu ID do cliente, que verifica quem você é e autentica e autoriza chamadas que você faz para o Azure Studio.
- Segredo do cliente: o valor real da sequência do segredo, que verifica quem você é e autentica e autoriza chamadas que você faz para o Azure Studio.
- Locatário: o seu ID do locatário corresponde à sua organização e é uma instância dedicada do Azure AD. Para localizar o ID do locatário, passe o cursor do mouse sobre seu nome da conta para obter o diretório e o ID do locatário, ou selecione Azure Active Directory > Propriedades > ID do diretório no portal Azure.
- ID da assinatura: credenciais de assinatura que identificam com exclusividade a sua assinatura do Microsoft Azure. O ID da assinatura faz parte do URI para cada chamada de serviço. Consulte Como usar o portal para criar um aplicativo do Azure AD e uma entidade de serviço que possa acessar recursos para obter instruções sobre como obter as suas credenciais do Microsoft Azure.
Criação de log de carga útil com o mecanismo Microsoft Azure Machine Learning Studio
Inclua seu mecanismo de aprendizado de máquina Microsoft Azure
Um mecanismo de Runtime watsonx.ai que IBM seja da IBM é vinculado como Personalizado, o que significa que se trata apenas de metadados; não há integração direta com o serviço de Runtime watsonx.ai IBM não seja da IBM.
AZURE_ENGINE_CREDENTIALS = {
"client_id": "",
"client_secret": "",
"subscription_id": "",
"tenant": ""
}
wos_client.service_providers.add(
name=SERVICE_PROVIDER_NAME,
description=SERVICE_PROVIDER_DESCRIPTION,
service_type=ServiceTypes.AZURE_MACHINE_LEARNING,
#deployment_space_id = WML_SPACE_ID,
#operational_space_id = "production",
credentials=AzureCredentials(
subscription_id= AZURE_ENGINE_CREDENTIALS['subscription_id'],
client_id = AZURE_ENGINE_CREDENTIALS['client_id'],
client_secret= AZURE_ENGINE_CREDENTIALS['client_secret'],
tenant = AZURE_ENGINE_CREDENTIALS['tenant']
),
background_mode=False
).result
Para ver a sua assinatura de serviço, execute o comando a seguir:
client.service_providers.list()
Incluir assinatura do Microsoft Azure ML Studio
Inclua a assinatura adaptando a amostra de código a seguir:
asset_deployment_details = wos_client.service_providers.list_assets(data_mart_id=data_mart_id, service_provider_id=service_provider_id).result
asset_deployment_details
deployment_id=''
for model_asset_details in asset_deployment_details['resources']:
if model_asset_details['metadata']['guid']==deployment_id:
break
azure_asset = Asset(
asset_id=model_asset_details["entity"]["asset"]["asset_id"],
name=model_asset_details["entity"]["asset"]["name"],
url=model_asset_details["entity"]["asset"]["url"],
asset_type=model_asset_details['entity']['asset']['asset_type'] if 'asset_type' in model_asset_details['entity']['asset'] else 'model',
input_data_type=InputDataType.STRUCTURED,
problem_type=ProblemType.BINARY_CLASSIFICATION
)
deployment_scoring_endpoint = model_asset_details['entity']['scoring_endpoint']
scoring_endpoint = ScoringEndpointRequest(url = model_asset_details['entity']['scoring_endpoint']['url'],request_headers = model_asset_details['entity']['scoring_endpoint']['request_headers'],
credentials = None)
deployment = AssetDeploymentRequest(
deployment_id=model_asset_details['metadata']['guid'],
url=model_asset_details['metadata']['url'],
name=model_asset_details['entity']['name'],
description=model_asset_details['entity']['description'],
deployment_type=model_asset_details['entity']['type'],
scoring_endpoint = scoring_endpoint
)
asset_properties = AssetPropertiesRequest(
label_column="Risk ",
prediction_field='Scored Labels',
probability_fields=['Scored Probabilities'],
training_data_reference=training_data_reference,
training_data_schema=None,
input_data_schema=None,
output_data_schema=None,
)
subscription_details = wos_client.subscriptions.add(
data_mart_id=data_mart_id,
service_provider_id=service_provider_id,
asset=azure_asset,
deployment=deployment,
asset_properties=asset_properties,
background_mode=False
).result
Para obter a lista de assinaturas, execute o código a seguir:
subscription_id = subscription_details.metadata.id
subscription_id
details: wos_client.subscriptions.get(subscription_id).result.to_dict()
Ativar a criação de log de carga útil
Para ativar a criação de log de carga útil, execute o código a seguir:
payload_data_set_id = None
payload_data_set_id = wos_client.data_sets.list(type=DataSetTypes.PAYLOAD_LOGGING,
target_target_id=subscription_id,
target_target_type=TargetTypes.SUBSCRIPTION).result.data_sets[0].metadata.id
payload store:
wos_client.data_sets.store_records(data_set_id=payload_data_set_id, request_body=[PayloadRecord(
scoring_id=str(uuid.uuid4()),
request=request_data,
response=response_data,
response_time=460
)])
Para obter os detalhes da criação de log, execute o comando a seguir:
subscription.payload_logging.get_details()
Pontuação e criação de log de carga útil
Pontue o seu modelo. Para obter um exemplo completo, consulte Trabalhando com o bloco de notas do mecanismo Azure Machine Learning Studio.
Para armazenar a solicitação e a resposta na tabela de criação de log de carga útil, use o código a seguir:
records_list = [PayloadRecord(request=request_data, response=response_data, response_time=response_time),
PayloadRecord(request=request_data, response=response_data, response_time=response_time)]
for i in range(1, 10):
records_list.append(PayloadRecord(request=request_data, response=response_data, response_time=response_time))
subscription.payload_logging.store(records=records_list)
Para linguagens diferentes de Python, também é possível registrar a carga útil usando uma API de REST.