ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

ืื ื™ ืžื›ื™ืจ ื”ืจื‘ื” ืžื“ืขื ื™ ื ืชื•ื ื™ื - ื•ื›ื ืจืื” ืฉืื ื™ ื‘ืขืฆืžื™ ืื—ื“ ืžื”ื - ืฉืขื•ื‘ื“ื™ื ืขืœ ืžื›ื•ื ื•ืช GPU, ืžืงื•ืžื™ื•ืช ืื• ื•ื™ืจื˜ื•ืืœื™ื•ืช, ื”ืžืžื•ืงืžื•ืช ื‘ืขื ืŸ, ืื• ื“ืจืš Jupyter Notebook ืื• ื“ืจืš ืื™ื–ื•ืฉื”ื™ ืกื‘ื™ื‘ืช ืคื™ืชื•ื— ืฉืœ Python. ื›ืฉืขื‘ื“ืชื™ ืฉื ืชื™ื™ื ื›ืžืคืชื— AI/ML ืžื•ืžื—ื”, ืขืฉื™ืชื™ ื‘ื“ื™ื•ืง ืืช ื–ื”, ืชื•ืš ื›ื“ื™ ื”ื›ื ืช ื ืชื•ื ื™ื ืขืœ ืฉืจืช ืื• ืชื—ื ืช ืขื‘ื•ื“ื” ืจื’ื™ืœื”, ื•ื”ืจืฆืช ื”ื“ืจื›ื” ืขืœ ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช ืขื GPU ื‘-Azure.

ื›ืžื•ื‘ืŸ ืฉื›ื•ืœื ื• ืฉืžืขื ื• ืขืœ ืœืžื™ื“ืช ืžื›ื•ื ื” ื‘ืชื›ืœืช - ืคืœื˜ืคื•ืจืžืช ืขื ืŸ ืžื™ื•ื—ื“ืช ืœืœืžื™ื“ืช ืžื›ื•ื ื”. ืขื ื–ืืช, ืœืื—ืจ ืžื‘ื˜ ืจืืฉื•ืŸ ืขืœ ืžืืžืจื™ ืžื‘ื•ื, ื ืจืื” ืฉ-Azure ML ืชื™ืฆื•ืจ ืขื‘ื•ืจืš ื™ื•ืชืจ ื‘ืขื™ื•ืช ืžืžื” ืฉื”ื™ื ืคื•ืชืจืช. ืœื“ื•ื’ืžื”, ื‘ืžื“ืจื™ืš ืฉื”ื•ื–ื›ืจ ืœืขื™ืœ, ืื™ืžื•ืŸ ืขืœ Azure ML ืžื•ืคืขืœ ืžืžื—ื‘ืจืช Jupyter, ื‘ืขื•ื“ ืฉืกืงืจื™ืคื˜ ื”ืื™ืžื•ืŸ ืขืฆืžื• ืžื•ืฆืข ืœื”ื™ื•ื•ืฆืจ ื•ืœืขืจื•ืš ื›ืงื•ื‘ืฅ ื˜ืงืกื˜ ื‘ืื—ื“ ื”ืชืื™ื - ืชื•ืš ืฉื”ื•ื ืœื ืžืฉืชืžืฉ ื‘ื”ืฉืœืžื” ืื•ื˜ื•ืžื˜ื™ืช, ืชื—ื‘ื™ืจ ื”ื“ื’ืฉื” ื•ื™ืชืจื•ื ื•ืช ื ื•ืกืคื™ื ืฉืœ ืกื‘ื™ื‘ืช ืคื™ืชื•ื— ืจื’ื™ืœื”. ืžืกื™ื‘ื” ื–ื•, ืœื ื”ืฉืชืžืฉื ื• ื‘ืจืฆื™ื ื•ืช ื‘- Azure ML ื‘ืขื‘ื•ื“ื” ืฉืœื ื• ื‘ืžืฉืš ื–ืžืŸ ืจื‘.

ืขื ื–ืืช, ืœืื—ืจื•ื ื” ื’ื™ืœื™ืชื™ ื“ืจืš ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘ื™ืขื™ืœื•ืช ื‘-Azure ML ื‘ืขื‘ื•ื“ื” ืฉืœื™! ืžืชืขื ื™ื™ื ื™ื ื‘ืคืจื˜ื™ื?

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

ื”ืกื•ื“ ื”ืขื™ืงืจื™ ื”ื•ื ื”ืจื—ื‘ืช Visual Studio Code ืขื‘ื•ืจ Azure ML. ื–ื” ืžืืคืฉืจ ืœืš ืœืคืชื— ืกืงืจื™ืคื˜ื™ื ืœื”ื“ืจื›ื” ื™ืฉื™ืจื•ืช ื‘-VS Code, ืชื•ืš ื ื™ืฆื•ืœ ืžืœื ืฉืœ ื”ืกื‘ื™ื‘ื” - ื•ืืคื™ืœื• ืชื•ื›ืœ ืœื”ืจื™ืฅ ืืช ื”ืกืงืจื™ืคื˜ ื‘ืื•ืคืŸ ืžืงื•ืžื™ ื•ืื– ืคืฉื•ื˜ ืœืฉืœื•ื— ืื•ืชื• ืœืื™ืžื•ืŸ ื‘ืืฉื›ื•ืœ Azure ML ื‘ื›ืžื” ืงืœื™ืงื™ื. ื ื•ื—, ืœื?

