Skip to content

Latest commit

ย 

History

History
305 lines (227 loc) ยท 31.1 KB

File metadata and controls

305 lines (227 loc) ยท 31.1 KB

แž‘แžทแž“แŸ’แž“แž“แŸแž™แžœแžทแž‘แŸ’แž™แžถแž“แŸ…แž›แžพแž–แž–แž€แŸ– แžœแžทแž’แžธ "Azure ML SDK"

 Sketchnote by (@sketchthedocs)
แž‘แžทแž“แŸ’แž“แž“แŸแž™แžœแžทแž‘แŸ’แž™แžถแž“แŸ…แž›แžพแž–แž–แž€แŸ– Azure ML SDK - Sketchnote แžŠแŸ„แž™ @nitya

แžœแžแŸ’แžแžปแžแžถแžšแžถแž„แž˜แžถแžแžทแž€แžถแŸˆ

1. แž€แžถแžšแžŽแŸ‚แž“แžถแŸ†

1.1 Azure ML SDK แž‚แžบแž‡แžถแžขแŸ’แžœแžธ?

แžขแŸ’แž“แž€แžœแžทแž‘แŸ’แž™แžถแžŸแžถแžŸแŸ’แžแŸ’แžšแž‘แžทแž“แŸ’แž“แž“แŸแž™ แž“แžทแž„แžขแŸ’แž“แž€แžขแž—แžทแžœแžŒแŸ’แžแž“แŸ AI แž”แŸ’แžšแžพ Azure Machine Learning SDK แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแžแž“แžทแž„แžขแž“แžปแžœแžแŸ’แžแžœแžŠแŸ’แžŠแž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžถแžŸแŸŠแžธแž“แžŠแŸ‚แž›แž˜แžถแž“แž€แŸ’แž“แžปแž„แžŸแŸแžœแžถ Azure Machine LearningแŸ” แžขแŸ’แž“แž€แžขแžถแž…แž’แŸ’แžœแžพแž€แžถแžšแž‘แŸ†แž“แžถแž€แŸ‹แž‘แŸ†แž“แž„แž‡แžถแž˜แžฝแž™แžŸแŸแžœแžถแž“แŸแŸ‡แž“แŸ…แž€แŸ’แž“แžปแž„แž”แžšแžทแžŸแŸ’แžแžถแž“ Python แž˜แžฝแž™แžŽแžถแŸ— แžšแžฝแž˜แž˜แžถแž“ Jupyter Notebooks, Visual Studio Code แžฌ Python IDE แž–แŸแž‰แž…แžทแžแŸ’แžแžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ”

แžแŸ†แž”แž“แŸ‹แžŸแŸ†แžแžถแž“แŸ‹แŸ—แž“แŸƒ SDK แžšแžฝแž˜แž˜แžถแž“แŸ–

  • แžŸแŸ’แžœแŸ‚แž„แžšแž€ แžšแŸ€แž”แž…แŸ† แž“แžทแž„แž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž‡แžธแžœแžทแžแž‘แžถแŸ†แž„แž˜แžผแž›แž“แŸƒแž‘แžทแž“แŸ’แž“แž“แŸแž™แžŠแŸ‚แž›แžขแŸ’แž“แž€แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แŸ”
  • แž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž’แž“แž’แžถแž“แž–แž–แž€แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™ แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถ แž“แžทแž„แžšแŸ€แž”แž…แŸ†แž”แž‘แž–แžทแžŸแŸ„แž’แž“แŸแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ”
  • แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แžŠแŸ„แž™แž•แŸ’แž‘แžถแž›แŸ‹ แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžปแŸ†แž–แŸ’แž™แžผแž‘แŸแžšแž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“แžฌแž”แŸ’แžšแžพแž’แž“แž’แžถแž“แž–แž–แž€ แžšแžฝแž˜แž˜แžถแž“แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แžŠแŸ‚แž›แž›แŸ’แž”แžฟแž“แž›แžฟแž“แž‡แžถแž˜แžฝแž™ GPUแŸ”
  • แž”แŸ’แžšแžพแžœแžŠแŸ’แžŠแž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžถแžŸแŸŠแžธแž“แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžท แžŠแŸ‚แž›แž‘แž‘แžฝแž›แž”แžถแž“แž”แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ แž“แžทแž„แž‘แžทแž“แŸ’แž“แž“แŸแž™แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แŸ” แžœแžถแž’แŸ’แžœแžพแž€แžถแžšแžแŸ’แžšแžกแž”แŸ‹แž˜แŸแž’แŸ’แž™แŸ„แž”แžถแž™ แž“แžทแž„แž€แŸ†แžŽแžแŸ‹แžแž˜แŸ’แž›แŸƒ hyperparameters แžŠแžพแž˜แŸ’แž”แžธแžŸแŸ’แžœแŸ‚แž„แžšแž€แž˜แŸ‰แžผแžŠแŸ‚แž›แž›แŸ’แžขแž”แŸ†แž•แžปแžแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แŸ’แžšแžถแžŸแŸ’แžšแŸแž™แž‘แžถแž€แŸ‹แž‘แž„แž“แžผแžœแž€แžถแžšแž–แŸ’แž™แžถแž€แžšแžŽแŸแŸ”
  • แžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แžŸแŸแžœแŸแž”แŸ’แžœแŸแž”แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แž˜แŸ’แž›แŸ‚แž„แž˜แŸ‰แžผแžŠแŸ‚แž›แžŠแŸ‚แž›แž”แžถแž“แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž‘แŸ…แž‡แžถแžŸแŸแžœแžถ RESTful แžŠแŸ‚แž›แžขแžถแž…แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž”แžถแž“แž“แŸ…แž€แŸ’แž“แžปแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŽแžถแž˜แžฝแž™แŸ”

แžŸแžผแž˜แžŸแŸ’แžœแŸ‚แž„แž™แž›แŸ‹แž”แž“แŸ’แžแŸ‚แž˜แžขแŸ†แž–แžธ Azure Machine Learning SDK

