āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ (āĻœā§‹āĻĄāĻŧāĻž) āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻ—āĻžāĻŖāĻŋāĻ¤āĻŋāĻ• āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻ•āĻ°ā§‡āĨ¤

āĻāĻ–āĻžāĻ¨ā§‡ āĻŦāĻŋāĻŦā§‡āĻšāĻŋāĻ¤ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻŦāĻ°ā§āĻ— āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°āĻŋ:

  • āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨
  • āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ
  • āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§‡āĻ–āĻžāĻ° āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡, āĻ¯āĻž āĻĒā§āĻ°āĻ§āĻžāĻ¨āĻ¤ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻ•āĻ°ā§‡āĻ‡ āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤āĨ¤ āĻ¨āĻŽā§āĻ° āĻāĻŦāĻ‚ āĻ¯ā§‡āĻ—ā§āĻ˛āĻŋ āĻ—āĻŖāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻŽā§āĻ°. āĻāĻŸāĻž āĻĻāĻ•ā§āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻŽā§āĻ° āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻŋāĻ‚ āĻ–āĻ°āĻš āĻ•āĻŽāĻžāĻŦā§‡.

āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•ā§‹āĻĄ āĻ˛ā§‡āĻ–āĻž āĻ†āĻ›ā§‡ āĻĒāĻžāĻ‡āĻĨāĻ¨ āĻāĻ•ā§āĻ¸āĻāĻ¨āĻ‡āĻ‰āĻāĻŽāĻāĻ•ā§āĻ¸ āĻ¸āĻ™ā§āĻ—ā§‡ Jupyter āĻ¨ā§‹āĻŸāĻŦā§āĻ•. āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ•ā§‹āĻĄ āĻāĻŦāĻ‚ āĻ¨āĻŽā§āĻ¨āĻž āĻĄā§‡āĻŸāĻž āĻĢāĻžāĻ‡āĻ˛ āĻāĻ–āĻžāĻ¨ā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ—āĻŋāĻĨā§āĻŦ

āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨āĻĻā§‡āĻ° āĻāĻŦāĻ‚ āĻ¯āĻžāĻ°āĻž āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ§ā§€āĻ°ā§‡ āĻ§ā§€āĻ°ā§‡ āĻ•ā§ƒāĻ¤ā§āĻ°āĻŋāĻŽ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻ¤ā§āĻ¤āĻž - āĻŽā§‡āĻļāĻŋāĻ¨ āĻ˛āĻžāĻ°ā§āĻ¨āĻŋāĻ‚-āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻ–ā§āĻŦ āĻŦāĻŋāĻ¸ā§āĻ¤ā§ƒāĻ¤ āĻŦāĻŋāĻ­āĻžāĻ—ā§‡āĻ° āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ā§‡ āĻ†āĻ¯āĻŧāĻ¤ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ‰āĻ­āĻ¯āĻŧā§‡āĻ° āĻĻāĻŋāĻ•ā§‡āĻ‡ āĻŦā§‡āĻļāĻŋ āĻĻā§ƒāĻˇā§āĻŸāĻŋ āĻ¨āĻŋāĻŦāĻĻā§āĻ§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ†āĻ¸ā§āĻ¨ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ–ā§āĻŦ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋāĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻļāĻ°ā§āĻ¤āĻžāĻŦāĻ˛ā§€

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻžāĻāĻšāĻŸāĻŋ āĻŽāĻžāĻ¨ āĻ†āĻ›ā§‡ āĻ¯āĻž āĻ†āĻ¸āĻ•ā§āĻ¤āĻŋāĻ•ā§‡ āĻšāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻ•āĻ°ā§‡ Y āĻĨā§‡āĻ•ā§‡ X (1 āĻ¨āĻ‚ āĻŸā§‡āĻŦāĻŋāĻ˛):

āĻ¸āĻžāĻ°āĻŖāĻŋ āĻ¨āĻ‚ 1 "āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻļāĻ°ā§āĻ¤āĻžāĻŦāĻ˛ā§€"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ†āĻŽāĻ°āĻž āĻ¯ā§‡ āĻŽāĻžāĻ¨ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻžāĻ¸, āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž - āĻāĻ‡ āĻŽāĻžāĻ¸ā§‡ āĻ†āĻ¯āĻŧāĨ¤ āĻ…āĻ¨ā§āĻ¯ āĻ•āĻĨāĻžāĻ¯āĻŧ, āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻžāĻ¸ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž - āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻšāĻŋāĻšā§āĻ¨ āĻ¯āĻžāĻ° āĻ‰āĻĒāĻ° āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡āĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻŸāĻŋ āĻ¤āĻžāĻ‡, āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻžāĻ¸ā§‡ āĻ°āĻžāĻœāĻ¸ā§āĻŦā§‡āĻ° āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§‡āĻ•ā§āĻˇ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻŦāĻ‚ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ - āĻ¤āĻžāĻĻā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ–ā§āĻŦ āĻ•āĻŽāĻ‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ¯ā§‡āĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ā§€āĻ•āĻ°āĻŖ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻŦā§‡, āĻ¯ā§‡āĻŽāĻ¨ āĻ¤āĻžāĻ°āĻž āĻ†āĻ™ā§āĻ—ā§āĻ˛ā§‡āĻ° āĻ‰āĻĒāĻ° āĻŦāĻ˛ā§‡, āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸āĻšāĻœā§‡ āĻ¨āĻ¯āĻŧ, āĻ¨āĻ¤ā§āĻ¨āĻĻā§‡āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ†āĻ¤ā§āĻ¤ā§€āĻ•ā§ƒāĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻāĻŦāĻ‚ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻ¸āĻ°āĻ˛āĻ¤āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻŦā§‡ āĻ¯āĻžāĻ°āĻž āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻļā§āĻ°āĻŽ āĻ–āĻ°āĻš āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ "āĻ•āĻžāĻ—āĻœā§‡āĻ°" āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻŸāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¯āĻŧāĨ¤

āĻ§āĻ°ā§āĻ¨ āĻ¯ā§‡ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž āĻĢāĻ°ā§āĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ (āĻœā§‹āĻĄāĻŧāĻž) āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻ—āĻžāĻŖāĻŋāĻ¤āĻŋāĻ• āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§‡āĻļ āĻ­āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡:

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡ āĻŽāĻžāĻ¸ā§‡ āĻ…āĻ°ā§āĻĨ āĻ—ā§ƒāĻšā§€āĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛, āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž - āĻŽāĻžāĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻ°āĻžāĻœāĻ¸ā§āĻŦ, āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻšāĻ—āĨ¤

āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–ā§āĻ¯ āĻ¯ā§‡ āĻ¸āĻšāĻ— āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻĸāĻžāĻ˛ āĻŦāĻž āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ; āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ āĻ¯āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻ–āĻ¨ āĻāĻŸāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž.

āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻ‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻžāĻœ āĻšāĻ˛ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ¸āĻšāĻ— āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¸āĻ¤ā§āĻ¯ āĻ‰āĻ¤ā§āĻ¤āĻ°āĻ—ā§āĻ˛āĻŋ āĻĨā§‡āĻ•ā§‡ āĻŽāĻžāĻ¸āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻŽāĻžāĻ¨ā§‡āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ, āĻ¯ā§‡āĻŽāĻ¨ āĻ¨āĻŽā§āĻ¨āĻžāĻ¯āĻŧ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻšāĻŦā§‡āĨ¤

āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻŦāĻ°ā§āĻ— āĻĒāĻĻā§āĻ§āĻ¤āĻŋ

āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻŦāĻ°ā§āĻ— āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡, āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻŸāĻŋ āĻ¸ā§āĻ•ā§‹āĻ¯āĻŧāĻžāĻ° āĻ•āĻ°ā§‡ āĻ—āĻŖāĻ¨āĻž āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ•ā§ŒāĻļāĻ˛ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻĒāĻžāĻ°āĻ¸ā§āĻĒāĻ°āĻŋāĻ• āĻĒāĻ°āĻŋāĻļā§‹āĻ§ āĻāĻĄāĻŧāĻžāĻ¨ā§‹āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧ, āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ āĻ˛āĻ•ā§āĻˇāĻŖ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ +5 (āĻ¸āĻš āĻĒāĻžāĻāĻšāĻŸāĻŋ), āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻŸāĻŋāĻ¤ā§‡ -5 (āĻŽāĻžāĻ‡āĻ¨āĻžāĻ¸ āĻĒāĻžāĻāĻš), āĻ¤āĻžāĻšāĻ˛ā§‡ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¯ā§‹āĻ—āĻĢāĻ˛ āĻĒāĻžāĻ°āĻ¸ā§āĻĒāĻ°āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻšāĻŦā§‡ 0 (āĻļā§‚āĻ¨ā§āĻ¯)āĨ¤ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻŦāĻ°ā§āĻ— āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻŽāĻĄā§āĻ˛āĻžāĻ¸ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ• āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻœāĻŽāĻž āĻšāĻŦā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤āĻ­āĻžāĻŦā§‡ āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻ•āĻ°āĻŦ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻ¸āĻšāĻœāĻ­āĻžāĻŦā§‡ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°āĻŦ āĻ¯ā§‡ āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ•ā§‡ āĻŦāĻ°ā§āĻ— āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻĨāĻžāĻ—āĻ¤āĨ¤

āĻ¸ā§‚āĻ¤ā§āĻ°āĻŸāĻŋ āĻāĻ­āĻžāĻŦā§‡āĻ‡ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ, āĻ¯āĻžāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§‡ āĻ†āĻŽāĻ°āĻž āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ•ā§āĻˇā§āĻĻā§āĻ°āĻ¤āĻŽ āĻ¯ā§‹āĻ—āĻĢāĻ˛ (āĻ¤ā§āĻ°ā§āĻŸāĻŋ) āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŦ:

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¸āĻ¤ā§āĻ¯ āĻ‰āĻ¤ā§āĻ¤āĻ°ā§‡āĻ° āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ (āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ—āĻŖāĻ¨āĻž āĻ•āĻ°āĻž āĻ°āĻžāĻœāĻ¸ā§āĻŦ),

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¸āĻ āĻŋāĻ• āĻ‰āĻ¤ā§āĻ¤āĻ°āĻ—ā§āĻ˛āĻŋ (āĻ¨āĻŽā§āĻ¨āĻžāĻ¯āĻŧ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ°āĻžāĻœāĻ¸ā§āĻŦ),

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻ¸ā§‚āĻšāĻ• (āĻ¯ā§‡ āĻŽāĻžāĻ¸ā§‡āĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ)

āĻ†āĻ¸ā§āĻ¨ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°āĻŋ, āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄāĻŋāĻĢāĻžāĻ°ā§‡āĻ¨āĻļāĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻšāĻ‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§‡, āĻ†āĻ¸ā§āĻ¨ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ•ā§€ āĻ¸ā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻĄāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ• āĻāĻŦāĻ‚ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻœā§āĻ¯āĻžāĻŽāĻŋāĻ¤āĻŋāĻ• āĻ…āĻ°ā§āĻĨāĻŸāĻŋ āĻ¸ā§āĻŽāĻ°āĻŖ āĻ•āĻ°āĻŋāĨ¤

āĻĒā§ƒāĻĨāĻ•ā§€āĻ•āĻ°āĻŖ

āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻžāĻ° āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒāĨ¤

āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻ•āĻŋ āĻœāĻ¨ā§āĻ¯? āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻšāĻžāĻ°āĻ•ā§‡ āĻšāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¤āĻžāĻ° āĻĻāĻŋāĻ• āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­āĻŸāĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ• āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻŦāĻžāĻĄāĻŧāĻ›ā§‡; āĻ…āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻĒāĻžāĻšā§āĻ›ā§‡āĨ¤ āĻāĻŦāĻ‚ āĻŽāĻĄā§āĻ˛ā§‹ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻ¯āĻ¤ āĻŦā§‡āĻļāĻŋ āĻšāĻŦā§‡, āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻšāĻžāĻ° āĻ¤āĻ¤ āĻŦā§‡āĻļāĻŋ āĻšāĻŦā§‡, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ—ā§āĻ°āĻžāĻĢā§‡āĻ° āĻĸāĻžāĻ˛ āĻ¤āĻ¤ āĻŦā§‡āĻļāĻŋ āĻšāĻŦā§‡āĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻŸā§‡āĻ¸āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻļāĻ°ā§āĻ¤ā§‡, M(0,0) āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻžāĻ¨ +25 āĻŽāĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡, āĻ¯āĻ–āĻ¨ āĻŽāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ, āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĄāĻžāĻ¨āĻĻāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž 25āĻŸāĻŋ āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§ƒāĻĻā§āĻ§āĻŋ āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻ—ā§āĻ°āĻžāĻĢā§‡, āĻāĻŸāĻŋ āĻŽāĻžāĻ¨ āĻŦā§ƒāĻĻā§āĻ§āĻŋāĻ° āĻŽā§‹āĻŸāĻžāĻŽā§āĻŸāĻŋ āĻ–āĻžāĻĄāĻŧāĻž āĻ•ā§‹āĻŖā§‡āĻ° āĻŽāĻ¤ā§‹ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻĨā§‡āĻ•ā§‡āĨ¤

āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ. āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻšāĻ˛ -0,1 āĻ¨āĻžāĻĄāĻŧāĻžāĻšāĻžāĻĄāĻŧāĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻĒā§āĻ°āĻ¤āĻŋ, āĻŽāĻžāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° 0,1 āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻšā§āĻ°āĻžāĻ¸ āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡, āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ—ā§āĻ°āĻžāĻĢā§‡, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻŦā§‡āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻ•ā§āĻˇāĻŖā§€āĻ¯āĻŧ āĻ¨āĻŋāĻŽā§āĻ¨āĻ—āĻžāĻŽā§€ āĻĸāĻžāĻ˛ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°ā§āĻŦāĻ¤ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻĻā§ƒāĻļā§āĻ¯ āĻ†āĻāĻ•āĻ˛ā§‡, āĻāĻŸāĻŋ āĻ¯ā§‡āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ–ā§āĻŦ āĻ§ā§€āĻ°ā§‡ āĻ§ā§€āĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°ā§āĻŦāĻ¤ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻŽā§ƒāĻĻā§ āĻĸāĻžāĻ˛ā§‡ āĻ¨āĻžāĻŽāĻ›āĻŋ, āĻ†āĻ—ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ–ā§āĻŦ āĻ–āĻžāĻĄāĻŧāĻž āĻļāĻŋāĻ–āĻ° āĻ¨āĻŋāĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ :)

āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻŽāĻ¤āĻ­ā§‡āĻĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ†āĻŽāĻ°āĻž 1 āĻŽ āĻ•ā§āĻ°āĻŽā§‡āĻ° āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻŋāĨ¤ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§āĻŸāĻŋ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒāĻžāĻŦ, āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ‡ āĻœāĻžāĻ¤ā§€āĻ¯āĻŧ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻŦā§‡āĻ›ā§‡ āĻ¨āĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ āĻ¸āĻ‚āĻļā§āĻ˛āĻŋāĻˇā§āĻŸ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻŦ, āĻ–ā§āĻŦ āĻ…āĻ˛ā§āĻĒ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻŽā§‹āĻŸā§‡āĻ“ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ…āĻ¨ā§āĻ¯ āĻ•āĻĨāĻžāĻ¯āĻŧ, āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻĒā§ŒāĻāĻ›ā§‡ āĻ¯āĻžāĻŦā§‡, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻāĻ‡ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻļā§‚āĻ¨ā§āĻ¯ā§‡āĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻŦā§‡āĨ¤

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ā§‡āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡, āĻ¸āĻšāĻ—ā§‡āĻ° āĻ¸āĻžāĻĒā§‡āĻ•ā§āĻˇā§‡ ā§§āĻŽ āĻ•ā§āĻ°āĻŽāĻŸāĻŋāĻ° āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻĢāĻ°ā§āĻŽ āĻ¨ā§‡āĻŦā§‡:

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

1āĻŽ āĻ•ā§āĻ°āĻŽ āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻžāĻĒā§‡āĻ•ā§āĻˇā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻĢāĻ°ā§āĻŽ āĻ¨ā§‡āĻŦā§‡:

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ āĻ¯āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻŽā§‹āĻŸāĻžāĻŽā§āĻŸāĻŋ āĻ¸āĻšāĻœ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

āĻļā§āĻ°ā§{āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ*}
āĻļā§āĻ°ā§
na + bsumlimits_{i=1}^nx_i - sumlimits_{i=1}^ny_i = 0

sumlimits_{i=1}^nx_i(a +bsumlimits_{i=1}^nx_i - sumlimits_{i=1}^ny_i) = 0
āĻļā§‡āĻˇ{āĻ•ā§‡āĻ¸}
āĻļā§‡āĻˇ{āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ*}

āĻ¸āĻŽā§€āĻ•āĻ°āĻŖāĻŸāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡, āĻ†āĻ¸ā§āĻ¨ āĻĒā§āĻ°āĻŋāĻ˛ā§‹āĻĄ āĻ•āĻ°āĻŋ, āĻ˛ā§‹āĻĄāĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻ¸āĻ āĻŋāĻ•āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻĄā§‡āĻŸāĻž āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻŸ āĻ•āĻ°āĻŋāĨ¤

āĻĄā§‡āĻŸāĻž āĻ˛ā§‹āĻĄ āĻāĻŦāĻ‚ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻāĻŸāĻŋ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¯ā§‡ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŦāĻ‚ āĻ­āĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§‡ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž āĻ•ā§‹āĻĄāĻŸāĻŋ āĻĻā§āĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨āĻ¤āĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦ: āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¨āĻŽā§āĻ° āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻ•āĻ°ā§‡, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤ āĻĄā§‡āĻŸāĻž āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ (āĻ•ā§‹āĻĄ āĻĻā§‡āĻ–ā§āĻ¨)āĨ¤

āĻĄā§‡āĻŸāĻž āĻ˛ā§‹āĻĄāĻŋāĻ‚ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¸ā§‡āĻ¸āĻŋāĻ‚ āĻ•ā§‹āĻĄ

# иĐŧĐŋĐžŅ€Ņ‚иŅ€ŅƒĐĩĐŧ вŅĐĩ ĐŊŅƒĐļĐŊŅ‹Đĩ ĐŊĐ°Đŧ йийĐģиОŅ‚ĐĩĐēи
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import math
import pylab as pl
import random

# ĐŗŅ€Đ°Ņ„иĐēи ĐžŅ‚ОйŅ€Đ°ĐˇĐ¸Đŧ в Jupyter
%matplotlib inline

# ŅƒĐēĐ°ĐļĐĩĐŧ Ņ€Đ°ĐˇĐŧĐĩŅ€ ĐŗŅ€Đ°Ņ„иĐēОв
from pylab import rcParams
rcParams['figure.figsize'] = 12, 6

# ĐžŅ‚ĐēĐģŅŽŅ‡Đ¸Đŧ ĐŋŅ€ĐĩĐ´ŅƒĐŋŅ€ĐĩĐļĐ´ĐĩĐŊиŅ Anaconda
import warnings
warnings.simplefilter('ignore')

# СаĐŗŅ€ŅƒĐˇĐ¸Đŧ СĐŊĐ°Ņ‡ĐĩĐŊиŅ
table_zero = pd.read_csv('data_example.txt', header=0, sep='t')

# ĐŋĐžŅĐŧĐžŅ‚Ņ€Đ¸Đŧ иĐŊŅ„ĐžŅ€ĐŧĐ°Ņ†Đ¸ŅŽ Đž Ņ‚Đ°ĐąĐģиŅ†Đĩ и ĐŊĐ° ŅĐ°ĐŧŅƒ Ņ‚Đ°ĐąĐģиŅ†Ņƒ
print table_zero.info()
print '********************************************'
print table_zero
print '********************************************'

# ĐŋОдĐŗĐžŅ‚ОвиĐŧ Đ´Đ°ĐŊĐŊŅ‹Đĩ ĐąĐĩС иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ NumPy

x_us = []
[x_us.append(float(i)) for i in table_zero['x']]
print x_us
print type(x_us)
print '********************************************'

y_us = []
[y_us.append(float(i)) for i in table_zero['y']]
print y_us
print type(y_us)
print '********************************************'

# ĐŋОдĐŗĐžŅ‚ОвиĐŧ Đ´Đ°ĐŊĐŊŅ‹Đĩ Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ NumPy

x_np = table_zero[['x']].values
print x_np
print type(x_np)
print x_np.shape
print '********************************************'

y_np = table_zero[['y']].values
print y_np
print type(y_np)
print y_np.shape
print '********************************************'

āĻ­āĻŋāĻœā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ˛āĻžāĻ‡āĻœā§‡āĻļāĻ¨

āĻāĻ–āĻ¨, āĻ†āĻŽāĻ°āĻž, āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻĄā§‡āĻŸāĻž āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻ¤, āĻ˛ā§‹āĻĄāĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻ¸āĻ āĻŋāĻ•āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ…āĻŦāĻļā§‡āĻˇā§‡ āĻĄā§‡āĻŸāĻž āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻŸ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽ āĻ­āĻŋāĻœā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ˛āĻžāĻ‡āĻœā§‡āĻļāĻ¨āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ•āĻ°āĻŦāĨ¤ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻāĻ‡ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻĒā§‡āĻ¯āĻŧāĻžāĻ°āĻĒā§āĻ˛āĻŸ āĻ—ā§āĻ°āĻ¨ā§āĻĨāĻžāĻ—āĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĻā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤. āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, āĻ¸ā§€āĻŽāĻŋāĻ¤ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻ•āĻžāĻ°āĻŖā§‡, āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ•ā§‹āĻ¨ āĻŽāĻžāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¸āĻŽā§āĻĻā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤. āĻ†āĻŽāĻ°āĻž āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦ āĻŽā§āĻ¯āĻžāĻŸāĻĒā§āĻ˛ā§āĻ˛ā§‹āĻŦ āĻāĻŦāĻ‚ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° scatterplot āĻ¤āĻžāĻ•āĻžāĻ¨.

āĻ¸ā§āĻ•ā§āĻ¯āĻžāĻŸāĻžāĻ°āĻĒā§āĻ˛āĻŸ āĻ•ā§‹āĻĄ

print 'ГŅ€Đ°Ņ„иĐē №1 "ЗавиŅĐ¸ĐŧĐžŅŅ‚ŅŒ вŅ‹Ņ€ŅƒŅ‡Đēи ĐžŅ‚ ĐŧĐĩŅŅŅ†Đ° ĐŗОда"'

plt.plot(x_us,y_us,'o',color='green',markersize=16)
plt.xlabel('$Months$', size=16)
plt.ylabel('$Sales$', size=16)
plt.show()

āĻšāĻžāĻ°ā§āĻŸ āĻ¨āĻ‚ 1 "āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻžāĻ¸ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨

āĻ†āĻŽāĻ°āĻž āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŸā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋ āĻĒāĻžāĻ‡āĻĨāĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°ā§āĻ¨:

āĻļā§āĻ°ā§{āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ*}
āĻļā§āĻ°ā§
na + bsumlimits_{i=1}^nx_i - sumlimits_{i=1}^ny_i = 0

sumlimits_{i=1}^nx_i(a +bsumlimits_{i=1}^nx_i - sumlimits_{i=1}^ny_i) = 0
āĻļā§‡āĻˇ{āĻ•ā§‡āĻ¸}
āĻļā§‡āĻˇ{āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ*}

āĻ•ā§āĻ°ā§‡āĻŽāĻžāĻ°ā§‡āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ•, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ• āĻ–ā§āĻāĻœā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻŦāĻ‚ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ¯āĻžāĻ° āĻĒāĻ°ā§‡, āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ•āĻ•ā§‡ āĻ­āĻžāĻ— āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ•ā§‡āĻ° āĻ•āĻžāĻ›ā§‡ - āĻ¸āĻšāĻ— āĻ–ā§āĻāĻœā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻšāĻ— āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž.

āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•ā§‹āĻĄ

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ Đ´ĐģŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ° ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b ĐŋĐž ĐŋŅ€Đ°Đ˛Đ¸ĐģŅƒ КŅ€Đ°ĐŧĐĩŅ€Đ°
def Kramer_method (x,y):
        # ŅŅƒĐŧĐŧĐ° СĐŊĐ°Ņ‡ĐĩĐŊиК (вŅĐĩ ĐŧĐĩŅŅŅ†Đ°)
    sx = sum(x)
        # ŅŅƒĐŧĐŧĐ° иŅŅ‚иĐŊĐŊŅ‹Ņ… ĐžŅ‚вĐĩŅ‚Ов (вŅ‹Ņ€ŅƒŅ‡ĐēĐ° Са вĐĩŅŅŒ ĐŋĐĩŅ€Đ¸ĐžĐ´)
    sy = sum(y)
        # ŅŅƒĐŧĐŧĐ° ĐŋŅ€ĐžĐ¸ĐˇĐ˛ĐĩĐ´ĐĩĐŊиŅ СĐŊĐ°Ņ‡ĐĩĐŊиК ĐŊĐ° иŅŅ‚иĐŊĐŊŅ‹Đĩ ĐžŅ‚вĐĩŅ‚Ņ‹
    list_xy = []
    [list_xy.append(x[i]*y[i]) for i in range(len(x))]
    sxy = sum(list_xy)
        # ŅŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов СĐŊĐ°Ņ‡ĐĩĐŊиК
    list_x_sq = []
    [list_x_sq.append(x[i]**2) for i in range(len(x))]
    sx_sq = sum(list_x_sq)
        # ĐēĐžĐģиŅ‡ĐĩŅŅ‚вО СĐŊĐ°Ņ‡ĐĩĐŊиК
    n = len(x)
        # ОйŅ‰Đ¸Đš ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиŅ‚ĐĩĐģŅŒ
    det = sx_sq*n - sx*sx
        # ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиŅ‚ĐĩĐģŅŒ ĐŋĐž a
    det_a = sx_sq*sy - sx*sxy
        # иŅĐēĐžĐŧŅ‹Đš ĐŋĐ°Ņ€Đ°ĐŧĐĩŅ‚Ņ€ a
    a = (det_a / det)
        # ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиŅ‚ĐĩĐģŅŒ ĐŋĐž b
    det_b = sxy*n - sy*sx
        # иŅĐēĐžĐŧŅ‹Đš ĐŋĐ°Ņ€Đ°ĐŧĐĩŅ‚Ņ€ b
    b = (det_b / det)
        # ĐēĐžĐŊŅ‚Ņ€ĐžĐģŅŒĐŊŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ (ĐŋŅ€ĐžĐžĐ˛ĐĩŅ€ĐēĐ°)
    check1 = (n*b + a*sx - sy)
    check2 = (b*sx + a*sx_sq - sxy)
    return [round(a,4), round(b,4)]

