ΠœΠ°Ρ‚Ρ€ΠΈΡ† Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅: Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€, Ρ„ΠΎΡ€ΠΌΡƒΠ»Π° ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

НОУ ИНВУИВ | ЛСкция | ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€

< ЛСкция 5 || ЛСкция 6: 1234567 || ЛСкция 7 >

Аннотация: Π’ Π»Π΅ΠΊΡ†ΠΈΠΈ рассматриваСтся Π·Π°Π΄Π°Ρ‡Π° умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€. ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡΡ постановка Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ΠžΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ раздСлСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ процСссорами Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ систСмы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π”Π°Π»Π΅Π΅ ΠΈΠ·Π»Π°Π³Π°ΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова: ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Π΅ вычислСния, ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°, структуры хранСния, ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний, ΠΏΠ΅Ρ€Π΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ, ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний, скалярноС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, MPI, ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, ускорСниС, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ экспСримСнт, EM64T, computer cluster, частичный Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, каскадная схСма, программная рСализация

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ матСматичСском ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ самых Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… процСссов, явлСний ΠΈ систСм. ΠœΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Π΅ вычислСния ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ основу ΠΌΠ½ΠΎΠ³ΠΈΡ… Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹Ρ… расчСтов – срСди областСй ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°, Ρ„ΠΈΠ·ΠΈΠΊΠ°, экономика ΠΈ Π΄Ρ€.

Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ значимости эффСктивного выполнСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… расчСтов ΠΌΠ½ΠΎΠ³ΠΈΠ΅ стандартныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ содСрТат ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. ОбъСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ† постоянно увСличиваСтся – Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹Π΅ экономныС структуры хранСния для ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° (Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, Π»Π΅Π½Ρ‚ΠΎΡ‡Π½Ρ‹Ρ…, Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ‚.ΠΏ.), ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ высокоэффСктивныС машинно-зависимыС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², проводятся тСорСтичСскиС исслСдования для поиска Π±ΠΎΠ»Π΅Π΅ быстрых ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний.

Являясь Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ΅ΠΌΠΊΠΈΠΌΠΈ, ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Π΅ вычислСния ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний. Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, использованиС Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… многопроцСссорных систСм позволяСт сущСствСнно ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹Ρ… Π·Π°Π΄Π°Ρ‡. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π² силу своСй достаточно простой Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΡ€Π΅ΠΊΡ€Π°ΡΠ½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ для дСмонстрации ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования.

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎ-Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ умноТСния, Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π»Π΅ΠΊΡ†ΠΈΠΈ ( «ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ умноТСния» ) излагаСтся Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΠΈΠΉ случай – Π·Π°Π΄Π°Ρ‡Π° пСрСмноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π’Π°ΠΆΠ½Ρ‹ΠΉ Π²ΠΈΠ΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний – Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ – прСдставлСн Π² «Π Π΅ΡˆΠ΅Π½ΠΈΠ΅ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ» . ΠžΠ±Ρ‰ΠΈΠΉ для всСх пСрСчислСнных Π·Π°Π΄Π°Ρ‡ вопрос раздСлСния ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌΠΈ процСссорами рассматриваСтся Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅ Π»Π΅ΠΊΡ†ΠΈΠΈ 6.

ΠŸΡ€ΠΈ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ рассматриваСмыС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ»ΠΎΡ‚Π½Ρ‹ΠΌΠΈ ( dense ), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ число Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… элСмСнтов Π² Π½ΠΈΡ… Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΠ±Ρ‰ΠΈΠΌ количСством элСмСнтов ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

6.1. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ распараллСливания

Для ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ΠΌ являСтся ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий для Ρ€Π°Π·Π½Ρ‹Ρ… элСмСнтов ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π”Π°Π½Π½ΠΎΠ΅ свойство ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΠ΅Ρ‚ ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… расчСтов, ΠΈ, ΠΊΠ°ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, распараллСливаниС ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ сводится Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΊ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΌΠ΅ΠΆΠ΄Ρƒ процСссорами ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ систСмы. Π’Ρ‹Π±ΠΎΡ€ способа раздСлСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний; сущСствованиС Ρ€Π°Π·Π½Ρ‹Ρ… схСм распрСдСлСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ Ρ†Π΅Π»Ρ‹ΠΉ ряд ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹Ρ… вычислСний.

НаиболСС ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ способы раздСлСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ† состоят Π² Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° полосы (ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ) ΠΈΠ»ΠΈ Π½Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ( Π±Π»ΠΎΠΊΠΈ ).

1. Π›Π΅Π½Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈ Π»Π΅Π½Ρ‚ΠΎΡ‡Π½ΠΎΠΌ ( block-striped ) Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ процСссору выдСляСтся Ρ‚ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ΅ подмноТСство строк ( rowwise ΠΈΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ) ΠΈΠ»ΠΈ столбцов ( columnwise ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ) ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ (рис. 6.1). Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ строк ΠΈ столбцов Π½Π° полосы Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв происходит Π½Π°

Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ( ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ) основС. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ для Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ разбиСния ΠΏΠΎ строкам, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A прСдставляСтся Π² Π²ΠΈΠ΄Π΅ (см. рис. 6.1)

( 6.1)

Π³Π΄Π΅ ai=(ai1,ai2,…,ain), 0<=i<m, Π΅ΡΡ‚ΡŒ i -я строка ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ A (прСдполагаСтся, Ρ‡Ρ‚ΠΎ количСство строк m ΠΊΡ€Π°Ρ‚Π½ΠΎ числу процСссоров p, Ρ‚. Π΅. m = kxp ). Π’ΠΎ всСх Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ умноТСния ΠΈ умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π² этой ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ лСкциях, примСняСтся Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ основС.

Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ полос состоит Π² ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ схСмы чСрСдования ( цикличности ) строк ΠΈΠ»ΠΈ столбцов. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, для чСрСдования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ число процСссоров p – Π² этом случаС ΠΏΡ€ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π²ΠΈΠ΄

( 6.2)

ЦикличСская схСма формирования полос ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для Π»ΡƒΡ‡ΡˆΠ΅ΠΉ балансировки Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ процСссоров (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Гаусса – см.

«Π Π΅ΡˆΠ΅Π½ΠΈΠ΅ систСм Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ» ).