แž“แŸ…แž€แŸ’แž“แžปแž„ แž˜แŸแžšแŸ€แž“แž˜แžปแž“ แž™แžพแž„แž”แžถแž“แžƒแžพแž‰แžšแž”แŸ€แž”แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“ แžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž› แž“แžทแž„แž”แŸ’แžšแžพแž˜แŸ‰แžผแžŠแŸ‚แž›แž€แŸ’แž“แžปแž„แžšแž”แŸ€แž” Low code/No codeแŸ” แž™แžพแž„แž”แžถแž“แž”แŸ’แžšแžพแž‘แžทแž“แŸ’แž“แž“แŸแž™ Heart Failure แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแž แž“แžทแž„แž˜แŸ‰แžผแžŠแŸ‚แž›แž–แŸ’แž™แžถแž€แžšแžŽแŸแž”แžšแžถแž‡แŸแž™แž”แŸแŸ‡แžŠแžผแž„แŸ” แž“แŸ…แž€แŸ’แž“แžปแž„แž˜แŸแžšแŸ€แž“แž“แŸแŸ‡ แž™แžพแž„แž“แžนแž„แž’แŸ’แžœแžพแžŠแžผแž…แž‚แŸ’แž“แžถแž‘แžถแŸ†แž„แžŸแŸ’แžšแžปแž„ แž”แŸ‰แžปแž“แŸ’แžแž”แŸ’แžšแžพ Azure Machine Learning SDK แŸ”

project-schema

1.2 แž–แŸ’แžšแžนแžแŸ’แžแžทแž€แžถแžšแžŽแŸแž”แŸ‰แžถแž“แŸ‹แžŸแŸ’แž€แžถแž›แŸ‹แž‡แŸ†แž„แžบแž”แžšแžถแž‡แŸแž™แž”แŸแŸ‡แžŠแžผแž„ แž“แžทแž„แž€แžถแžšแžŽแŸ‚แž“แžถแŸ†แžขแŸ†แž–แžธแž‘แžทแž“แŸ’แž“แž“แŸแž™

แž–แžทแž“แžทแžแŸ’แž™แž˜แžพแž› แž‘แžธแž“แŸแŸ‡ แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แŸ’แžšแžนแžแŸ’แžแžทแž€แžถแžšแžŽแŸแž”แŸ‰แžถแž“แŸ‹แžŸแŸ’แž€แžถแž›แŸ‹แž‡แŸ†แž„แžบแž”แžšแžถแž‡แŸแž™แž”แŸแŸ‡แžŠแžผแž„ แž“แžทแž„แž€แžถแžšแžŽแŸ‚แž“แžถแŸ†แž–แžธแž‘แžทแž“แŸ’แž“แž“แŸแž™แž‡แžถแž˜แžปแž“แŸ”

2. แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แž‡แžถแž˜แžฝแž™ Azure ML SDK

2.1 แž”แž„แŸ’แž€แžพแžแž€แž“แŸ’แž›แŸ‚แž„แž’แŸ’แžœแžพแž€แžถแžš Azure ML

แžŠแžพแž˜แŸ’แž”แžธแž•แŸ’แžŠแž›แŸ‹แž—แžถแž–แžŸแžถแž˜แž‰แŸ’แž‰ แž™แžพแž„แž“แžนแž„แž’แŸ’แžœแžพแž€แžถแžšแž“แŸ…แž›แžพ jupyter notebookแŸ” แžœแžถแž˜แžถแž“แž“แŸแž™แžแžถแžขแŸ’แž“แž€แž˜แžถแž“ Workspace แž“แžทแž„ compute instance แžšแžฝแž…แž แžพแž™แŸ” แž”แŸ’แžšแžŸแžทแž“แž”แžพแžขแŸ’แž“แž€แž˜แžถแž“ Workspace แžšแžฝแž… แžขแŸ’แž“แž€แžขแžถแž…แžšแŸ†แž€แžทแž›แž‘แŸ…แž•แŸ’แž“แŸ‚แž€ 2.3 แž€แžถแžšแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแž€แŸ’แž“แžปแž„แž—แŸ’แž›แžถแž˜แŸ”

แž”แžพแž˜แžทแž“แž˜แžถแž“ แžŸแžผแž˜แžขแž“แžปแžœแžแŸ’แžแžแžถแž˜แž€แžถแžšแžŽแŸ‚แž“แžถแŸ†แž“แŸ…แž•แŸ’แž“แŸ‚แž€ 2.1 แž”แž„แŸ’แž€แžพแžแž€แž“แŸ’แž›แŸ‚แž„แž’แŸ’แžœแžพแž€แžถแžš Azure ML แž“แŸ…แž€แŸ’แž“แžปแž„ แž˜แŸแžšแŸ€แž“แž˜แžปแž“ แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแž workspaceแŸ”

2.2 แž”แž„แŸ’แž€แžพแžแžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถ

แž“แŸ…แž€แŸ’แž“แžปแž„ แž€แž“แŸ’แž›แŸ‚แž„แž’แŸ’แžœแžพแž€แžถแžš Azure ML แžŠแŸ‚แž›แž™แžพแž„แž”แžถแž“แž”แž„แŸ’แž€แžพแžแž˜แžปแž“แž“แŸแŸ‡ แž…แžผแž›แž‘แŸ…แž˜แŸ‰แžบแž“แžปแž™ compute แž แžพแž™แžขแŸ’แž“แž€แž“แžนแž„แžƒแžพแž‰แž’แž“แž’แžถแž“แž‚แžŽแž“แžถแž•แŸ’แžŸแŸแž„แŸ—แžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžšแžถแž”แŸ‹

compute-instance-1

แž…แž„แŸ‹แž”แž„แŸ’แž€แžพแžแžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถแžŠแžพแž˜แŸ’แž”แžธแž•แŸ’แžŠแž›แŸ‹แžŸแŸแžœแžถแž‘แŸ…แžšแŸ€แž”แž…แŸ†แž˜แžฝแž™แžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถ jupyter แŸ”

  1. แž…แžปแž…แž”แŸŠแžผแžแžปแž„ + NewแŸ”
  2. แž”แŸ†แž–แŸแž‰แžˆแŸ’แž˜แŸ„แŸ‡แžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถแžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ”
  3. แž‡แŸ’แžšแžพแžŸแžขแž„แŸ’แž‚แž—แžถแž–แž—แžถแž‚แž…แŸ’แžšแžพแž“แŸ– CPU แžฌ GPU, แž‘แŸ†แž แŸ† VM แž“แžทแž„ แž…แŸ†แž“แžฝแž“ coreแŸ”
  4. แž…แžปแž…แž”แŸŠแžผแžแžปแž„ Create แŸ”