# СаĐŋŅƒŅŅ‚иĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ и СаĐŋиŅˆĐĩĐŧ ĐŋŅ€Đ°Đ˛Đ¸ĐģŅŒĐŊŅ‹Đĩ ĐžŅ‚вĐĩŅ‚Ņ‹
ab_us = Kramer_method(x_us,y_us)
a_us = ab_us[0]
b_us = ab_us[1]
print ' 33[1m' + ' 33[4m' + "ОĐŋŅ‚иĐŧĐ°ĐģŅŒĐŊŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:"  + ' 33[0m' 
print 'a =', a_us
print 'b =', b_us
print

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ Đ´ĐģŅ ĐŋОдŅŅ‡ĐĩŅ‚Đ° ŅŅƒĐŧĐŧŅ‹ ĐēвадŅ€Đ°Ņ‚Ов ĐžŅˆĐ¸ĐąĐžĐē
def errors_sq_Kramer_method(answers,x,y):
    list_errors_sq = []
    for i in range(len(x)):
        err = (answers[0] + answers[1]*x[i] - y[i])**2
        list_errors_sq.append(err)
    return sum(list_errors_sq)

# СаĐŋŅƒŅŅ‚иĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ и СаĐŋиŅˆĐĩĐŧ СĐŊĐ°Ņ‡ĐĩĐŊиĐĩ ĐžŅˆĐ¸ĐąĐēи
error_sq = errors_sq_Kramer_method(ab_us,x_us,y_us)
print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК" + ' 33[0m'
print error_sq
print

# СаĐŧĐĩŅ€Đ¸Đŧ вŅ€ĐĩĐŧŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ°
# print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ° ŅŅƒĐŧĐŧŅ‹ ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
# % timeit error_sq = errors_sq_Kramer_method(ab,x_us,y_us)

āĻ†āĻŽāĻ°āĻž āĻ¯āĻž āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ āĻ¤āĻž āĻāĻ–āĻžāĻ¨ā§‡:

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ, āĻŦāĻ°ā§āĻ—ā§€āĻ¯āĻŧ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¯ā§‹āĻ—āĻĢāĻ˛ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¸āĻšāĻ— āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻŦāĻŋāĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻšāĻŋāĻ¸ā§āĻŸā§‹āĻ—ā§āĻ°āĻžāĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§‡āĻ–āĻž āĻ†āĻāĻ•ā§āĻ¨āĨ¤

āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ˛āĻžāĻ‡āĻ¨ āĻ•ā§‹āĻĄ

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ Đ´ĐģŅ Ņ„ĐžŅ€ĐŧиŅ€ĐžĐ˛Đ°ĐŊиŅ ĐŧĐ°ŅŅĐ¸Đ˛Đ° Ņ€Đ°ŅŅŅ‡ĐĩŅ‚ĐŊŅ‹Ņ… СĐŊĐ°Ņ‡ĐĩĐŊиК вŅ‹Ņ€ŅƒŅ‡Đēи
def sales_count(ab,x,y):
    line_answers = []
    [line_answers.append(ab[0]+ab[1]*x[i]) for i in range(len(x))]
    return line_answers

# ĐŋĐžŅŅ‚Ņ€ĐžĐ¸Đŧ ĐŗŅ€Đ°Ņ„иĐēи
print 'ГŅ€Ņ„иĐē№2 "ПŅ€Đ°Đ˛Đ¸ĐģŅŒĐŊŅ‹Đĩ и Ņ€Đ°ŅŅ‡ĐĩŅ‚ĐŊŅ‹Đĩ ĐžŅ‚вĐĩŅ‚Ņ‹"'
plt.plot(x_us,y_us,'o',color='green',markersize=16, label = '$True$ $answers$')
plt.plot(x_us, sales_count(ab_us,x_us,y_us), color='red',lw=4,
         label='$Function: a + bx,$ $where$ $a='+str(round(ab_us[0],2))+',$ $b='+str(round(ab_us[1],2))+'$')
plt.xlabel('$Months$', size=16)
plt.ylabel('$Sales$', size=16)
plt.legend(loc=1, prop={'size': 16})
plt.show()

āĻšāĻžāĻ°ā§āĻŸ āĻ¨āĻ‚ 2 "āĻ¸āĻ āĻŋāĻ• āĻāĻŦāĻ‚ āĻ—āĻŖāĻ¨āĻžāĻ•ā§ƒāĻ¤ āĻ‰āĻ¤ā§āĻ¤āĻ°"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ†āĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋ āĻŽāĻžāĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ—ā§āĻ°āĻžāĻĢ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ āĻĨā§‡āĻ•ā§‡ āĻ•ā§‹āĻ¨āĻ“ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻ• āĻŽā§‚āĻ˛ā§āĻ¯ āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°āĻŦ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻ•ā§ŒāĻ¤ā§‚āĻšāĻ˛āĻ•ā§‡ āĻ¸āĻ¨ā§āĻ¤ā§āĻˇā§āĻŸ āĻ•āĻ°āĻŦ āĻ¯ā§‡ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖāĻŸāĻŋ āĻŦāĻ›āĻ°ā§‡āĻ° āĻŽāĻžāĻ¸ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻžāĻ•ā§‡ āĻ•āĻ¤āĻŸāĻž āĻ­āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻšāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻ•āĻ°ā§‡āĨ¤

āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ āĻšāĻžāĻ°ā§āĻŸ āĻ•ā§‹āĻĄ

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ Đ´ĐģŅ Ņ„ĐžŅ€ĐŧиŅ€ĐžĐ˛Đ°ĐŊиŅ ĐŧĐ°ŅŅĐ¸Đ˛Đ° ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК в ĐŋŅ€ĐžŅ†ĐĩĐŊŅ‚Đ°Ņ…
def error_per_month(ab,x,y):
    sales_c = sales_count(ab,x,y)
    errors_percent = []
    for i in range(len(x)):
        errors_percent.append(100*(sales_c[i]-y[i])/y[i])
    return errors_percent

# ĐŋĐžŅŅ‚Ņ€ĐžĐ¸Đŧ ĐŗŅ€Đ°Ņ„иĐē
print 'ГŅ€Đ°Ņ„иĐē№3 "ОŅ‚ĐēĐģĐžĐŊĐĩĐŊиŅ ĐŋĐž-ĐŧĐĩŅŅŅ‡ĐŊĐž, %"'
plt.gca().bar(x_us, error_per_month(ab_us,x_us,y_us), color='brown')
plt.xlabel('Months', size=16)
plt.ylabel('Calculation error, %', size=16)
plt.show()

āĻšāĻžāĻ°ā§āĻŸ āĻ¨āĻ‚ 3 "āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ,%"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¨āĻŋāĻ–ā§āĻāĻ¤ āĻ¨āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĻ›āĻŋ.

āĻ†āĻ¸ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ˛āĻŋāĻ–āĻŋ āĻ¯āĻž āĻ¸āĻšāĻ— āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¨āĻŽā§āĻ°, āĻ†āĻ°āĻ“ āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ˛āĻŋāĻ–āĻŦ: āĻāĻ•āĻŸāĻŋ āĻ›āĻĻā§āĻŽ-āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ āĻŽā§āĻ¯āĻžāĻŸā§āĻ°āĻŋāĻ•ā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ (āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ā§‡ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻ—āĻŖāĻ¨āĻžāĻ—āĻ¤āĻ­āĻžāĻŦā§‡ āĻœāĻŸāĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ…āĻ¸ā§āĻĨāĻŋāĻ°), āĻ…āĻ¨ā§āĻ¯āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻŽā§āĻ¯āĻžāĻŸā§āĻ°āĻŋāĻ•ā§āĻ¸ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤

āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•ā§‹āĻĄ (NumPy)

# Đ´ĐģŅ ĐŊĐ°Ņ‡Đ°ĐģĐ° дОйавиĐŧ ŅŅ‚ĐžĐģĐąĐĩŅ† Ņ ĐŊĐĩ иСĐŧĐĩĐŊŅŅŽŅ‰Đ¸ĐŧŅŅ СĐŊĐ°Ņ‡ĐĩĐŊиĐĩĐŧ в 1. 
# ДаĐŊĐŊŅ‹Đš ŅŅ‚ĐžĐģĐąĐĩŅ† ĐŊŅƒĐļĐĩĐŊ Đ´ĐģŅ Ņ‚ĐžĐŗĐž, Ņ‡Ņ‚ОйŅ‹ ĐŊĐĩ ОйŅ€Đ°ĐąĐ°Ņ‚Ņ‹Đ˛Đ°Ņ‚ŅŒ ĐžŅ‚Đ´ĐĩĐģŅŒĐŊĐž ĐēĐžŅŅ„Ņ„иŅ†ĐĩĐŊŅ‚ a
vector_1 = np.ones((x_np.shape[0],1))
x_np = table_zero[['x']].values # ĐŊĐ° вŅŅĐēиК ŅĐģŅƒŅ‡Đ°Đš ĐŋŅ€Đ¸Đ˛ĐĩĐ´ĐĩĐŧ в ĐŋĐĩŅ€Đ˛Đ¸Ņ‡ĐŊŅ‹Đš Ņ„ĐžŅ€ĐŧĐ°Ņ‚ вĐĩĐēŅ‚ĐžŅ€ x_np
x_np = np.hstack((vector_1,x_np))

# ĐŋŅ€ĐžĐ˛ĐĩŅ€Đ¸Đŧ Ņ‚Đž, Ņ‡Ņ‚Đž вŅĐĩ ŅĐ´ĐĩĐģĐ°Đģи ĐŋŅ€Đ°Đ˛Đ¸ĐģŅŒĐŊĐž
print vector_1[0:3]
print x_np[0:3]
print '***************************************'
print

# ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ, ĐēĐžŅ‚ĐžŅ€Đ°Ņ ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩŅ‚ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ ĐŋŅĐĩвдООйŅ€Đ°Ņ‚ĐŊОК ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņ‹
def pseudoinverse_matrix(X, y):
    # СадаĐĩĐŧ ŅĐ˛ĐŊŅ‹Đš Ņ„ĐžŅ€ĐŧĐ°Ņ‚ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņ‹ ĐŋŅ€Đ¸ĐˇĐŊĐ°ĐēОв
    X = np.matrix(X)
    # ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩĐŧ Ņ‚Ņ€Đ°ĐŊŅĐŋĐžĐŊиŅ€ĐžĐ˛Đ°ĐŊĐŊŅƒŅŽ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņƒ
    XT = X.T
    # ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩĐŧ ĐēвадŅ€Đ°Ņ‚ĐŊŅƒŅŽ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņƒ
    XTX = XT*X
    # ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩĐŧ ĐŋŅĐĩвдООйŅ€Đ°Ņ‚ĐŊŅƒŅŽ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņƒ
    inv = np.linalg.pinv(XTX)
    # СадаĐĩĐŧ ŅĐ˛ĐŊŅ‹Đš Ņ„ĐžŅ€ĐŧĐ°Ņ‚ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņ‹ ĐžŅ‚вĐĩŅ‚Ов
    y = np.matrix(y)
    # ĐŊĐ°Ņ…ОдиĐŧ вĐĩĐēŅ‚ĐžŅ€ вĐĩŅĐžĐ˛
    return (inv*XT)*y

# СаĐŋŅƒŅŅ‚иĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ
ab_np = pseudoinverse_matrix(x_np, y_np)
print ab_np
print '***************************************'
print

# ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ, ĐēĐžŅ‚ĐžŅ€Đ°Ņ иŅĐŋĐžĐģŅŒĐˇŅƒĐĩŅ‚ Đ´ĐģŅ Ņ€ĐĩŅˆĐĩĐŊиŅ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ‡ĐŊĐžĐĩ ŅƒŅ€Đ°Đ˛ĐŊĐĩĐŊиĐĩ
def matrix_equation(X,y):
    a = np.dot(X.T, X)
    b = np.dot(X.T, y)
    return np.linalg.solve(a, b)

# СаĐŋŅƒŅŅ‚иĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ
ab_np = matrix_equation(x_np,y_np)
print ab_np

