Преобразование записной книжки в скрипт

Завершено

При использовании записных книжек для экспериментирования и разработки сначала необходимо преобразовать записную книжку в скрипт. Кроме того, можно пропустить использование записных книжек и работать только с скриптами. В любом случае при создании скриптов существуют некоторые рекомендации по созданию кода, готового к работе.

Скрипты идеально подходят для тестирования и автоматизации в рабочей среде. Чтобы создать готовый к работе сценарий, необходимо выполнить следующие действия.

  • Удалите ненужный код.
  • Перепишите ваш код в функции.
  • Протестируйте скрипт в терминале.

Удаление всего ненужного кода

Основное преимущество использования записных книжек — это возможность быстро изучить данные. Например, можно использовать print() и df.describe() операторы для изучения данных и переменных. При создании скрипта, используемого для автоматизации, необходимо избежать включения кода, написанного для изучения.

Первое, что необходимо сделать для преобразования кода в рабочий код, это удалить ненужный код. Особенно при регулярном выполнении кода необходимо избежать выполнения каких-либо невенсиальных операций, чтобы сократить затраты и время вычислений.

Приведите свой код в функции

При использовании кода в бизнес-процессах необходимо, чтобы код был легко прочитан, чтобы любой пользователь мог его поддерживать. Одним из распространенных подходов к упрощению чтения и тестирования кода является использование функций.

Например, представьте, что вы использовали следующий пример кода в записной книжке для чтения и разделения данных:

# 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)

Как функции также позволяют тестировать части кода, можно создать несколько небольших функций, а не одну большую функцию. Если вы хотите протестировать часть кода, вы можете протестировать только небольшую часть и избежать выполнения большего количества кода, чем необходимо.

Вы можете рефакторить код, как показано в примере, на две функции.

  • Чтение данных
  • Разделение данных

Пример рефакторингового кода может быть следующим:

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

Замечание

Возможно, вы заметили, что несущественный код также был опущен в переработанном коде. Вы можете использовать print инструкции в рабочем коде, если вы просматриваете выходные данные скрипта и хотите убедиться, что весь код выполняется должным образом. Однако, если вы знаете, что вы не собираетесь просматривать выходные данные скрипта в терминале, лучше удалить любой код, который не имеет цели.

Тестирование скрипта

Прежде чем использовать скрипты в рабочих средах, например интегрируя их с конвейерами автоматизации, необходимо проверить, работают ли скрипты должным образом.

Одним из простых способов тестирования скрипта является запуск скрипта в терминале. В рабочей области Машинного обучения Azure можно быстро запустить скрипт в терминале вычислительного экземпляра.

При открытии скрипта на странице записных книжек студии машинного обучения Azure можно сохранить и запустить скрипт в терминале.

При этом можно получить непосредственный доступ к терминалу вычислительной машины. Перейдите на страницу вычислений и выберите терминал вычислительного экземпляра, который требуется использовать. Для запуска скрипта Python с именем train.pyможно использовать следующую команду:

python train.py

Выходные данные инструкций print отображаются в терминале. Все возможные ошибки также отображаются в терминале.