แžขแž”แžขแžšแžŸแžถแž‘แžš! แžขแŸ’แž“แž€แž‘แžพแž”แž”แž„แŸ’แž€แžพแžแžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถแŸ” แž™แžพแž„แž“แžนแž„แž”แŸ’แžšแžพแžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถแž“แŸแŸ‡แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแž€แŸ’แž“แžปแž„แž•แŸ’แž“แŸ‚แž€ แž€แžถแžšแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแŸ”

2.3 แž€แžถแžšแž•แŸ’แž‘แžปแž€แž‘แžทแž“แŸ’แž“แž“แŸแž™

แžŸแžผแž˜แž™แŸ„แž„แž‘แŸ… แž˜แŸแžšแŸ€แž“แž˜แžปแž“ แž€แŸ’แž“แžปแž„แž•แŸ’แž“แŸ‚แž€ 2.3 แž€แžถแžšแž•แŸ’แž‘แžปแž€แž‘แžทแž“แŸ’แž“แž“แŸแž™ แž”แŸ’แžšแžŸแžทแž“แž”แžพแžขแŸ’แž“แž€แž˜แžทแž“แž‘แžถแž“แŸ‹แž•แŸ’แž‘แžปแž€แž‘แžทแž“แŸ’แž“แž“แŸแž™แžกแžพแž™แŸ”

2.4 แž€แžถแžšแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถ

แž€แŸ†แžŽแžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹: แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‡แŸ†แž แžถแž“แž”แž“แŸ’แž‘แžถแž”แŸ‹ แžขแŸ’แž“แž€แžขแžถแž…แž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแžแŸ’แž˜แžธแž–แžธแžŠแžพแž˜ แžฌแžขแžถแž…แž•แŸ’แž‘แžปแž€แžกแžพแž„ แžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแžŠแŸ‚แž›แž™แžพแž„แž”แžถแž“แž”แž„แŸ’แž€แžพแž แž‡แžถแž˜แžฝแž™ Azure ML Studio แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ” แžŠแžพแž˜แŸ’แž”แžธแž•แŸ’แž‘แžปแž€แžกแžพแž„ แž‚แŸ’แžšแžถแž“แŸ‹แžแŸ‚แž…แžปแž…แž˜แŸ‰แžบแž“แžปแž™ "Notebook" แž แžพแž™แž•แŸ’แž‘แžปแž€แžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแž…แžผแž›แŸ”

แžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแž˜แžถแž“แžŸแžถแžšแŸˆแžŸแŸ†แžแžถแž“แŸ‹แžแŸ’แž›แžถแŸ†แž„แž…แŸ†แž–แŸ„แŸ‡แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‘แžทแž“แŸ’แž“แž“แŸแž™แžœแžทแž‘แŸ’แž™แžถแŸ” แžœแžถแžขแžถแž…แž”แŸ’แžšแžพแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžขแž“แžปแžœแžแŸ’แžแž€แžถแžšแžœแžทแž—แžถแž‚แž‘แžทแž“แŸ’แž“แž“แŸแž™แžŸแŸ’แžœแŸ‚แž„แžšแž€ (EDA), แž แŸ…แž‚แžŽแž“แžถแž€แž˜แŸ’แž˜แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›, แž แŸ…แž‚แžŽแž“แžถแž€แž˜แŸ’แž˜แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ endpoint แŸ”

แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถ แž™แžพแž„แžแŸ’แžšแžผแžœแž€แžถแžš compute node แžŠแŸ‚แž›แž”แž˜แŸ’แžšแžพแžงแž”แž€แžšแžŽแŸ jupyter notebookแŸ” แžแŸ’แžšแžกแž”แŸ‹แž‘แŸ… แž€แž“แŸ’แž›แŸ‚แž„แž’แŸ’แžœแžพแž€แžถแžš Azure ML แž แžพแž™แž…แžปแž…แž›แžพ Compute instancesแŸ” แž€แŸ’แž“แžปแž„แž”แž‰แŸ’แž‡แžธ compute instances แžขแŸ’แž“แž€แž‚แžฝแžšแžแŸ‚แžƒแžพแž‰ แžงแž”แž€แžšแžŽแŸแž‚แžŽแž“แžถแžŠแŸ‚แž›แž”แžถแž“แž”แž„แŸ’แž€แžพแžแž–แžธแž˜แžปแž“แŸ”

  1. แž“แŸ…แž€แŸ’แž“แžปแž„แž•แŸ’แž“แŸ‚แž€ Applications แž…แžปแž…แž›แžพแž‡แž˜แŸ’แžšแžพแžŸ JupyterแŸ”
  2. แžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™แž”แŸ’แžšแžขแž”แŸ‹ "Yes, I understand" แž แžพแž™แž…แžปแž…แž”แŸŠแžผแžแžปแž„ ContinueแŸ” notebook-1
  3. แžœแžถแž“แžนแž„แž”แžพแž€แž•แŸ’แž‘แžถแŸ†แž„แžšแžปแž€แžšแž€แžแŸ’แž˜แžธแž‡แžถแž˜แžฝแž™แžงแž”แž€แžšแžŽแŸ jupyter notebook แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ” แž…แžปแž…แž”แŸŠแžผแžแžปแž„ "New" แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแžแžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถแžแŸ’แž˜แžธแŸ”

notebook-2

แž–แŸแž›แž“แŸแŸ‡แžŠแŸ‚แž›แž™แžพแž„แž˜แžถแž“แžŸแŸ€แžœแž—แŸ…แž€แŸ†แžŽแžแŸ‹แžแŸ’แžšแžถ แžขแžถแž…แž…แžถแž”แŸ‹แž•แŸ’แžŠแžพแž˜แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แž‡แžถแž˜แžฝแž™ Azure ML SDK แž”แžถแž“แŸ”

2.5 แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›