ื‘ื›ืš, ืืชื” ืžืงื‘ืœ ืืช ื”ื™ืชืจื•ื ื•ืช ื”ื‘ืื™ื ืžื”ืฉื™ืžื•ืฉ ื‘-Azure ML:

  • ืืชื” ื™ื›ื•ืœ ืœืขื‘ื•ื“ ืจื•ื‘ ื”ื–ืžืŸ ื‘ืื•ืคืŸ ืžืงื•ืžื™ ืขืœ ื”ืžื—ืฉื‘ ืฉืœืš ื‘-IDE ื ื•ื—, ื• ื”ืฉืชืžืฉ ื‘-GPU ืจืง ืœืื™ืžื•ืŸ ืžื•ื“ืœื™ื. ื‘ืžืงื‘ื™ืœ, ืžืื’ืจ ืžืฉืื‘ื™ ื”ื”ื“ืจื›ื” ื™ื›ื•ืœ ืœื”ืชืื™ื ืื•ื˜ื•ืžื˜ื™ืช ืœืขื•ืžืก ื”ื ื“ืจืฉ, ื•ืขืœ ื™ื“ื™ ื”ื’ื“ืจืช ืžืกืคืจ ื”ืฆืžืชื™ื ื”ืžื™ื ื™ืžืœื™ ืœ-0, ื ื™ืชืŸ ืœื”ืคืขื™ืœ ืื•ื˜ื•ืžื˜ื™ืช ืืช ื”ืžื›ื•ื ื” ื”ื•ื™ืจื˜ื•ืืœื™ืช "ืขืœ ืคื™ ื“ืจื™ืฉื”" ื‘ื ื•ื›ื—ื•ืช ืžืฉื™ืžื•ืช ื”ื“ืจื›ื”.
  • ืืชื” ื™ื›ื•ืœ ืœืื—ืกืŸ ืืช ื›ืœ ืชื•ืฆืจื™ ื”ืœืžื™ื“ื” ื‘ืžืงื•ื ืื—ื“, ื›ื•ืœืœ ื”ืžื“ื“ื™ื ืฉื”ื•ืฉื’ื• ื•ื”ืžื•ื“ืœื™ื ื”ืžืชืงื‘ืœื™ื - ืื™ืŸ ืฆื•ืจืš ืœื‘ื•ื ืขื ืื™ื–ื•ืฉื”ื™ ืžืขืจื›ืช ืื• ืกื“ืจ ืœืื—ืกืŸ ืืช ื›ืœ ื”ืชื•ืฆืื•ืช.
  • ื‘ืžืงืจื” ื–ื”, ื›ืžื” ืื ืฉื™ื ื™ื›ื•ืœื™ื ืœืขื‘ื•ื“ ืขืœ ืื•ืชื• ืคืจื•ื™ืงื˜ - ื”ื ื™ื›ื•ืœื™ื ืœื”ืฉืชืžืฉ ื‘ืื•ืชื• ืืฉื›ื•ืœ ืžื—ืฉื•ื‘, ื›ืœ ื”ื ื™ืกื•ื™ื™ื ื™ืขืžื“ื• ื‘ืชื•ืจ, ื•ื”ื ื™ื›ื•ืœื™ื ื’ื ืœืจืื•ืช ืืช ื”ืชื•ืฆืื•ืช ืฉืœ ื”ื ื™ืกื•ื™ื™ื ืื—ื“ ืฉืœ ื”ืฉื ื™. ืชืจื—ื™ืฉ ืื—ื“ ื›ื–ื” ื”ื•ื ืฉื™ืžื•ืฉ ื‘-Azure ML ื‘ื”ื•ืจืืช ืœืžื™ื“ื” ืขืžื•ืงื”ื›ืืฉืจ ื‘ืžืงื•ื ืœืชืช ืœื›ืœ ืชืœืžื™ื“ ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช ืขื GPU, ืืชื” ื™ื›ื•ืœ ืœื™ืฆื•ืจ ืืฉื›ื•ืœ ืื—ื“ ืฉื™ืฉืžืฉ ืืช ื›ื•ืœื ื‘ืื•ืคืŸ ืžืจื›ื–ื™. ื‘ื ื•ืกืฃ, ื˜ื‘ืœืช ืชื•ืฆืื•ืช ื›ืœืœื™ืช ืขื ื“ื™ื•ืง ืžื•ื“ืœ ื™ื›ื•ืœื” ืœืฉืžืฉ ืžืจื›ื™ื‘ ืชื—ืจื•ืชื™ ื˜ื•ื‘.
  • ืขื Azure ML, ืืชื” ื™ื›ื•ืœ ื‘ืงืœื•ืช ืœื‘ืฆืข ืกื“ืจื” ืฉืœ ื ื™ืกื•ื™ื™ื, ืœืžืฉืœ, ืขื‘ื•ืจ ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ื”ื™ืคืจืคืจืžื˜ืจื™ื - ื ื™ืชืŸ ืœืขืฉื•ืช ื–ืืช ืขื ื›ืžื” ืฉื•ืจื•ืช ืงื•ื“, ืื™ืŸ ืฆื•ืจืš ืœื‘ืฆืข ืกื“ืจื” ืฉืœ ื ื™ืกื•ื™ื™ื ื‘ืื•ืคืŸ ื™ื“ื ื™.