2. Π‘Π»ΠΎΡ‡Π½ΠΎΠ΅ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈ Π±Π»ΠΎΡ‡Π½ΠΎΠΌ ( chessboard block ) Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° дСлится Π½Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ элСмСнтов – ΠΏΡ€ΠΈ этом, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ основС. ΠŸΡƒΡΡ‚ΡŒ количСство процСссоров составляСт p = sxq, количСство строк ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ являСтся ΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ s, Π° количСство столбцов – ΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ q, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ m = kxs ΠΈ n = lxq. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ A Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π³Π΄Π΅ Aij β€” Π±Π»ΠΎΠΊ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, состоящий ΠΈΠ· элСмСнтов:

( 6.3)

ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ цСлСсообразно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ систСма ΠΈΠΌΠ΅Π»Π° Ρ„ΠΈΠ·ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ»ΠΈ, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡŽ процСссорной Ρ€Π΅ΡˆΠ΅Ρ‚ΠΊΠΈ ΠΈΠ· s строк ΠΈ q столбцов.

Π’ этом случаС ΠΏΡ€ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ основС процСссоры, сосСдниС Π² структурС Ρ€Π΅ΡˆΠ΅Ρ‚ΠΊΠΈ, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ смСТныС Π±Π»ΠΎΠΊΠΈ исходной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, ΠΎΠ΄Π½Π°ΠΊΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ для Π±Π»ΠΎΡ‡Π½ΠΎΠΉ схСмы ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ цикличСскоС Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ строк ΠΈ столбцов.

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π»Π΅ΠΊΡ†ΠΈΠΈ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° для умноТСния ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ основан Π½Π° Ρ€Π°Π·Π½ΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ распрСдСлСния исходных Π΄Π°Π½Π½Ρ‹Ρ… (элСмСнтов ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π°) ΠΌΠ΅ΠΆΠ΄Ρƒ процСссорами. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… мСняСт схСму взаимодСйствия процСссоров, поэтому ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· прСдставлСнных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² сущСствСнным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ отличаСтся ΠΎΡ‚ Π΄Π²ΡƒΡ… ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ….

Рис. 6.1. Бпособы распрСдСлСния элСмСнтов ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ процСссорами Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ систСмы

Π”Π°Π»ΡŒΡˆΠ΅ >>

< ЛСкция 5 || ЛСкция 6: 1234567 || ЛСкция 7 >

Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π² инструмСнтарии Numpy

Π ΡƒΠ±Ρ€ΠΈΠΊΠ°: 14 Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Numpy Π½Π° языкС PythonАвтор: АндрСй НикитСнко

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ страницы

  • 1 Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
  • 2 Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ† для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ
  • 3 ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†
  • 4 Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ
  • 5 РСшСниС систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ
  • 6 ВСкстовая Π·Π°Π΄Π°Ρ‡Π°

Π’Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹

ЗдравствуйтС ΠΈ вновь Π΄ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° занятия ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Β«Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Numpy Π½Π° языкС PythonΒ».

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ рассмотрим Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°Ρ….

Π’Ρ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, насколько массивы Numpy ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹: ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π°Π΄ Π½ΠΈΠΌΠΈ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊ ΠΈΡ… слоТСниС, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° скаляр, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ поэлСмСнтныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ€ΠΎΠ΄Π΅ возвСдСния Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚. А Ρ‡Ρ‚ΠΎ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ? ΠœΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив. Богласно Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ, Π΅Ρ‘ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ список списков. Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список списков, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‚Π°ΠΊ ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

Π˜Ρ‚Π°ΠΊ,ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ список Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ элСмСнты 1 ΠΈ 2, Π²Ρ‚ΠΎΡ€ΠΎΠΉ список – элСмСнты 3 ΠΈ 4.ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ списки Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ.

M = np.array([ [1,2], [3,4] ])

БчитаСтся,Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ индСкс – это строка, Π²Ρ‚ΠΎΡ€ΠΎΠΉ – столбСц. Для сравнСния создадим такТСнастоящий список списков:

L = [ [1,2], [3,4] ]

Допустим,ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ элСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, скаТСм, Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. Π’ спискС Python сначала индСксируСтся строка, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‘Ρ‚ Π½Π°ΠΌ пСрвыйсписок, содСрТащий 1 ΠΈ 2:

L[0]

Π˜Ρ‚Π°ΠΊ,Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ 1 ΠΈ 2. Нам Π½ΡƒΠΆΠ΅Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΈΠ· этого списка, поэтому

L[0][0]

ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ 1. Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‚ΠΎ ΠΆΠ΅ самоС ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ис ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ массива Numpy:

M[0][0]

Π­Ρ‚ΠΎΡ‚Π°ΠΊΠΆΠ΅ Π΄Π°Ρ‘Ρ‚ Π½Π°ΠΌ 1. Но Π΅ΡΡ‚ΡŒ ΠΈ сокращённая запись, похоТая Π½Π° MATLAB, с использованиСм запятой:

M[0,0]

Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π°Ρ‘Ρ‚ Π½Π°ΠΌ 1. Π’Π°ΠΊ нСсколько ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ Π½Π° символмСньшС.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² Numpy Π΅ΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠ΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊ ΠΈ называСтся – ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°:

M2 = np.matrix([ [1,2], [3,4] ])

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° схоТа с массивом Numpy,Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ отличия. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ просто массивы Numpy; Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ докумСнтацияфактичСски Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅Ρ‚ Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Π΄Π°Π½Π½ΠΎΠΌ курсС ΠΌΡ‹ Π½Π΅Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΎΡΡ‚Ρ€ΡΡ‚ΡŒ Π½Π° Π½ΠΈΡ… своё Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Π£Π²ΠΈΠ΄Π΅Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒΠ΅Ρ‘ Π² массив. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

A = np.array(M2)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Ρƒ ΠΆΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ, Π½ΠΎ Π² Π²ΠΈΠ΄Π΅ массива. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ,Ρ…ΠΎΡ‚ΡŒ это ΠΈ массив, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½Ρ‹ΠΌΠΈ опСрациями, напримСртранспонированиСм:

A.T

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ получаСтся транспонированная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A.