แžŠแžพแž˜แž‚แŸ แž”แŸ’แžšแžŸแžทแž“แž”แžพแžขแŸ’แž“แž€แž˜แžถแž“แž€แžถแžšแžŸแž„แŸ’แžŸแŸแž™แŸ” แžŸแžผแž˜แž™แŸ„แž„แž‘แŸ… แžฏแž€แžŸแžถแžš Azure ML SDKแŸ” แžœแžถแž˜แžถแž“แž–แŸแžแŸŒแž˜แžถแž“แž…แžถแŸ†แž”แžถแž…แŸ‹แž‘แžถแŸ†แž„แž˜แžผแž›แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž™แž›แŸ‹แžขแŸ†แž–แžธแž˜แŸ‰แžผแžŒแžปแž›แž“แŸ…แž€แŸ’แž“แžปแž„แž˜แŸแžšแŸ€แž“แž“แŸแŸ‡แŸ”

2.5.1 แž€แžถแžšแžแŸ†แžกแžพแž„ Workspace, experiment, compute cluster แž“แžทแž„แž‘แžทแž“แŸ’แž“แž“แŸแž™

แžขแŸ’แž“แž€แžแŸ’แžšแžผแžœแž•แŸ’แž‘แžปแž€ workspace แž–แžธแžฏแž€แžŸแžถแžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แžผแžŠแžŠแžผแž…แžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ–

from azureml.core import Workspace
ws = Workspace.from_config()

แžœแžถแž‚แžŽแž“แžถแžแžถแžขแžแžทแžแžทแž‡แž“แž’แžถแžแžปแž”แŸ’แžšแž—แŸแž‘ Workspace แžŠแŸ‚แž›แž”แž„แŸ’แž แžถแž‰แžŸแž€แž˜แŸ’แž˜แž—แžถแž– workspaceแŸ” แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€ แžขแŸ’แž“แž€แžแŸ’แžšแžผแžœแž”แž„แŸ’แž€แžพแž experiment แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แžผแžŠแžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ–

from azureml.core import Experiment
experiment_name = 'aml-experiment'
experiment = Experiment(ws, experiment_name)

แžŠแžพแž˜แŸ’แž”แžธแž‘แž‘แžฝแž›แž”แžถแž“ แžฌแž”แž„แŸ’แž€แžพแž experiment แž–แžธ workspace แžขแŸ’แž“แž€แž…แžถแŸ†แž”แžถแž…แŸ‹แžแŸ’แžšแžผแžœแžŸแŸ’แž“แžพแžŸแžปแŸ†แž–แžทแž“แžทแžแŸ’แž™ experiment แžŠแŸ„แž™แž”แŸ’แžšแžพแžˆแŸ’แž˜แŸ„แŸ‡ experiment แŸ” แžˆแŸ’แž˜แŸ„แŸ‡ experiment แžแŸ’แžšแžผแžœแž˜แžถแž“แž…แŸ†แž“แžฝแž“แžแžฝแžขแž€แŸ’แžŸแžš 3 แž‘แŸ… 36 แžแžฝ แž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž‡แžถแž˜แžฝแž™แžขแž€แŸ’แžŸแžšแžฌแž›แŸแž แž แžพแž™แžขแžถแž…แž˜แžถแž“แžแŸ‚แžขแž€แŸ’แžŸแžš แž›แŸแž แž€แŸ’แž”แŸ€แžŸแž€แŸ’แžšแŸ„แž˜ แž“แžทแž„แžแŸ’แž‘แž„แŸ‹ (-) แžแŸ‚แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แŸ” แž”แŸ’แžšแžŸแžทแž“แž”แžพ experiment แž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แžšแž€แžƒแžพแž‰แž“แŸ…แž€แŸ’แž“แžปแž„ workspace แž“แŸ„แŸ‡แž’แŸ’แžœแžพแž€แžถแžšแž”แž„แŸ’แž€แžพแž experiment แžแŸ’แž˜แžธแž˜แžฝแž™แŸ”

แžฅแžกแžผแžœแž“แŸแŸ‡ แžขแŸ’แž“แž€แžแŸ’แžšแžผแžœแž”แž„แŸ’แž€แžพแžแž€แŸ’แžšแžปแž˜แž‚แžŽแž“แžถแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“ แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แžผแžŠแžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ” แž…แŸ†แžŽแžถแŸ†แžแžถแž‡แŸ†แž แžถแž“แž“แŸแŸ‡แž”แŸ’แžšแž แŸ‚แž›แž”แŸ’แžšแžถแŸ†แž“แžถแž‘แžธแŸ”

from azureml.core.compute import AmlCompute

aml_name = "heart-f-cluster"
try:
    aml_compute = AmlCompute(ws, aml_name)
    print('Found existing AML compute context.')
except:
    print('Creating new AML compute context.')
    aml_config = AmlCompute.provisioning_configuration(vm_size = "Standard_D2_v2", min_nodes=1, max_nodes=3)
    aml_compute = AmlCompute.create(ws, name = aml_name, provisioning_configuration = aml_config)
    aml_compute.wait_for_completion(show_output = True)

cts = ws.compute_targets
compute_target = cts[aml_name]

แžขแŸ’แž“แž€แžขแžถแž…แž‘แž‘แžฝแž›แž™แž€แž‘แžทแž“แŸ’แž“แž“แŸแž™แž–แžธ workspace แžŠแŸ„แž™แž”แŸ’แžšแžพแžˆแŸ’แž˜แŸ„แŸ‡ dataset แžŠแžผแž…แžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ–

dataset = ws.datasets['heart-failure-records']
df = dataset.to_pandas_dataframe()
df.describe()

2.5.2 แž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ AutoML แž“แžทแž„แž€แžถแžšแž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“

แžŠแžพแž˜แŸ’แž”แžธแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ AutoML แž”แŸ’แžšแžพแžแŸ’แž“แžถแž€แŸ‹ AutoMLConfig classแŸ”