āĻ¸āĻšāĻ— āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻ¯ā§‡ āĻ¸āĻŽāĻ¯āĻŧ āĻ˛ā§‡āĻ—ā§‡āĻ›ā§‡ āĻ¤āĻžāĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻ•āĻ°ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ 3 āĻŸāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡āĨ¤

āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ—āĻŖāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ

print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ° ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов ĐąĐĩС иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ йийĐģиОŅ‚ĐĩĐēи NumPy:" + ' 33[0m'
% timeit ab_us = Kramer_method(x_us,y_us)
print '***************************************'
print
print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ° ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ ĐŋŅĐĩвдООйŅ€Đ°Ņ‚ĐŊОК ĐŧĐ°Ņ‚Ņ€Đ¸Ņ†Ņ‹:" + ' 33[0m'
%timeit ab_np = pseudoinverse_matrix(x_np, y_np)
print '***************************************'
print
print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ Ņ€Đ°ŅŅ‡ĐĩŅ‚Đ° ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ ĐŧĐ°Ņ‚Ņ€Đ¸Ņ‡ĐŊĐžĐŗĐž ŅƒŅ€Đ°Đ˛ĐŊĐĩĐŊиŅ:" + ' 33[0m'
%timeit ab_np = matrix_equation(x_np, y_np)

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ…āĻ˛ā§āĻĒ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ āĻĄā§‡āĻŸāĻžāĻ¤ā§‡, āĻāĻ•āĻŸāĻŋ "āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻ–āĻŋāĻ¤" āĻĢāĻžāĻ‚āĻļāĻ¨ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸ā§‡, āĻ¯āĻž āĻ•ā§āĻ°ā§‡āĻŽāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸āĻšāĻ— āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ¯āĻŧāĨ¤

āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻ¸āĻšāĻ— āĻ–ā§āĻāĻœāĻ¤ā§‡ āĻ…āĻ¨ā§āĻ¯ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž.

āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ

āĻĒā§āĻ°āĻĨāĻŽā§‡, āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ•āĻŋ āĻ¤āĻž āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻœ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡, āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¸ā§‡āĻ—āĻŽā§‡āĻ¨ā§āĻŸ āĻ¯āĻž āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻŦā§ƒāĻĻā§āĻ§āĻŋāĻ° āĻĻāĻŋāĻ• āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡āĨ¤ āĻšāĻĄāĻŧāĻžāĻ‡-āĻ‰ā§ŽāĻ°āĻžāĻ‡āĻ¯āĻŧā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĻā§ƒāĻļā§āĻ¯ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ, āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĒāĻžāĻšāĻžāĻĄāĻŧā§‡āĻ° āĻšā§‚āĻĄāĻŧāĻžāĻ¯āĻŧ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ–āĻžāĻĄāĻŧāĻž āĻ†āĻ°ā§‹āĻšāĻŖāĨ¤ āĻĒāĻ°ā§āĻŦāĻ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŦāĻŋāĻ•āĻžāĻļ, āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻŦā§‡āĻ¨ āĻ¯ā§‡ āĻ¯āĻ¤ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋ āĻ¸āĻŽā§āĻ­āĻŦ āĻ¨āĻŋāĻŽā§āĻ¨ā§‡ āĻĒā§ŒāĻāĻ›āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻĒāĻ•ā§āĻˇā§‡ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ–āĻžāĻĄāĻŧāĻž āĻ…āĻŦāĻ¤āĻ°āĻŖ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ - āĻāĻŽāĻ¨ āĻœāĻžāĻ¯āĻŧāĻ—āĻž āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻŦā§ƒāĻĻā§āĻ§āĻŋ āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ‚ āĻšā§āĻ°āĻžāĻ¸ āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡, āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻļā§‚āĻ¨ā§āĻ¯ āĻšāĻŦā§‡āĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻ°ā§‹āĻ§ā§€ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ. āĻ…ā§āĻ¯āĻžāĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ•ā§‡āĻŦāĻ˛ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻ•ā§‡ āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ—ā§āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ -1 (āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻāĻ•).

āĻ†āĻ¸ā§āĻ¨ āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŸāĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ‡ āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡ āĻŦā§‡āĻļ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻŽāĻŋāĻ¨āĻŋāĻŽāĻžāĻŽ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¨ā§€āĻšā§‡āĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋāĻ¤ā§‡ āĻ¨ā§‡āĻŽā§‡ āĻ†āĻ¸āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻ¯ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻŦ āĻ¨āĻž, āĻ¯āĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻŸāĻŋāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻŽ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻ°āĻžāĻŽ āĻ•āĻ°ā§āĻ¨, āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻĒāĻĻā§‡ āĻ¨ā§‡āĻ‡! āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĨā§‡āĻ•ā§‡, āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ›āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ—ā§āĻ°āĻžāĻĢā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŦā§‹āĻ˛āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻ•āĻ˛ā§‡āĻ° āĻ¸ā§āĻ•ā§āĻ˛ā§‡āĻ° āĻ—āĻŖāĻŋāĻ¤ āĻ•ā§‹āĻ°ā§āĻ¸ āĻĨā§‡āĻ•ā§‡ āĻ–ā§āĻŦ āĻ­āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻœāĻžāĻ¨āĻž āĻ‰āĻšāĻŋāĻ¤, āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŦā§‹āĻ˛āĻžāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻĨāĻžāĻ•ā§‡āĨ¤

āĻ†āĻŽāĻ°āĻž āĻ•ā§‡āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¤āĻž āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻāĻŦāĻ‚ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸ā§‡āĻ—āĻŽā§‡āĻ¨ā§āĻŸ, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ­ā§‡āĻ•ā§āĻŸāĻ°, āĻ¯āĻž āĻ āĻŋāĻ• āĻāĻ•āĻ‡ āĻ¸āĻšāĻ—āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ†āĻŽāĻ°āĻž āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤

āĻļā§āĻ°ā§ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡, āĻ†āĻŽāĻŋ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻŦāĻžāĻ•ā§āĻ¯ āĻĒāĻĄāĻŧāĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻšā§āĻ›āĻŋ:

  • āĻ†āĻŽāĻ°āĻž āĻ¸āĻŋāĻ‰āĻĄā§‹-āĻāĻ˛ā§‹āĻŽā§‡āĻ˛ā§‹āĻ­āĻžāĻŦā§‡ āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž. āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, āĻ†āĻŽāĻ°āĻž āĻļā§‚āĻ¨ā§āĻ¯ā§‡āĻ° āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻ¸āĻšāĻ— āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻŦāĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ…āĻ­ā§āĻ¯āĻžāĻ¸, āĻ¤āĻŦā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤
  • āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ 1āĻŽ āĻ•ā§āĻ°āĻŽāĻŸāĻŋāĻ° āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž. āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ¯āĻĻāĻŋ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻ‡āĻ¤āĻŋāĻŦāĻžāĻšāĻ• āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻŦāĻžāĻĄāĻŧāĻ›ā§‡āĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻŦā§ƒāĻĻā§āĻ§āĻŋāĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ āĻĻāĻŋāĻ•ā§‡ āĻ¯āĻžāĻŦā§‹, āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻĻāĻŋāĻ•ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ āĻ¨ā§‡āĻ¤āĻŋāĻŦāĻžāĻšāĻ• āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻ‡ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻ•āĻŽāĻ›ā§‡ āĻāĻŦāĻ‚ āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻ›ā§‡, āĻ†āĻŽāĻ°āĻž āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¯āĻžāĻšā§āĻ›āĻŋāĨ¤
  • āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ•āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž: āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§‡ āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž.
  • āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻ‰āĻĒāĻ° āĻāĻžāĻāĻĒ āĻ¨āĻž āĻāĻŦāĻ‚ āĻ—āĻ­ā§€āĻ° āĻŽāĻšāĻžāĻ•āĻžāĻļā§‡ āĻĻā§‚āĻ°ā§‡ āĻ‰āĻĄāĻŧā§‡ āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻŸāĻŋ āĻ…āĻŦāĻ¤āĻ°āĻŖ āĻĻāĻŋāĻ•ā§‡ āĻ§āĻžāĻĒā§‡āĻ° āĻ†āĻ•āĻžāĻ° āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻ—āĻŖāĻ¨āĻžāĻ° āĻ–āĻ°āĻš āĻ•āĻŽāĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒāĻŸāĻŋ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻ…āĻŦāĻ¤āĻ°āĻŖā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¸ā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻ•āĻœāĻ¨ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ–āĻ¨ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ•āĻžāĻœ āĻ†āĻ›ā§‡, āĻāĻŦāĻ‚ āĻ†āĻŽāĻ°āĻž āĻŦā§ˆāĻœā§āĻžāĻžāĻ¨āĻŋāĻ• āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ§āĻžāĻĒā§‡āĻ° āĻ†āĻ•āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŦ "āĻĒā§‹āĻ•" āĻŦāĻž, āĻ¯ā§‡āĻŽāĻ¨ āĻ¤āĻžāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŽāĻžāĻ¨ā§āĻˇ āĻŦāĻ˛ā§‡, āĻ…āĻ­āĻŋāĻœā§āĻžāĻ¤āĻžāĻ—āĻ¤āĻ­āĻžāĻŦā§‡āĨ¤
  • āĻāĻ•āĻŦāĻžāĻ° āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ•ā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡ āĻĨāĻžāĻ•āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻŦāĻŋāĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§āĻ¨, āĻ†āĻŽāĻ°āĻž āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻĒāĻžāĻ‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž. āĻ†āĻŽāĻ°āĻž āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ (āĻŦāĻŋāĻ¯āĻŧā§‹āĻ—) āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°āĻŋ, āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻ—āĻŖāĻ¨āĻžāĻ•ā§ƒāĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻĨā§‡āĻ•ā§‡āĨ¤ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻšāĻ•ā§āĻ°āĻŸāĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ, āĻ¯āĻ¤āĻ•ā§āĻˇāĻŖ āĻ¨āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ•āĻ¨āĻ­āĻžāĻ°āĻœā§‡āĻ¨ā§āĻ¸ā§‡ āĻĒā§ŒāĻāĻ›āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧāĨ¤

āĻ¸āĻŽāĻ¸ā§āĻ¤ ! āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻŽāĻžāĻ°āĻŋāĻ¯āĻŧāĻžāĻ¨āĻž āĻŸā§āĻ°ā§‡āĻžā§āĻšā§‡āĻ° āĻ—āĻ­ā§€āĻ°āĻ¤āĻŽ āĻ–āĻžāĻĻā§‡āĻ° āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤ āĻšāĻ˛ āĻļā§āĻ°ā§ āĻ•āĻ°āĻŋ.

āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ•ā§‹āĻĄ

# ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° ĐąĐĩС иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ йийĐģиОŅ‚ĐĩĐēи NumPy. 
# ФŅƒĐŊĐēŅ†Đ¸Ņ ĐŊĐ° вŅ…Од ĐŋŅ€Đ¸ĐŊиĐŧĐ°ĐĩŅ‚ диаĐŋаСОĐŊŅ‹ СĐŊĐ°Ņ‡ĐĩĐŊиК x,y, Đ´ĐģиĐŊŅƒ ŅˆĐ°ĐŗĐ° (ĐŋĐž ŅƒĐŧĐžĐģŅ‡Đ°ĐŊиŅŽ=0,1), Đ´ĐžĐŋŅƒŅŅ‚иĐŧŅƒŅŽ ĐŋĐžĐŗŅ€ĐĩŅˆĐŊĐžŅŅ‚ŅŒ(tolerance)
def gradient_descent_usual(x_us,y_us,l=0.1,tolerance=0.000000000001):
    # ŅŅƒĐŧĐŧĐ° СĐŊĐ°Ņ‡ĐĩĐŊиК (вŅĐĩ ĐŧĐĩŅŅŅ†Đ°)
    sx = sum(x_us)
    # ŅŅƒĐŧĐŧĐ° иŅŅ‚иĐŊĐŊŅ‹Ņ… ĐžŅ‚вĐĩŅ‚Ов (вŅ‹Ņ€ŅƒŅ‡ĐēĐ° Са вĐĩŅŅŒ ĐŋĐĩŅ€Đ¸ĐžĐ´)
    sy = sum(y_us)
    # ŅŅƒĐŧĐŧĐ° ĐŋŅ€ĐžĐ¸ĐˇĐ˛ĐĩĐ´ĐĩĐŊиŅ СĐŊĐ°Ņ‡ĐĩĐŊиК ĐŊĐ° иŅŅ‚иĐŊĐŊŅ‹Đĩ ĐžŅ‚вĐĩŅ‚Ņ‹
    list_xy = []
    [list_xy.append(x_us[i]*y_us[i]) for i in range(len(x_us))]
    sxy = sum(list_xy)
    # ŅŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов СĐŊĐ°Ņ‡ĐĩĐŊиК
    list_x_sq = []
    [list_x_sq.append(x_us[i]**2) for i in range(len(x_us))]
    sx_sq = sum(list_x_sq)
    # ĐēĐžĐģиŅ‡ĐĩŅŅ‚вО СĐŊĐ°Ņ‡ĐĩĐŊиК
    num = len(x_us)
    # ĐŊĐ°Ņ‡Đ°ĐģŅŒĐŊŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов, ĐžĐŋŅ€ĐĩĐ´ĐĩĐģĐĩĐŊĐŊŅ‹Đĩ ĐŋŅĐĩвдОŅĐģŅƒŅ‡Đ°ĐšĐŊŅ‹Đŧ ОйŅ€Đ°ĐˇĐžĐŧ
    a = float(random.uniform(-0.5, 0.5))
    b = float(random.uniform(-0.5, 0.5))
    # ŅĐžĐˇĐ´Đ°ĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ Ņ ĐžŅˆĐ¸ĐąĐēĐ°Đŧи, Đ´ĐģŅ ŅŅ‚Đ°Ņ€Ņ‚Đ° иŅĐŋĐžĐģŅŒĐˇŅƒĐĩĐŧ СĐŊĐ°Ņ‡ĐĩĐŊиŅ 1 и 0
    # ĐŋĐžŅĐģĐĩ СавĐĩŅ€ŅˆĐĩĐŊиŅ ŅĐŋŅƒŅĐēĐ° ŅŅ‚Đ°Ņ€Ņ‚ОвŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ŅƒĐ´Đ°ĐģиĐŧ
    errors = [1,0]
    # СаĐŋŅƒŅĐēĐ°ĐĩĐŧ Ņ†Đ¸ĐēĐģ ŅĐŋŅƒŅĐēĐ°
    # Ņ†Đ¸ĐēĐģ Ņ€Đ°ĐąĐžŅ‚Đ°ĐĩŅ‚ Đ´Đž Ņ‚ĐĩŅ… ĐŋĐžŅ€, ĐŋĐžĐēĐ° ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиĐĩ ĐŋĐžŅĐģĐĩĐ´ĐŊĐĩĐš ĐžŅˆĐ¸ĐąĐēи ŅŅƒĐŧĐŧŅ‹ ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ ĐŋŅ€ĐĩĐ´Ņ‹Đ´ŅƒŅ‰ĐĩĐš, ĐŊĐĩ ĐąŅƒĐ´ĐĩŅ‚ ĐŧĐĩĐŊŅŒŅˆĐĩ tolerance
    while abs(errors[-1]-errors[-2]) > tolerance:
        a_step = a - l*(num*a + b*sx - sy)/num
        b_step = b - l*(a*sx + b*sx_sq - sxy)/num
        a = a_step
        b = b_step
        ab = [a,b]
        errors.append(errors_sq_Kramer_method(ab,x_us,y_us))
    return (ab),(errors[2:])

# СаĐŋиŅˆĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ СĐŊĐ°Ņ‡ĐĩĐŊиК 
list_parametres_gradient_descence = gradient_descent_usual(x_us,y_us,l=0.1,tolerance=0.000000000001)


print ' 33[1m' + ' 33[4m' + "ЗĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:" + ' 33[0m'
print 'a =', round(list_parametres_gradient_descence[0][0],3)
print 'b =', round(list_parametres_gradient_descence[0][1],3)
print


print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
print round(list_parametres_gradient_descence[1][-1],3)
print



print ' 33[1m' + ' 33[4m' + "КоĐģиŅ‡ĐĩŅŅ‚вО иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš в ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŧ ŅĐŋŅƒŅĐēĐĩ:" + ' 33[0m'
print len(list_parametres_gradient_descence[1])
print

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ†āĻŽāĻ°āĻž āĻŽāĻžāĻ°āĻŋāĻ¯āĻŧāĻžāĻ¨āĻž āĻŸā§āĻ°ā§‡āĻžā§āĻšā§‡āĻ° āĻāĻ•ā§‡āĻŦāĻžāĻ°ā§‡ āĻ¨ā§€āĻšā§‡ āĻĄā§āĻŦ āĻĻāĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ•āĻ‡ āĻŽāĻžāĻ¨ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ¯āĻž āĻ†āĻ¸āĻ˛ā§‡ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤āĨ¤

āĻšāĻ˛ā§āĻ¨ āĻ†āĻ°ā§‡āĻ•āĻŸāĻž āĻĄāĻžāĻ‡āĻ­ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧ, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ—āĻ­ā§€āĻ° āĻ¸āĻŽā§āĻĻā§āĻ°ā§‡āĻ° āĻ¯āĻžāĻ¨ā§‡āĻ° āĻ¸ā§āĻŸāĻžāĻĢāĻŋāĻ‚ āĻšāĻŦā§‡ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋ, āĻ¯āĻĨāĻž āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¨āĻŽā§āĻ°.

āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ•ā§‹āĻĄ (NumPy)

# ĐŋĐĩŅ€ĐĩĐ´ Ņ‚ĐĩĐŧ ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиŅ‚ŅŒ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ Đ´ĐģŅ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ йийĐģиОŅ‚ĐĩĐēи NumPy, 
# ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ĐžĐŋŅ€ĐĩĐ´ĐĩĐģĐĩĐŊиŅ ŅŅƒĐŧĐŧŅ‹ ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК Ņ‚Đ°ĐēĐļĐĩ Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ NumPy
def error_square_numpy(ab,x_np,y_np):
    y_pred = np.dot(x_np,ab)
    error = y_pred - y_np
    return sum((error)**2)

# ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ йийĐģиОŅ‚ĐĩĐēи NumPy. 
# ФŅƒĐŊĐēŅ†Đ¸Ņ ĐŊĐ° вŅ…Од ĐŋŅ€Đ¸ĐŊиĐŧĐ°ĐĩŅ‚ диаĐŋаСОĐŊŅ‹ СĐŊĐ°Ņ‡ĐĩĐŊиК x,y, Đ´ĐģиĐŊŅƒ ŅˆĐ°ĐŗĐ° (ĐŋĐž ŅƒĐŧĐžĐģŅ‡Đ°ĐŊиŅŽ=0,1), Đ´ĐžĐŋŅƒŅŅ‚иĐŧŅƒŅŽ ĐŋĐžĐŗŅ€ĐĩŅˆĐŊĐžŅŅ‚ŅŒ(tolerance)
def gradient_descent_numpy(x_np,y_np,l=0.1,tolerance=0.000000000001):
    # ŅŅƒĐŧĐŧĐ° СĐŊĐ°Ņ‡ĐĩĐŊиК (вŅĐĩ ĐŧĐĩŅŅŅ†Đ°)
    sx = float(sum(x_np[:,1]))
    # ŅŅƒĐŧĐŧĐ° иŅŅ‚иĐŊĐŊŅ‹Ņ… ĐžŅ‚вĐĩŅ‚Ов (вŅ‹Ņ€ŅƒŅ‡ĐēĐ° Са вĐĩŅŅŒ ĐŋĐĩŅ€Đ¸ĐžĐ´)
    sy = float(sum(y_np))
    # ŅŅƒĐŧĐŧĐ° ĐŋŅ€ĐžĐ¸ĐˇĐ˛ĐĩĐ´ĐĩĐŊиŅ СĐŊĐ°Ņ‡ĐĩĐŊиК ĐŊĐ° иŅŅ‚иĐŊĐŊŅ‹Đĩ ĐžŅ‚вĐĩŅ‚Ņ‹
    sxy = x_np*y_np
    sxy = float(sum(sxy[:,1]))
    # ŅŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов СĐŊĐ°Ņ‡ĐĩĐŊиК
    sx_sq = float(sum(x_np[:,1]**2))
    # ĐēĐžĐģиŅ‡ĐĩŅŅ‚вО СĐŊĐ°Ņ‡ĐĩĐŊиК
    num = float(x_np.shape[0])
    # ĐŊĐ°Ņ‡Đ°ĐģŅŒĐŊŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов, ĐžĐŋŅ€ĐĩĐ´ĐĩĐģĐĩĐŊĐŊŅ‹Đĩ ĐŋŅĐĩвдОŅĐģŅƒŅ‡Đ°ĐšĐŊŅ‹Đŧ ОйŅ€Đ°ĐˇĐžĐŧ
    a = float(random.uniform(-0.5, 0.5))
    b = float(random.uniform(-0.5, 0.5))
    # ŅĐžĐˇĐ´Đ°ĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ Ņ ĐžŅˆĐ¸ĐąĐēĐ°Đŧи, Đ´ĐģŅ ŅŅ‚Đ°Ņ€Ņ‚Đ° иŅĐŋĐžĐģŅŒĐˇŅƒĐĩĐŧ СĐŊĐ°Ņ‡ĐĩĐŊиŅ 1 и 0
    # ĐŋĐžŅĐģĐĩ СавĐĩŅ€ŅˆĐĩĐŊиŅ ŅĐŋŅƒŅĐēĐ° ŅŅ‚Đ°Ņ€Ņ‚ОвŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ŅƒĐ´Đ°ĐģиĐŧ
    errors = [1,0]
    # СаĐŋŅƒŅĐēĐ°ĐĩĐŧ Ņ†Đ¸ĐēĐģ ŅĐŋŅƒŅĐēĐ°
    # Ņ†Đ¸ĐēĐģ Ņ€Đ°ĐąĐžŅ‚Đ°ĐĩŅ‚ Đ´Đž Ņ‚ĐĩŅ… ĐŋĐžŅ€, ĐŋĐžĐēĐ° ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиĐĩ ĐŋĐžŅĐģĐĩĐ´ĐŊĐĩĐš ĐžŅˆĐ¸ĐąĐēи ŅŅƒĐŧĐŧŅ‹ ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ ĐŋŅ€ĐĩĐ´Ņ‹Đ´ŅƒŅ‰ĐĩĐš, ĐŊĐĩ ĐąŅƒĐ´ĐĩŅ‚ ĐŧĐĩĐŊŅŒŅˆĐĩ tolerance
    while abs(errors[-1]-errors[-2]) > tolerance:
        a_step = a - l*(num*a + b*sx - sy)/num
        b_step = b - l*(a*sx + b*sx_sq - sxy)/num
        a = a_step
        b = b_step
        ab = np.array([[a],[b]])
        errors.append(error_square_numpy(ab,x_np,y_np))
    return (ab),(errors[2:])

# СаĐŋиŅˆĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ СĐŊĐ°Ņ‡ĐĩĐŊиК 
list_parametres_gradient_descence = gradient_descent_numpy(x_np,y_np,l=0.1,tolerance=0.000000000001)

print ' 33[1m' + ' 33[4m' + "ЗĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:" + ' 33[0m'
print 'a =', round(list_parametres_gradient_descence[0][0],3)
print 'b =', round(list_parametres_gradient_descence[0][1],3)
print


print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
print round(list_parametres_gradient_descence[1][-1],3)
print

print ' 33[1m' + ' 33[4m' + "КоĐģиŅ‡ĐĩŅŅ‚вО иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš в ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŧ ŅĐŋŅƒŅĐēĐĩ:" + ' 33[0m'
print len(list_parametres_gradient_descence[1])
print

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž
āĻ¸āĻšāĻ— āĻŽāĻžāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ…āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤

āĻ†āĻ¸ā§āĻ¨ āĻĻā§‡āĻ–āĻŋ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ§āĻžāĻĒā§‡ āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¯ā§‹āĻ—āĻĢāĻ˛ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ¸āĻŽāĻˇā§āĻŸāĻŋ āĻŦāĻ°ā§āĻ— āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋ āĻĒā§āĻ˛āĻŸā§‡āĻ° āĻ•ā§‹āĻĄ

print 'ГŅ€Đ°Ņ„иĐē№4 "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК ĐŋĐž-ŅˆĐ°ĐŗОвО"'
plt.plot(range(len(list_parametres_gradient_descence[1])), list_parametres_gradient_descence[1], color='red', lw=3)
plt.xlabel('Steps (Iteration)', size=16)
plt.ylabel('Sum of squared deviations', size=16)
plt.show()

āĻšāĻžāĻ°ā§āĻŸ #4 "āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡ āĻŦāĻ°ā§āĻ—ā§€āĻ¯āĻŧ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ—ā§āĻ°āĻžāĻĢā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻšā§āĻ›āĻŋ āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ…āĻ¨ā§āĻ­ā§‚āĻŽāĻŋāĻ• āĻ°ā§‡āĻ–āĻž āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻŋāĨ¤

āĻ…āĻŦāĻļā§‡āĻˇā§‡, āĻ†āĻ¸ā§āĻ¨ āĻ•ā§‹āĻĄ āĻāĻ•ā§āĻ¸āĻŋāĻ•āĻŋāĻ‰āĻļāĻ¨ āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻŽā§‚āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻŋ:

āĻŸāĻžāĻ‡āĻŽāĻŋāĻ‚ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ—āĻŖāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ

print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° ĐąĐĩС иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ йийĐģиОŅ‚ĐĩĐēи NumPy:" + ' 33[0m'
%timeit list_parametres_gradient_descence = gradient_descent_usual(x_us,y_us,l=0.1,tolerance=0.000000000001)
print '***************************************'
print

print ' 33[1m' + ' 33[4m' + "ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ йийĐģиОŅ‚ĐĩĐēи NumPy:" + ' 33[0m'
%timeit list_parametres_gradient_descence = gradient_descent_numpy(x_np,y_np,l=0.1,tolerance=0.000000000001)

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ†āĻŽāĻ°āĻž āĻ•āĻŋāĻ›ā§ āĻ­ā§āĻ˛ āĻ•āĻ°āĻ›āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŦāĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻ–āĻŋāĻ¤" āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¯āĻž āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¨āĻž āĻ¨āĻŽā§āĻ° āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧā§‡āĻ° āĻ†āĻ—ā§‡ āĻ¨āĻŽā§āĻ°.

āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻ¸ā§āĻĨāĻŋāĻ° āĻ¨āĻ‡, āĻŦāĻ°āĻ‚ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ‰āĻ¤ā§āĻ¤ā§‡āĻœāĻ¨āĻžāĻĒā§‚āĻ°ā§āĻŖ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻļā§‡āĻ–āĻžāĻ° āĻĻāĻŋāĻ•ā§‡ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻšā§āĻ›āĻŋāĨ¤ āĻ¸āĻŽā§āĻŽā§‡āĻ˛āĻ¨!

āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ

āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻ¤āĻž āĻĻā§āĻ°ā§āĻ¤ āĻŦā§‹āĻāĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻāĻ° āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯āĻ—ā§āĻ˛āĻŋ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻž āĻ­āĻžāĻ˛āĨ¤ āĻ†āĻŽāĻ°āĻž, āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻāĻ° āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¨āĻŽā§āĻ¨āĻžāĻ¯āĻŧ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻāĻŦāĻ‚ āĻ¸āĻ¤ā§āĻ¯ āĻ‰āĻ¤ā§āĻ¤āĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ›ā§‡ (āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻ¸āĻ•āĻ˛ā§‡āĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž) āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡, āĻ†āĻŽāĻ°āĻž āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻ›āĻĻā§āĻŽ-āĻāĻ˛ā§‹āĻŽā§‡āĻ˛ā§‹āĻ­āĻžāĻŦā§‡ āĻ¤āĻĨāĻžāĻ•āĻĨāĻŋāĻ¤ āĻ¨āĻŽā§āĻ¨āĻž āĻ¸ā§‚āĻšāĻ• āĻŦā§‡āĻ›ā§‡ āĻ¨ā§‡āĻŦ āĻāĻŦāĻ‚ āĻāĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦāĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¯āĻĻāĻŋ āĻ¸ā§‚āĻšāĻ•āĻŸāĻŋāĻ•ā§‡ 3 (āĻ¤āĻŋāĻ¨) āĻ¨āĻŽā§āĻŦāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ†āĻŽāĻ°āĻž āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­ā§‡āĻ° āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŋāĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡, āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻ†āĻŦāĻžāĻ° āĻ›āĻĻā§āĻŽ-āĻāĻ˛ā§‹āĻŽā§‡āĻ˛ā§‹ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§‡ āĻ¨āĻŽā§āĻ¨āĻž āĻ¸ā§‚āĻšāĻ• āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŋ, āĻ†āĻ‚āĻļāĻŋāĻ• āĻĄāĻŋāĻĢāĻžāĻ°ā§‡āĻ¨āĻļāĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡ āĻ¸ā§‚āĻšāĻ•ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻ¸āĻŦā§āĻœ āĻ¸āĻ‚āĻŽāĻŋāĻļā§āĻ°āĻŖ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻœāĻ°ā§‡, āĻŽāĻ¨ā§‡ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŸāĻŋ āĻ¸āĻŦ āĻ•āĻžāĻœ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤ āĻ¸āĻ¤ā§āĻ¯, āĻāĻŸāĻŋ āĻ˛āĻ•ā§āĻˇ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻŦāĻŖāĻ¤āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻĒā§āĻ°āĻšāĻ˛āĻŋāĻ¤ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ•ā§€ āĻ•ā§€? āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻ†āĻ•āĻžāĻ° āĻ–ā§āĻŦ āĻŦāĻĄāĻŧ āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻšāĻžāĻœāĻžāĻ° āĻšāĻžāĻœāĻžāĻ° āĻŽāĻžāĻ¨ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻĒā§āĻ°ā§‹ āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻšāĻžāĻœāĻžāĻ° āĻšāĻžāĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻ¤ā§‹ āĻāĻ˛ā§‹āĻŽā§‡āĻ˛ā§‹āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻ°āĻž āĻ…āĻ¨ā§‡āĻ• āĻ¸āĻšāĻœāĨ¤ āĻāĻ–āĻžāĻ¨ā§‡āĻ‡ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻŦ āĻ¨āĻžāĨ¤

āĻāĻ° āĻ•ā§‹āĻĄ āĻ¤āĻžāĻ•āĻžāĻ¨.

āĻ¸ā§āĻŸāĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ŅŅ‚ĐžŅ….ĐŗŅ€Đ°Đ´.ŅˆĐ°ĐŗĐ°
def stoch_grad_step_usual(vector_init, x_us, ind, y_us, l):
#     вŅ‹ĐąĐ¸Ņ€Đ°ĐĩĐŧ СĐŊĐ°Ņ‡ĐĩĐŊиĐĩ иĐēŅ, ĐēĐžŅ‚ĐžŅ€ĐžĐĩ ŅĐžĐžŅ‚вĐĩŅ‚ŅŅ‚вŅƒĐĩŅ‚ ŅĐģŅƒŅ‡Đ°ĐšĐŊĐžĐŧŅƒ СĐŊĐ°Ņ‡ĐĩĐŊиŅŽ ĐŋĐ°Ņ€Đ°ĐŧĐĩŅ‚Ņ€Đ° ind 
# (ŅĐŧ.Ņ„-Ņ†Đ¸ŅŽ stoch_grad_descent_usual)
    x = x_us[ind]
#     Ņ€Đ°ŅŅŅ‡Đ¸Ņ‚Ņ‹Đ˛Ņ‹Đ°ĐĩĐŧ СĐŊĐ°Ņ‡ĐĩĐŊиĐĩ y (вŅ‹Ņ€ŅƒŅ‡ĐēŅƒ), ĐēĐžŅ‚ĐžŅ€Đ°Ņ ŅĐžĐžŅ‚вĐĩŅ‚ŅŅ‚вŅƒĐĩŅ‚ вŅ‹ĐąŅ€Đ°ĐŊĐŊĐžĐŧŅƒ СĐŊĐ°Ņ‡ĐĩĐŊиŅŽ x
    y_pred = vector_init[0] + vector_init[1]*x_us[ind]
#     вŅ‹Ņ‡Đ¸ŅĐģŅĐĩĐŧ ĐžŅˆĐ¸ĐąĐēŅƒ Ņ€Đ°ŅŅ‡ĐĩŅ‚ĐŊОК вŅ‹Ņ€ŅƒŅ‡Đēи ĐžŅ‚ĐŊĐžŅĐ¸Ņ‚ĐĩĐģŅŒĐŊĐž ĐŋŅ€ĐĩĐ´ŅŅ‚авĐģĐĩĐŊĐŊОК в вŅ‹ĐąĐžŅ€ĐēĐĩ
    error = y_pred - y_us[ind]
#     ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩĐŧ ĐŋĐĩŅ€Đ˛ŅƒŅŽ ĐēООŅ€Đ´Đ¸ĐŊĐ°Ņ‚Ņƒ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚Đ° ab
    grad_a = error
#     ĐžĐŋŅ€ĐĩĐ´ĐĩĐģŅĐĩĐŧ вŅ‚ĐžŅ€ŅƒŅŽ ĐēООŅ€Đ´Đ¸ĐŊĐ°Ņ‚Ņƒ ab
    grad_b = x_us[ind]*error
#     вŅ‹Ņ‡Đ¸ŅĐģŅĐĩĐŧ ĐŊОвŅ‹Đš вĐĩĐēŅ‚ĐžŅ€ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов
    vector_new = [vector_init[0]-l*grad_a, vector_init[1]-l*grad_b]
    return vector_new


# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ŅŅ‚ĐžŅ….ĐŗŅ€Đ°Đ´.ŅĐŋŅƒŅĐēĐ°
def stoch_grad_descent_usual(x_us, y_us, l=0.1, steps = 800):
#     Đ´ĐģŅ ŅĐ°ĐŧĐžĐŗĐž ĐŊĐ°Ņ‡Đ°ĐģĐ° Ņ€Đ°ĐąĐžŅ‚Ņ‹ Ņ„ŅƒĐŊĐēŅ†Đ¸Đ¸ СададиĐŧ ĐŊĐ°Ņ‡Đ°ĐģŅŒĐŊŅ‹Đĩ СĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов
    vector_init = [float(random.uniform(-0.5, 0.5)), float(random.uniform(-0.5, 0.5))]
    errors = []
#     СаĐŋŅƒŅŅ‚иĐŧ Ņ†Đ¸ĐēĐģ ŅĐŋŅƒŅĐēĐ°
# Ņ†Đ¸ĐēĐģ Ņ€Đ°ŅŅ‡Đ¸Ņ‚Đ°ĐŊ ĐŊĐ° ĐžĐŋŅ€ĐĩĐ´ĐĩĐģĐĩĐŊĐŊĐžĐĩ ĐēĐžĐģиŅ‡ĐĩŅŅ‚вО ŅˆĐ°ĐŗОв (steps)
    for i in range(steps):
        ind = random.choice(range(len(x_us)))
        new_vector = stoch_grad_step_usual(vector_init, x_us, ind, y_us, l)
        vector_init = new_vector
        errors.append(errors_sq_Kramer_method(vector_init,x_us,y_us))
    return (vector_init),(errors)


# СаĐŋиŅˆĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ СĐŊĐ°Ņ‡ĐĩĐŊиК 
list_parametres_stoch_gradient_descence = stoch_grad_descent_usual(x_us, y_us, l=0.1, steps = 800)

print ' 33[1m' + ' 33[4m' + "ЗĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:" + ' 33[0m'
print 'a =', round(list_parametres_stoch_gradient_descence[0][0],3)
print 'b =', round(list_parametres_stoch_gradient_descence[0][1],3)
print


print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
print round(list_parametres_stoch_gradient_descence[1][-1],3)
print

print ' 33[1m' + ' 33[4m' + "КоĐģиŅ‡ĐĩŅŅ‚вО иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš в ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŧ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŧ ŅĐŋŅƒŅĐēĐĩ:" + ' 33[0m'
print len(list_parametres_stoch_gradient_descence[1])

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ†āĻŽāĻ°āĻž āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻ¸āĻšāĻ•āĻžāĻ°ā§‡ āĻ¤āĻžāĻ•āĻžāĻ‡ āĻāĻŦāĻ‚ "āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¤āĻžāĻ‡?" āĻĒā§āĻ°āĻļā§āĻ¨ā§‡ āĻ¨āĻŋāĻœā§‡āĻ•ā§‡ āĻ§āĻ°āĻŋāĨ¤ āĻ†āĻŽāĻ°āĻž āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž. āĻšāĻ¯āĻŧāĻ¤ā§‹ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ°āĻ“ āĻ…āĻ¨ā§āĻ•ā§‚āĻ˛ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›ā§‡? āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻ•ā§āĻ°āĻŽā§‡ āĻ¨āĻž. āĻŦāĻ°ā§āĻ—āĻžāĻ•āĻžāĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ•āĻžāĻ¨ā§‹ āĻāĻŦāĻ‚ āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ†āĻ°āĻ“ āĻŦā§‡āĻļāĻŋ āĻ¤āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻ¯āĻĨā§‡āĻˇā§āĻŸāĨ¤ āĻ†āĻŽāĻ°āĻž āĻšāĻ¤āĻžāĻļ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¤āĻžāĻĄāĻŧāĻž āĻ¨ā§‡āĻ‡āĨ¤ āĻ†āĻ¸ā§āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ°āĻžāĻĢ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋāĨ¤

āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡ āĻŦāĻ°ā§āĻ— āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ āĻĒā§āĻ˛āĻŸ āĻ•āĻ°āĻžāĻ° āĻ•ā§‹āĻĄ

print 'ГŅ€Đ°Ņ„иĐē №5 "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК ĐŋĐž-ŅˆĐ°ĐŗОвО"'
plt.plot(range(len(list_parametres_stoch_gradient_descence[1])), list_parametres_stoch_gradient_descence[1], color='red', lw=2)
plt.xlabel('Steps (Iteration)', size=16)
plt.ylabel('Sum of squared deviations', size=16)
plt.show()

āĻšāĻžāĻ°ā§āĻŸ #5 "āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡ āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§‚āĻšā§€ āĻĻā§‡āĻ–āĻžāĻ° āĻĒāĻ°ā§‡, āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻĒāĻĄāĻŧā§‡ āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ āĻŋāĻ• āĻ•āĻ°āĻŦāĨ¤

āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ•āĻŋ āĻšāĻ˛ā§‹? āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ˜āĻŸā§‡āĻ›ā§‡. āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻāĻ˛ā§‹āĻŽā§‡āĻ˛ā§‹āĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻŋ, āĻ¤āĻ–āĻ¨ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻŋāĻ¤ āĻŽāĻžāĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯āĻ‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽ āĻ°āĻžāĻœāĻ¸ā§āĻŦ āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ•āĻŽāĻžāĻ¤ā§‡ āĻšāĻžāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ—āĻŖāĻ¨āĻžāĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°āĻŋ, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻŋāĻ¤ āĻŽāĻžāĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°āĻŋāĨ¤ āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻž āĻ¯āĻžāĻ• āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻ‡ āĻŽāĻžāĻ¸ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻ˛āĻžāĻ‡āĻ¨ āĻĨā§‡āĻ•ā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯āĻ­āĻžāĻŦā§‡ āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻšāĻ˛ āĻ¯ā§‡ āĻ¯āĻ–āĻ¨ āĻāĻ‡ āĻĻā§āĻ‡ āĻŽāĻžāĻ¸ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¯ā§‡āĻ•ā§‹āĻ¨ā§‹ āĻāĻ•āĻŸāĻŋ āĻŦā§‡āĻ›ā§‡ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°ā§‡, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¨āĻŽā§āĻ¨āĻžāĻ¤ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋāĻ•ā§‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦ āĻ¸āĻšāĻ•āĻžāĻ°ā§‡ āĻŦāĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ¤ā§‹ āĻāĻ–āĻ¨ āĻ•āĻŋ āĻ•āĻ°āĻž? āĻ‰āĻ¤ā§āĻ¤āĻ°āĻŸāĻŋ āĻ¸āĻšāĻœ: āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ§āĻžāĻĒ āĻ•āĻŽāĻžāĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻĒāĻ•ā§āĻˇā§‡, āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ¸ā§āĻŸā§‡āĻĒ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°ā§‡, āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ‰āĻĒāĻ°ā§‡ āĻŦāĻž āĻ¨ā§€āĻšā§‡ āĻšāĻ¯āĻŧ "āĻœāĻžāĻŽā§āĻĒāĻŋāĻ‚" āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻŦā§‡āĨ¤ āĻ…āĻĨāĻŦāĻž āĻŦāĻ°āĻ‚, "āĻœāĻžāĻŽā§āĻĒāĻŋāĻ‚" āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĨāĻžāĻŽāĻŦā§‡ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ¤ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋ āĻ•āĻ°āĻŦā§‡ āĻ¨āĻž :) āĻ†āĻ¸ā§āĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ›ā§‹āĻŸ āĻ§āĻžāĻĒā§‡ SGD āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ

# СаĐŋŅƒŅŅ‚иĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ, ŅƒĐŧĐĩĐŊŅŒŅˆĐ¸Đ˛ ŅˆĐ°Đŗ в 100 Ņ€Đ°Đˇ и ŅƒĐ˛ĐĩĐģиŅ‡Đ¸Đ˛ ĐēĐžĐģиŅ‡ĐĩŅŅ‚вО ŅˆĐ°ĐŗОв ŅĐžĐžŅ‚вĐĩŅ‚ŅĐ˛ŅƒŅŽŅ‰Đĩ 
list_parametres_stoch_gradient_descence = stoch_grad_descent_usual(x_us, y_us, l=0.001, steps = 80000)

print ' 33[1m' + ' 33[4m' + "ЗĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:" + ' 33[0m'
print 'a =', round(list_parametres_stoch_gradient_descence[0][0],3)
print 'b =', round(list_parametres_stoch_gradient_descence[0][1],3)
print


print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
print round(list_parametres_stoch_gradient_descence[1][-1],3)
print



print ' 33[1m' + ' 33[4m' + "КоĐģиŅ‡ĐĩŅŅ‚вО иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš в ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŧ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŧ ŅĐŋŅƒŅĐēĐĩ:" + ' 33[0m'
print len(list_parametres_stoch_gradient_descence[1])

print 'ГŅ€Đ°Ņ„иĐē №6 "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК ĐŋĐž-ŅˆĐ°ĐŗОвО"'
plt.plot(range(len(list_parametres_stoch_gradient_descence[1])), list_parametres_stoch_gradient_descence[1], color='red', lw=2)
plt.xlabel('Steps (Iteration)', size=16)
plt.ylabel('Sum of squared deviations', size=16)
plt.show()

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻšāĻžāĻ°ā§āĻŸ #6 "āĻ¸ā§āĻŸāĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ (80k āĻ§āĻžāĻĒ)"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¸āĻŽā§āĻ­āĻžāĻŦāĻ¨āĻžāĻ° āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ–āĻ¨āĻ“ āĻ†āĻĻāĻ°ā§āĻļ āĻ¨āĻ¯āĻŧāĨ¤ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ•āĻ­āĻžāĻŦā§‡, āĻāĻŸāĻŋ āĻāĻ‡āĻ­āĻžāĻŦā§‡ āĻ¸āĻ‚āĻļā§‹āĻ§āĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻļā§‡āĻˇ 1000 āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡ āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻŋ āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻ¸āĻ¤ā§āĻ¯, āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻšāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻœā§‡āĻ°āĻžāĻ‡ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ āĻ•āĻ°āĻŦ āĻ¨āĻž, āĻŦāĻ°āĻ‚ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§‚āĻšā§€āĻ° āĻĻāĻŋāĻ•ā§‡ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ‡āĨ¤ āĻāĻŸāĻŋ āĻŽāĻ¸ā§ƒāĻŖ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻŽāĻžāĻ¨āĻ­āĻžāĻŦā§‡ āĻšā§āĻ°āĻžāĻ¸ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧāĨ¤ āĻ†āĻ¸āĻ˛ā§‡ āĻ¤āĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻ†āĻ¸ā§āĻ¨ āĻĒā§āĻ°āĻĨāĻŽ 1000āĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻĻā§‡āĻ–āĻŋ āĻāĻŦāĻ‚ āĻļā§‡āĻˇāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻ•āĻ°āĻŋāĨ¤

SGD āĻšāĻžāĻ°ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ (āĻĒā§āĻ°āĻĨāĻŽ 1000 āĻ§āĻžāĻĒ)

print 'ГŅ€Đ°Ņ„иĐē №7 "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК ĐŋĐž-ŅˆĐ°ĐŗОвО. ПĐĩŅ€Đ˛Ņ‹Đĩ 1000 иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš"'
plt.plot(range(len(list_parametres_stoch_gradient_descence[1][:1000])), 
         list_parametres_stoch_gradient_descence[1][:1000], color='red', lw=2)
plt.xlabel('Steps (Iteration)', size=16)
plt.ylabel('Sum of squared deviations', size=16)
plt.show()

print 'ГŅ€Đ°Ņ„иĐē №7 "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК ĐŋĐž-ŅˆĐ°ĐŗОвО. ПоŅĐģĐĩĐ´ĐŊиĐĩ 1000 иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš"'
plt.plot(range(len(list_parametres_stoch_gradient_descence[1][-1000:])), 
         list_parametres_stoch_gradient_descence[1][-1000:], color='red', lw=2)
plt.xlabel('Steps (Iteration)', size=16)
plt.ylabel('Sum of squared deviations', size=16)
plt.show()

āĻšāĻžāĻ°ā§āĻŸ āĻ¨āĻ‚ 7 "SGD āĻāĻ° āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ (āĻĒā§āĻ°āĻĨāĻŽ 1000 āĻ§āĻžāĻĒ)"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻšāĻžāĻ°ā§āĻŸ #8 "SGD āĻāĻ° āĻŦāĻ°ā§āĻ—āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻŦāĻŋāĻšā§āĻ¯ā§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻˇā§āĻŸāĻŋ (āĻļā§‡āĻˇ 1000āĻŸāĻŋ āĻ§āĻžāĻĒ)"

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ…āĻŦāĻ¤āĻ°āĻŖā§‡āĻ° āĻāĻ•ā§‡āĻŦāĻžāĻ°ā§‡ āĻļā§āĻ°ā§āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ āĻŽā§‹āĻŸāĻžāĻŽā§āĻŸāĻŋ āĻ…āĻ­āĻŋāĻ¨ā§āĻ¨ āĻāĻŦāĻ‚ āĻ–āĻžāĻĄāĻŧāĻž āĻšā§āĻ°āĻžāĻ¸ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻŋāĨ¤ āĻļā§‡āĻˇ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ‡ āĻ¯ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ 1,475 āĻāĻ° āĻŽāĻžāĻ¨ā§‡āĻ° āĻšāĻžāĻ°āĻĒāĻžāĻļā§‡ āĻāĻŦāĻ‚ āĻšāĻžāĻ°āĻĒāĻžāĻļā§‡ āĻšāĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§‡ āĻāĻ‡ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻŽāĻžāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡āĻ“ āĻāĻŸāĻŋ āĻ‰āĻĒāĻ°ā§‡ āĻ¯āĻžāĻ¯āĻŧ ... āĻ†āĻŽāĻŋ āĻ†āĻŦāĻžāĻ°āĻ“ āĻŦāĻ˛āĻ›āĻŋ, āĻ†āĻĒāĻ¨āĻŋ āĻāĻ° āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¸āĻšāĻ— āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž и āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž, āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¸ā§‡āĻ‡āĻ—ā§āĻ˛āĻŋ āĻŦā§‡āĻ›ā§‡ āĻ¨āĻŋāĻ¨ āĻ¯āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ›āĻŋāĻ˛: āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ…āĻ¨ā§āĻ•ā§‚āĻ˛ā§‡āĻ° āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻĒā§‡āĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° 80 āĻšāĻžāĻœāĻžāĻ° āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ āĻ¨āĻŋāĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ (āĻ•ā§‹āĻĄ āĻĻā§‡āĻ–ā§āĻ¨)āĨ¤ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡ āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻāĻšāĻžāĻ¨ā§‹āĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻ° āĻŦāĻŋāĻ°ā§‹āĻ§āĻŋāĻ¤āĻž āĻ•āĻ°ā§‡āĨ¤ āĻ•āĻŋ āĻ¸āĻ‚āĻļā§‹āĻ§āĻ¨ āĻāĻŦāĻ‚ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡? āĻāĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ•āĻ āĻŋāĻ¨ āĻ¨āĻ¯āĻŧ āĻ¯ā§‡ āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸ā§āĻĨāĻŋāĻ°āĻ­āĻžāĻŦā§‡ āĻ¨āĻŋāĻšā§‡ āĻ¯āĻžāĻšā§āĻ›āĻŋ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡, āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ§āĻžāĻĒ āĻ›ā§‡āĻĄāĻŧā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻž āĻ‰āĻšāĻŋāĻ¤ āĻāĻŦāĻ‚ āĻ†āĻŽāĻ°āĻž āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĨā§‡ āĻ§āĻžāĻĒāĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻāĻŸāĻŋ āĻ•āĻ°āĻŦ āĻ¨āĻž - āĻāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻŸā§‡āĻ¨ā§‡ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ›ā§‡āĨ¤ āĻ¯āĻžāĻ°āĻž āĻ‡āĻšā§āĻ›ā§āĻ• āĻ¤āĻžāĻ°āĻž āĻ¨āĻŋāĻœā§‡āĻ°āĻžāĻ‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻāĻŸāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ, āĻāĻŸāĻž āĻ•āĻ āĻŋāĻ¨ āĻ•āĻŋāĻ›ā§ āĻ¨āĻž 🙂

āĻāĻ–āĻ¨ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻ•āĻ°āĻž āĻ¯āĻžāĻ• āĻ¨āĻŽā§āĻ° (āĻāĻŦāĻ‚ āĻ†āĻ¸ā§āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ†āĻ—ā§‡ āĻļāĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻĒāĻžāĻĨāĻ°ā§‡āĻ° āĻ‰āĻĒāĻ° āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ­ā§āĻ°āĻŽāĻŖ āĻ•āĻ°āĻŋ āĻ¨āĻž)

āĻ¸ā§āĻŸāĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ (NumPy)

# Đ´ĐģŅ ĐŊĐ°Ņ‡Đ°ĐģĐ° ĐŊĐ°ĐŋиŅˆĐĩĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅˆĐ°ĐŗĐ°
def stoch_grad_step_numpy(vector_init, X, ind, y, l):
    x = X[ind]
    y_pred = np.dot(x,vector_init)
    err = y_pred - y[ind]
    grad_a = err
    grad_b = x[1]*err
    return vector_init - l*np.array([grad_a, grad_b])

# ĐžĐŋŅ€ĐĩĐ´ĐĩĐģиĐŧ Ņ„ŅƒĐŊĐēŅ†Đ¸ŅŽ ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŗĐž ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ°
def stoch_grad_descent_numpy(X, y, l=0.1, steps = 800):
    vector_init = np.array([[np.random.randint(X.shape[0])], [np.random.randint(X.shape[0])]])
    errors = []
    for i in range(steps):
        ind = np.random.randint(X.shape[0])
        new_vector = stoch_grad_step_numpy(vector_init, X, ind, y, l)
        vector_init = new_vector
        errors.append(error_square_numpy(vector_init,X,y))
    return (vector_init), (errors)