Π Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΠ΅ΠΌ. ΠœΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π° самом Π΄Π΅Π»Π΅ являСтся лишь Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΌ массивом Numpy, Π° Π²Π΅ΠΊΡ‚ΠΎΡ€ – ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ массивом Numpy. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π° самом Π΄Π΅Π»Π΅ являСтся Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΌ Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ. ΠžΠ±ΠΎΠ±Ρ‰Π°Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΌ матСматичСским ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, содСрТащим числа, Π° Π²Π΅ΠΊΡ‚ΠΎΡ€ – ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ матСматичСским ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Ρ‚Π°ΠΊΠΆΠ΅ содСрТащим числа. Иногда встрСчаСтся прСдставлСниС Π²Π΅ΠΊΡ‚ΠΎΡ€Π° Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. НапримСр, Π² ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°Ρ… ΠΏΠΎ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π²Π΅ΠΊΡ‚ΠΎΡ€-столбСц размСрности 3Γ—1 ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€-строка размСрности 1Γ—3. Π’Ρ€Π΅ΠΌΠ΅Π½Π°ΠΌΠΈ ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π² Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² Numpy, Π½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΄Π²ΡƒΡ… размСрностСй Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ±ΠΈΡ‚ΡŒ с Ρ‚ΠΎΠ»ΠΊΡƒ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС просто ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ лишь Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ – ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ ΠΈ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ† для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ массивов Π΄Π°Π½Π½Ρ‹Ρ….

Иногда Π½ΡƒΠΆΠ½Ρ‹ нСсколько массивов просто Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ – ΠΊΠ°ΠΊ Π² этом курсС. Один ΠΈΠ· способов Π²Ρ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠΎΠ³Π΄Π° я воспользовался массивом Numpy для создания списка, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

np.array([1,2,3])

Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅,это Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ приходится Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт. АСсли Π½ΡƒΠΆΠ΅Π½ массив с сотнСй элСмСнтов? А Ссли Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ содСрТал случайныСчисла? ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Π΄Π°Π½Π½ΠΎΠΉ Π»Π΅ΠΊΡ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ массивы.

ΠŸΡ€Π΅ΠΆΠ΄Π΅Π²ΡΠ΅Π³ΠΎ я ΠΏΠΎΠΊΠ°ΠΆΡƒ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ массив, состоящих ΠΈΠ· ΠΎΠ΄Π½ΠΈΡ… Π½ΡƒΠ»Π΅ΠΉ. Π­Ρ‚ΠΎ дСлаСтся ΡΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ zeros с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌΠ΄Π»ΠΈΠ½Ρ‹:

Z = np.zeros(10)

Π­Ρ‚ΠΎΠ΄Π°Ρ‘Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ с 10 элСмСнтами, состоящий ΠΈΠ· Π½ΡƒΠ»Π΅ΠΉ. МоТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ матрицуразмСрности 10Γ—10, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· ΠΎΠ΄Π½ΠΈΡ… Π½ΡƒΠ»Π΅ΠΉ:

Z = np.zeros((10, 10))

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ 100 Π½ΡƒΠ»Π΅ΠΉ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ размСрности 10Γ—10.ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ функция ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ лишь ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ – ΠΊΠΎΡ€Ρ‚Π΅ΠΆ,содСрТащий ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ. Π•ΡΡ‚ΡŒ эквивалСнтная функция, ΡΠΎΠ·Π΄Π°ΡŽΡ‰Π°Ρ массив ΠΈΠ·ΠΎΠ΄Π½ΠΈΡ… Π΅Π΄ΠΈΠ½ΠΈΡ†. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ,

O = np.ones((10, 10))

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° размСрности 10Γ—10, состоящая ΠΈΠ·ΠΎΠ΄Π½ΠΈΡ… Π΅Π΄ΠΈΠ½ΠΈΡ†.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ряд случайных числСн. Для этого ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ np.random.random. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, массив случайных чисСл размСрности 10Γ—10:

R = np. random.random((10,10))

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»ΡΡΠ½Π°Π±ΠΎΡ€ случайных чисСл Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ 10Γ—10.БросаСтся Π² Π³Π»Π°Π·Π°, Ρ‡Ρ‚ΠΎ всС числа большС 0 ΠΈ мСньшС 1. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ случайных числах, имССтся Π² Π²ΠΈΠ΄Ρƒ распрСдСлСниС вСроятностСй,ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ случайныС числа. Данная конкрСтная функция случайных чисСлдаёт Π½Π°ΠΌ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлённыС числа ΠΌΠ΅ΠΆΠ΄Ρƒ 0 ΠΈ 1. А Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ числа сгауссовым распрСдСлСниСм? Π’ Numpy Π΅ΡΡ‚ΡŒ функция идля этого. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ. НазываСтся ΠΎΠ½Π° random.randn. Π’Π½ΠΎΠ²ΡŒ-Ρ‚Π°ΠΊΠΈ, Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 10Γ—10:

G = np.random.randn((10Γ—10))

И Ρƒ нас Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ – Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹Π΅ числа. Π‘Π°ΠΌΠ° функция ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°, Π½ΠΎ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π½ΠΈ странно, функция randn Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Numpy воспринимаСт ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π²ΡˆΠΈΠ΅ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ – Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ randn! – ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ:

G = np. random.randn(10,10)

Π’Π΅ΠΏΠ΅Ρ€ΡŒΠ²ΡΡ‘ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠœΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ числа с гауссовым распрСдСлСниСм, срСдним Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 0 идиспСрсиСй 1. ΠœΠ°ΡΡΠΈΠ²Ρ‹ Numpy Ρ‚Π°ΠΊΠΆΠ΅ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для вычислСния этих статистичСских Π²Π΅Π»ΠΈΡ‡ΠΈΠ½. Π’Π°ΠΊ,ΠΊΠΎΠΌΠ°Π½Π΄Π°

G.mean()

Π΄Π°Ρ‘Ρ‚ Π½Π°ΠΌ срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°

G.var()

позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΈΡΠΏΠ΅Ρ€ΡΠΈΡŽ.

Как Π²ΠΈΠ΄ΠΈΠΌ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ числа вСсьма Π±Π»ΠΈΠ·ΠΊΠΈ ΠΊ истинным значСниям.

ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†