ืื ื™ ืžืงื•ื•ื” ืฉืฉื›ื ืขืชื™ ืื•ืชืš ืœื ืกื•ืช ืืช Azure ML! ื”ื ื” ืื™ืš ืœื”ืชื—ื™ืœ:

  • ื•ื“ื ืฉื”ืชืงื ืช ืงื•ื“ Visual Studio, ื›ืžื• ื’ื ื”ืจื—ื‘ื•ืช Azure ื›ื ื™ืกื” ะธ ืชื›ืœืช ML
  • ืฉื›ืคืœ ืืช ื”ืžืื’ืจ https://github.com/CloudAdvocacy/AzureMLStarter - ื”ื•ื ืžื›ื™ืœ ืงื•ื“ ื”ื“ื’ืžื” ื›ืœืฉื”ื• ืœืื™ืžื•ืŸ ืžื•ื“ืœ ื–ื™ื”ื•ื™ ืกืคืจื•ืช ื‘ื›ืชื‘ ื™ื“ ื‘ืžืขืจืš ื”ื ืชื•ื ื™ื ืฉืœ MNIST.
  • ืคืชื— ืืช ื”ืžืื’ืจ ื”ืžืฉื•ื‘ื˜ ื‘-Visual Studio Code.
  • ืชืžืฉื™ืš ืœืงืจื•ื!

Azure ML Workspace ื•-Azure ML Portal

Azure ML ืžืื•ืจื’ืŸ ืกื‘ื™ื‘ ื”ืจืขื™ื•ืŸ ืื–ื•ืจ ืขื‘ื•ื“ื” - ื—ืœืœ ืขื‘ื•ื“ื”. ื ื™ืชืŸ ืœืื—ืกืŸ ื ืชื•ื ื™ื ื‘ืžืจื—ื‘ ื”ืขื‘ื•ื“ื”, ืœืฉืœื•ื— ืืœื™ื• ื ื™ืกื•ื™ื™ื ืœื”ื“ืจื›ื”, ื’ื ืฉื ื ืฉืžืจื•ืช ืชื•ืฆืื•ืช ื”ืื™ืžื•ืŸ - ื”ืžื“ื“ื™ื ื•ื”ืžื•ื“ืœื™ื ื”ืžืชืงื‘ืœื™ื. ืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ืžื” ื™ืฉ ื‘ืชื•ืš ืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื” ื“ืจืš ืคื•ืจื˜ืœ Azure ML - ื•ืžืฉื ื ื™ืชืŸ ืœื‘ืฆืข ืคืขื•ืœื•ืช ืจื‘ื•ืช, ื”ื—ืœ ืžื˜ืขื™ื ืช ื ืชื•ื ื™ื ื•ืขื“ ืœื ื™ื˜ื•ืจ ื ื™ืกื•ื™ื™ื ื•ืคืจื™ืกื” ืฉืœ ืžื•ื“ืœื™ื.

ื ื™ืชืŸ ืœื™ืฆื•ืจ ืกื‘ื™ื‘ืช ืขื‘ื•ื“ื” ื“ืจืš ืžืžืฉืง ื”ืื™ื ื˜ืจื ื˜ ืคื•ืจื˜ืœ ืชื›ืœืช (ืจืื” ื”ื•ืจืื•ืช ืฆืขื“ ืื—ืจ ืฆืขื“), ืื• ื‘ืืžืฆืขื•ืช ืฉื•ืจืช ื”ืคืงื•ื“ื” Azure CLI (ื”ื•ืจืื•ืช):

az extension add -n azure-cli-ml
az group create -n myazml -l northeurope
az ml workspace create -w myworkspace -g myazml