# СаĐŋиŅˆĐĩĐŧ ĐŧĐ°ŅŅĐ¸Đ˛ СĐŊĐ°Ņ‡ĐĩĐŊиК 
list_parametres_stoch_gradient_descence = stoch_grad_descent_numpy(x_np, y_np, l=0.001, steps = 80000)

print ' 33[1m' + ' 33[4m' + "ЗĐŊĐ°Ņ‡ĐĩĐŊиŅ ĐēĐžŅŅ„Ņ„иŅ†Đ¸ĐĩĐŊŅ‚Ов a и b:" + ' 33[0m'
print 'a =', round(list_parametres_stoch_gradient_descence[0][0],3)
print 'b =', round(list_parametres_stoch_gradient_descence[0][1],3)
print


print ' 33[1m' + ' 33[4m' + "ĐĄŅƒĐŧĐŧĐ° ĐēвадŅ€Đ°Ņ‚Ов ĐžŅ‚ĐēĐģĐžĐŊĐĩĐŊиК:" + ' 33[0m'
print round(list_parametres_stoch_gradient_descence[1][-1],3)
print



print ' 33[1m' + ' 33[4m' + "КоĐģиŅ‡ĐĩŅŅ‚вО иŅ‚ĐĩŅ€Đ°Ņ†Đ¸Đš в ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŧ ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŧ ŅĐŋŅƒŅĐēĐĩ:" + ' 33[0m'
print len(list_parametres_stoch_gradient_descence[1])
print

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻ•āĻ°ā§‡ āĻ¨āĻŋāĻšā§‡ āĻ¨āĻžāĻŽāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻ•āĻ‡ āĻ°āĻ•āĻŽ āĻšāĻ¯āĻŧā§‡ āĻ‰āĻ ā§‡āĻ›ā§‡ āĻ¨āĻŽā§āĻ°. āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻŸāĻŋ āĻ¯ā§ŒāĻ•ā§āĻ¤āĻŋāĻ•āĨ¤

āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸāĻ¸ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻ¤āĻŸāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤

SGD āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ (80k āĻ§āĻžāĻĒ)

print ' 33[1m' + ' 33[4m' +
"ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŗĐž ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° ĐąĐĩС иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ йийĐģиОŅ‚ĐĩĐēи NumPy:"
+ ' 33[0m'
%timeit list_parametres_stoch_gradient_descence = stoch_grad_descent_usual(x_us, y_us, l=0.001, steps = 80000)
print '***************************************'
print

print ' 33[1m' + ' 33[4m' +
"ВŅ€ĐĩĐŧŅ вŅ‹ĐŋĐžĐģĐŊĐĩĐŊиŅ ŅŅ‚ĐžŅ…Đ°ŅŅ‚иŅ‡ĐĩŅĐēĐžĐŗĐž ĐŗŅ€Đ°Đ´Đ¸ĐĩĐŊŅ‚ĐŊĐžĐŗĐž ŅĐŋŅƒŅĐēĐ° Ņ иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиĐĩĐŧ йийĐģиОŅ‚ĐĩĐēи NumPy:"
+ ' 33[0m'
%timeit list_parametres_stoch_gradient_descence = stoch_grad_descent_numpy(x_np, y_np, l=0.001, steps = 80000)

āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž

āĻ¯āĻ¤āĻ‡ āĻŦāĻ¨ā§‡ āĻ¯āĻžāĻŦā§‡, āĻŽā§‡āĻ˜ āĻ¤āĻ¤ āĻ—āĻžāĻĸāĻŧ āĻšāĻŦā§‡: āĻ†āĻŦāĻžāĻ°, "āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻ–āĻŋāĻ¤" āĻ¸ā§‚āĻ¤ā§āĻ°āĻŸāĻŋ āĻ¸ā§‡āĻ°āĻž āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧāĨ¤ āĻāĻ‡ āĻ¸āĻŦ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§‡āĻ¯āĻŧ āĻ¯ā§‡ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ†āĻ°āĻ“ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ¨āĻŽā§āĻ°, āĻ¯āĻž āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻ—āĻŖāĻ¨āĻžāĻŽā§‚āĻ˛āĻ• āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒāĻ•ā§‡ āĻĻā§āĻ°ā§āĻ¤āĻ¤āĻ° āĻ•āĻ°ā§‡āĨ¤ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻļāĻŋāĻ–āĻŦ āĻ¨āĻžāĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…āĻŦāĻ¸āĻ° āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŋāĻ›ā§ :)

āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ•āĻ°āĻž

āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡, āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ° āĻĻāĻŋāĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¯āĻž āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻĒāĻžāĻ āĻ•ā§‡āĻ° āĻ•āĻžāĻ› āĻĨā§‡āĻ•ā§‡ āĻāĻ¸ā§‡āĻ›ā§‡āĨ¤ āĻ•ā§‡āĻ¨, āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻĒāĻ•ā§āĻˇā§‡, āĻŦāĻ‚āĻļāĻ§āĻ°āĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° "āĻ¯āĻ¨ā§āĻ¤ā§āĻ°āĻŖāĻž" āĻ•ā§‡āĻ¨, āĻŽā§‚āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ­ā§‚āĻŽāĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻžāĻšāĻžāĻĄāĻŧā§‡āĻ° āĻ‰āĻĒāĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¨ā§€āĻšā§‡ āĻšāĻžāĻāĻŸāĻ¤ā§‡ āĻšāĻŦā§‡ (āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ¨ā§€āĻšā§‡), āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻšāĻžāĻ¤ā§‡ āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻļāĻ•ā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§€ āĻāĻŦāĻ‚ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻĨāĻžāĻ•ā§‡, āĻ†āĻ•āĻžāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ¯āĻž āĻ…āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§‡ āĻ¸āĻ āĻŋāĻ• āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§‡āĻ˛āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°ā§‡?

āĻāĻ‡ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ° āĻ‰āĻĒāĻ°āĻŋāĻ­āĻžāĻ—ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ–ā§āĻŦ āĻ¸āĻšāĻœ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸āĻ¤ā§āĻ¯ āĻ‰āĻ¤ā§āĻ¤āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž. āĻ†āĻĒāĻ¨āĻŋ āĻœā§€āĻŦāĻ¨ā§‡ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ¨ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻ¸ā§āĻ¨ āĻ•āĻ˛ā§āĻĒāĻ¨āĻž āĻ•āĻ°āĻŋ āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° 2, 30, 50 āĻŦāĻž āĻ¤āĻžāĻ° āĻŦā§‡āĻļāĻŋ āĻ˛āĻ•ā§āĻˇāĻŖ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻšāĻžāĻœāĻžāĻ° āĻšāĻžāĻœāĻžāĻ° āĻāĻŦāĻ‚ āĻāĻŽāĻ¨āĻ•āĻŋ āĻ•āĻ¯āĻŧā§‡āĻ• āĻšāĻžāĻœāĻžāĻ° āĻŽāĻžāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ• āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡, āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ āĻāĻŦāĻ‚ āĻāĻ° āĻ­āĻŋāĻ¨ā§āĻ¨āĻ¤āĻž āĻ§ā§€āĻ°ā§‡ āĻ§ā§€āĻ°ā§‡ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤āĻ­āĻžāĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ā§‡āĻ° āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸āĻŦā§‡ - āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽāĨ¤ āĻāĻŦāĻ‚ āĻ—āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž - āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻāĻ–āĻ¨āĻ“ āĻāĻŽāĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧāĻ—ā§āĻ˛āĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ•āĻ°āĻŦ āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ§āĻžāĻĒā§‡āĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ (āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻ—āĻ¤āĻŋ) āĻ¸ā§‡āĻŸ āĻāĻŦāĻ‚ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻ•āĻ°āĻ¤ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤

āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ¸āĻžāĻ°āĻ¸āĻ‚āĻ•ā§āĻˇā§‡āĻĒ āĻœāĻ¨ā§āĻ¯.

āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ†āĻŽāĻŋ āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻ¯ā§‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¸āĻšāĻœ (āĻāĻŦāĻ‚ āĻ•ā§‡āĻŦāĻ˛ āĻ¨āĻ¯āĻŧ) āĻ˛āĻŋāĻ¨āĻŋāĻ¯āĻŧāĻžāĻ° āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻŦā§āĻāĻ¤ā§‡ āĻļāĻŋāĻ•ā§āĻˇāĻžāĻ¨āĻŦāĻŋāĻ¸ "āĻĄā§‡āĻŸāĻž āĻŦāĻŋāĻœā§āĻžāĻžāĻ¨ā§€āĻĻā§‡āĻ°" āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻ¤, āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻĻā§‡āĻ–ā§‡āĻ›āĻŋāĨ¤ āĻāĻ–āĻ¨, āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻšāĻžāĻ¤ā§‡ āĻĨāĻžāĻ•āĻž āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤ āĻāĻ•āĻŸāĻŋ āĻŦā§‡āĻ›ā§‡ āĻ¨āĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤

āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧāĻ¤, āĻ†āĻŽāĻ°āĻž āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ā§‡āĻ° āĻļāĻ•ā§āĻ¤āĻŋ āĻĻā§‡āĻ–ā§‡āĻ›āĻŋ, āĻ¯ā§‡āĻŽāĻ¨ āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ§āĻžāĻĒā§‡āĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯āĨ¤ āĻāĻ‡ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ…āĻŦāĻšā§‡āĻ˛āĻž āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻ‰āĻĒāĻ°ā§‡ āĻ‰āĻ˛ā§āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§‡, āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻŋāĻ‚ āĻ–āĻ°āĻš āĻ•āĻŽāĻžāĻ¤ā§‡, āĻ…āĻŦāĻ¤āĻ°āĻŖā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ§āĻžāĻĒā§‡āĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤

āĻšāĻ¤ā§āĻ°ā§āĻĨāĻ¤, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, "āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻ–āĻŋāĻ¤" āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ—āĻŖāĻ¨āĻžāĻ° āĻ¸ā§‡āĻ°āĻž āĻ¸āĻŽāĻ¯āĻŧ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§‡āĻ–āĻŋāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻŸāĻŋ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ—ā§āĻ°āĻ¨ā§āĻĨāĻžāĻ—āĻžāĻ°ā§‡āĻ° āĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻĒā§‡āĻļāĻžāĻĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻ•āĻžāĻ°āĻŖā§‡āĨ¤ āĻ¨āĻŽā§āĻ°. āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°āĻŸāĻŋ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻ•āĻ°ā§‡āĨ¤ āĻāĻ•āĻĻāĻŋāĻ•ā§‡, āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ āĻŋāĻ¤ āĻŽāĻ¤āĻžāĻŽāĻ¤āĻ•ā§‡ āĻĒā§āĻ°āĻļā§āĻ¨āĻŦāĻŋāĻĻā§āĻ§ āĻ•āĻ°āĻž āĻŽā§‚āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨, āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻĻāĻŋāĻ•ā§‡, āĻāĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸āĻŦāĻ•āĻŋāĻ›ā§āĻ•ā§‡ āĻœāĻŸāĻŋāĻ˛ āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛āĻžāĻ° āĻŽā§‚āĻ˛ā§āĻ¯ āĻ¨āĻ¯āĻŧ - āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤āĻ­āĻžāĻŦā§‡, āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻœ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻ†āĻ°āĻ“ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°āĨ¤ āĻāĻŦāĻ‚ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ›āĻŋāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ°ā§ˆāĻ–āĻŋāĻ• āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻĒāĻ¨ā§āĻĨāĻž āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ•āĻ°āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ "āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻ–āĻŋāĻ¤" āĻĢāĻžāĻ‚āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ›āĻŋāĻ˛āĨ¤

āĻ¸āĻžāĻšāĻŋāĻ¤ā§āĻ¯ (āĻŦāĻž āĻāĻ°āĻ•āĻŽ āĻ•āĻŋāĻ›ā§)

1. āĻ˛āĻŋāĻ¨āĻŋāĻ¯āĻŧāĻžāĻ° āĻ°āĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨

http://statistica.ru/theory/osnovy-lineynoy-regressii/

2. āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨ āĻ¸ā§āĻ•ā§‹āĻ¯āĻŧāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ

mathprofi.ru/method_naimenshih_kvadratov.html

3. āĻĄā§‡āĻ°āĻŋāĻ­ā§‡āĻŸāĻŋāĻ­

www.mathprofi.ru/chastnye_proizvodnye_primery.html

4āĨ¤ āĻ¨āĻ¤āĻŋāĻŽāĻžāĻ¤ā§āĻ°āĻž

mathprofi.ru/proizvodnaja_po_napravleniju_i_gradient.html

5. āĻ—ā§āĻ°ā§‡āĻĄāĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ¸ā§‡āĻ¨ā§āĻŸ

habr.com/en/post/471458

habr.com/en/post/307312

artemarakcheev.com//2017-12-31/linear_regression

6. NumPy āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ

docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.linalg.solve.html

docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.linalg.pinv.html

pythonworld.com/numpy/2.html

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