แžŠแžผแž…แž”แžถแž“แž–แžŽแŸŒแž“แžถแž€แŸ’แž“แžปแž„แžฏแž€แžŸแžถแžš แž˜แžถแž“แž–แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžšแž…แŸ’แžšแžพแž“แžŠแŸ‚แž›แžขแŸ’แž“แž€แžขแžถแž…แž›แŸแž„แž”แžถแž“แŸ” แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‚แž˜แŸ’แžšแŸ„แž„แž“แŸแŸ‡ แž™แžพแž„แž“แžนแž„แž”แŸ’แžšแžพแž–แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžšแžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ–

  • experiment_timeout_minutes: แž–แŸแž›แžœแŸแž›แžถแžขแžแžทแž”แžšแž˜แžถ (แž‡แžถ แž“แžถแž‘แžธ) แžŠแŸ‚แž›แž€แžถแžšแž”แŸ’แžšแžŽแžถแŸ†แž„แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฒแŸ’แž™แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž˜แžปแž“แžœแžถแžแŸ’แžšแžผแžœแž•แŸ’แžขแžถแž€แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžท แž“แžทแž„แž›แž‘แŸ’แž’แž•แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž แžถแž‰แŸ”
  • max_concurrent_iterations: แž…แŸ†แž“แžฝแž“แž”แž“แŸ’แž‘แžถแž”แŸ‹แž”แž“แŸ’แžŸแŸ†แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž›แžพแž€แžŠแŸ†แž”แžผแž„แžขแžถแž…แž˜แžถแž“แž”แžถแž“แŸ”
  • primary_metric: แž˜แŸแžแŸ’แžšแžทแž€แžŸแŸ†แžแžถแž“แŸ‹แžŠแŸ‚แž›แž”แŸ’แžšแžพแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แŸ†แžŽแžแŸ‹แžŸแŸ’แžแžถแž“แž—แžถแž– experimentแŸ”
  • compute_target: แž‚แŸ„แž›แžŠแŸ…แž€แžปแŸ†แž–แŸ’แž™แžผแž‘แŸแžšแžŠแŸ‚แž›แž”แŸ’แžšแžพแžŠแžพแž˜แŸ’แž”แžธแžšแžแŸ‹ Automated Machine Learning experimentแŸ”
  • task: แž”แŸ’แžšแž—แŸแž‘แž—แžถแžšแž€แžทแž…แŸ’แž…แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแŸ” แžแž˜แŸ’แž›แŸƒแžขแžถแž…แž‡แžถ 'classification', 'regression', แžฌ 'forecasting' แžขแžถแžŸแŸ’แžšแŸแž™แž›แžพแž”แŸ’แžšแž—แŸแž‘แž”แž‰แŸ’แž แžถ Automated MLแŸ”
  • training_data: แž‘แžทแž“แŸ’แž“แž“แŸแž™แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แŸ’แžšแžพแž“แŸ…แž€แŸ’แž“แžปแž„ experimentแŸ” แžแŸ’แžšแžผแžœแž˜แžถแž“แž‘แžถแŸ†แž„แž›แž€แŸ’แžแžŽแŸˆแž”แžŽแŸ’แžแžถแž› แž“แžทแž„แž‡แžฝแžšแžˆแžšแž”แž„แŸ’แž แžถแž‰แžŸแŸ’แž›แžถแž€ (แžขแžถแž…แž˜แžถแž“แž‡แžฝแžšแžˆแžšแžŸแž˜แŸ’แž„แžถแžแŸ‹แž‘แŸ†แž„แž“แŸ‹)
  • label_column_name: แžˆแŸ’แž˜แŸ„แŸ‡แž‡แžฝแžšแžˆแžšแž”แž„แŸ’แž แžถแž‰แžŸแŸ’แž›แžถแž€แŸ”
  • path: แž•แŸ’แž›แžผแžœแž–แŸแž‰แž‘แŸ…แžแžแž‚แž˜แŸ’แžšแŸ„แž„ Azure Machine LearningแŸ”
  • enable_early_stopping: แžแžถแžแžพแžขแž“แžปแž‰แŸ’แž‰แžถแžแžฒแŸ’แž™แž”แž‰แŸ’แžˆแž”แŸ‹แž˜แžปแž“แž–แŸแž›แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแž€แžถแž›แžŽแžถแž˜แžฝแž™ แž”แžพแž–แžทแž“แŸ’แž‘แžปแž“แŸ…แžแŸ‚แž˜แžทแž“แž€แŸ†แž–แžปแž„แž€แžพแž“แžกแžพแž„แž€แŸ’แž“แžปแž„แžšแž™แŸˆแž–แŸแž›แžแŸ’แž›แžธแŸ”
  • featurization: แžŸแž‰แŸ’แž‰แžถแžŸแŸ†แž‚แžถแž›แŸ‹แžแžถแžแžพแž‡แŸ†แž แžถแž“ featurization แž‚แžฝแžšแžแŸ’แžšแžผแžœแž’แŸ’แžœแžพแžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžท แžฌแž˜แžทแž“แž’แŸ’แžœแžพ แžฌแž”แŸ’แžšแžพ featurization แž”แž‘แž–แžทแžŸแŸ„แž’แž“แŸแž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“แŸ”
  • debug_log: แžฏแž€แžŸแžถแžšแž”แž„แŸ’แž แžถแž‰แž€แŸ†แžŽแžแŸ‹แž แŸแžแžปแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž€แŸ’แž“แžปแž„แž€แžถแžšแžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™แž€แŸ†แž แžปแžŸแŸ”
from azureml.train.automl import AutoMLConfig

project_folder = './aml-project'

automl_settings = {
    "experiment_timeout_minutes": 20,
    "max_concurrent_iterations": 3,
    "primary_metric" : 'AUC_weighted'
}

automl_config = AutoMLConfig(compute_target=compute_target,
                             task = "classification",
                             training_data=dataset,
                             label_column_name="DEATH_EVENT",
                             path = project_folder,  
                             enable_early_stopping= True,
                             featurization= 'auto',
                             debug_log = "automl_errors.log",
                             **automl_settings
                            )

แžฅแžกแžผแžœแžขแŸ’แž“แž€แž”แžถแž“แž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แžšแžฝแž… แžขแŸ’แž“แž€แžขแžถแž…แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แž˜แŸ‰แžผแžŠแŸ‚แž›แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แžผแžŠแžแžถแž„แž€แŸ’แžšแŸ„แž˜แŸ” แž‡แŸ†แž แžถแž“แž“แŸแŸ‡แžขแžถแž…แž…แŸ†แžŽแžถแž™แž–แŸแž›แžŠแž›แŸ‹แž˜แžฝแž™แž˜แŸ‰แŸ„แž„ แžขแžถแžŸแŸ’แžšแŸแž™แž›แžพแž‘แŸ†แž แŸ† cluster แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แŸ”

remote_run = experiment.submit(automl_config)