ื›ืžื• ื›ืŸ, ืžืฉื•ื™ื›ื™ื ืœืžืจื—ื‘ ื”ืขื‘ื•ื“ื” ื›ืžื” ืžืฉืื‘ื™ ืžื—ืฉื•ื‘ (ืœื—ืฉื‘). ืœืื—ืจ ืฉื™ืฆืจืช ืชืกืจื™ื˜ ืœืื™ืžื•ืŸ ื”ืžื•ื“ืœ, ืชื•ื›ืœ ืœืฉืœื•ื— ื ื™ืกื•ื™ ืœื‘ื™ืฆื•ืข ืœืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื”, ื•ืฆื™ื™ืŸ ืœื—ืฉื‘ ื™ืขื“ - ื‘ืžืงืจื” ื–ื”, ื”ืกืงืจื™ืคื˜ ื™ื™ืืจื–, ื™ื•ืคืขืœ ื‘ืกื‘ื™ื‘ืช ื”ืžื—ืฉื•ื‘ ื”ืจืฆื•ื™ื”, ื•ืœืื—ืจ ืžื›ืŸ ื›ืœ ืชื•ืฆืื•ืช ื”ื ื™ืกื•ื™ ื™ื™ืฉืžืจื• ื‘ืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื” ืœื”ืžืฉืš ื ื™ืชื•ื— ื•ืฉื™ืžื•ืฉ.

ืชืกืจื™ื˜ ืœืžื™ื“ื” ืขื‘ื•ืจ MNIST

ืฉืงื•ืœ ืืช ื”ื‘ืขื™ื” ื”ืงืœืืกื™ืช ื–ื™ื”ื•ื™ ืกืคืจื•ืช ื‘ื›ืชื‘ ื™ื“ ื‘ืืžืฆืขื•ืช ืžืขืจืš ื”ื ืชื•ื ื™ื ืฉืœ MNIST. ื‘ืื•ืคืŸ ื“ื•ืžื”, ื‘ืขืชื™ื“, ืชื•ื›ืœ ืœื”ืจื™ืฅ ื›ืœ ืื—ื“ ืžืกืงืจื™ืคื˜ื™ ื”ื”ื“ืจื›ื” ืฉืœืš.

ื™ืฉ ืกืงืจื™ืคื˜ ื‘ืžืื’ืจ ืฉืœื ื• train_local.py, ืฉืื ื• ืžืืžื ื™ื ืืช ืžื•ื“ืœ ื”ืจื’ืจืกื™ื” ื”ืœื™ื ื™ืืจื™ืช ื”ืคืฉื•ื˜ื” ื‘ื™ื•ืชืจ ื‘ืืžืฆืขื•ืช ืกืคืจื™ื™ืช SkLearn. ื›ืžื•ื‘ืŸ, ืื ื™ ืžื‘ื™ืŸ ืฉื–ื• ืœื ื”ื“ืจืš ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืœืคืชื•ืจ ืืช ื”ื‘ืขื™ื” - ืื ื—ื ื• ืžืฉืชืžืฉื™ื ื‘ื” ื›ื“ื•ื’ืžื”, ื›ืงืœื” ื‘ื™ื•ืชืจ.

ื”ืกืงืจื™ืคื˜ ืžื•ืจื™ื“ ืชื—ื™ืœื” ืืช ื ืชื•ื ื™ ื”-MNIST ืž-OpenML ื•ืœืื—ืจ ืžื›ืŸ ืžืฉืชืžืฉ ื‘ืžื—ืœืงื” LogisticRegression ื›ื“ื™ ืœืืžืŸ ืืช ื”ืžื•ื“ืœ, ื•ืœืื—ืจ ืžื›ืŸ ืœื”ื“ืคื™ืก ืืช ื”ื“ื™ื•ืง ื”ืžืชืงื‘ืœ:

mnist = fetch_openml('mnist_784')
mnist['target'] = np.array([int(x) for x in mnist['target']])

shuffle_index = np.random.permutation(len(mist['data']))
X, y = mnist['data'][shuffle_index], mnist['target'][shuffle_index]

X_train, X_test, y_train, y_test = 
  train_test_split(X, y, test_size = 0.3, random_state = 42)

lr = LogisticRegression()
lr.fit(X_train, y_train)
y_hat = lr.predict(X_test)
acc = np.average(np.int32(y_hat == y_test))

print('Overall accuracy:', acc)

ืืชื” ื™ื›ื•ืœ ืœื”ืจื™ืฅ ืืช ื”ืกืงืจื™ืคื˜ ื‘ืžื—ืฉื‘ ืฉืœืš ื•ืœืงื‘ืœ ืืช ื”ืชื•ืฆืื” ืชื•ืš ืžืกืคืจ ืฉื ื™ื•ืช.

ื”ืคืขืœ ืืช ื”ืกืงืจื™ืคื˜ ื‘-Azure ML