ЧтоинтСрСсно Π² произвСдСниях ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΏΡ€ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, – Ρ‚Π°ΠΊ это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠΎΠ±Ρ‹Ρ‡Π½ΠΎ называСтся ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅: Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ размСрности Π΄Π²ΡƒΡ… ΡƒΠΌΠ½ΠΎΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ.Π’Π°ΠΊ, Ссли Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° A размСрности 2Γ—3ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° BразмСрности 3Γ—3, Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ A Π½Π° B, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ внутрСнняя Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π²Π½Π° 3. ΠžΠ΄Π½Π°ΠΊΠΎΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ B Π½Π° A, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ внутрСнняя Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ Π»Π΅Π²ΠΎΠ³ΠΎ мноТитСляравна 3, Π° внутрСнняя Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ Ρ€Π°Π²Π½Π° 2.

ВозникаСтвопрос: для Ρ‡Π΅Π³ΠΎ сущСствуСт Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†? РассмотримопрСдСлСниС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ†:

Π’ΠΎΠ΅ΡΡ‚ΡŒ ij-йэлСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ CΡ€Π°Π²Π΅Π½ суммС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΉ всСх ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… элСмСнтов ΠΈΠ· i-ΠΉ строкиматрицы AΠΈ j-гостолбца ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ B.Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ij-йэлСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ CΡ€Π°Π²Π΅Π½ скалярному ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ i-ΠΉ строки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ A ΠΈ j-Π³ΠΎ столбца ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ B. Π’ связи с этим ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция dot Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Numpy:

C = A.dot(B)

Π­Ρ‚ΠΎΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

Как Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Ρ‚Π°ΠΊ ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ часто встрСчаСтся опСрация поэлСмСнтного умноТСния. Π’ случаС Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΌΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎ для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° (*). Как ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, Π² случаС Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ поэлСмСнтноС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ использовании Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠΈ Π² случаС ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΎΠ±Π° массива Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² точности ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ странным, вСдь Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ настоящСС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Но Π½ΡƒΠΆΠ½ΠΎ просто Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ для Numpy Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ поэлСмСнтноС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° функция dot – ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π’Π°ΠΊΠΆΠ΅ ΡΠ±ΠΈΠ²Π°Ρ‚ΡŒ с Ρ‚ΠΎΠ»ΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ записи матСматичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π½Π΅Ρ‚ Π΄Π°ΠΆΠ΅ Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ символа для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ поэлСмСнтного умноТСния. Π’Π°ΠΊ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΡ€ΡƒΠΆΠΊΠΎΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ – ΠΊΡ€ΡƒΠΆΠΊΠΎΠΌ с крСстиком Π²Π½ΡƒΡ‚Ρ€ΠΈ. ΠŸΠΎΡ…ΠΎΠΆΠ΅, Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ просто Π½Π΅ сущСствуСт стандартной записи для Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, хотя ΠΎΠ½Π° часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π² связи с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅, я ΠΏΠΎΠΊΠ°ΠΆΡƒ Π²Π°ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволяСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Numpy. ΠŸΡ€ΠΈ этом прСдполагаСтся, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Π½ΠΈΠΌΠΈ ΠΈΠ· курса Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, Π° ΠΏΠΎΡ‚ΠΎΠΌΡƒ это Π±ΡƒΠ΄Π΅Ρ‚ скорСС дСмонстрация Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Numpy.

Начнёмс нахоТдСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π’Π½Π°Ρ‡Π°Π»Π΅ создадим ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ:

A = np.array([[1,2],[3,4]])

Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡΡ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ inv модуля linalg:

Ainv = np.linalg.inv(A)

ΠœΡ‹ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π°, ΡƒΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ,ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ A,Π½Π° саму А:

Ainv.dot(A)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠΌΠ΅Π΅ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. МоТСм ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΡƒΠΌΠ½ΠΎΠΆΠΈΠ² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ А Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Π΅ΠΉ:

A.dot(Ainv)

Π˜Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅β€“ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ опрСдСлитСля ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

np.linalg.det(A)

Каки оТидалось, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡ‚Π²Π΅Ρ‚ -2.

Π˜Π½ΠΎΠ³Π΄Π°Π½ΡƒΠΆΠ½Π° диагональ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°

np.diag(A)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠΌΠ΅Π΅ΠΌ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Π² Π²ΠΈΠ΄Π΅ Π²Π΅ΠΊΡ‚ΠΎΡ€Π°. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях Ρƒ Π½Π°ΡΠ΅ΡΡ‚ΡŒ Π²Π΅ΠΊΡ‚ΠΎΡ€ чисСл, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ диагональ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π½ΡƒΠ»ΡŽ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Π²Π΅ΠΊΡ‚ΠΎΡ€ Π² Π²ΠΈΠ΄Π΅ двухмСрногомассива, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этой ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. НапримСр,

np.diag([1,2])

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ1 ΠΈ 2 Π½Π° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты – Π½ΡƒΠ»ΠΈ.

Π­Ρ‚ΠΎΠ½Π°Π΄ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ: Ссли ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ diag, Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив ΠΈΠ· Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ…ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ²; Ссли ΠΆΠ΅ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив, Ρ‚ΠΎ получится двухмСрныймассив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС Π²Π½Π΅Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Ρ€Π°Π²Π½Ρ‹ Π½ΡƒΠ»ΡŽ, Π° ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉΠΌΠ°ΡΡΠΈΠ² располагаСтся Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°, Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ внСшнСС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. Π’ частности, внСшнСС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ вычисляСм ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΡŽ ряда Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ²-ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ². ΠœΡ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с поэлСмСнтным ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ°, ΠΈ скалярным ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, для Ρ‡Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция dot. Напомню, Ρ‡Ρ‚ΠΎ скалярноС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ называСтся Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ.

Π˜Ρ‚Π°ΠΊ,создадим Π΄Π²Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°:

a = np.array([1,2])

b = np.array([3,4])

Π’Π½Π΅ΡˆΠ½Π΅Π΅ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ вычисляСтся ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

np. outer(a, b)

ΠœΠΎΠΆΠ΅Ρ‚Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

np.inner(a, b)

Этодаст Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ использовании ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

a.dot(b)

