Hi omnes! Ego CV elit in CRO. Incepta exsecutiva in campo CV per 3 annos nunc fuimus. Hoc tempore multum egimus, ut: nos monitores rectores ut dum pulsis non bibimus, non fumus, non telephonum loquimur, in via aspeximus, non ad somnia vel ad nubes. ; Commemoramus eos qui vicos consecratos pellunt et spatia raeda complura assumunt; quod operarii galeas, chirothecas, etc. identified operarius qui vult intrare facilitatem; Nos omnia potuimus.
Quid ego haec omnia?
In processu inceptis exsequendi, labefecit, multum labefecit, nonnullas difficultates tibi aut nota est aut in futuro cognosces.
Sit scriptor situ simulare
Putamus nos officium in iuventute comitatu "N" obtinuisse, cuius actiones cum ML relatae sunt. In consilio ML (DL, CV) laboramus, aliqua de causa ad aliud officium mutamus, plerumque intermissum accipimus, et ad nostrum vel alterius cellarium revertimur.
Veritatis momentum, quo destitisti, quid hyperparametris conaris, et, praesertim, quem exitum duxerunt, aliquo modo meminisse debes. Multae optiones esse possunt qui informationes de omnibus excussionibus recondunt: in capite, confis, nota, in ambitu laborantis in nube. Incidi optionem videre cum hyperparametri in codice notatae lineae repositae sunt, generatim fugam phantasiae. Nunc finge te non ad propositum tuum rediisse, sed ad propositum illius qui societatis reliquerat et codicem hereditasti et exemplar quod vocatur model_1.pb. Ad picturam perficiendam et omnem dolorem deferat, cogitemus te etiam artifex esse inceptor.
Perge. Ad codicem currendum est, nos et omnes qui cum eo laboramus ambitum creare oportet. Saepe enim ut haereditatem aliquam de causa non deserant. Hoc etiam fieri potest munus non leve. Hoc gradu tempus terere non vis, agis?
Exemplar instituimus (exempli gratia car detector). Eo pervenitur ubi optimum fit - tempus est ad exitum servandum. Vocemus eam car_detection_v1.pb. Deinde exercemus alium unum - car_detection_v2.pb. Post quem collegae nostri vel ipsi magis ac magis docent, diversis architecturis utentes. Quam ob rem fasciculum artificiatorum formatum est, de quibus informationes diligenter colligendae sunt (sed hoc postea agemus, quia nunc plura de rebus habemus).
OK actum nunc! Exemplar habemus! Possumusne incipimus formare proximum exemplar, architecturae enucleare ad novam quaestionem solvendam, an tea aliquam habere possumus? Et quis explicabit?
Distinguendis problems
Operatio in consilio vel productum est opus multorum hominum. Et tempus, homines relinquunt et veniunt, plura sunt incepta, et incepta ipsa fiunt magis implicata. Uno modo vel alio, condiciones ab cyclo descripto (non solum) in aliquibus compositionibus ab iteratione ad iterationem occurrent. Haec omnia in tempus terit, confusionis, nervorum, fortasse emptoris displicentiae, ac denique pecuniae amissae. Quamquam nos omnes eundem sarculum sequi soleant, haec momenta iterum atque iterum vivere neminem velle credo.
Itaque per unum cyclum evolutionis transivimus et videmus problemata quae solvenda sunt. Hoc facere debes;
commodius copia operis eventus;
processus novos operarios simplex;
simpliciorem reddere modum explicandi ambitus evolutionis;
exemplar processus versioning configurare;
modum habent opportunum ad exempla convalidanda;
exemplar publicae administrationis instrumentum inveniamus;
viam inveniam ad exempla tradenda ad productionem.
Videturne necesse est ut cum workflui conscendas, qui te facile et commode hanc vitam cycli administrare sineret? Hoc usu vocatur MLOps
MLOps, seu DevOps ad apparatus discendi, scientias datas et IT iunctos ad collaborandum et augendum gressum exemplaris evolutionis et instruere per vigilantiam, sanationem et regimen ad exempla discendi apparatus.
potes honorareQuid de his omnibus cogitate Google guys? Ex articulo patet MLOps rem esse admodum copiosam.
Praeterea in articulo tantum partem processus describemus. Ad exsequendam, instrumento MLflow utar, quia... Hoc propositum est apertum fontis, parva moles codicis coniungere requiritur et integratio est cum tabulis popularibus ml. Interretialia alia instrumenta quaerere potes, ut Kubeflow, SageMaker, Impedimenta, etc., et fortasse invenire potes ut melius tuis necessitatibus conveniat.
"Aedificium" MLOps utens exemplo usus est instrumentum MLFlow
MLFlow fons est apertus suggestus pro ml exemplorum administratione vivendi (https://mlflow.org/).
MLflow continet quatuor partes:
MLflow Semita - comprehendit eventus recordationis eventus et parametris qui ad hunc exitum ducuntur;
MLflow Project - sino te ad involucrum codici et in aliquo suggestu effingere;
MLflow Exempla - responsalis ad exempla explicanda ad productionem;
MLflow Subcriptio - exempla te condere et statum suum regere in reposito centrali permittit.
MLflow operatur in duobus;
launchus est plenus cyclus exercitationis, parametri et metricae quibus subcriptio velimus;
Experimentum est "argumentum" quod simul concurrit.
Omnes gradus exempli in Ubuntu 18.04 ratio operandi implenda sunt.
1. explicandam servo
Ut nobis facile consilium nostrum cures et omnia necessaria informationes recipias, cultor explicabimus. MLflow semita server duo elementa principalia habet:
backend store - author informationes recondendi de exemplaribus descriptis (sustinet 4 DBMSs: mysql, mssql, sqlite, et postgresql);
Match Group sftpg
ChrootDirectory /data/%u
ForceCommand internal-sftp
sileo in ministerium
$ sudo systemctl restart sshd
Quod backend copia Abeamus postgresql.
$ sudo apt update
$ sudo apt-get install -y postgresql postgresql-contrib postgresql-server-dev-all
$ sudo apt install gcc
$ pip install psycopg2
$ sudo -u postgres -i
# Create new user: mlflow_user
[postgres@user_name~]$ createuser --interactive -P
Enter name of role to add: mlflow_user
Enter password for new role: mlflow
Enter it again: mlflow
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n
# Create database mlflow_bd owned by mlflow_user
$ createdb -O mlflow_user mlflow_db
Ut servo incipias, pythones sequentes sarcinas instituere debes (commendo enim singulas virtualis ambitus creando);
Ut nostrae disciplinae eventus non depereant, tincidunt generationes intelligant quae fiebant, et senioribus comitibus et te ad discentium processum placide resolvere posse, opus est addere vestigia. Semita significat salvis parametris, metricis, artificiis et quibusvis informationibus de initiis disciplinae, in nostro casu, in calculonis servi.
Exempli gratia, parvam creavi proiciamus in github * super Keras pro segmenting omne quod est in COCO dataset. Ad tracking, lima mlflow_training.py creavi.
Hic lineae sunt ubi maxime interesting res eveniunt;
def run(self, epochs, lr, experiment_name):
# getting the id of the experiment, creating an experiment in its absence
remote_experiment_id = self.remote_server.get_experiment_id(name=experiment_name)
# creating a "run" and getting its id
remote_run_id = self.remote_server.get_run_id(remote_experiment_id)
# indicate that we want to save the results on a remote server
mlflow.set_tracking_uri(self.tracking_uri)
mlflow.set_experiment(experiment_name)
with mlflow.start_run(run_id=remote_run_id, nested=False):
mlflow.keras.autolog()
self.train_pipeline.train(lr=lr, epochs=epochs)
try:
self.log_tags_and_params(remote_run_id)
except mlflow.exceptions.RestException as e:
print(e)
Hic self.remoto_servator est fasciculus parva per methodos mlflow.tracking. MlflowClient (pro opportunitate feci), cuius ope experimentum creo et in calculonis currit. Deinde indicio ubi eventus launches mergerentur (mlflow.set_tracking_uri(self.tracking_uri)). Automatice colligationem mlflow.keras.autolog(o) efficio. In statu MLflow Semita subsidia automatic logging pro TensorFlow, Keras, Gluon XGBoost, LightGBM, Spark. Si compagem vel bibliothecam tuam non invenisti, tunc explicite semper potes. Disciplina incipimus. Subcriptio tags ac parametri initus in calculonis longinquis.
Duo lineae et tu, sicut ceteri, accessus ad informationem de omnibus excussis. Cool?
3. Nos trahere in project
Nunc faciamus hoc project facilem esse Lorem. Ad hoc efficiendum, MLprojectum et conda.yaml fasciculum ad radicem projectam adde.
MLproject
Navale uti potes ut environment runtime, ad plura singula referre placet documentum.
4. Sit scriptor satus disciplina
Nos clone inceptum et ad indicem indicii imus:
git clone https://github.com/simbakot/mlflow_example.git
cd mlflow_example/
Currere debes ut install libraries
pip install mlflow
pip install pysftp
Quod in exemplo quo utor conda_env, Anaconda in computatro tuo institui debet (sed hoc circumire potes, insertis omnibus necessariis fasciculis te ipsum et cum parametris launchendis).
Omnes gradus praeparatorii perficiuntur et institutionem agere incipimus. Ex radice exerti;
$ mlflow run -P epochs=10 -P categories=cat,dog -P tracking_uri=http://server_host:server_port .
Post imperium intrantes ambitus conda sponte creabitur et institutio incipiet.
In exemplo supra, numerum epochae ad exercitationem transmisi, praedicamenta in quae segmentum volumus (videre plenam indicem hic) et oratio servi nostri remoti.
Integrum indicem parametri possibilium in MLprojecti tabula inveniri potest.
Hic inspicitur indicem omnium experimentorum (top left), tum informationum decurrit (medii). Plures informationes (parametros, metricas, artificia, et aliquas informationes additionals) in singulis deducendis inspicere possumus.
Utraque metrica historia mutationum notare possumus
Illae. In momento, eventus "manualis" in modo resolvere possumus, et in validatione automatico uti MLflow API statuere potes.
6. Register exemplum
Postquam exemplar nostrum resolvimus et paratum esse censuimus ad praelium, progredimur ad subcriptio eius, ad hoc eligamus deductionem, quae opus est (ut in paragrapho praecedente demonstratum est) et descendimus.
Post nomen exemplar demus, versionem habet. Si aliud exemplar eiusdem nominis servas, versio statim upgraded erit.
Singulis exemplaribus descriptionem addere possumus et unum ex tribus civitatibus eligere (Staging, Production, Archived), deinde, API adhibito, his civitatibus accedere possumus, quae, una cum versione, flexibilitatem additionalem praebet.
Facilem etiam accessum habemus ad omnia exempla
et versiones
Sicut in paragrapho praecedente, omnes operationes API utentes fieri possunt.
7. explicandam exemplum
In hac scaena exemplar iam exercitatum habemus. Exemplum quomodo possis uti;
Hic self.registry iterum parvum fasciculum super mlflow.tracking.MlflowClient, commodum est. Punctum est me accedere ad ministratorem remotum et exspectem ibi exemplar cum nomine certo et recentissima versione productionis. Deinceps artificium localiter ad ./model folder depono et exemplar ex hoc directorio mlflow.keras.load_model(local_path construo). Exemplar autem nostrum uti possumus. CV (ML) tincidunt exemplar facile emendare et novas versiones edere possunt.
Ad summam:
Ratio me praesentavit, quae admittit;
centraliter informationes circa ML exempla reponunt, institutio progressus et eventus;
celeriter explicandam ambitum explicandum;
monitor et progressus operis in exemplaribus resolvere;
commodum est versioni et exemplorum rempublicam administrare;
Facile est exempla consequentia explicari.
Hoc exemplum ludibrio est et quasi principium praebet ad aedificandum systema proprium tuum, quod includere potest automationem aestimationis proventuum et adnotationem exemplorum (punctorum 5 et 6, respective) vel versionem datastarum addere vel fortasse aliquid aliud? Punctum facere conanti est quod opus totum MLOps, MLflow est medium ad finem.
Scribere quas difficultates tibi offendit me non ostendisse?
Quid vis addere ad rationem ut necessitates tuas occurrat?
Quae instrumenta et accessiones uteris ad solvendum omnem vel partem problematum?
Societas nostra periodice exercituum varias eventus pro IT specialitas, exempli gratia: die 8 Iulii ad 19:00 Moscuae tempus erit CV occurrit in forma online, si interest, interesse potes, adnotatione hic .