ืื ื ืจื™ืฅ ืืช ืกืงืจื™ืคื˜ ื”ืื™ืžื•ืŸ ื“ืจืš Azure ML, ื™ื”ื™ื• ืœื ื• ืฉื ื™ ื™ืชืจื•ื ื•ืช ืขื™ืงืจื™ื™ื:

  • ื”ืคืขืœืช ื”ื“ืจื›ื” ืขืœ ืžืฉืื‘ ืžื—ืฉื•ื‘ ืฉืจื™ืจื•ืชื™, ืืฉืจ, ื›ื›ืœืœ, ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ ื™ื•ืชืจ ืžื”ืžื—ืฉื‘ ื”ืžืงื•ืžื™. ื‘ืžืงื‘ื™ืœ, Azure ML ืขืฆืžื” ืชื“ืื’ ืœืืจื•ื– ืืช ื”ืกืงืจื™ืคื˜ ืฉืœื ื• ืขื ื›ืœ ื”ืงื‘ืฆื™ื ืžื”ืกืคืจื™ื™ื” ื”ื ื•ื›ื—ื™ืช ืœืชื•ืš ืงื•ื ื˜ื™ื™ื ืจ docker, ืœื”ืชืงื™ืŸ ืืช ื”ืชืœื•ืช ื”ื ื“ืจืฉืช ื•ืœืฉืœื•ื— ืื•ืชื• ืœื‘ื™ืฆื•ืข.
  • ื›ืชื•ื‘ ืชื•ืฆืื•ืช ืœืจื™ืฉื•ื ื™ื—ื™ื“ ื‘ืชื•ืš ืกื‘ื™ื‘ืช ืขื‘ื•ื“ื” ืฉืœ Azure ML. ื›ื“ื™ ืœื ืฆืœ ืืช ื”ืชื›ื•ื ื” ื”ื–ื•, ืขืœื™ื ื• ืœื”ื•ืกื™ืฃ ื›ืžื” ืฉื•ืจื•ืช ืงื•ื“ ืœืกืงืจื™ืคื˜ ืฉืœื ื• ื›ื“ื™ ืœืชืขื“ ืืช ื”ื“ื™ื•ืง ื”ืžืชืงื‘ืœ:

from azureml.core.run import Run
...
try:    
    run = Run.get_submitted_run()
    run.log('accuracy', acc)
except:
    pass

ื”ื’ืจืกื” ื”ืžืชืื™ืžื” ืฉืœ ื”ืชืกืจื™ื˜ ื ืงืจืืช train_universal.py (ื–ื” ืงืฆืช ื™ื•ืชืจ ืขืจืžื•ืžื™ ืžืžื” ืฉื›ืชื•ื‘ ืœืžืขืœื”, ืื‘ืœ ืœื ื”ืจื‘ื”). ื ื™ืชืŸ ืœื”ืจื™ืฅ ืกืงืจื™ืคื˜ ื–ื” ื”ืŸ ืžืงื•ืžื™ืช ื•ื”ืŸ ืขืœ ืžืฉืื‘ ืžื—ืฉื•ื‘ ืžืจื•ื—ืง.