Какимиз этих способов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ – сугубо Π½Π° вашС усмотрСниС.

Другаяраспространённая опСрация – Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ слСда ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ сумма элСмСнтовматриц, располоТСнных Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ‚Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ свСдСния:

np.dialog(A).sum()

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ 5. Но Π² Numpy для этого Π΅ΡΡ‚ΡŒΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ функция:

np.trace(A)

Π˜ΠΌΡ‹ ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ 5.

ИпослСднСС, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ обсудим, – это собствСнныС значСния ΠΈ собствСнныС Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹.Если Π²Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ ΠΈΡ… Π² курсС Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, Ρ‚ΠΎ, вСроятно, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΠ΅Ρ‚ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒ свои знания ΠΏΠΎ этому ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ. Но сСйчас я просто ΠΏΠΎΠΊΠ°ΠΆΡƒ, ΠΊΠ°ΠΊ всё это дСлаСтсяв ΠΊΠΎΠ΄Π΅, поэтому Ссли Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ собствСнныС значСния ΠΈ собствСнныСвСкторы, просто пропуститС эту Ρ‡Π°ΡΡ‚ΡŒ.

ЧастовозникаСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ собствСнныС значСния ΠΈ собствСнныС вСкторысиммСтричной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ковариационная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…. Боздадимслучайным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ размСрности 100Γ—3с гауссовым распрСдСлСниСм:

X = np.random.randn(100,3)

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: считаСтся, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ – это строка, Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ – этостолбСц, поэтому для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹ΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρƒ насимССтся 100 ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ 3 ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ°. РазумССтся, Π² NumpyΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ функция для вычислСния ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ. ΠžΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Ρ‘:

cov = np.cov(X)

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ всё ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

cov.shape

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ,Ρ‡Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π²Π½Π° 100Γ—100. Π­Ρ‚ΠΎΠ½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ 3Γ—3,вСдь наши Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 3. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Ρ‰Ρ‘ Ρ€Π°Π·, транспонировав X:

cov = np.cov(X.T)

Π’Π΅ΠΏΠ΅Ρ€ΡŒΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 3Γ—3. НуТно ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ вычислСнии ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΅Ρ‘ сначала Ρ‚Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

ДлявычислСния собствСнных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ собствСнных Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ – eig ΠΈ eigh. Eigh ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для симмСтричных ΠΈ эрмитовыхматриц. Если Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΡƒΡŽ Π°Π»Π³Π΅Π±Ρ€Ρƒ комплСксных чисСл, Π½Π΅Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡ‚Π΅ΡΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ эрмитова ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. Π‘ΠΈΠΌΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠΉ называСтсяматрица, которая, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ транспонированной, остаётся Ρ€Π°Π²Π½ΠΎΠΉ сама сСбС:

Π’ΠΎΠ΅ΡΡ‚ΡŒ ij-йэлСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ CΡ€Π°Π²Π΅Π½ суммС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΉ всСх ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… элСмСнтов ΠΈΠ· i-ΠΉ строкиматрицы AΠΈ j-гостолбца ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ B.Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ij-йэлСмСнт ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ CΡ€Π°Π²Π΅Π½ скалярному ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ i-ΠΉ строки ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ A ΠΈ j-Π³ΠΎ столбца ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ B. Π’ связи с этим ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция dot Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Numpy:

C = A.dot(B)

Π­Ρ‚ΠΎΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

Как Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Ρ‚Π°ΠΊ ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ часто встрСчаСтся опСрация поэлСмСнтного умноТСния. Π’ случаС Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΌΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎ для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° (*). Как ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, Π² случаС Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ поэлСмСнтноС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ использовании Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠΈ Π² случаС ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… массивов ΠΎΠ±Π° массива Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² точности ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ странным, вСдь Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ настоящСС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Но Π½ΡƒΠΆΠ½ΠΎ просто Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ для Numpy Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ поэлСмСнтноС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° функция dot – ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π’Π°ΠΊΠΆΠ΅ ΡΠ±ΠΈΠ²Π°Ρ‚ΡŒ с Ρ‚ΠΎΠ»ΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ записи матСматичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π½Π΅Ρ‚ Π΄Π°ΠΆΠ΅ Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ символа для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ поэлСмСнтного умноТСния. Π’Π°ΠΊ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΡ€ΡƒΠΆΠΊΠΎΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ – ΠΊΡ€ΡƒΠΆΠΊΠΎΠΌ с крСстиком Π²Π½ΡƒΡ‚Ρ€ΠΈ. ΠŸΠΎΡ…ΠΎΠΆΠ΅, Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ просто Π½Π΅ сущСствуСт стандартной записи для Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, хотя ΠΎΠ½Π° часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π² связи с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅, я ΠΏΠΎΠΊΠ°ΠΆΡƒ Π²Π°ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволяСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Numpy. ΠŸΡ€ΠΈ этом прСдполагаСтся, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с Π½ΠΈΠΌΠΈ ΠΈΠ· курса Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, Π° ΠΏΠΎΡ‚ΠΎΠΌΡƒ это Π±ΡƒΠ΄Π΅Ρ‚ скорСС дСмонстрация Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Numpy.

Начнёмс нахоТдСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π’Π½Π°Ρ‡Π°Π»Π΅ создадим ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ:

A = np.array([[1,2],[3,4]])

Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡΡ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ inv модуля linalg:

Ainv = np.linalg.inv(A)

ΠœΡ‹ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π°, ΡƒΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ,ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ A,Π½Π° саму А:

Ainv.dot(A)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠΌΠ΅Π΅ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. МоТСм ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΡƒΠΌΠ½ΠΎΠΆΠΈΠ² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ А Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Π΅ΠΉ:

A.dot(Ainv)

Π˜Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅β€“ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ опрСдСлитСля ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

np.linalg.det(A)

Каки оТидалось, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡ‚Π²Π΅Ρ‚ -2.

Π˜Π½ΠΎΠ³Π΄Π°Π½ΡƒΠΆΠ½Π° диагональ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°

