GitHub Π²ΠΎΠ²Π΅Π΄Π΅Π½ΠΎ ΠΡΠΎΠ΅ΠΊΡΠΎΡ CodeSearchNet, ΠΊΠΎΡ ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½ΡΠΊΠΎ ΡΡΠ΅ΡΠ΅ ΠΈ Π·Π±ΠΈΡΠΊΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π½Π΅ΠΎΠΏΡ
ΠΎΠ΄Π½ΠΈ Π·Π° ΠΏΠ°ΡΡΠΈΡΠ°ΡΠ΅, ΠΊΠ»Π°ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΡΠΈ. CodeSearchNet, ΡΠ»ΠΈΡΠ½ΠΎ Π½Π° IMAGEnet, Π²ΠΊΠ»ΡΡΡΠ²Π° Π³ΠΎΠ»Π΅ΠΌΠ° ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡΠ° Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈ ΠΎΠ΄ ΠΊΠΎΠ΄ ΡΠΎ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ ΠΊΠΎΠΈ Π³ΠΎ ΡΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΈΡΠ°Π°Ρ ΠΎΠ½Π° ΡΡΠΎ Π³ΠΎ ΠΏΡΠ°Π²ΠΈ ΠΊΠΎΠ΄ΠΎΡ. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΎΠ±ΡΠΊΠ° ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° CodeSearchNet ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π²ΠΎ Python ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ° ΡΠ°ΠΌΠΊΠ°ΡΠ° Tensorflow ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½ΠΈ ΠΎΠ΄ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° MIT.
ΠΡΠΈ ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° CodeSearchNet, ΠΊΠΎΡΠΈΡΡΠ΅Π½ΠΈ ΡΠ΅ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° ΠΏΠ°ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ΅ΠΊΡΡ Π½Π° ΠΏΡΠΈΡΠΎΠ΄Π΅Π½ ΡΠ°Π·ΠΈΠΊ, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°ΡΡΠΈ ΠΈΠΌ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° ΠΌΠ°ΡΠΈΠ½ΡΠΊΠΎ ΡΡΠ΅ΡΠ΅ Π΄Π° Π³ΠΈ Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π½Π΅ ΡΠ°ΠΌΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΊΠΈΡΠ΅ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ, ΡΡΠΊΡ ΠΈ Π·Π½Π°ΡΠ΅ΡΠ΅ΡΠΎ Π½Π° Π΄Π΅ΡΡΡΠ²Π°ΡΠ° ΡΡΠΎ Π³ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΊΠΎΠ΄ΠΎΡ. Π‘ΠΈΡΡΠ΅ΠΌΠΎΡ GitHub Π²Π°ΠΆΠΈ Π²ΠΎ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠ΅ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠΊΠΈ ΠΊΠΎΠ΄ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΠΏΡΠ°ΡΠ°ΡΠ° Π½Π° ΠΏΡΠΈΡΠΎΠ΄Π΅Π½ ΡΠ°Π·ΠΈΠΊ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π° ΡΠ΅ Π±Π°ΡΠ° βΡΠΎΡΡΠΈΡΠ°ΡΠ΅ Π»ΠΈΡΡΠ° Π½Π° Π½ΠΈΠ·ΠΈβ, ΡΠ΅ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΠΊΠΎΠ΄ ΡΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ).
ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ Π²ΡΡΠΊΠΈ ΡΠΎ ΠΊΠΎΠ΄-ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈ, ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΈ Π½Π° ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠΎΠ΄ΠΎΡ Π³ΠΎ ΠΏΠΎΠΊΡΠΈΠ²Π° ΡΠ΅Π»ΠΎΡΠ½ΠΈΠΎΡ ΠΈΠ·Π²ΠΎΡΠ΅Π½ ΡΠ΅ΠΊΡΡ Π½Π° ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ, Π° ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΎΡ Π³ΠΈ ΠΎΠΏΠΈΡΡΠ²Π° Π΄Π΅ΡΡΡΠ²Π°ΡΠ° ΡΡΠΎ Π³ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° (Π½Π°Π²Π΅Π΄Π΅Π½Π° Π΅ Π΄Π΅ΡΠ°Π»Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°). ΠΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², Π·Π±ΠΈΡΠΊΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Π·Π° Python, JavaScript, Ruby, Go, Java ΠΈ PHP. ΠΠ°Π΄Π΅Π½ΠΈ ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΠ΅ Π·Π±ΠΈΡΠΊΠΈ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π·Π° ΠΎΠ±ΡΠΊΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²ΠΈΠ΄ΠΎΠ²ΠΈ Π½Π΅Π²ΡΠΎΠ½ΡΠΊΠΈ ΠΌΡΠ΅ΠΆΠΈ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΠ΅Π²ΡΠ°Π»Π½Π° Π²ΡΠ΅ΡΠ° ΡΠΎ Π·Π±ΠΎΡΠΎΠ²ΠΈ, Π ΠΠ, Π‘Π°ΠΌΠΎ-ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ (ΠΠΠ Π’) ΠΈ 1D-CNN + Ρ
ΠΈΠ±ΡΠΈΠ΄ Π·Π° ΡΠ°ΠΌΠΎΠ²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.
ΠΠ° Π΄Π° ΡΠ΅ ΡΠ°Π·Π²ΠΈΡΠ°Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠΈΡΠΎΠ΄Π΅Π½ ΡΠ°Π·ΠΈΠΊ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ ΡΠ΅Ρ Π½Π° CodeSearchNet Challenge, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ
99 ΡΠΈΠΏΠΈΡΠ½ΠΈ ΠΏΡΠ°ΡΠ°ΡΠ° ΡΠΎ ΠΎΠΊΠΎΠ»Ρ 4 ΠΈΠ»ΡΠ°Π΄ΠΈ Π΅ΠΊΡΠΏΠ΅ΡΡΡΠΊΠΈ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ ΠΊΠΎΠΈ Π³ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°Π°Ρ Π½Π°ΡΠ²Π΅ΡΠΎΡΠ°ΡΠ½ΠΈΡΠ΅ ΠΎΠ±Π²ΡΠ·ΡΠ²Π°ΡΠΊΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ CodeSearchNet Corpus, ΠΏΠΎΠΊΡΠΈΠ²Π°ΡΡΠΈ ΠΎΠΊΠΎΠ»Ρ 6 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ (ΠΏΠΎΡΡΠ°Π²Π΅Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° ΠΎΠΊΠΎΠ»Ρ 20 GB). ΠΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠΎΡ CodeSearchNet ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΡΠ»ΡΠΆΠΈ ΠΊΠ°ΠΊΠΎ ΡΠ΅ΠΏΠ΅Ρ Π·Π° ΠΏΡΠΎΡΠ΅Π½ΠΊΠ° Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠ° Π½Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΠΏΡΠΈΡΠΎΠ΄Π΅Π½ ΡΠ°Π·ΠΈΠΊ. ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° Π°Π»Π°ΡΠΊΠΈ ΠΡΠ±Π΅ΡΠ»ΠΎΡ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ
ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°Ρ Π·Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ.
ΠΠ·Π²ΠΎΡ: opennet.ru