Converter um bloco de notas num script

Concluído

Quando você tiver usado blocos de anotações para experimentação e desenvolvimento, primeiro precisará converter um bloco de anotações em um script. Como alternativa, você pode optar por ignorar o uso de blocos de anotações e trabalhar apenas com scripts. De qualquer forma, há algumas recomendações ao criar scripts para ter código pronto para produção.

Os scripts são ideais para testes e automação em seu ambiente de produção. Para criar um script pronto para produção, você precisará:

  • Remova o código não essencial.
  • Refatore seu código em funções.
  • Teste seu script no terminal.

Remover todo o código não essencial

A principal vantagem de usar blocos de anotações é poder explorar rapidamente seus dados. Por exemplo, você pode usar print() instruções e df.describe() explorar seus dados e variáveis. Ao criar um script que será usado para automação, você deseja evitar a inclusão de código escrito para fins exploratórios.

A primeira coisa que você precisa fazer para converter seu código em código de produção é remover o código não essencial. Especialmente quando você executa o código regularmente, você quer evitar a execução de qualquer coisa não essencial para reduzir o custo e o tempo de computação.

Refatore seu código em funções

Ao usar o código em processos de negócios, você deseja que o código seja fácil de ler para que qualquer pessoa possa mantê-lo. Uma abordagem comum para tornar o código mais fácil de ler e testar é usar funções.

Por exemplo, você pode ter usado o seguinte código de exemplo em um bloco de anotações para ler e dividir os dados:

# read and visualize the data
print("Reading data...")
df = pd.read_csv('diabetes.csv')
df.head()

# split data
print("Splitting data...")
X, y = df[['Pregnancies','PlasmaGlucose','DiastolicBloodPressure','TricepsThickness','SerumInsulin','BMI','DiabetesPedigree','Age']].values, df['Diabetic'].values

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30, random_state=0)

Como as funções também permitem que você teste partes do seu código, você pode preferir criar várias funções menores, em vez de uma função grande. Se você quiser testar uma parte do seu código, você pode optar por testar apenas uma pequena parte e evitar executar mais código do que o necessário.

Você pode refatorar o código mostrado no exemplo em duas funções:

  • Leia os dados
  • Dividir os dados

Um exemplo de código refatorado pode ser o seguinte:

def main(csv_file):
    # read data
    df = get_data(csv_file)

    # split data
    X_train, X_test, y_train, y_test = split_data(df)

# function that reads the data
def get_data(path):
    df = pd.read_csv(path)
    
    return df

# function that splits the data
def split_data(df):
    X, y = df[['Pregnancies','PlasmaGlucose','DiastolicBloodPressure','TricepsThickness',
    'SerumInsulin','BMI','DiabetesPedigree','Age']].values, df['Diabetic'].values

    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30, random_state=0)

    return X_train, X_test, y_train, y_test

Nota

Você deve ter notado que o código não essencial também foi omitido no código refatorado. Você pode optar por usar print instruções no código de produção se revisar a saída do script e quiser garantir que todo o código seja executado conforme o esperado. No entanto, quando você sabe que não vai revisar a saída de um script em um terminal, é melhor remover qualquer código que não tenha propósito.

Teste seu script

Antes de usar scripts em ambientes de produção, por exemplo, integrando-os com pipelines de automação, convém testar se os scripts funcionam conforme o esperado.

Uma maneira simples de testar seu script é executá-lo em um terminal. No espaço de trabalho do Azure Machine Learning, você pode executar rapidamente um script no terminal da instância de computação.

Ao abrir um script na página Blocos de Anotações do estúdio do Azure Machine Learning, você pode optar por salvar e executar o script no terminal.

Como alternativa, você pode navegar diretamente para o terminal da instância de computação. Navegue até a página Computação e selecione o Terminal da instância de computação que você deseja usar. Você pode usar o seguinte comando para executar um script Python chamado train.py:

python train.py

As saídas das print instruções serão exibidas no terminal. Quaisquer possíveis erros também aparecerão no terminal.