np.diag(A)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠΌΠ΅Π΅ΠΌ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Π² Π²ΠΈΠ΄Π΅ Π²Π΅ΠΊΡ‚ΠΎΡ€Π°. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях Ρƒ Π½Π°ΡΠ΅ΡΡ‚ΡŒ Π²Π΅ΠΊΡ‚ΠΎΡ€ чисСл, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ диагональ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π½ΡƒΠ»ΡŽ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Π²Π΅ΠΊΡ‚ΠΎΡ€ Π² Π²ΠΈΠ΄Π΅ двухмСрногомассива, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этой ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. НапримСр,

np.diag([1,2])

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ1 ΠΈ 2 Π½Π° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты – Π½ΡƒΠ»ΠΈ.

Π­Ρ‚ΠΎΠ½Π°Π΄ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ: Ссли ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ diag, Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив ΠΈΠ· Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ…ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ²; Ссли ΠΆΠ΅ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив, Ρ‚ΠΎ получится двухмСрныймассив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС Π²Π½Π΅Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Ρ€Π°Π²Π½Ρ‹ Π½ΡƒΠ»ΡŽ, Π° ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉΠΌΠ°ΡΡΠΈΠ² располагаСтся Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°, Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ внСшнСС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. Π’ частности, внСшнСС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ вычисляСм ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΡŽ ряда Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ²-ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ². ΠœΡ‹ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с поэлСмСнтным ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΠ°, ΠΈ скалярным ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, для Ρ‡Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция dot. Напомню, Ρ‡Ρ‚ΠΎ скалярноС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ называСтся Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ.

Π˜Ρ‚Π°ΠΊ,создадим Π΄Π²Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°:

a = np.array([1,2])

b = np.array([3,4])

Π’Π½Π΅ΡˆΠ½Π΅Π΅ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ вычисляСтся ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

np.outer(a, b)

ΠœΠΎΠΆΠ΅Ρ‚Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

np.inner(a, b)

Этодаст Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ использовании ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

a.dot(b)

Какимиз этих способов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ – сугубо Π½Π° вашС усмотрСниС.

Другаяраспространённая опСрация – Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ слСда ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ сумма элСмСнтовматриц, располоТСнных Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ‚Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ свСдСния:

np.dialog(A).sum()

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ 5. Но Π² Numpy для этого Π΅ΡΡ‚ΡŒΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ функция:

np.trace(A)

Π˜ΠΌΡ‹ ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ 5.

ИпослСднСС, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ обсудим, – это собствСнныС значСния ΠΈ собствСнныС Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹. Если Π²Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ ΠΈΡ… Π² курсС Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, Ρ‚ΠΎ, вСроятно, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΠ΅Ρ‚ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒ свои знания ΠΏΠΎ этому ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ. Но сСйчас я просто ΠΏΠΎΠΊΠ°ΠΆΡƒ, ΠΊΠ°ΠΊ всё это дСлаСтсяв ΠΊΠΎΠ΄Π΅, поэтому Ссли Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ собствСнныС значСния ΠΈ собствСнныСвСкторы, просто пропуститС эту Ρ‡Π°ΡΡ‚ΡŒ.

ЧастовозникаСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ собствСнныС значСния ΠΈ собствСнныС вСкторысиммСтричной ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ковариационная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…. Боздадимслучайным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ размСрности 100Γ—3с гауссовым распрСдСлСниСм:

X = np.random.randn(100,3)

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: считаСтся, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ – это строка, Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ – этостолбСц, поэтому для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹ΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρƒ насимССтся 100 ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ 3 ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ°. РазумССтся, Π² NumpyΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ функция для вычислСния ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ. ΠžΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Ρ‘:

cov = np.cov(X)

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ всё ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

cov.shape

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ,Ρ‡Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π²Π½Π° 100Γ—100. Π­Ρ‚ΠΎΠ½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ 3Γ—3,вСдь наши Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 3. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Ρ‰Ρ‘ Ρ€Π°Π·, транспонировав X:

cov = np.cov(X.T)

Π’Π΅ΠΏΠ΅Ρ€ΡŒΡ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 3Γ—3. НуТно ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ вычислСнии ΠΊΠΎΠ²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΅Ρ‘ сначала Ρ‚Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

ДлявычислСния собствСнных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ собствСнных Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ – eig ΠΈ eigh. Eigh ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для симмСтричных ΠΈ эрмитовыхматриц. Если Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΡƒΡŽ Π°Π»Π³Π΅Π±Ρ€Ρƒ комплСксных чисСл, Π½Π΅Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡ‚Π΅ΡΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ эрмитова ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. Π‘ΠΈΠΌΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠΉ называСтсяматрица, которая, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ транспонированной, остаётся Ρ€Π°Π²Π½ΠΎΠΉ сама сСбС:

Π­Ρ€ΠΌΠΈΡ‚ΠΎΠ²Π° ΠΆΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° – это ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, которая остаётся Ρ€Π°Π²Π½ΠΎΠΉ сама сСбС, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ сопряТённой:

ΠšΠ°ΠΊΠΈΠ·Π²Π΅ΡΡ‚Π½ΠΎ, ковариационная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° являСтся симмСтричной, поэтому ΠΌΠΎΠΆΠ½ΠΎΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ eigh. Π•Ρ‘ ΠΈΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ:

np.linalg.eigh(cov)

Π’Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ содСрТит Ρ‚Ρ€ΠΈ собствСнных значСния, Π° второй– собствСнныС Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹, прСдставлСнныС Π² столбцах. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ с ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉΡ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ eig:

np.linalg.eig(cov)

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ обычная функция eigΡ…ΠΎΡ‚ΡŒ ΠΈ Π΄Π°Ρ‘Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚, Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ собствСнныС значСния ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½Ρ‹Π΅ Π²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ порядкС. Π’ Π΄Π°Π½Π½ΠΎΠΌ конкрСтномслучаС порядок Ρ‚ΠΎΡ‚ ΠΆΠ΅, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

На этом лСкция заканчиваСтся. Она довольно короткая, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±Ρ‹Π»Π° создана для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌ с матСматичСским Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΠΎΠΌ, Π½ΠΎ Π΅Ρ‰Ρ‘ Π½Π΅ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Numpy.

РСшСниС систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΡ‹ рассмотрим послСднюю ΠΈΠ· самых распространённых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ – Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ систСмы Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ.

Напомню, Ρ‡Ρ‚ΠΎ систСма Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄

Π³Π΄Π΅ A – ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, x – Π²Π΅ΠΊΡ‚ΠΎΡ€-столбСц искомых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, b – Π²Π΅ΠΊΡ‚ΠΎΡ€ чисСл.РСшСниС, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, состоит Π² ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΠΎΠΈΡ… частСй ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ,ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ A:

ЭтокоррСктная опСрация, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ прСдполагаСтся, Ρ‡Ρ‚ΠΎ A являСтся ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π°ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠ°. Π’ΠΎΠ³Π΄Π° xΠΈΠΌΠ΅Π΅Ρ‚ СдинствСнноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ссли Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ x Ρ€Π°Π²Π½Π° D, Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ D ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ с D нСизвСстными.

Π’ΡƒΡ‚Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… слоТностСй, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ нас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²Π΅ΡΡŒΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° вычислСний. Π’Ρ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, какнаходится обратная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ эти Π΄Π²Π΅Π²Π΅Ρ‰ΠΈ Π½Π°ΠΌ ΠΈ Π½ΡƒΠΆΠ½Ρ‹.

Π Π΅ΡˆΠΈΠΌΠΏΡ€ΠΈΠΌΠ΅Ρ€. AΡƒ нас Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ

ЭтокоррСктная опСрация, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ прСдполагаСтся, Ρ‡Ρ‚ΠΎ A являСтся ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π°ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠ°. Π’ΠΎΠ³Π΄Π° xΠΈΠΌΠ΅Π΅Ρ‚ СдинствСнноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ссли Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ x Ρ€Π°Π²Π½Π° D, Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ D ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ с D нСизвСстными.

Π’ΡƒΡ‚Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… слоТностСй, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ нас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²Π΅ΡΡŒΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° вычислСний. Π’Ρ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, какнаходится обратная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ эти Π΄Π²Π΅Π²Π΅Ρ‰ΠΈ Π½Π°ΠΌ ΠΈ Π½ΡƒΠΆΠ½Ρ‹.

Π Π΅ΡˆΠΈΠΌΠΏΡ€ΠΈΠΌΠ΅Ρ€. AΡƒ нас Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ

bΡƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ [1, 2]:

b = np.array([1, 2])

Π Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌΠ±ΡƒΠ΄Π΅Ρ‚

x = np.linalg.inv(A).dot(b)

Π˜Ρ‚Π°ΠΊ,Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ числа 0 ΠΈ 0,5. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π²Π²ΠΈΠ΄Ρƒ ΠΎΡ‡Π΅Π½ΡŒ частого провСдСния Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° вычислСний, Π΅ΡΡ‚ΡŒ способ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΡˆΠ΅ – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ solve. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ

x = np.linalg.solve(A, b)

Π˜ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚.

Если Π²Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΏΡ€Π΅ΠΆΠ΄Π΅ писали ΠΊΠΎΠ΄ Π² MATLAB, Ρ‚ΠΎ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ inv MATLAB Π²Ρ‹Π΄Π°Ρ‘Ρ‚ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈ сообщаСт, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ Π±ΠΎΠ»Π΅Π΅ эффСктивный способ вычислСний. Π’ MATLAB ΠΎΠ½ называСтся Π½Π΅ solve, Π½ΠΎ ΠΏΠΎ сути это Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΈ ΠΎΠ½ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ эффСктивСн ΠΈ Ρ‚ΠΎΡ‡Π΅Π½. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли Ρƒ вас ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ inv. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ solve.

ВСкстовая Π·Π°Π΄Π°Ρ‡Π°

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ нСслоТный ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² использовании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ solve.

Π˜Ρ‚Π°ΠΊ,поставим Π·Π°Π΄Π°Ρ‡Ρƒ. На нСбольшой ярмаркС входная ΠΏΠ»Π°Ρ‚Π° составляСт 1,5 Π΄ΠΎΠ»Π»Π°Ρ€Π° для Ρ€Π΅Π±Ρ‘Π½ΠΊΠ°ΠΈ 4 Π΄ΠΎΠ»Π»Π°Ρ€Π° для взрослого. ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π·Π° дСнь ярмарку посСтило 2200 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ; приэтом Π±Ρ‹Π»ΠΎ собрано 5050 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. Бколько Π΄Π΅Ρ‚Π΅ΠΉ ΠΈ сколько взрослыхпосСтили ярмарку Π² этот дСнь?

Π˜Ρ‚Π°ΠΊ,ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠΌ количСство Π΄Π΅Ρ‚Π΅ΠΉ Ρ‡Π΅Ρ€Π΅Π· X1, Π° количСствовзрослых – Ρ‡Π΅Ρ€Π΅Π· X2. ΠœΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ

ΠœΡ‹Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ

ΠœΡ‹Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅, Π³Π΄Π΅ A Ρ€Π°Π²Π½ΠΎ:

Β Π° b Ρ€Π°Π²Π½ΠΎ :

Β Π° b Ρ€Π°Π²Π½ΠΎ :

ΠŸΠΎΠ΄ΡΡ‚Π°Π²ΠΈΠΌΡΡ‚ΠΈ значСния Π² Numpy ΠΈ Π½Π°ΠΉΠ΄Ρ‘ΠΌΡ€Π΅ΡˆΠ΅Π½ΠΈΠ΅:

A = np.array([[1,1], [1.5,4]])

b = np.array([2200, 5050])

np.linalg.solve(A, b)

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΡ‚Π²Π΅Ρ‚: 1500 Π΄Π΅Ρ‚Π΅ΠΉ ΠΈ 700 взрослых. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ это ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΡ‚Π²Π΅Ρ‚: 1500 Π΄Π΅Ρ‚Π΅ΠΉ ΠΈ 700 взрослых. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ это ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚.

{T}_{4} & \horzbar \\ \ΠΊΠΎΠ½Π΅Ρ†{массив} \ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ]

ΠΈ этот Π²Π΅ΠΊΡ‚ΠΎΡ€:

 [\
\Π½Π°Ρ‡Π°Ρ‚ΡŒ{Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ}
    Ρƒ &= \begin{bmatrix}
           Ρ…_{1} \\
           Ρ…_{2} \\
           \vdots\\
           Ρ…_{ΠΌ}
         \end{bmatrix}
\end{Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅}
\]
 