ื›ื“ื™ ืœื”ืคืขื™ืœ ืื•ืชื• ื‘-Azure ML ืžืงื•ื“ VS, ืขืœื™ืš ืœื‘ืฆืข ืืช ื”ืคืขื•ืœื•ืช ื”ื‘ืื•ืช:

  1. ื•ื“ื ืฉื”ืจื—ื‘ื” ืฉืœ Azure ืžื—ื•ื‘ืจืช ืœืžื ื•ื™ ืฉืœืš. ื‘ื—ืจ ื‘ืกืžืœ Azure ืžื”ืชืคืจื™ื˜ ื‘ืฆื“ ืฉืžืืœ. ืื ืื™ื ืš ืžื—ื•ื‘ืจ, ืชื•ืคื™ืข ื”ืชืจืื” ื‘ืคื™ื ื” ื”ื™ืžื ื™ืช ื”ืชื—ืชื•ื ื” (ื›ื›ื”), ืขืœ ื™ื“ื™ ืœื—ื™ืฆื” ืขืœื™ื• ืชื•ื›ืœ ืœื”ื™ื›ื ืก ื“ืจืš ื”ื“ืคื“ืคืŸ. ืืชื” ื™ื›ื•ืœ ื’ื ืœืœื—ื•ืฅ Ctrl-Shift-P ื›ื“ื™ ืœืงืจื•ื ืœืฉื•ืจืช ื”ืคืงื•ื“ื” VS Code, ื•ื”ืงืœื“ Azure ื›ื ื™ืกื”.

  2. ืœืื—ืจ ืžื›ืŸ, ื‘ืงื˜ืข Azure (ืกืžืœ ื‘ืฆื“ ืฉืžืืœ), ืžืฆื ืืช ื”ืงื˜ืข ืœืžื™ื“ืช ืžื›ื•ื ื”:

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
ื›ืืŸ ืืชื” ืืžื•ืจ ืœืจืื•ืช ืงื‘ื•ืฆื•ืช ืฉื•ื ื•ืช ืฉืœ ืื•ื‘ื™ื™ืงื˜ื™ื ื‘ืชื•ืš ืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื”: ืžืฉืื‘ื™ ืžื—ืฉื•ื‘, ื ื™ืกื•ื™ื™ื ื•ื›ื•'.

  1. ืขื‘ื•ืจ ืœืจืฉื™ืžืช ื”ืงื‘ืฆื™ื, ืœื—ืฅ ืœื—ื™ืฆื” ื™ืžื ื™ืช ืขืœ ื”ืกืงืจื™ืคื˜ train_universal.py ื•ื‘ื—ืจ Azure ML: ื”ืคืขืœ ื›ื ื™ืกื•ื™ ื‘-Azure.

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  1. ืœืื—ืจ ืžื›ืŸ ืชื•ืคื™ืข ืกื“ืจื” ืฉืœ ื“ื™ืืœื•ื’ื™ื ื‘ืื–ื•ืจ ืฉื•ืจืช ื”ืคืงื•ื“ื” ืฉืœ VS Code: ืืฉืจ ืืช ื”ืžื ื•ื™ ื•ืืช ืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื” ืฉืœ Azure ML ืฉื‘ื” ืืชื” ืžืฉืชืžืฉ, ื•ื‘ื—ืจ ืฆื•ืจ ื ื™ืกื•ื™ ื—ื“ืฉ:

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  1. ื‘ื—ืจ ืœื™ืฆื•ืจ ืžืฉืื‘ ืžื—ืฉื•ื‘ ื—ื“ืฉ ืฆื•ืจ ืžื—ืฉื‘ ื—ื“ืฉ:

    • ืœื—ืฉื‘ ืงื•ื‘ืข ืืช ืžืฉืื‘ ื”ืžื—ืฉื•ื‘ ืฉืขืœื™ื• ื™ืชืงื™ื™ื ื”ื”ื“ืจื›ื”. ืืชื” ื™ื›ื•ืœ ืœื‘ื—ื•ืจ ืžื—ืฉื‘ ืžืงื•ืžื™, ืื• ืืฉื›ื•ืœ ืขื ืŸ ืฉืœ AmlCompute. ืื ื™ ืžืžืœื™ืฅ ืœื™ืฆื•ืจ ืืฉื›ื•ืœ ืžื›ื•ื ื•ืช ืฉื ื™ืชืŸ ืœื”ืจื—ื‘ื” STANDARD_DS3_v2, ืขื ืžืกืคืจ ืžื™ื ื™ืžืœื™ ืฉืœ ืžื›ื•ื ื•ืช ืฉืœ 0 (ื•ืžืงืกื™ืžื•ื ืฉืœ 1 ืื• ื™ื•ืชืจ, ืชืœื•ื™ ื‘ืชืื‘ื•ืŸ ืฉืœืš). ื ื™ืชืŸ ืœืขืฉื•ืช ื–ืืช ื“ืจืš ืžืžืฉืง VS Code, ืื• ื‘ืขื‘ืจ ื“ืจืš ืคื•ืจื˜ืœ ML.

    ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  2. ืœืื—ืจ ืžื›ืŸ, ืขืœื™ืš ืœื‘ื—ื•ืจ ืชืฆื•ืจื” ืชืฆื•ืจืช ืžื—ืฉื‘, ื”ืžื’ื“ื™ืจ ืืช ื”ืคืจืžื˜ืจื™ื ืฉืœ ื”ืžื™ื›ืœ ืฉื ื•ืฆืจ ืœื”ื“ืจื›ื”, ื‘ืคืจื˜, ืืช ื›ืœ ื”ืกืคืจื™ื•ืช ื”ื“ืจื•ืฉื•ืช. ื‘ืžืงืจื” ืฉืœื ื•, ืžื›ื™ื•ื•ืŸ ืฉืื ื• ืžืฉืชืžืฉื™ื ื‘-Scikit Learn, ืื ื• ื‘ื•ื—ืจื™ื SkLearn, ื•ืœืื—ืจ ืžื›ืŸ ืคืฉื•ื˜ ืืฉืจ ืืช ืจืฉื™ืžืช ื”ืกืคืจื™ื•ืช ื”ืžื•ืฆืขืช ืขืœ ื™ื“ื™ ื”ืงืฉื” ืขืœ Enter. ืื ืืชื” ืžืฉืชืžืฉ ื‘ืกืคืจื™ื•ืช ื ื•ืกืคื•ืช, ื™ืฉ ืœืฆื™ื™ืŸ ืื•ืชืŸ ื›ืืŸ.

    ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
    ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  3. ื–ื” ื™ืคืชื— ื—ืœื•ืŸ ืขื ืงื•ื‘ืฅ JSON ืฉืžืชืืจ ืืช ื”ื ื™ืกื•ื™. ื‘ื•, ืืชื” ื™ื›ื•ืœ ืœืชืงืŸ ื›ืžื” ืคืจืžื˜ืจื™ื - ืœืžืฉืœ, ืฉื ื”ื ื™ืกื•ื™. ืœืื—ืจ ืžื›ืŸ ืœื—ืฅ ืขืœ ื”ืงื™ืฉื•ืจ ืฉืœื— ื ื™ืกื•ื™ ืžืžืฉ ื‘ืชื•ืš ื”ืงื•ื‘ืฅ ื”ื–ื”:

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  1. ืœืื—ืจ ื”ื’ืฉืช ื ื™ืกื•ื™ ื‘ื”ืฆืœื—ื” ื“ืจืš VS Code, ื‘ืฆื“ ื™ืžื™ืŸ ืฉืœ ืื–ื•ืจ ื”ื”ื•ื“ืขื•ืช, ืชืจืื” ืงื™ืฉื•ืจ ืืœ Azure ML Portal, ืฉื‘ื• ืชื•ื›ืœ ืœืขืงื•ื‘ ืื—ืจ ื”ืกื˜ื˜ื•ืก ื•ื”ืชื•ืฆืื•ืช ืฉืœ ื”ื ื™ืกื•ื™.

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
ืœืื—ืจ ืžื›ืŸ, ืืชื” ืชืžื™ื“ ื™ื›ื•ืœ ืœืžืฆื•ื ืื•ืชื• ื‘ืžื“ื•ืจ ื ื™ืกื•ื™ื™ื Azure ML Portal, ืื• ื‘ืžื“ื•ืจ ืœืžื™ื“ืช ืžื›ื•ื ื” ื‘ืชื›ืœืช ื‘ืจืฉื™ืžืช ื”ื ื™ืกื•ื™ื™ื:

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning

  1. ืื ืœืื—ืจ ืžื›ืŸ ื‘ื™ืฆืขืช ื›ืžื” ืชื™ืงื•ื ื™ื ื‘ืงื•ื“ ืื• ืฉื™ื ื™ืช ืืช ื”ืคืจืžื˜ืจื™ื, ื”ื”ืคืขืœื” ืžื—ื“ืฉ ืฉืœ ื”ื ื™ืกื•ื™ ืชื”ื™ื” ื”ืจื‘ื” ื™ื•ืชืจ ืžื”ื™ืจื” ื•ืงืœื”. ืขืœ ื™ื“ื™ ืœื—ื™ืฆื” ื™ืžื ื™ืช ืขืœ ืงื•ื‘ืฅ, ืชืจืื” ืคืจื™ื˜ ืชืคืจื™ื˜ ื—ื“ืฉ ื—ื–ื•ืจ ืขืœ ื”ืจื™ืฆื” ื”ืื—ืจื•ื ื” - ืคืฉื•ื˜ ื‘ื—ืจ ืื•ืชื•, ื•ื”ื ื™ืกื•ื™ ื™ืชื—ื™ืœ ืžื™ื“:

ืื™ืš ืœื”ืชื’ื‘ืจ ืขืœ ืคื—ื“ ื•ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-Azure Machine Learning
ืืชื” ืชืžื™ื“ ื™ื›ื•ืœ ืœืžืฆื•ื ืืช ื”ืชื•ืฆืื•ืช ืฉืœ ืžื“ื“ื™ื ืžื›ืœ ื”ื”ืฉืงื•ืช ื‘-Azure ML Portal, ืื™ืŸ ืฆื•ืจืš ืœืจืฉื•ื ืื•ืชื.

ืขื›ืฉื™ื• ืืชื” ื™ื•ื“ืข ืฉื”ืคืขืœืช ื ื™ืกื•ื™ื™ื ืขื Azure ML ื”ื™ื ืคืฉื•ื˜ื” ื•ืœืœื ื›ืื‘ื™ื, ื•ืืชื” ืžืงื‘ืœ ืžืกืคืจ ื™ืชืจื•ื ื•ืช ื ื—ืžื“ื™ื ื‘ื›ืš.

ืื‘ืœ ืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ื’ื ืืช ื”ื—ืกืจื•ื ื•ืช. ืœื“ื•ื’ืžื”, ืœืงื— ื”ืจื‘ื” ื™ื•ืชืจ ื–ืžืŸ ืœื”ืคืขื™ืœ ืืช ื”ืกืงืจื™ืคื˜. ื›ืžื•ื‘ืŸ, ืืจื™ื–ืช ื”ืกืงืจื™ืคื˜ ื‘ืงื•ื ื˜ื™ื™ื ืจ ื•ืคืจื™ืกื” ืฉืœื• ื‘ืฉืจืช ืœื•ืงื—ืช ื–ืžืŸ. ืื ื‘ืžืงื‘ื™ืœ ื”ืืฉื›ื•ืœ ื ื—ืชืš ืœื’ื•ื“ืœ ืฉืœ 0 ืฆืžืชื™ื, ื™ื™ืงื— ืขื•ื“ ื™ื•ืชืจ ื–ืžืŸ ืœื”ืคืขื™ืœ ืืช ื”ืžื›ื•ื ื” ื”ื•ื™ืจื˜ื•ืืœื™ืช, ื•ื›ืœ ื–ื” ื‘ื•ืœื˜ ืžืื•ื“ ื›ืฉืื ื—ื ื• ืžืชื ืกื™ื ื‘ืžืฉื™ืžื•ืช ืคืฉื•ื˜ื•ืช ื›ืžื• MNIST, ืฉื ืคืชืจื•ืช ืชื•ืš ื›ืžื” ืฉื ื™ื•ืช . ืขื ื–ืืช, ื‘ื—ื™ื™ื ื”ืืžื™ืชื™ื™ื, ื›ืืฉืจ ื”ืื™ืžื•ืŸ ื ืžืฉืš ืžืกืคืจ ืฉืขื•ืช, ืื• ืืคื™ืœื• ื™ืžื™ื ืื• ืฉื‘ื•ืขื•ืช, ื”ื–ืžืŸ ื”ื ื•ืกืฃ ื”ื–ื” ื”ื•ืคืš ืœื—ืกืจ ื—ืฉื™ื‘ื•ืช, ื‘ืžื™ื•ื—ื“ ืขืœ ืจืงืข ื”ื‘ื™ืฆื•ืขื™ื ื”ื’ื‘ื•ื”ื™ื ื”ืจื‘ื” ื™ื•ืชืจ ืฉืืฉื›ื•ืœ ืžื—ืฉื•ื‘ ื™ื›ื•ืœ ืœืกืคืง.