แžขแŸ’แž“แž€แžขแžถแž…แžขแž“แžปแžœแžแŸ’แžแžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‡แžถแž˜แžฝแž™ widget RunDetails แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž แžถแž‰แž“แžผแžœแž”แž‘แž–แžทแžŸแŸ„แž’แž“แŸแž“แžถแž“แžถแŸ”

from azureml.widgets import RunDetails
RunDetails(remote_run).show()

3. แž€แžถแžšแžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แž˜แŸ‰แžผแžŠแŸ‚แž› แž“แžทแž„แž€แžถแžšแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ endpoint แž‡แžถแž˜แžฝแž™ Azure ML SDK

3.1 แžšแž€แŸ’แžŸแžถแž‘แžปแž€แž˜แŸ‰แžผแžŠแŸ‚แž›แž›แŸ’แžขแž”แŸ†แž•แžปแž

remote_run แž‡แžถแžขแžแžทแžแžทแž‡แž“แž”แŸ’แžšแž—แŸแž‘ AutoMLRunแŸ” แžขแžแžทแžแžทแž‡แž“แž“แŸแŸ‡แžšแžฝแž˜แž˜แžถแž“แžœแžทแž’แžธแžŸแžถแžŸแŸ’แžšแŸ’แž get_output() แžŠแŸ‚แž›แžแŸ’แžšแžกแž”แŸ‹แž˜แž€แž“แžผแžœแžŠแŸ„แž™แžšแžแŸ‹แž›แŸ’แžขแž”แŸ†แž•แžปแž แž“แžทแž„แž˜แŸ‰แžผแžŠแŸ‚แž›แž”แžถแž“แžšแŸ€แž”แž…แŸ†แžŸแŸ’แžšแžถแž”แŸ‹แŸ”

best_run, fitted_model = remote_run.get_output()

แžขแŸ’แž“แž€แžขแžถแž…แž˜แžพแž›แž”แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžšแžŠแŸ‚แž›แž”แŸ’แžšแžพแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž˜แŸ‰แžผแžŠแŸ‚แž›แž›แŸ’แžขแž”แŸ†แž•แžปแžแžŠแŸ„แž™แž€แžถแžšแž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž– fitted_model แž“แžทแž„แž˜แžพแž›แž›แž€แŸ’แžแžŽ:แž—แžถแž–แžšแž”แžŸแŸ‹แž˜แŸ‰แžผแžŠแŸ‚แž›แž›แŸ’แžขแž”แŸ†แž•แžปแžแžŠแŸ„แž™แž”แŸ’แžšแžพแžœแžทแž’แžธแžŸแžถแžŸแŸ’แžšแŸ’แž get_properties()แŸ”

best_run.get_properties()

แžฅแžกแžผแžœแž“แŸแŸ‡แž…แžปแŸ‡แž”แž‰แŸ’แž‡แžธแž˜แŸ‰แžผแžŠแŸ‚แž›แž‡แžถแž˜แžฝแž™แžœแžทแž’แžธแžŸแžถแžŸแŸ’แžšแŸ’แž register_modelแŸ”

model_name = best_run.properties['model_name']
script_file_name = 'inference/score.py'
best_run.download_file('outputs/scoring_file_v_1_0_0.py', 'inference/score.py')
description = "aml heart failure project sdk"
model = best_run.register_model(model_name = model_name,
                                model_path = './outputs/',
                                description = description,
                                tags = None)

3.2 แž€แžถแžšแžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แž˜แŸ‰แžผแžŠแŸ‚แž›

แž€แŸ’แžšแŸ„แž™แž–แŸแž›แž˜แŸ‰แžผแžŠแŸ‚แž›แž›แŸ’แžขแž”แŸ†แž•แžปแžแžแŸ’แžšแžผแžœแž”แžถแž“แžšแž€แŸ’แžŸแžถแž‘แžปแž€ แž™แžพแž„แžขแžถแž…แžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แžœแžถแžŠแŸ„แž™แž”แŸ’แžšแžพแžแŸ’แž“แžถแž€แŸ‹ InferenceConfigแŸ” InferenceConfig แž‡แžถแžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แžšแžทแžŸแŸ’แžแžถแž“แž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“ แžŠแŸ‚แž›แž”แŸ’แžšแžพแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แž˜แŸ‰แžผแžŠแŸ‚แž›แŸ” แžแŸ’แž“แžถแž€แŸ‹ AciWebservice แž‡แžถแž‚แŸ†แžšแžผแž˜แŸ‰แžผแžŠแŸ‚แž›แž”แžŽแŸ’แžแŸ„แŸ‡แžขแžถแžŸแž“แŸ’แž“แžŠแŸ‚แž›แž”แžถแž“แžŠแžถแž€แŸ‹แž‡แžถแžŸแŸแžœแžถ endpoint แž“แŸ…แž›แžพ Azure Container InstancesแŸ” แžŸแŸแžœแžถแžŠแŸ‚แž›แž”แžถแž“แžŠแžถแž€แŸ‹แž‡แžถแž˜แžปแžแž„แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแž–แžธแž˜แŸ‰แžผแžŠแŸ‚แž› script แž“แžทแž„แžฏแž€แžŸแžถแžšแž—แŸ’แž‡แžถแž”แŸ‹แž•แŸ’แžŸแŸแž„แŸ—แŸ” แžŸแŸแžœแžถแžœแŸแž”แž“แŸ„แŸ‡แž‚แžบแž‡แžถแžขแŸŠแžธแž˜แž—แŸแžš HTTP แž˜แžถแž“แžแžปแž›แŸ’แž™แž—แžถแž–แž”แž“แŸ’แž‘แžปแž€ แž“แžทแž„แž˜แžถแž“ REST APIแŸ” แžขแŸ’แž“แž€แžขแžถแž…แž•แŸ’แž‰แžพแž‘แžทแž“แŸ’แž“แž“แŸแž™แž‘แŸ… API แž“แŸแŸ‡ แž“แžทแž„แž‘แž‘แžฝแž›แž™แž€แž€แžถแžšแž–แŸ’แž™แžถแž€แžšแžŽแŸแžแžถแž˜แž˜แŸ‰แžผแžŠแŸ‚แž›แŸ”

แž˜แŸ‰แžผแžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แžŠแžถแž€แŸ‹แž”แž‰แŸ’แž…แžผแž›แžŠแŸ„แž™แž”แŸ’แžšแžพแžœแžทแž’แžธแžŸแžถแžŸแŸ’แžšแŸ’แž deployแŸ”