Но ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€?

  • ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹

7

БлСдуя вСроятному ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΈΠ· Как Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹? 9{T}_{4} & \horzbar \\ \ΠΊΠΎΠ½Π΅Ρ†{массив}\справа] \begin{bmatrix} Ρ…_{1} \\ Ρ…_{2} \\ \vdots\\ Ρ…_{ΠΌ} \end{bmatrix} \\ {} &= \begin{bmatrix} Π±_{1} \\ Π‘ΠΈ 2} \\ \vdots\\ Π±_ {ΠΌ} \end{bmatrix} \ΠΊΠΎΠ½Π΅Ρ†{Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅*} \ΠΊΠΎΠ½Π΅Ρ†{Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚}

1

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΊΠΎΠ΄, подставив вмСсто Π±ΡƒΠΊΠ² Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅. {T}_{3} & \rule[.2ex]{1em}{0,2pt} \ΠΊΠΎΠ½Π΅Ρ†{массив} \справа]\cdot \Π»Π΅Π²Ρ‹ΠΉ[ \Π½Π°Ρ‡Π°Ρ‚ΡŒ{массив}{с} Ρ…_1\\ Ρ…_2\\ \vdots\\ Ρ…_n \ΠΊΠΎΠ½Π΅Ρ†{массив} \ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ] \] \ΠΊΠΎΠ½Π΅Ρ†{Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚}

3

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡ‚Π΅ Π² систСму

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Facebook

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ отобраТаСтся

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½Π΅ отобраТаСтся

НаТимая Β«ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ свой ΠΎΡ‚Π²Π΅Ρ‚Β», Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ с нашими условиями обслуТивания, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ использования Ρ„Π°ΠΉΠ»ΠΎΠ² cookie

.

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π°, Π²Π΅ΠΊΡ‚ΠΎΡ€, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ — Stack Overflow Π½Π° русском Π’ этом Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ расчСта с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†.

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° A = Ρ‚ΠΎΠ²Π°Ρ€Ρ‹, ΠΏΡ€ΠΎΠ΄Π°Π½Π½Ρ‹Π΅ Π·Π° дСнь (Ρ€Π°Π·ΠΌΠ΅Ρ€ 5 x 3)

 c
             ΠΎ
             о с
             ΠΊ Π° Ρ€
             я к я
             э э э
             с с с
             
понСдСльник [ 3 5 3 ]
Π²Ρ‚ΠΎΡ€Π½ΠΈΠΊ [ 7 1 2 ]
срСда [ 2 5 3 ]
Ρ‡Π΅Ρ‚Π²Π΅Ρ€Π³ [ 5 4 0 ]
пятница [ 3 4 4 ]
 

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° B = Π¦Π΅Π½Π° Π·Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ (Ρ€Π°Π·ΠΌΠ΅Ρ€ 3 x 1)

 €
ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠ΅ [ 4 ]
Ρ‚ΠΎΡ€Ρ‚Ρ‹ [ 10 ]
ΠΏΠΈΡ€ΠΎΠ³ΠΈ [ 8 ]
 

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠ°Ρ‚ΡŒ 2 ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, 2-Π΅ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ 1-ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π”ΠžΠ›Π–ΠΠž ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с 1-ΠΌ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ΠΌ 2-ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ (5 x 3) * (3 x 1) (Ρ‚Ρ€ΠΎΠΉΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ) ΠΈ это ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ даст ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ 5 x 1 .

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠΌΠ½ΠΎΠΆΠ°Π΅ΠΌ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ (Π΄Π½Π΅ΠΉ/Ρ‚ΠΎΠ²Π°Ρ€) Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ (Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ²/Ρ†Π΅Π½Π°) ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ (Π΄Π½ΠΈ/Ρ†Π΅Π½Π°), которая ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько ΠΌΡ‹ Π·Π°Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Π² дСнь.

Π—Π΄Π΅ΡΡŒ сразу Π²ΠΈΠ΄Π½ΠΎ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ количСство столбцов ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с количСством строк Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, ΠΌΡ‹ сначала располоТим ΠΈΡ… Π»ΡƒΡ‡ΡˆΠ΅:

 €
                        [ 4 ]
                        [ 10 ]
                        [ 8 ]
понСдСльник [ 3 5 3 ] [ ]
Π²Ρ‚ΠΎΡ€Π½ΠΈΠΊ [ 7 1 2 ] [ ]
срСда [ 2 5 3 ] [ ]
Ρ‡Π΅Ρ‚Π²Π΅Ρ€Π³ [ 5 4 0 ] [ ]
пятница [ 3 4 4 ] [ ]
 

Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ прСдставляСт собой сумму ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠΉ:

 €
                      ---[ 4 ]
                    β•± --[ 10 ]
                  β•± β•± -[ 8 ]
                β•± β•± β•± |
              β•± β•± β•± |
понСдСльник [ 3 5 3 ] [ ]
Π²Ρ‚ΠΎΡ€Π½ΠΈΠΊ [ 7 1 2 ] [ ]
срСда [ 2 5 3 ] - [ 82 ]
Ρ‡Π΅Ρ‚Π²Π΅Ρ€Π³ [ 5 4 0 ] [ ]
пятница [ 3 4 4 ] [ ]
 

Π˜Ρ‚Π°ΠΊ, для Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ элСмСнта Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

 2 ΠΏΠ΅Ρ‡Π΅Π½ΡŒΡ * 4 €/ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠ΅ + 5 ΠΏΠΈΡ€ΠΎΠΆΠ½Ρ‹Ρ… * 10 €/Ρ‚ΠΎΡ€Ρ‚ + 3 ΠΏΠΈΡ€ΠΎΠΆΠ½Ρ‹Ρ… * 8 €/ΠΏΠΈΡ€ΠΎΠ³ = 82 €
 

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°

Если Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π½Π°Ρ‚ΡŒ, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²Ρ‹ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° Π²Ρ‹ΠΏΠ΅Ρ‡ΠΊΡƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΏΡ€ΠΎΠ΄Π°Π΅Ρ‚Π΅, Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эти числа Π²ΠΎ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ:

 € ΠΌΠΈΠ½.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *