áá»áœááºá¯ááºá¡ááẠPavel Parkhomenko ááŒá áºáá«áááºá áá»áœááºá¯ááºááẠML developer áá áºáŠážááŒá áºáááºá á€áá±á¬ááºážáá«ážááœááºá áá»áœááºá¯ááºááẠYandex.Zen áááºáá±á¬ááºááŸá¯á ááœá²á·á ááºážáá¯á¶á¡ááŒá±á¬ááºáž ááœá±ážááœá±ážááŒá®áž áááºážááá¬ááá¯ááºážááá¯ááºáᬠááá¯ážáááºááŸá¯áá»á¬ážááᯠáá»áŸáá±ááá¯áááºá á¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážá á¡áááºá¡ááœá±ážááᯠááá¯ážááŒáŸáá·áºááá¯ááºá á±ááá·áº á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááᯠáá»áŸáá±ááá¯áá«áááºá á€ááá¯á·á áºá០áá®áá®á áá¹ááá·áºá¡áááºážáááºá¡ááœááºáž á á¬ááœááºá á¬áááºáž áááºážáá±á«ááºážáá»á¬ážá áœá¬ááŒá¬ážááœáẠá¡áá¯á¶ážááŒá¯áá°á¡ááœáẠá¡áááºááá¯ááºáá¯á¶ážá¡áá¬áá»á¬ážááᯠáááºáááºááá¯á·ááŸá¬ááœá±ááááºááᯠáá±á·áá¬ááá¯ááºáááºááŒá áºáá«áááºá á á¬ááœááºá á¬áááºážá¡áá áºáá»á¬ážááẠáááá áºáááºááááºážá¡ááœááºáž áááºážááá¯á·á vector ááá¯áááŸáá á±ááẠ(áá±á¬áºáá¶áááºážáá±á«ááºážáá»á¬ážá áœá¬ááŸáá·áº á¡áááºážáá±á«ááºáž áááºážáááºááŸáá·áºáá»á®áá«áááºáá±á¬) ááŒá®ážáá¬ážáá±á¬ matrix ááᯠá ááºáááºáááŒááºááŒáá¯ááœá²á¡á±á¬ááºááŒá¯áá¯ááºáááºážá áá®áá®ááá¯á¡ááœáẠáá±á¬ááºážáá±á¬ vector ááá¯ááºá á¬ážááŒá¯ááŸá¯áááẠáá¯á¶ážá áœá²áá°-áá±á¬ááºážáá«áž matrix ááŒáá¯ááœá²ááŸá¯ááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯áááºážá
áá»áœááºá¯ááºááá¯á·á á¡ááŒá¶ááŒá¯áá»ááºáá±áá¬áá±á·á
áºááœáẠáá¯á¶á
á¶á¡áá»áá¯ážáá»áá¯ážááŸááá±á¬ á
á¬ááœááºá
á¬áááºáž áááºážáá±á«ááºážáá»á¬ážá
áœá¬áá«ááŸááááº- áá»áœááºá¯ááºááá¯á·áááááºáá±á¬ááºážáá±á«áºááœáẠáááºáá®ážáá¬ážáá±á¬ á
á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážááŸáá·áº ááŒááºáááá¯ááºáá»á¬ážá áá®áá®ááá¯áá»á¬ážá áá¬ááºááŒá±á¬ááºážáá»á¬ážááŸáá·áº ááá¯á·á
áºááá¯áá»á¬ážá០áá°ážáá°áá«áááºá ááá¯ááá¯á·áá±á¬ áááºáá±á¬ááºááŸá¯ ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááẠáááºážááá¬ááá¯ááºáᬠá
áááºáá±á«áºááŸá¯áá»á¬ážá
áœá¬ááŸáá·áº áááºá
ááºáá±áááºá á€ááœáẠáááºážááá¯á·áá²á០á¡áá»áá¯á·ááŸá¬-
- ááœááºááŒá°áá¬áá¯ááºáá±á¬ááºá áá¬áá»á¬ážááᯠááá¯ááºážááŒá¬ážáá«- áá±ážáá¶áá±á¬áá¯ááºáá±á¬ááºááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠá¡á±á¬á·ááºááá¯ááºážááŒáá·áºáá¯ááºáá±á¬ááºááŒá®áž 100-200 ms ááᯠáá¬áááºáá°ááá¯ááºááẠáá±á¬áºáááºáá»á¬ážá á¡ááŒááºá¡áá¯á¶ážáá»ááŸá¯ááᯠá¡áá»áááºááŸáá·áºáááŒá±ážáá® áá¯ááºáá±á¬ááºáá«á
- á¡áá¯á¶ážááŒá¯áá°ááá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá¡ááŒááºááá·áºááœááºážáá«á áá®ááá¯áá¯ááºááá¯á·á á¡ááŒá áºá¡áá»ááºá¡á¬ážáá¯á¶ážááᯠá¡ááŒá¶ááŒá¯áá°áᶠáá»ááºáá»ááºážááá¯á·áá±ážááŒá®áž áá±á¬áºáááºááœá±áá²á· ááááºááœá±ááᯠááœáŸááºážááá¯ážááá¯á· ááá¯á¡ááºáááºá
- á¡áá¯á¶ážááŒá¯áá°á¡áá áºáá»á¬ážá¡ááœáẠáááºážááá¯á·á á¡ááŒá¯á¡áá°ááŸáá·áº ááá¯ááºáá»á±á¬áá®ááœá±ááŒá áºá á±ááẠááááºááᯠááŒá¯áá¯ááºáá«á á áá áºááœáẠáá«áááºááŒá®ážáá¬ážáá°áá»á¬ážááẠáááºážááá¯á·á á¡ááŒá¶ááŒá¯áá»ááºááẠá¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááᯠááœáŸááºážááá¯ážáááºáᯠáá¶á á¬ážááá«áááºá
- áá±á¬ááºážáá«ážá¡áá áºááᯠáááºáá°á·ááᯠá¡ááŒá¶ááŒá¯ááááºááᯠááŒááºááŒááºáá¬ážáááºáá«á
- á¡ááŒá±á¬ááºážá¡áá¬á¡áá áºáá»á¬áž á¡áááºáááŒááºááœááºáá±á«áºáá¬ááŒááºážá¡ááœáẠáá»ááºááŒááºá áœá¬ áá¯á¶á·ááŒááºáá«á áá±á¬ááºážááŸáá·áºáá»á®áá±á¬ áá±á¬ááºážáá«ážáá»á¬ážááᯠáá±á·á áẠáá¯ááºáá±áá±ááŒá®áž áááºážááá¯á·áá²á០á¡áá»á¬ážá á¯ááŸá¬ áááºáááºáž á¡ááá·áºá¡áááºááŸáááẠ(ááŒá±á¬á ááááºáž)á á€á¡áá¬ááẠáááºážááá¯á·ááᯠáááºáá®ážááẠáá¯ááºááŸááºáá»á¬ážá áá®áááŸáá·áº á¡ááŒá¬ážáá±á¬ áá¬ááŸááºáá¶ááŒá®áž áááºááá¯ážááŒá®ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááŸáá·áº ááœá²ááŒá¬ážáááºá
- ááá¯ááááºážáá áºáá¯á០á¡ááŒá¬ážáááºáááºáá áºáá¯ááá¯á· á¡ááááá¬ááᯠááœáŸá²ááŒá±á¬ááºážáá«á á¡ááŒá¶ááŒá¯áá»ááºá áá áºáá áºáá¯ááẠá á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážá¡ááœáẠáá±á·áá»áá·áºáá±ážáá¬ážáá±á¬ áá±á¬áºáááºáá»á¬ážááᯠáá±á·áá»áá·áºáá±ážáá¬ážááŒá®áž áááºážááœáẠáá®áá®ááá¯ááá·áºáá«áá á¡ááŒá±á¬ááºážá¡áá¬á¡áá áºááẠá¡ááá·áºááá¯áá±á¬ááºážá á±ááẠááŸáááŒá®ážáá¬ážáá±á¬áºáááºáá»á¬ážááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá
áá®ááŒá¿áá¬ááœá±ááᯠáááºááá¯ááŒá±ááŸááºážáá²á·áááºááá¯áᬠááŒá±á¬ááŒáááºá
ááá¯ááºá á¬ážááŸááºáá±á¬ááºážáá»á¬áž ááœá±ážáá»ááºááŒááºážá
á¡ááá·áºáááºááŸááºááŒááºážáá¡áááºá¡ááœá±ážááŸá¬ ááá¯ááœááºážááŸá¯áá¯á¶ážááááŸááá² áá±á¬ááºáá±á«ááºážáá»á¬ážá áœá¬áá±á¬ áá®áá®á áá¹ááá·áºá¡áááºážáááºá¡ááœááºáž ááá·áºááœááºážá ááºážá á¬ážáá¬ážááá·áº á á¬ááœááºá á¬áááºážá¡áá±á¡ááœááºááᯠáááºááá¯á·áá»áŸá±á¬á·áá»ááá¯ááºáááºáááºážá
áá»áœááºá¯ááºááá¯á·ááẠML áá±á¬áºáááºáá»á¬ážá áœá¬ááᯠáá±á·áá»áá·áºáááºááŒá¬ážááŒá®áž áááºážááá¯á·á¡áá±á«áºá¡ááŒá±áá¶á á¡ááºá¹áá«áááºáá»á¬ážááᯠáááºáá®ážáᬠá¡áá¯á¶ážááŒá¯áá°á¡ááœáẠá á¬ááœááºá á¬áááºážáá»á¬ážááᯠá¡ááá·áºáááºááŸááºáá±ážááá·áº á¡ááŒá¬ážáá±á¬áºáááºáá»á¬ážááᯠáá±á·áá»áá·áºáá±ážáááºááá¯áá«á áá¯á·á á¡á¬ážáá¯á¶ážá¡áááºááŒá±áááá·áºáááºá ááá¯á·áá±á¬áº áááºááẠá á¬ááœááºá á¬áááºážá¡á¬ážáá¯á¶ážá¡ááœáẠááááááºááá¹ááá¬á¡á¬ážáá¯á¶ážááᯠá¡áá»áááºááŸáá·áºáááŒá±ážáá®ááœááºáá»ááºáá¯á¶áá»áŸááá á€á á¬ááœááºá á¬áááºážáá»á¬ážáááºážáá±á«ááºážáá»á¬ážá áœá¬ááŸááá±áá«áá á¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážá¡á¬áž 100-200 ms ááŒáá·áºáááºáá±á¬ááºáááºááá¯á¡ááºáá«áááºá áá¯ááºáááºážááŸá¬ á¡áá¯á¶ážááŒá¯áá°á¡ááœáẠá¡ááá·áºáááºááŸááºááá·áº áááºážáá±á«ááºážáá»á¬ážá áœá¬áá²á០á¡áá»áá¯á·áá±á¬ á¡á á¯ááœá²áá áºáá¯ááᯠááœá±ážáá»ááºáááºááŒá áºáááºá á€á¡ááá·áºááᯠá¡áá»á¬ážá¡á¬ážááŒáá·áº ááá¯ááºá á¬ážááŸááºáá±á¬ááºážááœá±ážáá»ááºááŒááºážáᯠáá±á«áºáááºá áááºážá¡ááœáẠááá¯á¡ááºáá»ááºáá»á¬ážá áœá¬ááŸááá«áááºá ááááŠážá áœá¬á ááœá±ážáá»ááºááŸá¯áááºá¡ááœááºáá»ááºááŒááºá áœá¬ááŒá áºáá±á«áºááááºááŒá áºááŒá®ážá ááá¯á·ááŒá±á¬áá·áºá¡ááá·áºáááºááŸááºáá»ááºá¡ááœááºáááºááá¯ááºááá»áŸá¡áá»áááºáá»ááºáá²á·áááºá áá¯áááá¡áá±ááŸáá·áºá á¡ááá·áºáááºááŸááºáááºá¡ááœáẠá á¬ááœááºá á¬áááºážá¡áá±á¡ááœááºááᯠá¡ááœááºáá»áŸá±á¬á·áá»ááŒááºážááŒáá·áº áá¯á¶ážá áœá²áá°ááŸáá·áº áááºááá¯ááºááá·áº á á¬ááœááºá á¬áááºážáá»á¬ážááᯠáááºááá¯ááºááá»áŸ áá¯á¶ážáá¯á¶ážááááºážááááºážáá¬ážááááºááŒá áºáááºá
áá»áœááºá¯ááºááá¯á·á ááá¯ááºá á¬ážááŸááºáá±á¬ááºážááœá±ážáá»ááºááŒááºážááá¯ááºáᬠáááá¬áááẠááŒá±á¬ááºážáá²áá¬áá²á·ááŒá®áž ááá¯á¡áá»áááºááœáẠáá»áœááºá¯ááºááá¯á·ááẠá¡ááá·áºáá±á«ááºážáá»á¬ážá áœá¬ á¡á á®á¡á á¥áºáá áºáá¯ááá¯á· áá±á¬ááºááŸááá¬ááŒá®ááŒá áºáááº-
áááá¡áá»ááºá á
á¬ááœááºá
á¬áááºážá¡á¬ážáá¯á¶ážááᯠá¡á¯ááºá
á¯áá»á¬ážá¡ááŒá
Ạááá¯ááºážááŒá¬ážáá¬ážááŒá®áž áá°ááŒáá¯ááºá¡áá»á¬ážáá¯á¶ážá
á¬ááœááºá
á¬áááºážáá»á¬ážááᯠá¡á¯ááºá
á¯áá
áºáá¯á
á®á០áá°áá±á¬ááºááœá¬ážáá«áááºá á¡á¯ááºá
á¯áá»á¬ážááẠááá¯ááºáá»á¬ážá á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážá á¡á
á¯á¡áá±ážáá»á¬áž ááŒá
áºááá¯ááºáááºá á¡áá¯á¶ážááŒá¯áá°áá
áºáŠážá
á®á¡ááœááºá áááºážááááá¯ááºážááá¯á¡ááŒá±áá¶áá áá°ááŸáá·áºá¡áá®ážáá¯á¶ážá¡á¯ááºá
á¯áá»á¬ážááᯠááœá±ážáá»ááºááŒá®áž á¡áá±á¬ááºážáá¯á¶ážá
á¬ááœááºá
á¬áááºážáá»á¬ážááᯠáááºážááá¯á·áá¶ááŸááá°áááºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá»áááºááŸáá·áºáááŒá±ážáá® á¡áá¯á¶ážááŒá¯áá°ááŸáá·áº á¡áá®ážá
ááºáá¯á¶áž á
á¬ááœááºá
á¬áááºážáá»á¬ážááᯠááœá±ážáá»ááºááẠkNN á¡ááœáŸááºážááá¯áááºáž á¡áá¯á¶ážááŒá¯áá«áááºá kNN á¡ááœáŸááºážááᯠáááºáá±á¬ááºááẠáááºážáááºážáá»á¬ážá
áœá¬ ááŸáááŒá®áž áá»áœááºá¯ááºááá¯á·á áá¯ááºáá±á¬ááºááŸá¯ááŸá¬ á¡áá±á¬ááºážáá¯á¶ážááŒá
áºáááºá
áá»áœááºá¯ááºááá¯á·ááœáẠáá¯á¶ážá áœá²áá°áá áºáŠážá á®á¡ááœáẠá á¬ááœááºá á¬áááºáž áá±á¬ááºážááŸáá·áºáá»á®ááŸááá«áá±ážáááºá áááºážááẠá¡ááºá¹áá«áááºá¡á¬ážáá¯á¶ážááᯠáá±ááœááºááẠáá»á¬ážá áœá¬áá»ááºáá±áá±ážáááºá ááá¯á·ááŒá±á¬áá·áº á€á¡ááá·áºááœáẠáá»áœááºá¯ááºááá¯á·ááẠáá±á«á·áá«ážáá±á¬ á¡ááá·áºáááºááŸááºááŒááºáž - áá±á«á·áá«ážáá±ážáá¶áá±á¬ á¡ááá·áºáááºááŸááºáá»ááºáá±á¬áºáááºááᯠá¡áá¯á¶ážááŒá¯áá«áááºá á¡áá¯ááºááŸá¬ áá±ážáá¶áá±á¬áá±á¬áºáááºááœáẠáááºááá·áºá á¬ááœááºá á¬áááºážáá»á¬áž ááááºááœááºááŸááááºááᯠááá·áºááŸááºážáááºááŒá áºáááºá á¡ááŒáá·áºáá¯á¶áž ááŒáá¯áááºááá·áºááŸááºážááá¯ááºáá±á¬ á á¬ááœááºá á¬áááºážáá»á¬ážááᯠá¡ááá·áºáááºááŸááºááŒááºážá áá±á¬ááºáá¯á¶ážá¡ááá·áºááœáẠá¡ááŒá®ážá á¬ážáá±á¬áºáááºááœáẠá¡áá¯á¶ážááŒá¯áááºááŒá áºáááºá á€áááºážáááºážááẠá¡áá¯á¶ážááŒá¯áá°á¡ááœáẠááá·áºááœááºážá ááºážá á¬ážáá¬ážáá±á¬ á á¬ááœááºá á¬áááºážáá»á¬ážá áá±áá¬áá±á·á áºááᯠáá®áá®á áá¹ááá·áº áááºááááºážá¡ááœááºáž áááºážáá±á«ááºážáá»á¬ážá áœá¬á០áá±á¬ááºáá±á«ááºážáá»á¬ážá áœá¬á០áá»áŸá±á¬á·áá»ááá¯ááºá á±áá«áááºá
Runtime ááœáẠALS á¡ááá·áº
ááá áºáá áºáá»ááºááŸáááºááŒá®ážáá¬áá²á· áá¯á¶ážá áœá²áá°áá²á· áá¯á¶á·ááŒááºáá»ááºááᯠáááºááá¯ááá·áºááœááºážááá²á
á¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááœáẠá¡áá±ážááŒá®ážáá±á¬á¡áá»ááºááŸá¬ áá¯á¶ážá áœá²áá°á áá¯á¶á·ááŒááºáá»ááºá¡ááœáẠáá¯á¶á·ááŒááºáá»áááºááŒá áºáááºá á¡áá¯á¶ážááŒá¯áá°á¡áá áºáá»á¬ážá¡ááœáẠá¡áá°ážá¡áá±ážááŒá®ážáá«áááº- áá°áá áºáŠážááẠá¡ááŒá¶ááŒá¯áá»ááºá áá áºááᯠá áááºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœáẠá¡ááŒá±á¬ááºážá¡áá¬á¡áá»áá¯ážáá»áá¯ážááŸá á á¬ááœááºá á¬áááºážáá»á¬ážá áá¯áá¹ááá¯ááºáá±ážáá®ážááá·áºááá¯ááºáá±á¬ ááááºáá áºáá¯ááᯠáááºáá¶áááŸááááºááŒá áºáááºá áá° ááááá¯á¶áž ááá áºááŸáááºááá¯ááºáááºááŸáá·áº áááºááẠáááºážááᯠáá»ááºáá»ááºážááá·áºááœááºážá ááºážá á¬ážááŒá®áž áá°á á¡áá»áá¯ážá á®ážááœá¬ážááŸáá·áº ááá¯ááºáá»á±á¬áá®ááœá±ááŒá áºá¡á±á¬áẠáá¯ááºáá±á¬ááºááẠááá¯á¡ááºáááºá á¡áá»ááºá¡á¬ážáá¯á¶ážááᯠá¡á±á¬á·ááºááá¯ááºážááœááºáá»ááºáá«áá ááŸá±á¬áá·áºááŸá±ážááŸá¯ááŒá±á¬áá·áº á¡ááŒááºá áá áºáá¯á¶á·ááŒááºááŸá¯ áááŒá áºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áº áá¯á¶ážá áœá²áá°á áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá¡áá»áááºááŸáá·áºáááŒá±ážáá® áá¯ááºáá±á¬ááºááẠááá¯á¡ááºáá«áááºá á€áááºááœááºáá»ááºáá»á¬ážá¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá¯á¶ážááŒá¯áá°á vector ááá¯ááºá á¬ážááŒá¯ááŸá¯ááᯠáááºáá±á¬ááºáááºá¡ááœáẠruntime ááœáẠALS á¡ááá·áºááᯠá¡áá¯á¶ážááŒá¯áá«áááºá
á á¬ááœááºá á¬áááºážá¡á¬ážáá¯á¶ážá¡ááœáẠvector áá¯á¶ááá¹áá¬ááºáá áºáá¯ááŸáááẠáá¯áá°áááŒáá«á áá¯á·á á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠELMoá BERT ááá¯á·ááá¯áẠá¡ááŒá¬ážá ááºáááºáá°ááŸá¯áá±á¬áºáááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áá±á¬ááºážáá«ážáá áºáá¯ááºáá á¬áá¬ážá¡áá±á«áº á¡ááŒá±áá¶á á¡á±á¬á·ááºááá¯ááºážááœáẠááŒáŸá¯ááºááŸá¶ááŸá¯áá»á¬ážááᯠáááºáá±á¬ááºááá¯ááºáá«áááºá á áá áºá¡ááœááºážááŸá áááºážááá¯á·á á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯áá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶á áá°áá®áá±á¬áá±áá¬ááŸá áá¯á¶ážá áœá²áá°áá»á¬ážá vector áá¯á¶ááá¹áá¬ááºááᯠáá»áœááºá¯ááºááá¯á· áááºááá¯á·áááŸáááá¯ááºáááºáááºážá
á¡áá¯á¶ážááŒá¯áá°-á á¬ááœááºá á¬áááºáž matrix áááœá²á·á ááºážááŒááºážááŸáá·áºááŒáá¯ááœá²ááŒááºážáá¡ááœá±ááœá±áááá¬ám á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº n á á¬ááœááºá á¬áááºážáá»á¬áž áá¬ážááŸáááŒáá«á áá¯á·á á¡áá»áá¯á·áá±á¬ áá¯á¶ážá áœá²áá°áá»á¬ážá¡ááœááºá á¡áá»áá¯á·áá±á¬ á á¬ááœááºá á¬áááºážáá»á¬ážááŸáá·áº áááºážááá¯á·á áááºáá¶áá±ážááᯠááááŸááá«áááºá ááá¯á·áá±á¬áẠá€á¡áá»ááºá¡áááºááᯠmxn matrix á¡ááŒá Ạááá¯ááºá á¬ážááŒá¯ááá¯ááºáááº- á¡áááºážáá»á¬ážááẠá¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº áááºááá¯ááºááŒá®ážá áá±á¬áºáá¶áá»á¬ážááẠá á¬ááœááºá á¬áááºážáá»á¬ážááŸáá·áº áááºááá¯ááºáá«áááºá á á¬ááœááºá á¬áááºážá¡áá»á¬ážá á¯ááᯠáá°ááááŒááºááá±ážáá±á¬ááŒá±á¬áá·áºá áááºááá áºáá²ááºá¡áá»á¬ážá á¯ááẠááá¬ááŒá áºáá±áááºááŒá áºááŒá®áž á¡ááŒá¬ážá¡áá¬áá»á¬ážááᯠááŒáá·áºáá±ážáááºááŒá áºáááºá ááŒá áºáááºáá áºáá¯á á®á¡ááœáẠ(á¡ááŒáá¯ááºá áááŒáá¯ááºá ááá áº) áááºááá¯ážá¡áá»áá¯á·ááᯠmatrix ááœáẠáá±ážáá¬ážááẠ- ááá¯á·áá±á¬áº 1 ááŸáá·áº áááºááá¯ááºááá·áº ááá¯ážááŸááºážáá±á¬áá¯á¶á á¶ááᯠáá¯á¶ážáááºááŒáá·áºáá¡á±á¬ááºá áááŒáá¯ááºáá«á -1 ááŸáá·áº áááºááá¯ááºáá«áááºá
Matrix ááᯠd ááẠvector ááá¯ááºá á¬ážááŒá¯ááŸá¯á dimension (áá»á¬ážáá±á¬á¡á¬ážááŒáá·áº áá±ážáááºáá±á¬ ááááºáž) ááŒá áºááá·áº P (mxd) ááŸáá·áº Q (dxn) ááá¯á·ááᯠááŸá áºáá¯á¡ááŒá Ạááœá²ááŒáá·áºááŒáá«á áá¯á·á ááá¯á·áá±á¬áẠá¡áá¬ááá¹áá¯áá áºáá¯á á®ááẠd-dimensional vector (á¡áá¯á¶ážááŒá¯áá°áá áºáŠážá¡ááœáẠ- matrix P ááŸá á¡áááºážáá áºáá¯á á á¬ááœááºá á¬áááºážáá áºáá¯á¡ááœáẠ- matrix Q ááŸá áá±á¬áºáá¶) ááŸáá·áº áááºááá¯ááºáá«áááºá ဠvector áá»á¬ážááẠáááºááá¯ááºáᬠá¡áá¬ááá¹áá¯áá»á¬ážá ááŒáŸááºááŸá¶ááŸá¯áá»á¬áž ááŒá áºáááá·áºáááºá á¡áá¯á¶ážááŒá¯áá°áá áºáŠážááẠá á¬ááœááºá á¬áááºážáá áºáá¯ááᯠááŸá áºáááºáááºáá¬ážáᯠááá·áºááŸááºážáááºá áááºážááá¯á·á ááŒáŸá¯ááºááœááºážááŸá¯áá»á¬ážááᯠááá¯ážááŸááºážá áœá¬ ááŒáŸá±á¬ááºááá¯ááºáááºá
áááºááá
áºááᯠááŒáá¯ááœá²ááẠááŒá
áºááá¯ááºáá±á¬ áááºážáááºážáá»á¬ážáá²á០áá
áºáá¯ááŸá¬ ALS (Alternating Least Squares) ááŒá
áºáááºá áá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºáá« áá¯á¶ážááŸá¯á¶ážááŸá¯áá¯ááºáá±á¬ááºáá»ááºááᯠá¡áá±á¬ááºážáá¯á¶ážááŒá
áºá¡á±á¬áẠáá¯ááºáá±á¬ááºáá«áááº-
á€ááœáẠrui ááẠdocument i ááŸáá·áº user u ááá¯á·á á¡ááŒááºá¡ááŸááºáááºááœááºááŸá¯á qi ááẠdocument á vector ááŒá áºááŒá®áž pu ááẠuser u á vector ááŒá áºáááºá
ááá¯á·áá±á¬áẠáá»ááºážáá»áŸá áá¯áááºážá¡ááŸá¬áž (fixed document vectors á¡ááœááº) áááŸá¯áá±á¬áá·áºá០á¡áá±á¬ááºážáá¯á¶ážá¡áá¯á¶ážááŒá¯áá° vector ááᯠáááºááá¯ááºáᬠlinear regression ááá¯ááŒá±ááŸááºážááŒááºážááŒáá·áº ááœá²ááŒááºážá áááºááŒá¬ááœá±á·ááŸááá«áááºá
áááºážááᯠ"ALS á¡ááá·áº" áá¯áá±á«áºáááºá ALS algorithm ááá¯ááºááá¯ááºá matrices (á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº áá±á¬ááºážáá«ážáá»á¬áž) áá»á¬ážáá²á០áá áºáá¯ááᯠáááŸáá·áºá á® ááŒá¯ááŒááºááŒá®áž á¡áá±á¬ááºážááœááºáá¯á¶áž ááŒá±ááŸááºážáááºážááᯠááŸá¬ááœá±áᬠá¡ááŒá¬ážáá áºáá¯ááᯠá¡ááºááááºáá¯ááºááŒááºáž ááŒá áºáááºá
áá¶áá±á¬ááºážáá±á¬ááºáá áœá¬á á¡áá¯á¶ážááŒá¯áá°á vector ááá¯ááºá á¬ážááŒá¯ááŸá¯ááá¯ááŸá¬ááœá±ááŒááºážááẠvector ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážááá¯á¡áá¯á¶ážááŒá¯á runtime ááœááºáá¯ááºáá±á¬ááºááá¯ááºááá·áºá¡áá±á¬áºáá±ážááŒááºáááºáá±á¬áá¯ááºáá±á¬ááºááŸá¯áá áºáá¯ááŒá áºáááºá á€ááŸáá·áºááœááºááẠááá·áºá¡á¬áž á¡ááá·áºáááºááŸááºáá¬ááœáẠá¡áá¯á¶ážááŒá¯áá°ááá¯á¶á·ááŒááºáá»ááºááᯠáá»ááºáá»ááºážááá·áºááœááºážááá¯ááºá á±áá«áááºá ááá¯ááºá á¬ážááŸááºáá±á¬ááºážááœá±ážáá»ááºááŸá¯ ááá¯ááá¯áá±á¬ááºážááœááºáá¬á á±ááẠáá°áá®áá±á¬ááá·áºááœááºážááŸá¯ááᯠkNN á¡ááœáŸááºážááœáẠáá¯á¶ážááá¯ááºáááºá
ááŒáá·áºáá±áá¬ážáá±á¬ áá°ážáá±á«ááºážáá±á¬ááºááœááºááŸá¯ á á®á á áºááŒááºážá
ááá¯ážááŒáŸááºááŒáá·áºáá±ááá·áº matrix ááᯠááœá²ááŒááºážá áááºááŒá¬ááŒááºážá¡á¬áž áááºááá¯á·ááŒá¯áá¯ááºááŒá®áž áá±á¬ááºážáá«ážá¡áá áºáá»á¬ážá vector ááá¯ááºá á¬ážááŒá¯ááŸá¯áá»á¬ážááᯠá¡ááŒááºááŸá¬ááá¯ááºáááºáááºážá
á¡ááŒá±á¬ááºážá¡áá¬ááẠá¡ááŒá¶ááŒá¯áá»ááºá¡áá»ááºááŒááŸá¯áá»á¬ážá áá áºáá¯áááºážáá±á¬á¡áááºážá¡ááŒá áºááá¯ááºáá«á áá±á¬ááºáááºá¡áá±ážááŒá®ážáá±á¬á¡áááºážá¡ááŒá áºááŸá¬ áá°ážáá±á«ááºážáá±á¬ááºááœááºááá·áºá¡áá»ááºá¡áááºáá»á¬ážááŒá áºáááºá á¡áá¯á¶ážááŒá¯áá°-á á¬ááœááºá á¬áááºáž matrix áááŒáá¯ááœá²ááŒááºážá០áá±á¬ááºážááœááºáá±á¬ á¡ááá·áºáááºááŸááºááŒááºážá¡ááºá¹áá«áááºáá»á¬ážááᯠá¡á ááºá¡áá¬á¡á¬ážááŒáá·áº áááŸáááá¯ááºáááºá áá«áá±ááá·áº á¡á²áá®ááᯠááŒáá¯ááœá²á¡á±á¬ááºáá¯ááºááá¯á· ááŒáá¯ážá á¬ážáá²á·á¡áá« ááŒá¿áá¬ááœá±áá²á· ááŒá¯á¶áá²á·ááááºá
1. áá»áœááºá¯ááºááá¯á·ááœáẠá
á¬ááœááºá
á¬áááºáž áááºážáá±á«ááºážáá»á¬ážá
áœá¬ááŸáá·áº áá¯á¶ážá
áœá²áá° áááºážáááºááááºážááŸááááºá matrix ááẠá
ááºáá
áºáá¯áááºážááœáẠáá¯á¶ážáá¯á¶ážáá»á¬ážáá»á¬áž á¡á¶áááºááœááºáá»áááŒá
áºáá² ááŒáá¯ááœá²áá»ááºá
á®ážááẠá¡áá»áááºá¡áá±á¬áºááŒá¬áá«áááºá
2. á
áá
áºá¡ááœááºážááŸá á¡ááŒá±á¬ááºážá¡áá¬á¡áá»á¬ážá
á¯ááẠáááºáááºážááá¯áááº- á
á¬ááœááºá
á¬áááºážáá»á¬ážááẠáá¬áá®á¡áááºážáááºáᬠáááºááá¯ááºáá«áááºá ááá¯á·ááŒá±á¬áá·áº áááºážááá¯á·á vector ááá¯ááºá
á¬ážááŒá¯ááŸá¯ááᯠáááºááá¯ááºááá»áŸ ááŒááºááŒááºáááºáá±á¬ááºááẠááá¯á¡ááºáá«áááºá
3. á
á¬ááœááºá
á¬áááºážááᯠááœáŸáá·áºáááºááŒá®ážááŒá®ážáá»ááºáž ááŒáá¯ááœá²áá»ááºá
á®ážááŸá¯ááᯠáááºáá±á¬ááºáá«áá áá¯á¶áá±á¬ááºáá±á¬ á¡áá¯á¶ážááŒá¯áá°á¡áá±á¡ááœááºááẠáááºážááᯠá¡áá²ááŒááºááẠá¡áá»áááºááŸááááºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áº áááºážá vector ááá¯ááºá
á¬ážááŒá¯ááŸá¯ááẠá¡ááœááºáá±á¬ááºážááœááºááœááºáááŸááá«á
4. á¡áá¯á¶ážááŒá¯áá°áá
áºáŠážá ááŒáá¯ááºááẠááá¯á·ááá¯áẠáááŒáá¯ááºáá«áá á€á¡áá¬ááᯠááŒáá¯ááœá²áá»ááºá
á®ážááŸá¯ááœáẠáá»ááºáá»ááºážááá·áºááœááºážá
ááºážá
á¬ážááá¯ááºáááºááá¯ááºáá±á
á€ááŒá¿áá¬áá»á¬ážááá¯ááŒá±ááŸááºážáááºá áá»áœááºá¯ááºááá¯á·ááẠáááŒá¬áá ááá¯ážááŒáŸáá·áºááœááºážáá¶ááŸá¯áá»á¬ážááŒáá·áº á¡áá¯á¶ážááŒá¯áá°-á á¬ááœááºá á¬áááºáž matrix á ááŒáá·áºáá±ááŸá¯ááŒáá¯ááœá²ááŸá¯ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·áááºá á¡ááá¡áá» áááºááá¯á¡áá¯ááºáá¯ááºááá²á
áá»áœááºá¯ááºááá¯á·ááœáẠN á ááºáá»á¬áž á¡á á¯á¡áá±ážáá áºáá¯ááŸááááºááá¯áá«á áá¯á· (N ááẠáá¬ááŸáá·áºáá»á®áá±á¬) ááŸáááŒá®áž á ááºáá áºáá¯á¶ážááœáẠáááá¯ááºáá®áá±á¬ áááºážááá¯á·á¡áá±á«áº ááŒáá·áºáá»ááºáá¬ážáá±á¬ matrix áá áºáá¯á ááœá²á¡ááºááŸá¯ááᯠááŒá¯áá¯ááºááá¯áá«áááºá áá±ážááœááºážááŸá¬ áá áºáááºááœáẠá ááºáá áºáá¯á á®ááœáẠáá±áá¬á¡áá¯á¶á¡áá±á¬ááºááŸáááŒá®áž á¡ááŒá¬ážáá áºáááºááœáẠááœááºáá»ááºááŸá¯áá»á¬ážááẠá¡ááŸá®á¡ááá¯áááºážá á±ááẠá€ááŒáá¯ááœá²áá»ááºá á®ážááŸá¯ááᯠáááºááá¯á·áá¯ááºáá±á¬ááºááááºáááºážá
á¡áááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ ALS ááŒáá¯ááœá²ááŒááºážááá¯ááºáᬠá¡ááºáááá¯áá®áááºááᯠáá»áœááºá¯ááºááá¯á· á¡áá¯á¶ážááŒá¯áá«áááºá ALS á¡ááá·áºáá
áºááá·áºááᯠááŒáá·áºáá±ááá·áºáá¯á¶á
á¶ááŒáá·áº áááºááá¯á·áá¯ááºáá±á¬ááºááááºááᯠááŒáá·áºááŒáá«á
áá¯á· - áá»ááºá¡ááá·áºáá»á¬ážááẠáááºáá°áá«áááºá áá»áœááºá¯ááºááá¯á·ááœáẠá
á¬ááœááºá
á¬áááºážáá»á¬ážá áá¯á¶áá± matrix áá
áºáá¯ááŸáááŒá®áž áá¯á¶ážá
áœá²áá°áá»á¬ážá matrix áá
áºáá¯ááᯠáááºáá±á¬ááºááá¯áááºááá¯ááŒáá«á
áá¯á·á áááºážááá¯ááŒá¯áá¯ááºáááºá áááºážááᯠN á¡ááá¯ááºážáá»á¬ážá¡ááŒá
Ạáá»ááºážááŒá±á¬ááºážáá»á¬áž ááá¯ááºážááŒá¬ážááŒá®áž á¡ááá¯ááºážáá
áºáá¯á
á®ááœáẠááá·áºááŸááºážááŒá±á¡á¬ážááŒáá·áº áá°áá®áá±á¬ ááá¯ááºážá¡áá±á¡ááœááºáá»á¬ážáá«ááŸááááºá áááºááá¯ááºáá¬á¡áááºážáá»á¬ážá á¡ááœááºááá¯ááºáá±á¬ áá²ááºáá
áºáá¯á
á®ááá¯á· áá±ážááá¯á·áááºááŒá
áºááŒá®ážá á
á¬ááœááºá
á¬áááºážááá·áºááœááºážááŸá¯áá»á¬ážá matrix (áá¯á¶ážáá¯á¶áž) ááᯠáá±ážááá¯á·áá«áááºá áááºážáá¡ááœááºá¡á
á¬ážááẠá¡ááœááºáááŒá®ážáá² á¡áá¯á¶ážááŒá¯áá°-á
á¬ááœááºá
á¬áááºáž áááºááá
áºááẠá¡áá»á¬ážá¡á¬ážááŒáá·áº á¡ááœááºáá»á²áá±á¬ááŒá±á¬áá·áºá á€áá±áá¬ááẠáá¯á¶ááŸááºá
ááºáá
áºáá¯á¶ážááœáẠá¡á¶áááºááœááºáá»ááŒá
áºáááá·áºáááºá
áá¯á¶áá± matrix ááᯠáá áºáá¯ááŒá®ážáá áºáá¯ááŒá±á¬ááºážáᬠáá±á¬áºáááºáá»á¬áž áá±á«ááºážá ááºážááœá¬ážáááºá¡áá á€ááŸáá·áºááœááºááᯠáá±ááºáá±á«ááºážáá»á¬ážá áœá¬ááœáẠáááºáá«áááºáá« ááŒá¯áá¯ááºááá¯ááºáá«áááºá ááá¯á·áá±á¬áºááŒá¬ážáááºážá matrix ááŒáá¯ááœá²ááŸá¯ááẠáá¬áá®áá±á«ááºážáá»á¬ážá áœá¬ ááŒá¬ááá¯ááºáááºá áááºážááẠá á¬ááœááºá á¬áááºážá¡áá áºáá»á¬ážááᯠáá»ááºááŒááºá áœá¬áááºáá¶áááŸááááºááŸáá·áº áá±á¬áºáááºáááºáá±á¬ááºáá¬ááœáẠá¡áá»ááºá¡áááºá¡áááºážáááºáá¬ááŸáááá·áºá¡áá¬áá»á¬ážá ááŒáŸááºááŸá¶ááŸá¯áá»á¬ážááᯠá¡ááºááááºáá¯ááºááẠááá¯á¡ááºááá·áºááŒá¿áá¬ááᯠáááºážááŸááŒá±ááŸááºážáááºááá¯ááºáá«á
áá»ááºááŒááºá áœá¬ ááá¯ážááŒáá·áºáá¬áá±á¬ áá±á¬áºáááºá¡ááºááááºáá»á¬ážááᯠááááºáááºááŒááºážááẠáá»áœááºá¯ááºááá¯á·ááᯠáá°áá®áá±ážáá²á·áá«áááºá áá»áœááºá¯ááºááá¯á·ááœáẠáááºááŸááá±á·áá»áá·áºáá±ááá·áº áá±á¬áºáááºáá áºáá¯ááŸáááẠááá¯ááŒáá«á áá¯á·á áá°áá áááºáááºážáá»áááºááŸá áá áá»áœááºá¯ááºááá¯á·áá¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááá·áº áá±á¬ááºážáá«ážá¡áá áºáá»á¬ážá¡ááŒáẠáá±á·áá»áá·áºáá±ážáá¬áá¡ááœááºáž á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯á¡áááºážáááºáá¬ááŸááá±á¬ áá±á¬ááºážáá«ážáá»á¬ážáááºáž ááŸááá²á·áá«áááºá ááá¯áá²á·ááá¯á·áá±á¬ áá±á¬ááºážáá«ážáá»á¬ážá ááŒáŸá¯ááºááŸá¶ááŸá¯áá»á¬ážááᯠáá»ááºááŒááºá áœá¬ áááŸááááºá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬áºáááºá ááááá¯á¶áž áá±á·áá»áá·áºááŸá¯ááŒá®ážá¡ááœááºáž áááŸááá±á¬ á¡áá¯á¶ážááŒá¯áá° ááŒáŸá¯ááºááŸá¶ááŸá¯áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž áá¯á¶áá±á¡áá¯á¶ážááŒá¯áá°áááºááá áºááᯠáá±ážáá¬ážááá·áº á á¬ááœááºá á¬áááºáž matrix ááᯠááœááºáá»ááºááẠALS á¡ááá·áºáá áºáá¯ááᯠáá¯ááºáá±á¬ááºáá«áááºá áááºážááẠááá·áºá¡á¬áž ááŒáŸá¯ááºááŸá¶ááŸá¯áá»á¬ážááᯠáá»ááºááŒááºá áœá¬ áááºáá¶ááá¯ááºá á±ááẠ- á á¬ááœááºá á¬áááºážááᯠáá¯ááºáá±ááŒá®áž áááá áºá¡áááºážáááºá¡ááœááºáž - ááŸáá·áº áááŒá¬áá±ážáá®á á á¬ááœááºá á¬áááºážáá»á¬ážá ááá·áºááœááºážááŸá¯áá»á¬ážááᯠáááŒá¬áá á¡ááºááááºáá¯ááºáá«á
áá°áá¬ážááá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá»ááºááŒááºážááá·áºááœááºážá ááºážá á¬ážááẠá¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááŒá¯áá¯ááºáááºá runtime ááœáẠá¡á±á¬á·ááºááá¯ááºážááŸáááŸááá±á¬ á¡áá¯á¶ážááŒá¯áá°ááá·áºááœááºážááŒááºážááᯠáá»áœááºá¯ááºááá¯á·á¡áá¯á¶ážáááŒá¯áá«á áááºážá¡á á¬ážá áá»áœááºá¯ááºááá¯á·ááẠALS á¡ááá·áºááᯠáá¯ááºáá±á¬ááºááŒá®áž á¡ááŸááºáááẠá¡áá¯á¶ážááŒá¯áá° vector ááᯠááá°áá«á
á¡ááŒá¬ážááá¯ááááºážá§áááá¬ááá¯á· ááœáŸá²ááŒá±á¬ááºážáá«á
áá®áá®ááá¯áá áºáá¯á vector áá¯á¶ááá¹áá¬ááºááá¯áááºáá±á¬ááºááẠá á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážááœáẠá¡áá¯á¶ážááŒá¯áá°áá¯á¶á·ááŒááºáá»ááºááᯠáááºááá¯á·á¡áá¯á¶ážááŒá¯ááááºáááºážá
á¡á ááá¯ááºážááœááºá áá»áœááºá¯ááºááá¯á·ááẠá á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážááá¯áᬠá¡ááŒá¶ááŒá¯áá¬ážáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·á á¡ááºáááá¯áá®áááºáá»á¬ážááᯠá€á¡ááŒá±á¬ááºážá¡áá¬á¡áá»áá¯ážá¡á á¬ážááŸáá·áº á¡á¶áááºááœááºáá»ááŒá áºá¡á±á¬áẠááŒá¯áá¯ááºáá¬ážáááºá ááá¯á·áá±á¬áº á¡ááŒá¬ážá¡ááŒá±á¬ááºážá¡áá¬á¡áá»áá¯ážá¡á á¬ážáá»á¬ážááᯠáá±á«ááºážááá·áºáá±á¬á¡áá«á áá±á¬áºáááºáá»á¬ážááᯠááá¯ááºáá»á±á¬áá®ááœá±ááŒá áºá¡á±á¬áẠááŒá¯áá¯ááºááẠááá¯á¡ááºááŸá¯ááŸáá·áº áááºááá¯ááºáá²á·ááááºá áá®áá®ááá¯ááá°áá¬ááᯠá¡áá¯á¶ážááŒá¯á á€ááŒá¿áá¬ááᯠáá»áœááºá¯ááºááá¯á· áááºááá¯á·ááŒá±ááŸááºážáá²á·ááááºážá ááœá±ážáá»ááºááœáá·áºáá áºáá¯ááŸá¬ áá±á¬áºáááºá¡á¬ážáá¯á¶ážááᯠá¡á á០ááŒááºáá±á·áá»áá·áºáááºááŒá áºáááºá ááá¯á·áá±á¬áº áááºážááẠá¡áá»áááºááŒá¬ááŒáá·áºááŒá®áž á¡áá»áá¯á·áá±á¬ á¡ááºáááá¯áá®áááºáá»á¬ážááẠáááºáá±á¬ááºááŸá¯á ááááá¯á¶ážá¡ááá¯ááºá¡ááá·áºááœáẠá¡ááŒá±á¬ááºážá¡áá¬á¡áá áºá¡ááœáẠááá¯á¡ááºáá±á¬ááá¬áááœáẠááááŸáááá¯ááºáá±ážááá·áº áá±á·áá»áá·áºáá±ážááá°áá¬á á¡ááœááºá¡á á¬ážá¡ááœáẠáá±á¬ááºážááá¯áá±áá«áááºá
áá»áœááºá¯ááºááá¯á·ááẠá¡ááŒá¬ážáá áºáááºááá¯á·ááœá¬ážáᬠáá®áá®ááá¯á¡ááœáẠá á¬áá¬ážáá¯á¶á á¶áá»á¬ážááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯áá²á·áááºá áá°áá®áá±á¬ ALS ááŸáá·áºááœááºááẠáá®áá®ááá¯áá»á¬ážá áá¯á¶ááá¹áá¬ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºá á±áá²á·áááºá á á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážááᯠá¡ááŒá±áá¶á á¡áá¯á¶ážááŒá¯áá°áá»á¬ážá áá¯á¶ááá¹áá¬ááºááᯠááá°ááŒá®áž áá®áá®ááá¯ááŒáá·áºááŸá¯ááŸá¯ á¡áá»ááºá¡áááºááᯠá¡áá¯á¶ážááŒá¯áᬠALS á¡ááá·áºááᯠáá¯ááºáá±á¬ááºáá²á·áááºá ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá®áá®ááá¯á áá¯á¶ááá¹áá¬ááºááᯠá¡ááœááºááá°áááŸááááºá ááŸáá·áº runtime ááœááºáá»áœááºá¯ááºááá¯á·áááºá á¬áá¬ážáá±á¬ááºážáá«ážáá»á¬ážááŸáá·áºáá®áá®ááᯠvector ááŸáááŸááá±á¬á¡áá¯á¶ážááŒá¯áá° vector á¡ááŒá¬ážáá®ážá ááºááŸá¯ááá¯ááœááºáá»ááºáááºá
áá±á¬ááºáá»ááº
á¡áá»áááºááŸáá·áºáááŒá±ážáá® á¡ááŒá¶ááŒá¯áá»ááºá áá áºá á¡áááá¡áá»ááºááᯠáá±á¬áºáá±á¬ááºáá¬ááœáẠá áááºáá±á«áºááŸá¯áá»á¬ážá áœá¬ áá«áááºáá«áááºá á€áá±áá¬ááᯠáááááá±á¬ááºáá±á¬ááºá¡áá¯á¶ážááŒá¯ááẠáááºááẠáá±áá¬ááᯠáá»ááºááŒááºá áœá¬áá¯ááºáá±á¬ááºááŒá®áž ML áááºážáááºážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááºááá¯á¡ááºáá«áááºá á¡áááºážáá¯á¶ážá¡áá»áááºá¡ááœááºáž áá¯á¶ážá áœá²áá°á¡áá»ááºááŒááŸá¯áá»á¬ážááŸáá·áº á¡ááŒá±á¬ááºážá¡áá¬áá°áá áºá¡áá áºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááá¯ááºááá·áº ááŸá¯ááºááœá±ážáá±á¬ ááŒáá·áºáá±ááá·áºá áá áºáá»á¬ážááᯠáááºáá±á¬ááºáá«á ááŸáá·áº á¡ááŒá¬ážá¡áá¯ááºáá»á¬ážá áœá¬á
áááºááŸáá
áá
áºááœááºá áá»áœááºá¯ááºáá±á¬áºááŒáá¬ážááá·áº áá®ááá¯ááºážáá¯á¶á
á¶á á¡áá¯á¶ážááŒá¯áá°á¡ááœáẠá¡ááŒá¶ááŒá¯áá»ááºáá»á¬áž á¡áááºá¡ááœá±ážááẠáááºážááá¯ááºáá±á¬ááºáá»ááºááŸáá·áº áááºáá±á¬ááºááŸá¯ááœáẠááŸááá±ááá·áºááŒá¬áá»áááºááá¯á·ááŸáá·áºá¡áá° ááŒá®ážááœá¬ážáá¬áááºá ááá¯á·áá±á¬áº á€áá±áá¬ááœáẠá¡áááá¡áááºá¡áá²ááŸá¬ ááŒá
áºáááº- á¡ááŒá±á¬ááºážá¡áá¬ááŸáá·áº á¡áááºážáááºáᬠá¡ááŒááºá¡ááŸááºá¡áá»áá¯ážááŒá¯áá°á á¡áá»áá¯ážá
á®ážááœá¬ážááᯠáá»ááºáá»ááºážáá¬ážáááºááẠá
áá
áºá¡ááœáẠáááºáá²áá«áááºá áá¯á¶ážá
áœá²áá°á¡áá
áºáá»á¬ážá¡ááœáẠá¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááᯠááŒáŸáá·áºáááºááŒááºážááẠáá»áœááºá¯ááºááá¯á·á á¡ááááááºážááá¯ááºááŒá
áºáááºá áá°áá
áºáŠážááŸáá·áº áááºááá¯ááºááá·áº á¡ááŒá±á¬ááºážá¡áá¬ááᯠáááºážá ááááºáá²ááá¯á· ááá¯ááá¯ááŒááºáááºá
áœá¬ áá±á¬ááºááŸááá¬á
á±áááºááŸáá·áº ááááºááá¯ááºáá±á¬ á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááᯠááŒáááá¯ááºááẠá¡ááºáááá¯áá®áááºáá»á¬ážááᯠá¡áá±á¬ááºážáá¯á¶ážááŒá
áºá¡á±á¬áẠáááºáááºáá¯ááºáá±á¬ááºááœá¬ážáá«áááºá
source: www.habr.com