from azureml.core.model import InferenceConfig, Model
from azureml.core.webservice import AciWebservice

inference_config = InferenceConfig(entry_script=script_file_name, environment=best_run.get_environment())

aciconfig = AciWebservice.deploy_configuration(cpu_cores = 1,
                                               memory_gb = 1,
                                               tags = {'type': "automl-heart-failure-prediction"},
                                               description = 'Sample service for AutoML Heart Failure Prediction')

aci_service_name = 'automl-hf-sdk'
aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)
aci_service.wait_for_deployment(True)
print(aci_service.state)

แž‡แŸ†แž แžถแž“แž“แŸแŸ‡แž‚แžฝแžšแžแŸ‚แž…แŸ†แžŽแžถแž™แž–แŸแž›แž”แŸ‰แžปแž“แŸ’แž˜แžถแž“แž“แžถแž‘แžธแŸ”

3.3 แž€แžถแžšแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ endpoint

แžขแŸ’แž“แž€แž”แŸ’แžšแžพ endpoint แžŠแŸ„แž™แž”แž„แŸ’แž€แžพแžแž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แž‚แŸ†แžšแžผแŸ–

data = {
    "data":
    [
        {
            'age': "60",
            'anaemia': "false",
            'creatinine_phosphokinase': "500",
            'diabetes': "false",
            'ejection_fraction': "38",
            'high_blood_pressure': "false",
            'platelets': "260000",
            'serum_creatinine': "1.40",
            'serum_sodium': "137",
            'sex': "false",
            'smoking': "false",
            'time': "130",
        },
    ],
}

test_sample = str.encode(json.dumps(data))

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€แžขแŸ’แž“แž€แžขแžถแž…แž•แŸ’แž‰แžพแž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แž“แŸแŸ‡แž‘แŸ…แž˜แŸ‰แžผแžŠแŸ‚แž›แžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž–แŸ’แž™แžถแž€แžšแžŽแŸแŸ–

response = aci_service.run(input_data=test_sample)
response

แž“แŸแŸ‡แž‚แžฝแžšแžแŸ’แžšแžผแžœแž”แž‰แŸ’แž…แžผแž“ '{"result": [false]}'แŸ” แž“แŸแŸ‡แž˜แžถแž“แž“แŸแž™แžแžถแž€แžถแžšแž”แž‰แŸ’แž…แžผแž›แžขแŸ’แž“แž€แž‡แŸ†แž„แžบแžŠแŸ‚แž›แž™แžพแž„แž”แžถแž“แž•แŸ’แž‰แžพแž‘แŸ…แž€แžถแž“แŸ‹แž…แŸ†แž“แžปแž…แž”แž‰แŸ’แž…แž”แŸ‹แž”แžถแž“แž”แž„แŸ’แž€แžพแžแž€แžถแžšแž–แŸ’แž™แžถแž€แžšแžŽแŸ false แžŠแŸ‚แž›แž˜แžถแž“แž“แŸแž™แžแžถแž”แžปแž‚แŸ’แž‚แž›แž“แŸแŸ‡แž˜แžทแž“แž˜แžถแž“แžŸแž˜แžถแž‡แžทแž€แž˜แŸ’แž˜แž‡แŸ†แž„แžบแž”แŸแŸ‡แžŠแžผแž„แž”แžถแž“แž‘แŸแŸ”

แžŸแžผแž˜แžขแž”แžขแžšแžŸแžถแž‘แžš! แžขแŸ’แž“แž€แž‘แžพแž”แžแŸ‚แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž˜แŸ‰แžผแžŠแŸ‚แž›แžŠแŸ‚แž›แž”แžถแž“แž”แž„แŸ’แž แŸ„แŸ‡แž“แžทแž„แž แŸ’แžœแžนแž€แž แŸ’แžœแžบแž“แž›แžพ Azure ML แž‡แžถแž˜แžฝแž™ Azure ML SDK แž”แžถแž“แž‡แŸ„แž‚แž‡แŸแž™!

แžŸแž˜แŸ’แž‚แžถแž›แŸ‹: แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแžขแŸ’แž“แž€แž”แž‰แŸ’แž…แž”แŸ‹แž‚แž˜แŸ’แžšแŸ„แž„ แžŸแžผแž˜แž€แžปแŸ†แž—แŸ’แž›แŸแž…แž›แžปแž”แž’แž“แž’แžถแž“แž‘แžถแŸ†แž„แžขแžŸแŸ‹แŸ”

๐Ÿš€ ์ฑŒ๋ฆฐ์ง€

แž˜แžถแž“แžšแžฟแž„แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแž‡แžถแž…แŸ’แžšแžพแž“แžŠแŸ‚แž›แžขแŸ’แž“แž€แžขแžถแž…แž’แŸ’แžœแžพแž”แžถแž“แžแžถแž˜แžšแž™แŸˆ SDK แžแŸ‚แžŸแž„แŸ’แžƒแžนแž˜แžแžถแž™แžพแž„แž˜แžทแž“แžขแžถแž…แž˜แžพแž›แž‘แžถแŸ†แž„แžขแžŸแŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž˜แŸแžšแŸ€แž“แž“แŸแŸ‡แž‘แŸแŸ” แž”แŸ‰แžปแž“แŸ’แžแŸ‚แžŠแŸ†แžŽแžนแž„แž›แŸ’แžขแž‚แžบแž€แžถแžšแžšแŸ€แž“แžšแž”แŸ€แž”แž‘แŸ…แž•แŸ’แžแžฝแž…แž•แŸ’แžแžพแž˜แž˜แžพแž›แžฏแž€แžŸแžถแžš SDK แžขแžถแž…แž“แžถแŸ†แžขแŸ’แž“แž€แž‘แŸ…แž†แŸ’แž„แžถแž™แž‘แŸ€แžแŸ” แžŸแžผแž˜แž˜แžพแž›แžฏแž€แžŸแžถแžš Azure ML SDK แž แžพแž™แžŸแŸ’แžœแŸ‚แž„แžšแž€แžแŸ’แž“แžถแž€แŸ‹ Pipeline แžŠแŸ‚แž›แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž”แž„แŸ’แž€แžพแž pipeline แž”แžถแž“แŸ” Pipeline แž‚แžบแž‡แžถแž€แžถแžšแž”แŸ’แžšแž˜แžผแž›แž•แŸ’แžแžปแŸ†แž‡แŸ†แž แžถแž“แžŠแŸ‚แž›แžขแžถแž…แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž‡แžถแž€แžถแžšแž„แžถแžšแž”แžถแž“แŸ”