ืžื” ื”ืœืื”?

ืื ื™ ืžืงื•ื•ื” ืฉืœืื—ืจ ืงืจื™ืืช ืžืืžืจ ื–ื”, ืชื•ื›ืœ ื•ืชืฉืชืžืฉ ื‘-Azure ML ื‘ืขื‘ื•ื“ืชืš ื›ื“ื™ ืœื”ืคืขื™ืœ ืกืงืจื™ืคื˜ื™ื, ืœื ื”ืœ ืžืฉืื‘ื™ ืžื—ืฉื•ื‘ ื•ืœืื—ืกืŸ ืชื•ืฆืื•ืช ื‘ืื•ืคืŸ ืžืจื›ื–ื™. ืขื ื–ืืช, Azure ML ื™ื›ื•ืœ ืœืชืช ืœืš ืืคื™ืœื• ื™ื•ืชืจ ื™ืชืจื•ื ื•ืช!

ื‘ืชื•ืš ืกื‘ื™ื‘ืช ื”ืขื‘ื•ื“ื”, ืืชื” ื™ื›ื•ืœ ืœืื—ืกืŸ ื ืชื•ื ื™ื, ื•ื‘ื›ืš ืœื™ืฆื•ืจ ืžืื’ืจ ืžืจื›ื–ื™ ืขื‘ื•ืจ ื›ืœ ื”ืžืฉื™ืžื•ืช ืฉืœืš, ืฉืงืœ ืœื’ืฉืช ืืœื™ื•. ื‘ื ื•ืกืฃ, ืืชื” ื™ื›ื•ืœ ืœื”ืจื™ืฅ ื ื™ืกื•ื™ื™ื ืœื ืž-Visual Studio Code, ืืœื ื‘ืืžืฆืขื•ืช ื”-API - ื–ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ ื‘ืžื™ื•ื—ื“ ืื ืืชื” ืฆืจื™ืš ืœื‘ืฆืข ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ื”ื™ืคืจืคืจืžื˜ืจื™ื ื•ืฆืจื™ืš ืœื”ืจื™ืฅ ืืช ื”ืกืงืจื™ืคื˜ ืคืขืžื™ื ืจื‘ื•ืช ืขื ืคืจืžื˜ืจื™ื ืฉื•ื ื™ื. ื™ืชืจื” ืžื›ืš, ื˜ื›ื ื•ืœื•ื’ื™ื” ืžื™ื•ื—ื“ืช ืžื•ื‘ื ื™ืช ื‘-Azure ML ื”ื™ืคืจ ื“ืจื™ื™ื‘, ื”ืžืืคืฉืจ ืœืš ืœื‘ืฆืข ื—ื™ืคื•ืฉ ืžืกื•ื‘ืš ื™ื•ืชืจ ื•ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ื”ื™ืคืจืคืจืžื˜ืจื™ื. ืขืœ ื”ืืคืฉืจื•ื™ื•ืช ื”ืœืœื• ืื“ื‘ืจ ื‘ืคื•ืกื˜ ื”ื‘ื ืฉืœื™.

ืžืฉืื‘ื™ื ืžื•ืขื™ืœื™ื

ืœืžื™ื“ืข ื ื•ืกืฃ ืขืœ Azure ML, ื™ื™ืชื›ืŸ ืฉื”ืงื•ืจืกื™ื ื”ื‘ืื™ื ืฉืœ Microsoft Learn ืžื•ืขื™ืœื™ื:

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”