Salve, Khabrovsk habitant. Ut iam scripsimus, hic mensis OTUS duas machinas discendi cursus simul emittit, scilicet basis ΠΈ provectus. Qua in re utilem materiam communicare pergimus.
Propositum huius articuli de prima experientia loqui est usus MLflow.
Nos incipiemus a review MLflow a servo suo vestigando et aperi omnes iterationes studiorum. Experientiam nostram connectendi Scintillam cum MLflow utendi UDF erimus.
context
Nos sumus in Alpha Health Machina discendi et intellegentiae artificialis utimur ad talem homines ut suae valetudinis et bene esse curam habeant. Ideo apparatus discendi exempla in corde notitiarum scientiarum productorum enucleatur, et ideo ad MLflow trahimur, fons apertus suggestus qui omnes rationes machinae discendi lifecycli tegit.
MLflow
Praecipuum propositum MLflow est praebere additam iacum super machinae discendi quae notitias scientiarum patiatur laborare cum nulla fere bibliotheca discendi apparatus (h2o, Keras, mleap, pytorch, sklearn ΠΈ tensorflow) Opus suum ad gradum capiens.
MLflow tria praebet partes:
semita - notare et petitiones experimentorum: codicem, datam, configurationem et eventum. Cras processus exemplar creandi magni momenti est.
projects - Packaging forma ut run in quolibet suggestu (exempli gratia. SageMaker)
exemplum β forma communis ad exempla exhibenda variis instrumentis instruere.
MLflow (in alpha tempore scriptionis) suggestum apertum est quod sinit te machinam discendi vivendi, inter experimenta, reuse et instruere.
Occasus sursum MLflow
MLflow uti, debes primum totam Python ambitum tuam constituere, hoc enim utemur PyEnv (Pythonem in Mac installare, reprehendo sicco hic). Hoc modo virtualem ambitum creare possumus quo instituemus omnes bibliothecas necessarias ad eam currendam.
```
pyenv install 3.7.0
pyenv global 3.7.0 # Use Python 3.7
mkvirtualenv mlflow # Create a Virtual Env with Python 3.7
workon mlflow
```
Nota: PyArrow utimur ad exempla currendi ut UDF. versiones PyArrow et Numpy fixae sunt quia hae versiones inter se dissidebant.
Lorem mauris UI
MLflow Semita nobis permittit ut experimenta et interrogationes aperias utentes Pythone et OTIUM API. Praeterea determinare potes ubi exemplar artificialia reponunt (localhost; Amazon S3, Caeruleus Blob PRAECLUSIO, Google Cloud PRAECLUSIO aut SFTP servo). Cum utimur AWS in Alpha Health, artificium repositum nostrum erit S3.
# Running a Tracking Server
mlflow server
--file-store /tmp/mlflow/fileStore
--default-artifact-root s3://<bucket>/mlflow/artifacts/
--host localhost
--port 5000
MLflow suadet utens lima repono persistentes. Tabularium tabulariorum est ubi servo thesaurizabit currere et experimentum metadata. Incipiens a servo, fac eam demonstrat perseverantiorum tabellariorum copia. Hic ad experimentum simpliciter utimur /tmp.
Memento quod si velimus ut servo mlflow uti ad antiqua experimenta currendam, in tabula repositionis adesse debent. Nihilominus etiam sine hac in UDF uti potuimus, quandoquidem ad exemplar solum opus est.
Nota: Meminerint sequi vestigia UI et clientem exemplarium accessum habere ad artificii locum. Id est, pro eo quod Semita UI in casu EC2 residet, cum localiter MLflow currit, apparatus directam accessum habere debet ad S3 ad exempla artificii scribenda.
Tracking III stores artificialibus in S3 situla
Donec cursus
Statim ac cum servo mauris currit, exempla monstrare potes.
Exempli causa, modificatione vini utemur ex exemplo MLflow in . Sklearn.
Ut iam disputavimus, MLflow permittit ut exemplar parametri, metrics, et artificia aperias ut indagare potes quomodo per iterationes evolvere potes. Haec factura perquam utilis est quia hoc modo exemplar optimum effingere possumus per contactum servo vel intellectui Semita, quae codicem explevit, utens git Nullam tigna committit.
MLflow servitor sequi, utens "mlflow servo" mandatum, requiem API habet ad vestigia currentium et scribens notitias ad systema fasciculi localis. Servum sequi electronicum notare potes utens ambitus variabilis "MLFLOW_TRACKING_URI" et MLflow semita API sponte contactum servo tracking hac inscriptione ad creandum/accipe informationes launch, metrics stipes, etc.
Ad exemplar cum servo praebendum, servo currenti vestibulo (vide interface launch) et ID currite exemplaris.
Curre ID
# Serve a sklearn model through 127.0.0.0:5005
MLFLOW_TRACKING_URI=http://0.0.0.0:5000 mlflow sklearn serve
--port 5005
--run_id 0f8691808e914d1087cf097a08730f17
--model-path model
Ad exempla serviendi utentes MLflow serviant officiativi, accessum ad Semita UI indigebimus ut informationes accipias de exemplari simpliciter definiendo. --run_id.
Cum exemplum contactus cum servo semitario, novum exemplar punctum attingere possumus.
Non obstante quod Servus Semita potens est ad exempla in reali tempore ministrare, ea exercere et ministris functionality uti (source: mlflow // soUicitudo // exempla # locale) Scintillae (batch vel effusis) usus est solutio magis validior propter distributionem.
Finge te simpliciter fecisse online disciplina et deinde exemplar output ad omnia tua data applicasse. Hoc est ubi scintilla et MLflow lucent.
Constitutis notebook-dir, codicillos nostros in folder optato possumus reponere.
Deductis Jupyter ex PySpark
Cum possimus Iovem configurare tamquam aurigam PySpark, nunc libellum Iupyter in contextu PySpark currere possumus.
(mlflow) afranzi:~$ pyspark
[I 19:05:01.572 NotebookApp] sparkmagic extension enabled!
[I 19:05:01.573 NotebookApp] Serving notebooks from local directory: /Users/afranzi/Projects/notebooks
[I 19:05:01.573 NotebookApp] The Jupyter Notebook is running at:
[I 19:05:01.573 NotebookApp] http://localhost:8888/?token=c06252daa6a12cfdd33c1d2e96c8d3b19d90e9f6fc171745
[I 19:05:01.573 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 19:05:01.574 NotebookApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://localhost:8888/?token=c06252daa6a12cfdd33c1d2e96c8d3b19d90e9f6fc171745
Ut supra, MLflow praebet plumam pro logis artificialibus in S3. Quamprimum exemplar electum in manibus habemus, opportunitatem habemus eam importare ut UDF moduli utendi mlflow.pyfunc.
Huc usque locuti sumus quomodo usus PySpark cum MLflowo uteretur, praedictiones qualis vinum in toto vino dataset. Sed quid si Pythone MLflow modulis ex Scala Scintilla utere debes?
Hoc quoque probavimus scindendo contextum Scintillae inter Scalam et Pythonem. Hoc est, MLflow UDF in Pythone descripsimus, eoque usi sumus a Scala (sic, fortasse non optima solutione, sed quod habemus).
Scala scintilla + MLflow
Ad hoc exemplum addemus Toree Kernel in exsistens lovis.
Install Scintilla + Toree + Jupyter
pip install toree
jupyter toree install --spark_home=${SPARK_HOME} --sys-prefix
jupyter kernelspec list
```
```
Available kernels:
apache_toree_scala /Users/afranzi/.virtualenvs/mlflow/share/jupyter/kernels/apache_toree_scala
python3 /Users/afranzi/.virtualenvs/mlflow/share/jupyter/kernels/python3
```
Ut videre potes e libello apposito, UDF inter Scintillam et PySpark communicatur. Speramus hanc partem utilem fore iis qui Scalam amant et apparatus discendi exempla in productione explicandi cupiunt.
Etsi MLflow in versione Alpha est tempore scribendi, satis promissum spectat. Iusta facultas discurrendi multiplex apparatus discendi compages et eas consumendi ab uno termino systemata suadet ad gradum proximum sumit.
Praeterea MLflow addat Engineers Data et Arti- tores Data Scientiae propius in unum, stratum commune inter eos ponendo.
Post hanc explorationem MLflow, confidimus nos progredi et uti ad systema nostra scintilla fistulalia et commendator.
Nice synchronizare tabulam repositionis cum datorum loco tabellae. Hoc nobis debent plures terminos dare, qui eadem tabula repono uti possunt. Exempli gratia: Instantiae plures uti Gloria ΠΈ Athens cum eodem Glu metastore.
Ut summatim dicam, gratias ago tibi MLFlow communitati ut opus nostrum cum notitia magis iucunda reddas.
Si cum MLflow ludit, noli dubitare scribere nobis et narra nobis quomodo ea uteris, ac magis si in productione uteris.