แžŠแžนแž€แž“แžถแŸ†แŸ– แž…แžผแž›แž‘แŸ…แž‘แžธ SDK documentation แž แžพแž™แžœแžถแž™แž–แžถแž€แŸ’แž™แž‚แž“แŸ’แž›แžนแŸ‡แž€แŸ’แž“แžปแž„แž”แŸ’แžšแžขแž”แŸ‹แžŸแŸ’แžœแŸ‚แž„แžšแž€แžŠแžผแž…แž‡แžถ "Pipeline"แŸ” แžขแŸ’แž“แž€แž‚แžฝแžšแžแŸ‚แžƒแžพแž‰แžแŸ’แž“แžถแž€แŸ‹ azureml.pipeline.core.Pipeline แž“แŸ…แž€แŸ’แž“แžปแž„แž›แž‘แŸ’แž’แž•แž›แžŸแŸ’แžœแŸ‚แž„แžšแž€แŸ”

แžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™ แž“แžทแž„แžšแŸ€แž“แž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“

แž“แŸ…แž˜แŸแžšแŸ€แž“แž“แŸแŸ‡ แžขแŸ’แž“แž€แž”แžถแž“แžšแŸ€แž“แž–แžธแžšแž”แŸ€แž”แž แŸ’แžœแžนแž€แž แŸ’แžœแžบแž“ แž”แž„แŸ’แž แŸ„แŸ‡ แž“แžทแž„แž”แŸ’แžšแžพแž˜แŸ‰แžผแžŠแŸ‚แž›แž€แŸ’แž“แžปแž„แž€แžถแžšแž–แŸ’แž™แžถแž€แžšแžŽแŸแž แžถแž“แžทแž—แŸแž™แžˆแžบแž”แŸแŸ‡แžŠแžผแž„แž‡แžถแž˜แžฝแž™ Azure ML SDK แž“แŸ…แž›แžพแž–แž–แž€แŸ” แžŸแžผแž˜แž–แžทแž“แžทแžแŸ’แž™แž˜แžพแž›แžฏแž€แžŸแžถแžš แžฏแž€แžŸแžถแžš แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แžขแŸ†แž–แžธ Azure ML SDKแŸ” แžŸแžถแž€แž›แŸ’แž”แž„แž”แž„แŸ’แž€แžพแžแž˜แŸ‰แžผแžŠแŸ‚แž›แž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“แž‡แžถแž˜แžฝแž™ Azure ML SDKแŸ”

แž‘แž‘แžฝแž›แžแžปแžŸแžแŸ’แžšแžผแžœ

แž‚แž˜แŸ’แžšแŸ„แž„แžœแžทแž‘แŸ’แž™แžถแžŸแžถแžŸแŸ’แžšแŸ’แžแž‘แžทแž“แŸ’แž“แž“แŸแž™แžŠแŸ„แž™แž”แŸ’แžšแžพ Azure ML SDK


แž€แžถแžšแž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž—แž•แŸ’แžŸแžถแž™แŸ–
แžฏแž€แžŸแžถแžšแž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž€แž”แŸ’แžšแŸ‚แžŠแŸ„แž™แž”แŸ’แžšแžพแžŸแŸแžœแžถแž€แž˜แŸ’แž˜แž”แž€แž”แŸ’แžšแŸ‚ AI Co-op TranslatorแŸ” แžแžŽแŸˆแž–แŸแž›แž™แžพแž„แžแžทแžแžแŸ†แžŸแŸ†แžšแŸแž…แž”แžถแž“แž—แžถแž–แžแŸ’แžšแžนแž˜แžแŸ’แžšแžผแžœ แžŸแžผแž˜แžŠแžนแž„แžแžถแž€แžถแžšแž”แž€แž”แŸ’แžšแŸ‚แžŠแŸ„แž™แžŸแŸ’แžœแŸแž™แž”แŸ’แžšแžœแžแŸ’แžแžทแžขแžถแž…แž˜แžถแž“แž€แŸ†แž แžปแžŸแžฌแž˜แžทแž“แžแŸ’แžšแžนแž˜แžแŸ’แžšแžผแžœแŸ” แžฏแž€แžŸแžถแžšแžŠแžพแž˜แž“แŸ…แž—แžถแžŸแžถแž–แžปแž˜แŸ’แž–แžŠแžพแž˜ แž‚แžฝแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž‚แŸแž…แžถแžแŸ‹แž‘แžปแž€แžแžถแž‡แžถแžŠแžพแž˜แžแŸ†แžŽแžถแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แž…แŸ’แž”แžถแžŸแŸ‹แž›แžถแžŸแŸ‹แŸ” แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แžŸแŸ†แžแžถแž“แŸ‹แŸ— แžŸแžผแž˜แžŽแŸ‚แž“แžถแŸ†แžฒแŸ’แž™แž”แŸ’แžšแžพแž€แžถแžšแž”แž€แž”แŸ’แžšแŸ‚แžŠแŸ„แž™แžขแŸ’แž“แž€แž‡แŸ†แž“แžถแž‰แž˜แž“แžปแžŸแŸ’แžŸแžœแžทแž‡แŸ’แž‡แžถแž‡แžธแžœแŸˆแŸ” แž™แžพแž„แž˜แžทแž“แž‘แž‘แžฝแž›แžแžปแžŸแžแŸ’แžšแžผแžœแž…แŸ†แž–แŸ„แŸ‡แž€แžถแžšแž™แž›แŸ‹แž…แŸ’แžšแžกแŸ† แžฌแž€แžถแžšแž”แž˜แŸ’แž›แŸ‚แž„แžขแžแŸ’แžแž“แŸแž™แžŽแžถแž˜แžฝแž™แžŠแŸ‚แž›แž…แŸแž‰แž–แžธแž€แžถแžšแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž€แžถแžšแž”แž€แž”แŸ’แžšแŸ‚แž“แŸแŸ‡แžกแžพแž™แŸ”