ΠΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ Machine Learning: 10 ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
Π Π½Π°ΡΠ΅ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π°ΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΡΠ΅ Π²Π΅ΡΠΈ: ΠΎΡ ΡΠΎΡΡΠ° Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΊΠ΅ΡΠΎΠΉ SpaceX Π΄ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠΌ Π² ΡΠΎΡΠ΅Π΄Π½Π΅ΠΉ ΠΊΠΎΠΌΠ½Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠΌΠ°ΡΡΡΠΎΠ½.
Π, ΠΏΠΎΡΠΎΠΉ, ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, Π±ΡΠ΄Ρ ΠΎΠ½ ΡΡΡΠ°ΡΡΠ½ΡΠΌ ΡΡΠ°ΡΡΠ°ΠΏΠ΅ΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΆΠ΅ ΡΡΠ΄ΠΎΠ²ΡΠΌ Full Stack ΠΈΠ»ΠΈ Data Scientist, ΡΠ°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΡΠΎΠ·Π½Π°Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°ΡΡ ΠΆΠΈΠ·Π½Ρ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΊΡΠ°ΡΠΊΠΎ ΠΎΠΏΠΈΡΡ 10 ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ machine learning, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π»Π΅Π³ΠΊΠΎ Π²ΡΡΡΠΎΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅/ΡΠ΅ΡΠ²ΠΈΡ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΠ΅ 12-factor App,
ΠΡΠ° ΡΡΠ°ΡΡΡ β ΡΡΠΎ ΠΏΡΠΎΠ»ΠΎΠ³ ΠΊ ΡΠ΅ΡΠΈΠΈ ΡΡΠ°ΡΠ΅ΠΉ ΠΏΡΠΎ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ Machine Learning. Π Π½ΠΈΡ
Ρ Π΄Π°Π»ΡΡΠ΅ Π±ΡΠ΄Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ΄Π΅Π»Π°ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π΅ Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ½, ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ Π½Π΅Π΅ API, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΠ· ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ML Π² ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΈΠ½ΡΠΈΠΏ 1. ΠΠ΄Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ Π±Π°Π·Π°
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΡΡ ΡΡΠ°ΠΏΠ°Ρ ΠΈΠ·-Π·Π° Π»Π΅Π½ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ (ΠΈΠ»ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ) Π·Π°Π±ΡΠ²Π°ΡΡ ΠΏΡΠΎ Git. ΠΠ°Π±ΡΠ²Π°ΡΡ Π»ΠΈΠ±ΠΎ ΠΎΡ ΡΠ»ΠΎΠ²Π° ΡΠΎΠ²ΡΠ΅ΠΌ, ΡΠΎ Π΅ΡΡΡ ΠΊΠΈΠ΄Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ Π² Π΄ΡΠ°ΠΉΠ²Π΅/ΠΏΡΠΎΡΡΠΎ ΠΊΠΈΠ΄Π°ΡΡ ΡΠ΅ΠΊΡΡ/ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π³ΠΎΠ»ΡΠ±ΡΠΌΠΈ, Π»ΠΈΠ±ΠΎ Π½Π΅ ΠΏΡΠΎΠ΄ΡΠΌΡΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ workflow, ΠΈ Π΄Π΅Π»Π°ΡΡ commit ΠΊΠ°ΠΆΠ΄ΡΠΉ Π² ΡΠ²ΠΎΡ Π²Π΅ΡΠΊΡ, Π° ΠΏΠΎΡΠΎΠΌ ΠΈ Π² ΠΌΠ°ΡΡΠ΅ΡΠ°.
ΠΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π³Π»Π°ΡΠΈΡ: ΠΈΠΌΠ΅ΠΉΡΠ΅ ΠΎΠ΄Π½Ρ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π°Π·Ρ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠΉ.
Git ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π² production, ΡΠ°ΠΊ ΠΈ Π² research and development (R&D), Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² R&D ΡΠ°Π·Π΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΡΠΌΠΈ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΎΠΌ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΉ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ Π΄Π°Π»ΡΡΠ΅.
ΠΠΎ-Π²ΡΠΎΡΡΡ , Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π΅ ΡΡΠΎ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠ°Ρ Π²Π΅ΡΡ β ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΠ°Ρ ΠΊΠΎΠ΄ ΠΈ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π²ΡΠ΄Π°Π²Π°Π»Π° Π»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ ΡΠ°Π±ΠΎΡΠ°Π» Π² ΠΊΠΎΠ½ΡΠ΅ ΠΈ ΡΡΠΎ ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΠΈΠ·-Π·Π° ΡΠ΅Π³ΠΎ ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠ»ΠΈ Π½Π°ΡΠ°Π» Π²ΡΠ΄Π°Π²Π°ΡΡ Π½Π΅Π²Π΅ΡΠ½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΡ!
Π ΡΠ°ΠΊΠΆΠ΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ package ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΠ² Π΅Π³ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° Gemfury, ΠΈ Π΄Π°Π»ΡΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ· Π½Π΅Π³ΠΎ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΈΡ 1000 ΡΠ°Π·, Π½ΠΎ ΠΎΠ± ΡΡΠΎΠΌ ΡΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅.
ΠΡΠΈΠ½ΡΠΈΠΏ 2. Π§Π΅ΡΠΊΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΠΉΡΠ΅ ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΡΠΉΡΠ΅ dependencies
Π ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Π΅ΡΡΡ ΡΠ°Π·Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΈΠ·Π²Π½Π΅ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π³Π΄Π΅-ΡΠΎ ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ. ΠΡΠ΄Ρ ΡΠΎ ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Python, ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ² ΡΠ°Π·Π½ΡΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ β ΠΠ°ΡΠ° Π·Π°Π΄Π°ΡΠ°:
- Π§Π΅ΡΠΊΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ dependencies, ΡΠΎ Π΅ΡΡΡ ΡΠ°ΠΉΠ», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Ρ Π²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΈ ΠΈΡ
Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Python ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Pipfile ΠΈΠ»ΠΈ requirements.txt. Π‘ΡΡΠ»ΠΊΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Ρ
ΠΎΡΠΎΡΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ:
realpython.com/pipenv-guide ) - ΠΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ dependencies ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΠ°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡ ΠΆΠ΅ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΌΠ΅Π½ΡΡΡ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Tensorflow?
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ ΠΊ ΠΠ°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ, ΡΠΌΠΎΠ³ΡΡ Π±ΡΡΡΡΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ ΠΈ ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΠΈ ΡΠ°ΠΌΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈΠ»ΠΈ ΠΈΡ Π²Π΅ΡΡΠΈΠΉ.
ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΠ‘. ΠΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΡΡ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅ dependencies. ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° Π²Π΅ΡΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² (Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡ Π½Π°Π»ΠΈΡΠΈΠ΅), Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΠ‘.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π° Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ curl, ΡΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ Π΅Π³ΠΎ Π² dependencies, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π½Π° Π΄ΡΡΠ³ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ Π±ΡΡΡ ΠΈΠ»ΠΈ Π²Π΅ΡΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΠ°ΠΌ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π±ΡΠ»Π° Π½ΡΠΆΠ½Π°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΠ°Ρ requirements.txt ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π²ΠΎΡ ΡΠ°ΠΊ:
# Model Building Requirements
numpy>=1.18.1,<1.19.0
pandas>=0.25.3,<0.26.0
scikit-learn>=0.22.1,<0.23.0
joblib>=0.14.1,<0.15.0
# testing requirements
pytest>=5.3.2,<6.0.0
# packaging
setuptools>=41.4.0,<42.0.0
wheel>=0.33.6,<0.34.0
# fetching datasets
kaggle>=1.5.6,<1.6.0
ΠΡΠΈΠ½ΡΠΈΠΏ 3. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎΠ± ΠΈΡΡΠΎΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅Π±ΡΡΠ°-Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅ΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ°Π»ΠΈ ΠΊΠΎΠ΄ Π½Π° GitHub Π² ΠΎΡΠΊΡΡΡΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Ρ ΠΏΠ°ΡΠΎΠ»ΡΠΌΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΠΎΡ AWS, ΠΏΡΠΎΡΡΠΏΠ°ΡΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π΄Π΅Π½Ρ Ρ Π·Π°Π΄ΠΎΠ»ΠΆΠ΅Π½Π½ΠΎΡΡΡΡ Π² 6000$, Π° ΡΠΎ ΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ 50000$.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠΈ ΡΠ»ΡΡΠ°ΠΈ ΠΊΡΠ°ΠΉΠ½ΠΈΠ΅, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅. ΠΡΠ»ΠΈ ΠΡ Ρ
ΡΠ°Π½ΠΈΡΠ΅ ΠΠ°ΡΠΈ ΡΡΠ΅ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π½ΡΠΆΠ½ΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ΄Π° β ΠΡ ΡΠΎΠ²Π΅ΡΡΠ°Π΅ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΡ, ΠΈ Ρ Π΄ΡΠΌΠ°Ρ, Π½Π΅ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΡΡΠ½ΡΡΡ ΠΏΠΎΡΠ΅ΠΌΡ.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° ΡΡΠΎΠΌΡ β ΡΡΠΎ Ρ
ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ
ΠΡΠΈΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Ρ ΡΠ°Π½ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ:
- ΠΠΌΠ΅Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²
- API URL/URIβs
- ΠΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ
- ΠΠΎΠ½ΡΠ°ΠΊΡΡ (ΠΏΠΎΡΡΠ°, ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ ΠΈ ΡΠ΄)
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΊΠΎΠ΄, Π΅ΡΠ»ΠΈ ΠΠ°ΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π±ΡΠ΄ΡΡ ΠΌΠ΅Π½ΡΡΡΡΡ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΠ°ΠΌ Π²ΡΠ΅ΠΌΡ, ΡΠΈΠ»Ρ ΠΈ Π΄Π΅Π½ΡΠ³ΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Kaggle API Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ΅ΡΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Π΄ΠΎΡΠ°ΡΠ΅Ρ ΠΈ ΠΏΡΠΎΠ³ΠΎΠ½ΡΠ΅ΡΠ΅ ΡΠ΅ΡΠ΅Π· Π½Π΅Π³ΠΎ ΠΌΠΎΠ΄Π΅Π»Ρ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, ΡΡΠΎ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΎΡΠΎΡΠΎ), ΡΠΎ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ ΠΎΡ Kaggle, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ KAGGLE_USERNAME ΠΈ KAGGLE_KEY Π½Π°Π΄ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ.
ΠΡΠΈΠ½ΡΠΈΠΏ 4. Π‘ΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΡΠ»ΡΠΆΠ±Ρ
ΠΠ΄Π΅Ρ Π·Π΄Π΅ΡΡ β ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ Π½Π΅ Π±ΡΠ»ΠΎ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ Π² ΠΏΠ»Π°Π½Π΅ ΠΊΠΎΠ΄Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ MySQL, ΡΠ°ΠΊ ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΡΡ. Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ API, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Google Maps ΠΈΠ»ΠΈ Twitter API.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π΄ΡΡΠ³ΠΎΠΉ, Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΊΠ»ΡΡΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π» Π² ΠΏΡΠ½ΠΊΡΠ΅ Π²ΡΡΠ΅.
Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ Ρ Π΄Π°ΡΠ°ΡΠ΅ΡΠ°ΠΌΠΈ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ΄Π°, Π»ΡΡΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ pathlib ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΡΡΡ ΠΊ Π΄Π°ΡΠ°ΡΠ΅ΡΠ°ΠΌ Π² config.py, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ ΠΡ Π²ΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, CircleCI), ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΌΠΎΠ³Π»Π° ΡΠ·Π½Π°ΡΡ ΠΏΡΡΡ ΠΊ Π΄Π°ΡΠ°ΡΠ΅ΡΠ°ΠΌ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΡΡΠΎΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ΅.
ΠΡΠΈΠ½ΡΠΈΠΏ 5. Π‘Π±ΠΎΡΠΊΠ°, ΡΠ΅Π»ΠΈΠ·, runtime
ΠΠ½ΠΎΠ³ΠΈΠΌ Π»ΡΠ΄ΡΠΌ ΠΈΠ· Data Science ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΊΠ°ΡΠ°ΡΡ Π½Π°Π²ΡΠΊΠΈ ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΎΡΡΠ°. ΠΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΠΆΠ΅ Β«ΠΏΠ°Π΄Π°Π»Π°Β», ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ»ΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»Π° Π±Π΅Π· ΡΠ±ΠΎΠ΅Π², Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ΅Π»ΠΈΠ·Π° Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π½Π° 3 ΡΡΠ°ΠΏΠ°:
- ΠΡΠ°ΠΏ ΡΠ±ΠΎΡΠΊΠΈ. ΠΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΠ΅ ΠΠ°Ρ Π³ΠΎΠ»ΡΠΉ ΠΊΠΎΠ΄ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ Π² ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²Π΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ ΠΊΠΎΠ΄ ΠΈ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠΎΠΉ.
- ΠΡΠ°ΠΏ ΡΠ΅Π»ΠΈΠ·Π° β ΠΊ ΡΠ±ΠΎΡΠΊΠ΅ Π·Π΄Π΅ΡΡ ΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π½Π°Ρ config, Π±Π΅Π· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ Π±Ρ Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ Π²ΡΠΏΡΡΡΠΈΡΡ Π½Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊ Π·Π°ΠΏΡΡΠΊΡ ΡΠ΅Π»ΠΈΠ·.
- ΠΠ°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ ΡΡΠ°ΠΏ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ ΠΌΡ Π²ΡΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈΠ· Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅Π»ΠΈΠ·Π°.
ΠΠΎΠ΄ΠΎΠ±Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅Π»ΠΈΠ·Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ Π²ΡΠ΅Π³ΠΎ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ ΡΠΎΠ»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ»Ρ Π·Π°Π΄Π°ΡΠΈ ΡΠ΅Π»ΠΈΠ·Π° ΡΠΎΠ·Π΄Π°Π½ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π² ΠΊΠΎΡΠΎΡΡΡ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ°ΠΌΠΈ Π² .yml ΡΠ°ΠΉΠ» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² CircleCI ΡΡΠΎ config.yml Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°). Wheely ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ package Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π²Π°ΡΠ΅ΠΉ machine learning ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΈ ΠΎΡΡΡΠ»Π°ΡΡΡΡ ΠΊ Π½ΡΠΆΠ½ΡΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌ ΠΈ ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΡΡΠ΄Π° ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΡ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ API Π΄Π»Ρ ΠΠ°ΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π° ΠΠ°Ρ ΠΏΠ°ΠΊΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° Gemfury.
ΠΡΠΈΠ½ΡΠΈΠΏ 6. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΠ°ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²
ΠΡΠΈΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ . Π’ΠΎ Π΅ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, Π° Π²ΡΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ β ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ»ΡΠΆΠ±Π°Ρ ΠΏΠΎ ΡΠΈΠΏΡ MySQL ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ , ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ.
Π’ΠΎ Π΅ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Ρ ΡΠ°Π½ΠΈΡΡ ΡΠΎΡΠ½ΠΎ Π½Π΅ ΡΡΠΎΠΈΡ, ΠΈΠ½Π°ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΎΡΠΈΡΠ΅Π½ΠΈΡ ΠΎΡ ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ΅Π»ΠΈΠ·Π΅/ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°.
ΠΠΎ Π΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅: Π΄Π»Ρ machine learning ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΊΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΈΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, Π΅ΡΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π½Π΅ Π±ΡΠ»ΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΡΠΎΠΊΡΠ°ΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° Π²Π°ΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΡΡΠΈ.
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΊΠ°ΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ .yml ΡΠ°ΠΉΠ», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΈ ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΈ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΡΠΈΠ½ΡΠΈΠΏ 7. Π£ΡΠΈΠ»ΠΈΠ·ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ
ΠΡΠΎΡΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Ρ ΠΌΠΎΠ΄Π΅Π»ΡΡ, Π΄ΠΎΠ»ΠΆΠ½Ρ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π±ΡΡΡΡΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ, Π±ΡΡΡΡΠΎ ΠΈ Π³ΠΈΠ±ΠΊΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡ ΠΎΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΌΠΎΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ.
Π’ΠΎ Π΅ΡΡΡ Π²Π°Ρ ΠΏΡΠΎΡΠ΅ΡΡ Ρ ΠΌΠΎΠ΄Π΅Π»ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½:
- ΠΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ°. Π ΠΈΠ΄Π΅Π°Π»Π΅ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° (ΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° Π±ΡΠ»Π° ΠΏΠΎΠ΄Π°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΠΊΠ° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠΈΠ΄Π΅Ρ Π² ΡΠ°Π±ΠΎΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅) Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅ΠΊΡΠ½Π΄. ΠΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π²ΡΡΠ΅ β ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π·Π°ΠΏΡΡΠΊΠ°.
- ΠΠ°Π²Π΅ΡΡΠ°ΡΡΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ. Π’ΠΎ Π΅ΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ° ΡΠ΅ΡΠ²ΠΈΡΠ°, ΠΈ Π½ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΠΏΠΎΠ΄Π°Π½Π½ΡΠ΅ Π² ΡΡΠΎΡ ΠΏΠΎΡΡ, Π½Π΅ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ. ΠΠ΄Π΅ΡΡ ΡΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π½Π΅ΠΏΠ»ΠΎΡ ΡΡ ΡΠ²ΡΠ·Ρ Ρ DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ°ΠΌΠΈ, ΠΈΠ»ΠΈ ΡΠ°ΠΌΠΎΠΌΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ (ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π²ΡΠΎΡΠΎΠ΅, Π½ΠΎ ΡΠ²ΡΠ·Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅Π³Π΄Π°, Π² Π»ΡΠ±ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅!)
ΠΡΠΈΠ½ΡΠΈΠΏ 8. ΠΠ΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ΅ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅/ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ
ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΅Π³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ (Π΄Π΅Π»Π°ΡΡΠ΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ). ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΠ»ΡΠ½ΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΎΡΡΠ° ΠΈ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ° Π² Π΅Π³ΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΈ. Π ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΏΠΎΡΡΠΈΡ ΠΊΡΠ»ΡΡΡΡΡ DevOps, Π³Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ, Π³ΡΡΠ±ΠΎ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ.
ΠΠΎΡΡΠΎΠΌΡ ΡΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π³Π»Π°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΡΠ΅Π΄Π° ΠΠ°ΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½Π° ΠΊ ΡΡΠ΅Π΄Π΅ ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π°.
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ:
- Π‘Π½ΠΈΠ·ΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π»ΠΈΠ·Π° Π² Π΄Π΅ΡΡΡΠΊΠΈ ΡΠ°Π·
- Π‘Π½ΠΈΠ·ΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈΠ·-Π·Π° Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°.
- Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π», ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈ Π»ΡΠ΄ΠΈ, ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Ρ ΡΡΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ β CircleCI, Travis CI, GitLab CI ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ Π΅Π΅, ΠΈ ΡΡΠ°Π·Ρ ΠΆΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π»Π΅Π³ΠΊΠΎ, Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΠ΅Π², Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π°ΠΆΠ΅ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ». ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈ Π±ΡΡΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Ρ ΠΠ°Ρ Π΅ΡΡΡ Ρ ΠΎΡΠΎΡΠΈΠ΅ ΡΠ΅ΡΡΡ.
ΠΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ!!!
ΠΡΠΈΠ½ΡΠΈΠΏ 9. ΠΠ°ΡΠΈ Π»ΠΎΠ³ΠΈ
Logs (ΠΈΠ»ΠΈ Β«ΠΠΎΠ³ΠΈΒ») β ΡΡΠΎ Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ Π²Π½ΡΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (ΠΏΠΎΡΠΎΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ). ΠΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ: Β«2020-02-02 β ΡΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΡ β ΠΈΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°Β». ΠΠ½ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠ³ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ Π²ΠΈΠ΄Π΅ΡΡ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ½ Π²ΠΈΠ΄ΠΈΡ Ρ ΠΎΠ΄ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΠ°ΠΊΠΎΠ² Π»ΠΈ ΠΎΠ½, ΠΊΠ°ΠΊ ΡΠ°ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π·Π°Π΄ΡΠΌΡΠ²Π°Π».
ΠΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π³Π»Π°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π½Π΅ ΡΡΠΎΠΈΡ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ²ΠΎΠΈ Π»ΠΎΠ³ΠΈ Π²Π½ΡΡΡΠΈ Π²Π°ΡΠ΅ΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ β ΠΈΡ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Β«Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π½Π° ΡΠΊΡΠ°Π½Β», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠΈΡΡΠ΅ΠΌΡ stdout. Π Π·Π° ΠΏΠΎΡΠΎΠΊΠΎΠΌ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΠΈΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΠ½Π°ΡΠΈΡ Π»ΠΈ ΡΡΠΎ ΡΡΠΎ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π»ΠΎΠ³ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ? ΠΠΎΠ½Π΅ΡΠ½ΠΎ Π½Π΅Ρ. ΠΡΠΎΡΡΠΎ ΡΡΠΈΠΌ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β ΠΎΡΡΠ°Π²ΡΡΠ΅ ΡΡΠΎ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌ. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π»ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ Π»ΠΎΠ³ΠΈ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Hadoop). Π‘Π°ΠΌΠΎ ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΠ»ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π»ΠΎΠ³Π°ΠΌΠΈ.
ΠΡΠΈΠ½ΡΠΈΠΏ 10. Π’Π΅ΡΡΠΈΡΡΠΉΡΠ΅!
ΠΠ»Ρ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ machine learning ΡΡΠ° ΡΠ°Π·Π° ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΈ Π²ΡΠ΄Π°Π΅Ρ ΡΠΎ, ΡΡΠΎ ΠΡ Ρ ΠΎΡΠ΅Π»ΠΈ.
Π’Π΅ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pytest, ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π΄Π°ΡΠ°ΡΠ΅ΡΠ°, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π·Π°Π΄Π°ΡΠ° ΡΠ΅Π³ΡΠ΅ΡΡΠΈΠΈ/ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΡΡΠ°Π²ΠΈΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ seed Π΄Π»Ρ deep learning ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π΅ Π²ΡΠ΄Π°Π²Π°Π»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
ΠΡΠΎ Π±ΡΠ»ΠΎ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ 10 ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ², ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠΌΠΈ Π½Π΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π² ΠΈ Π½Π΅ ΡΠ²ΠΈΠ΄Π΅Π² ΡΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠ° ΡΡΠ°ΡΡΡ β ΡΡΠΎ Π»ΠΈΡΡ ΠΏΡΠΎΠ»ΠΎΠ³ ΠΊ ΡΠ΅ΡΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠ°ΡΠ΅ΠΉ, Π² ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π±ΡΠ΄Ρ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡ ΡΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ machine learning ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ ΠΈΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈ ΠΊΠ°ΠΊ ΡΡΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΌΠΎΠ³ΡΡ ΡΠΏΡΠΎΡΡΠΈΡΡ Π½Π°ΠΌ Π²ΡΠ΅ΠΌ ΠΆΠΈΠ·Π½Ρ.
Π― ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΡΡΡΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΡΠΎ-ΡΠΎ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com