เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดฒเดณเดฟเดคเดฎเดพเดฏ (เดœเต‹เดŸเดฟเดฏเดพเด•เตเด•เดฟเดฏ) เดฑเดฟเด—เตเดฐเดทเตป เดฒเตˆเดจเดฟเตปเตเดฑเต† เด—เดฃเดฟเดค เดธเดฎเดตเดพเด•เตเดฏเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดฟเดฐเดตเดงเดฟ เดตเดดเดฟเด•เตพ เดฒเต‡เด–เดจเด‚ เดšเตผเดšเตเดšเดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด‡เดตเดฟเดŸเต† เดšเตผเดšเตเดš เดšเต†เดฏเตเดค เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดฐเต€เดคเดฟเด•เดณเตเด‚ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดธเตเด•เตเดตเดฏเตผ เดฐเต€เดคเดฟเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดคเดพเดฃเต. เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเด•เดณเต† เดจเดฎเตเด•เตเด•เต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚:

  • เดตเดฟเดถเด•เดฒเดจ เดชเดฐเดฟเดนเดพเดฐเด‚
  • เด—เตเดฐเต‡เดกเดฟเดฏเดจเตเดฑเต เดกเดฟเดธเดจเตเดฑเต
  • เดธเตเดฅเดพเดฏเดฟเดฏเดพเดฏ เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เด‡เดฑเด•เตเด•เด‚

เด’เดฐเต เดจเต‡เตผเดฐเต‡เด–เดฏเตเดŸเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด“เดฐเต‹ เดฐเต€เดคเดฟเด•เตเด•เตเด‚, เดฒเต‡เด–เดจเด‚ เดตเดฟเดตเดฟเดง เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต, เด…เดต เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเตเด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเต† เดŽเดดเตเดคเดฟเดฏเดตเดฏเดพเดฏเดฟ เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดจเดฎเตเดชเดฟ เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฒเตเด•เตพเด•เตเด•เดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดตเดฏเตเด‚ เดจเดฎเตเดชเดฟ. เดตเดฟเดฆเด—เตโ€Œเดงเดฎเดพเดฏ เด‰เดชเดฏเต‹เด—เดฎเดพเดฃเต†เดจเตเดจเต เดตเดฟเดถเตเดตเดธเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต เดจเดฎเตเดชเดฟ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเดฟเด‚เด—เต เดšเต†เดฒเดตเต เด•เตเดฑเดฏเตเด•เตเด•เตเด‚.

เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด•เต‹เดกเตเด•เดณเตเด‚ เดŽเดดเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดชเตˆเดคเตเดคเตบ 2.7 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต เดœเต‚เดชเตเดชเดฟเดฑเตเดฑเตผ เดจเต‹เดŸเตเดŸเตเดฌเตเด•เตเด•เต. เดธเต‹เดดเตโ€Œเดธเต เด•เต‹เดกเตเด‚ เดธเดพเดฎเตเดชเดฟเตพ เดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ เดซเดฏเดฒเตเด‚ เดชเต‹เดธเตเดฑเตเดฑเต เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด—เดฟเดคเตเดคเดฌเต

เด†เตผเดŸเตเดŸเดฟเดซเดฟเดทเตเดฏเตฝ เด‡เตปเตเดฑเดฒเดฟเดœเตปเดธเต - เดฎเต†เดทเต€เตป เดฒเต‡เดฃเดฟเด‚เด—เต - เดฒเต† เดตเดณเดฐเต† เดตเดฟเดถเดพเดฒเดฎเดพเดฏ เด’เดฐเต เดตเดฟเดญเดพเด—เดคเตเดคเดฟเตปเตเดฑเต† เดชเด เดจเด‚ เดคเตเดŸเด•เตเด•เด•เตเด•เดพเตผเด•เตเด•เตเด‚ เด‡เดคเดฟเดจเด•เด‚ เด•เตเดฐเดฎเต‡เดฃ เดชเด เดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดฟเดฏเดตเตผเด•เตเด•เตเด‚ เดฒเต‡เด–เดจเด‚ เด•เต‚เดŸเตเดคเตฝ เดฒเด•เตเดทเตเดฏเดฎเดฟเดŸเตเดจเตเดจเต.

เดฎเต†เดฑเตเดฑเต€เดฐเดฟเดฏเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดžเด™เตเด™เตพ เดตเดณเดฐเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.

เด‰เดฆเดพเดนเดฐเดฃ เดตเตเดฏเดตเดธเตเดฅเด•เตพ

เด†เดถเตเดฐเดฟเดคเดคเตเดตเดคเตเดคเต† เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เด…เดžเตเดšเต เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดจเดฎเตเด•เตเด•เตเดฃเตเดŸเต Y ะพั‚ X (เดชเดŸเตเดŸเดฟเด• เดจเดฎเตเดชเตผ 1):

เดชเดŸเตเดŸเดฟเด• เดจเดฎเตเดชเตผ 1 "เด‰เดฆเดพเดนเดฐเดฃ เดตเตเดฏเดตเดธเตเดฅเด•เตพ"

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดŽเดจเตเดจเต เดžเด™เตเด™เตพ เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดตเตผเดทเดคเตเดคเดฟเดฒเต† เดฎเดพเดธเดฎเดพเดฃเต, เด’เดชเตเดชเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต - เดˆ เดฎเดพเดธเดคเตเดคเต† เดตเดฐเตเดฎเดพเดจเด‚. เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เดตเดฐเตเดฎเดพเดจเด‚ เดตเตผเดทเดคเตเดคเดฟเดฒเต† เดฎเดพเดธเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต - เดตเดฐเตเดฎเดพเดจเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต‡เดฏเตŠเดฐเต เด…เดŸเดฏเดพเดณเด‚.

เด‰เดฆเดพเดนเดฐเดฃเด‚ เด…เด™เตเด™เดจเต†เดฏเดพเดฃเต, เดตเตผเดทเดคเตเดคเดฟเดฒเต† เดฎเดพเดธเดคเตเดคเต† เดตเดฐเตเดฎเดพเดจเดคเตเดคเดฟเตปเตเดฑเต† เดธเต‹เดชเดพเดงเดฟเด• เด†เดถเตเดฐเดฟเดคเดคเตเดตเดคเตเดคเดฟเตปเตเดฑเต† เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเดคเตเดคเดฟเตปเตเดฑเต† เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ - เด…เดตเดฏเดฟเตฝ เดตเดณเดฐเต† เด•เตเดฑเดšเตเดšเต เดฎเดพเดคเตเดฐเดฎเต‡ เด‰เดณเตเดณเต‚. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดฒเดณเดฟเดคเดตเตฝเด•เตเด•เดฐเดฃเด‚, เด…เดตเตผ เดชเดฑเดฏเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดคเตเดŸเด•เตเด•เด•เตเด•เดพเตผ เดธเตเดตเดพเด‚เดถเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เดฎเต†เดฑเตเดฑเต€เดฐเดฟเดฏเตฝ เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เด…เดจเดพเดฏเดพเดธเดฎเดพเดฏเดฟ เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚. เด•เต‚เดŸเดพเดคเต†, เดธเด‚เด–เตเดฏเด•เดณเตเดŸเต† เดฒเดพเดณเดฟเดคเตเดฏเด‚ เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดคเตŠเดดเดฟเตฝ เดšเต†เดฒเดตเตเด•เดณเดฟเดฒเตเดฒเดพเดคเต† เด•เดŸเดฒเดพเดธเดฟเตฝ เด‰เดฆเดพเดนเดฐเดฃเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดตเดฐเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด†เดถเตเดฐเดฟเดคเดคเตเดตเด‚ เดซเต‹เดฎเดฟเตปเตเดฑเต† เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ (เดœเต‹เดŸเดฟเดฏเดพเด•เตเด•เดฟเดฏ) เดฑเดฟเด—เตเดฐเดทเตป เดฒเตˆเดจเดฟเตปเตเดฑเต† เด—เดฃเดฟเดค เดธเดฎเดตเดพเด•เตเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดจเตเดจเดพเดฏเดฟ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเต†เดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดพเด‚:

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดŽเดตเดฟเดŸเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดตเดฐเตเดฎเดพเดจเด‚ เดฒเดญเดฟเดšเตเดš เดฎเดพเดธเดฎเดพเดฃเต, เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต - เดฎเดพเดธเดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดตเดฐเตเดฎเดพเดจเด‚, เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด•เดฃเด•เตเด•เดพเด•เตเด•เดฟเดฏ เดตเดฐเดฟเดฏเตเดŸเต† เดฑเดฟเด—เตเดฐเดทเตป เด•เต‹เดซเดฟเดซเดฟเดทเตเดฏเตปเตเดฑเตเด•เดณเดพเดฃเต.

เด—เตเดฃเด•เด‚ เดŽเดจเตเดจเดคเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด• เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด•เดฃเด•เตเด•เดพเด•เตเด•เดฟเดฏ เดตเดฐเดฟเดฏเตเดŸเต† เดšเดฐเดฟเดตเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เดŽเดจเตเดจเต เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต; เดคเตเด•เดฏเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด…เดคเต เดฎเดพเดฑเตเดฎเตเดชเต‹เตพ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดตเตเดฏเด•เตเดคเดฎเดพเดฏเตเด‚, เดธเดฎเดตเดพเด•เตเดฏเดคเตเดคเดฟเดฒเต† เด…เดคเตเดคเดฐเด‚ เด—เตเดฃเด•เด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดฒเต† เดžเด™เตเด™เดณเตเดŸเต† เดšเตเดฎเดคเดฒ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดคเตเดคเดฐเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเดพเดธเด‚ เดคเต‹เดฑเตเด‚ เดžเด™เตเด™เตพ เด•เดฃเด•เตเด•เดพเด•เตเด•เดฟเดฏ เดตเดฐเตเดฎเดพเดจ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเดŸเต† เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เตพ, เด…เดคเดพเดฏเดคเต. เดธเดพเดฎเตเดชเดฟเดณเดฟเตฝ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดš เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเดณเดฐเต† เด•เตเดฑเดตเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดšเดคเตเดฐ เดฐเต€เดคเดฟ

เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดธเตเด•เตเดตเดฏเดฑเตเด•เดณเตเดŸเต† เดฐเต€เดคเดฟ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต, เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เดšเดคเตเดฐเดพเด•เตƒเดคเดฟเดฏเดฟเตฝ เด•เดฃเด•เตเด•เดพเด•เตเด•เดฃเด‚. เดตเดฟเดชเดฐเต€เดค เดšเดฟเดนเตเดจเด™เตเด™เดณเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เตพ เดชเดฐเดธเตเดชเดฐเด‚ เดฑเดฆเตเดฆเดพเด•เตเด•เตเดจเตเดจเดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป เดˆ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดค เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เด•เต‡เดธเดฟเตฝ เดŽเด™เตเด•เดฟเตฝ, เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เด†เดฃเต +5 (เดชเตเดฒเดธเต เด…เดžเตเดšเต), เดฎเดฑเตเดฑเตŠเดจเตเดจเดฟเตฝ -5 (เดฎเตˆเดจเดธเต เด…เดžเตเดšเต), เด…เดชเตเดชเต‹เตพ เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เดณเตเดŸเต† เด†เด•เต†เดคเตเดคเตเด• เดชเดฐเดธเตเดชเดฐเด‚ เดฑเดฆเตเดฆเดพเด•เตเด•เตเด•เดฏเตเด‚ เดคเตเด• 0 (เดชเต‚เดœเตเดฏเด‚) เด†เด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚. เดกเต€เดตเดฟเดฏเต‡เดทเตป เดธเตเด•เตเดตเดฏเตผ เดšเต†เดฏเตเดฏเดพเดคเต†, เดฎเต‹เดกเตเดฒเดธเดฟเตปเตเดฑเต† เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดธเดพเดงเตเดฏเดฎเดพเดฃเต, เดคเตเดŸเตผเดจเตเดจเต เดŽเดฒเตเดฒเดพ เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เดณเตเด‚ เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเต เด†เด•เตเด•เดฏเตเด‚ เดถเต‡เด–เดฐเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚. เดžเด™เตเด™เตพ เดˆ เดชเต‹เดฏเดฟเตปเตเดฑเดฟเตฝ เดตเดฟเดถเดฆเดฎเดพเดฏเดฟ เดตเดธเดฟเด•เตเด•เดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฒเตเด•เดณเตเดŸเต† เดธเต—เด•เดฐเตเดฏเดพเตผเดคเตเดฅเด‚, เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เดธเตเด•เตเดตเดฏเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดชเดคเดฟเดตเดพเดฃเต†เดจเตเดจเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต.

เดธเดฎเดตเดพเด•เตเดฏเด‚ เด‡เด™เตเด™เดจเต†เดฏเดพเดฃเต เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเดคเต, เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดธเตเด•เตเดตเดฏเตผ เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เดณเตเดŸเต† เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดคเตเด• เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเด‚ (เดชเดฟเดถเด•เตเด•เตพ):

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดŽเดตเดฟเดŸเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดคเตเดคเดฐเด™เตเด™เดณเตเดŸเต† เดเด•เดฆเต‡เดถ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฎเดพเดฃเต (เด…เดคเดพเดฏเดคเต, เดžเด™เตเด™เตพ เด•เดฃเด•เตเด•เดพเด•เตเด•เดฟเดฏ เดตเดฐเตเดฎเดพเดจเด‚),

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดฏเดฅเดพเตผเดคเตเดฅ เด‰เดคเตเดคเดฐเด™เตเด™เดณเดพเดฃเต (เดธเดพเดฎเตเดชเดฟเดณเดฟเตฝ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเดฐเตเดฎเดพเดจเด‚),

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดธเดพเดฎเตเดชเดฟเตพ เดธเต‚เดšเดฟเด•เดฏเดพเดฃเต (เดตเตเดฏเดคเดฟเดฏเดพเดจเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจ เดฎเดพเดธเดคเตเดคเดฟเตปเตเดฑเต† เดŽเดฃเตเดฃเด‚)

เดจเดฎเตเด•เตเด•เต เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเต† เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เดพเด‚, เดญเดพเด—เดฟเด• เดกเดฟเดซเดฑเตปเดทเตเดฏเตฝ เดธเดฎเดตเดพเด•เตเดฏเด™เตเด™เตพ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เดพเด‚, เดตเดฟเดถเด•เดฒเดจ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเต€เด™เตเด™เดพเตป เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•. เดŽเดจเตเดจเดพเตฝ เด†เดฆเตเดฏเด‚, เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด’เดฐเต เดšเต†เดฑเดฟเดฏ เดตเดฟเดจเต‹เดฆเดฏเดพเดคเตเดฐ เดจเดŸเดคเตเดคเตเด•เดฏเตเด‚ เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดœเตเดฏเดพเดฎเดฟเดคเต€เดฏ เด…เตผเดคเตเดฅเด‚ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเดพเด‚.

เดตเตเดฏเดคเตเดฏเดพเดธเด‚

เด’เดฐเต เดซเด‚เด—เตเดทเตปเตเดฑเต† เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฎเดพเดฃเต เดกเดฟเดซเดฑเตปเดทเตเดฏเต‡เดทเตป.

เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดŽเดจเตเดคเดฟเดจเตเดตเต‡เดฃเตเดŸเดฟเดฏเดพเดฃเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต? เด’เดฐเต เดซเด‚เด—เตโ€Œเดทเตปเตเดฑเต† เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดซเด‚เด—เตโ€Œเดทเตปเตเดฑเต† เดฎเดพเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เดจเดฟเดฐเด•เตเด•เดฟเดจเต† เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เดฆเดฟเดถ เดจเดฎเตเดฎเต‹เดŸเต เดชเดฑเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดชเต‹เดฏเดฟเตปเตเดฑเดฟเดฒเต† เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเต เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดซเด‚เด—เตเดทเตป เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดฒเตเดฒเดพเดคเตเดคเดชเด•เตเดทเด‚, เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด•เตเดฑเดฏเตเดจเตเดจเต. เด•เต‡เดตเดฒ เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด•เต‚เดŸเตเดจเตเดคเต‹เดฑเตเด‚ เดซเด‚เด—เตโ€Œเดทเตป เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเตเดŸเต† เดฎเดพเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เดจเดฟเดฐเด•เตเด•เต เด•เต‚เดŸเตเด‚, เด…เดคเตเดชเต‹เดฒเต† เดซเด‚เด—เตโ€Œเดทเตป เด—เตเดฐเดพเดซเดฟเตปเตเดฑเต† เดšเดฐเดฟเดตเต เด•เตเดคเตเดคเดจเต† เด•เต‚เดŸเตเด‚.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เด•เดพเตผเดŸเตเดŸเต€เดทเตเดฏเตป เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† เด…เดตเดธเตเดฅเดฏเดฟเตฝ, เดชเต‹เดฏเดฟเตปเตเดฑเต M(0,0) เดฒเต† เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เดคเตเดฒเตเดฏเดฎเดพเดฃเต + 25 เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดฎเต‚เดฒเตเดฏเด‚ เดฎเดพเดฑเตเดฎเตเดชเต‹เตพ เดŽเดจเตเดจเดพเดฃเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด’เดฐเต เดชเดฐเดฎเตเดชเดฐเดพเด—เดค เดฏเต‚เดฃเดฟเดฑเตเดฑเต เดตเดดเดฟ เดตเดฒเดคเตเดคเต‡เด•เตเด•เต, เดฎเต‚เดฒเตเดฏเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต 25 เดชเดฐเดฎเตเดชเดฐเดพเด—เดค เดฏเต‚เดฃเดฟเดฑเตเดฑเตเด•เดณเตเดŸเต† เดตเตผเดฆเตเดงเดจเดตเต. เด—เตเดฐเดพเดซเดฟเตฝ เด…เดคเต เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเดฟเตฝ เด•เตเดคเตเดคเดจเต†เดฏเตเดณเตเดณ เด‰เดฏเตผเดšเตเดš เดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดชเต‹เดฏเดฟเตปเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต.

เดฎเดฑเตเดฑเตŠเดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚. เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดฎเต‚เดฒเตเดฏเด‚ เดคเตเดฒเตเดฏเดฎเดพเดฃเต -0,1 เดธเตเดฅเดฒเด‚ เดฎเดพเดฑเตเดฑเดชเตเดชเต†เดŸเตเดฎเตเดชเต‹เตพ เดŽเดจเตเดจเดพเดฃเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด’เดฐเต เดชเดฐเดฎเตเดชเดฐเดพเด—เดค เดฏเต‚เดฃเดฟเดฑเตเดฑเดฟเดจเต, เดฎเต‚เดฒเตเดฏเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต 0,1 เดชเดฐเดฎเตเดชเดฐเดพเด—เดค เดฏเต‚เดฃเดฟเดฑเตเดฑเต เดฎเดพเดคเตเดฐเด‚ เด•เตเดฑเดฏเตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เดซเด‚เด—เตเดทเตปเตเดฑเต† เด—เตเดฐเดพเดซเดฟเตฝ, เดจเดฎเตเด•เตเด•เต เดตเดณเดฐเต† เดถเตเดฐเดฆเตเดงเต‡เดฏเดฎเดพเดฏ เด’เดฐเต เดคเดพเดดเต‹เดŸเตเดŸเต เดšเดฐเดฟเดตเต เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เด’เดฐเต เดชเตผเดตเดคเดตเตเดฎเดพเดฏเดฟ เด’เดฐเต เดธเดพเดฎเตเดฏเด‚ เดตเดฐเดฏเตเด•เตเด•เตเดจเตเดจเดคเต, เดฎเตเดฎเตเดชเดคเตเดคเต† เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟ, เดตเดณเดฐเต† เด•เตเดคเตเดคเดจเต†เดฏเตเดณเตเดณ เด•เตŠเดŸเตเดฎเตเดŸเดฟเด•เตพ เด•เดฏเดฑเต‡เดฃเตเดŸเดฟ เดตเดจเตเดจ เด’เดฐเต เดชเตผเดตเดคเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดžเด™เตเด™เตพ เดตเดณเดฐเต† เดธเดพเดตเดงเดพเดจเดคเตเดคเดฟเตฝ เด’เดฐเต เดšเต†เดฑเดฟเดฏ เดšเดฐเดฟเดตเต เด‡เดฑเด™เตเด™เตเดจเตเดจเดคเต เดชเต‹เดฒเต†เดฏเดพเดฃเต :)

เด…เด™เตเด™เดจเต†, เดซเด‚เด—เตเดทเตป เดตเตเดฏเดคเตเดฏเดพเดธเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏ เดถเต‡เดทเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดธเดพเดงเตเดฏเดคเด•เตพ เดชเตเดฐเด•เดพเดฐเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดžเด™เตเด™เตพ 1st เด“เตผเดกเตผ เดญเดพเด—เดฟเด• เดกเดฟเดซเดฑเตปเดทเตเดฏเตฝ เดธเดฎเดตเดพเด•เตเดฏเด™เตเด™เตพ เดจเดฟเตผเดตเตเดตเดšเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฎเดตเดพเด•เตเดฏเด™เตเด™เตพ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดšเตเดš เดถเต‡เดทเด‚, เดจเดฎเตเด•เตเด•เต เดฐเดฃเตเดŸเต เดธเดฎเดตเดพเด•เตเดฏเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚, เด…เดคเต เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฎเตเด•เตเด•เต เด—เตเดฃเด•เด™เตเด™เดณเตเดŸเต† เด…เดคเตเดคเดฐเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเดฏเดฟ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเต‹เดฏเดฟเตปเตเดฑเตเด•เดณเดฟเดฒเต† เด…เดจเตเดฌเดจเตเดง เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเตเด•เดณเตเดŸเต† เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเดณเดฐเต† เดตเดณเดฐเต† เดšเต†เดฑเดฟเดฏ เด…เดณเดตเดฟเตฝ เดฎเดพเดฑเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด’เดฐเต เดตเดฟเดถเด•เดฒเดจ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเตปเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เด’เดŸเตเดŸเตเด‚ เดฎเดพเดฑเดฟเดฒเตเดฒ. เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏ เด—เตเดฃเด•เด™เตเด™เดณเดฟเดฒเต† เดชเดฟเดถเด•เต เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดžเดคเดฟเดฒเต†เดคเตเดคเตเด‚, เด•เดพเดฐเดฃเด‚ เดˆ เดชเต‹เดฏเดฟเตปเตเดฑเตเด•เดณเดฟเดฒเต† เดญเดพเด—เดฟเด• เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเตเด•เดณเตเดŸเต† เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดชเต‚เดœเตเดฏเดคเตเดคเดฟเดจเต เดคเตเดฒเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เด…เดคเดฟเดจเดพเตฝ, เดกเดฟเดซเดฑเตปเดทเตเดฏเต‡เดทเตป เดจเดฟเดฏเดฎเด™เตเด™เตพ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต, เด—เตเดฃเด•เดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเต 1st เด“เตผเดกเดฑเดฟเตปเตเดฑเต† เดญเดพเด—เดฟเด• เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดธเดฎเดตเดพเด•เตเดฏเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดซเต‹เด‚ เดŽเดŸเตเด•เตเด•เตเด‚:

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

1st เด“เตผเดกเตผ เดญเดพเด—เดฟเด• เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดธเดฎเดตเดพเด•เตเดฏเดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดซเต‹เด‚ เดŽเดŸเตเด•เตเด•เตเด‚:

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดžเด™เตเด™เตพเด•เตเด•เต เดตเดณเดฐเต† เดฒเดณเดฟเดคเดฎเดพเดฏ เดตเดฟเดถเด•เดฒเดจ เดชเดฐเดฟเดนเดพเดฐเดฎเตเดณเตเดณ เดธเดฎเดตเดพเด•เตเดฏเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฒเดญเดฟเดšเตเดšเต:

เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•{เดธเดฎเดตเดพเด•เตเดฏเด‚*}
เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด•{เด•เต‡เดธเตเด•เตพ}
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 '********************************************'

เดฆเตƒเดถเตเดฏเดตเตฝเด•เตเด•เดฐเดฃเด‚

เด‡เดชเตเดชเต‹เตพ, เดžเด™เตเด™เตพ เด†เดฆเตเดฏเด‚, เดกเดพเดฑเตเดฑ เดฒเต‹เดกเตเดšเต†เดฏเตโ€Œเดคเต, เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เดฒเต‹เดกเดฟเด‚เด—เดฟเตปเตเดฑเต† เด•เตƒเดคเตเดฏเดค เดชเดฐเดฟเดถเต‹เดงเดฟเดšเตเดšเต เด’เดŸเตเดตเดฟเตฝ เดกเดพเดฑเตเดฑ เดซเต‹เตผเดฎเดพเดฑเตเดฑเต เดšเต†เดฏเตโ€Œเดค เดถเต‡เดทเด‚, เดžเด™เตเด™เตพ เด†เดฆเตเดฏเดคเตเดคเต† เดฆเตƒเดถเตเดฏเดตเตฝเด•เตเด•เดฐเดฃเด‚ เดจเดŸเดคเตเดคเตเด‚. เด‡เดคเดฟเดจเดพเดฏเดฟ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดฐเต€เดคเดฟ เดœเต‹เดกเดฟเดชเตเดฒเต‹เดŸเตเดŸเต เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เด•เดŸเตฝ. เดžเด™เตเด™เดณเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดชเดฐเดฟเดฎเดฟเดคเดฎเดพเดฏ เดธเด‚เด–เตเดฏเด•เตพ เด•เดพเดฐเดฃเด‚, เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เด…เตผเดคเตเดฅเดฎเดฟเดฒเตเดฒ เด•เดŸเตฝ. เดžเด™เตเด™เตพ เดธเดพเดงเดพเดฐเดฃ เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ เดฎเดพเดฑเตเดฑเตโ€Œเดชเตเดฒเต‹เดŸเตเดŸเตเดฒเดฟเดฌเต เด•เต‚เดŸเดพเดคเต† เดšเดฟเดคเดฑเดฟเด•เตเด•เดฟเดŸเด•เตเด•เตเดจเตเดจ เดธเตเดฅเดฒเด‚ เดจเต‹เด•เตเด•เต‚.

เดธเตเด•เดพเดฑเตเดฑเตผเดชเตเดฒเต‹เดŸเตเดŸเต เด•เต‹เดกเต

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 (เดฎเตˆเดจเดธเต เด’เดจเตเดจเต).

เด’เดฐเต เดซเด‚เด—เตโ€Œเดทเดจเต เดจเดฟเดฐเดตเดงเดฟ เดฎเดฟเดจเดฟเดฎเด•เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเต†เดจเตเดจ เดตเดธเตเดคเตเดค เดจเดฎเตเด•เตเด•เต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเด‚, เด•เต‚เดŸเดพเดคเต† เดšเตเดตเดŸเต† เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดตเดฏเดฟเดฒเตŠเดจเตเดจเดฟเดฒเต‡เด•เตเด•เต เด‡เดฑเด™เตเด™เดฟเดฏเดพเตฝ, เดฎเดฑเตเดฑเตŠเดฐเต เดฎเดฟเดจเดฟเดฎเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเดฟเดฒเตเดฒ, เด…เดคเต เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เตเดฑเดตเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚. เดจเดฎเตเด•เตเด•เต เดตเดฟเดถเตเดฐเดฎเดฟเด•เตเด•เดพเด‚, เด‡เดคเต เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดญเต€เดทเดฃเดฟเดฏเดฒเตเดฒ! เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดžเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดฎเตเดคเตฝ เดžเด™เตเด™เตพ เด’เดฐเต เดฎเดฟเดจเดฟเดฎเด‚ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด—เตเดฐเดพเดซเดฟเตฝ เด’เดฐเต เดธเดพเดงเดพเดฐเดฃ เดชเดฐเดตเดฒเดฏเดฎเดพเดฃเต. เดจเดฎเตเดฎเตเดŸเต† เดธเตเด•เต‚เตพ เดฎเดพเดคเตเดคเดฎเดพเดฑเตเดฑเดฟเด•เตโ€Œเดธเต เด•เต‹เดดเตโ€Œเดธเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดพเดฎเต†เดฒเตเดฒเดพเดตเดฐเตเด‚ เดจเดจเตเดจเดพเดฏเดฟ เด…เดฑเดฟเดฏเต‡เดฃเตเดŸเดคเตเดชเต‹เดฒเต†, เด’เดฐเต เดชเดฐเดตเดฒเดฏเดคเตเดคเดฟเดจเต เด’เดฐเต เดฎเดฟเดจเดฟเดฎเด‚ เดฎเดพเดคเตเดฐเดฎเต‡เดฏเตเดณเตเดณเต‚.

เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เด†เดตเดถเตเดฏเดฎเต†เดจเตเดจเตเด‚ เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เด’เดฐเต เดธเต†เด—เตโ€Œเดฎเต†เตปเตเดฑเดพเดฃเต†เดจเตเดจเตเด‚ เด…เดคเดพเดฏเดคเต, เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเตเด•เดณเตเดณเตเดณ เด’เดฐเต เดตเต†เด•เตโ€ŒเดŸเดฑเดพเดฃเต†เดจเตเดจเตเด‚ เดžเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดคเดฟเดจเต เดถเต‡เดทเด‚, เด…เดต เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เด’เดฐเต‡ เด—เตเดฃเด•เด™เตเด™เดณเดพเดฃเต. เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เดกเดฟเดธเต†เตปเตเดฑเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเด‚.

เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต, เดกเดฟเดธเต†เตปเตเดฑเต เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด•เตเดฑเดšเตเดšเต เดตเดพเด•เตเดฏเด™เตเด™เตพ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เดžเดพเตป เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เตเดจเตเดจเต:

  • เด—เตเดฃเด•เด™เตเด™เดณเตเดŸเต† เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเตเด•เตพ เดžเด™เตเด™เตพ เด•เดชเดŸ-เดฑเดพเตปเดกเด‚ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดžเด™เตเด™เดณเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดชเต‚เดœเตเดฏเดคเตเดคเดฟเดจเดŸเตเดคเตเดคเตเดณเตเดณ เด—เตเดฃเด•เด™เตเด™เตพ เดžเด™เตเด™เตพ เดจเดฟเตผเดตเตเดตเดšเดฟเด•เตเด•เตเด‚. เด‡เดคเตŠเดฐเต เดธเดพเดงเดพเดฐเดฃ เดฐเต€เดคเดฟเดฏเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เด“เดฐเต‹ เด•เต‡เดธเดฟเดจเตเด‚ เด…เดคเดฟเตปเตเดฑเต‡เดคเดพเดฏ เดธเดฎเตเดชเตเดฐเดฆเดพเดฏเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚.
  • เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดชเต‹เดฏเดฟเตปเตเดฑเดฟเดฒเต† 1st เด“เตผเดกเตผ เดญเดพเด—เดฟเด• เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเด• เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเดฟเดจเดพเตฝ, เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดชเต‹เดธเดฟเดฑเตเดฑเต€เดตเต เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดซเด‚เด—เตเดทเตป เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเดฟเดจเดพเตฝ, เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต†, เดตเดณเตผเดšเตเดšเดฏเตเดŸเต† เดตเดฟเดชเดฐเต€เดค เดฆเดฟเดถเดฏเดฟเดฒเต‡เด•เตเด•เต, เด…เดคเดพเดฏเดคเต, เด‡เดฑเด•เตเด•เดคเตเดคเดฟเตปเตเดฑเต† เดฆเดฟเดถเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเดพเด‚ เดจเต€เด™เตเด™เตเด‚. เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเต เดจเต†เด—เดฑเตเดฑเต€เดตเต เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดˆ เด˜เดŸเตเดŸเดคเตเดคเดฟเดฒเต† เดซเด‚เด—เตเดทเตป เด•เตเดฑเดฏเตเด•เดฏเตเด‚ เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฎเตเดฎเตพ เด‡เดฑเด•เตเด•เดคเตเดคเดฟเตปเตเดฑเต† เดฆเดฟเดถเดฏเดฟเดฒเต‡เด•เตเด•เต เดจเต€เด™เตเด™เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.
  • เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเดฟเดจเตŠเดชเตเดชเด‚ เดžเด™เตเด™เตพ เดธเดฎเดพเดจเดฎเดพเดฏ เด’เดฐเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดคเตเดคเตเดจเตเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต: เดชเต‹เดฏเดฟเตปเตเดฑเดฟเดฒเต† เดญเดพเด—เดฟเด• เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเดฟเตปเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเด• เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต.
  • เดฎเดฟเดจเดฟเดฎเด‚ เดฎเดฑเดฟเด•เดŸเดจเตเดจเต เด†เดดเดคเตเดคเดฟเดฒเตเดณเตเดณ เดธเตเดฅเดฒเดคเตเดคเต‡เด•เตเด•เต เดชเดฑเด•เตเด•เดพเดคเดฟเดฐเดฟเด•เตเด•เดพเตป, เด‡เดฑเด™เตเด™เตเดจเตเดจ เดฆเดฟเดถเดฏเดฟเตฝ เดธเตเดฑเตเดฑเต†เดชเตเดชเต เดตเดฒเตเดชเตเดชเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดชเตŠเดคเตเดตเต‡, เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเต‡เดทเดฃเตฝ เดšเต†เดฒเดตเต เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดธเตเดฑเตเดฑเต†เดชเตเดชเต เดŽเด™เตเด™เดจเต† เดถเดฐเดฟเดฏเดพเดฏเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเตเด‚ เด‡เดฑเด•เตเด•เตฝ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเตฝ เด…เดคเต เดŽเด™เตเด™เดจเต† เดฎเดพเดฑเตเดฑเดพเดฎเต†เดจเตเดจเตเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเตเดดเตเดตเตป เดฒเต‡เด–เดจเดตเตเด‚ เดŽเดดเตเดคเดพเด‚. เดŽเดจเตเดจเดพเตฝ เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพเด•เตเด•เต เด…เตฝเดชเตเดชเด‚ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด’เดฐเต เดšเตเดฎเดคเดฒเดฏเตเดฃเตเดŸเต, เด•เต‚เดŸเดพเดคเต† "เดชเต‹เด•เตเด•เต" เดŽเดจเตเดจ เดถเดพเดธเตเดคเตเดฐเต€เดฏ เดฐเต€เดคเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดธเตเดฑเตเดฑเต†เดชเตเดชเต เดตเดฒเตเดชเตเดชเด‚ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดตเตผ เดชเตŠเดคเตเดตเดพเดฏ เดญเดพเดทเดฏเดฟเตฝ เดชเดฑเดฏเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เด…เดจเตเดญเดตเดชเดฐเดฎเดพเดฏเดฟ.
  • เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเดฟเด•เตเด•เตฝ เดžเด™เตเด™เตพ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดกเต†เดฑเดฟเดตเต‡เดฑเตเดฑเต€เดตเตเด•เดณเตเดŸเต† เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เด•เตเดฑเดฏเตเด•เตเด•เตเด•, เดจเดฎเตเด•เตเด•เต เดชเตเดคเดฟเดฏ เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเตเด•เตพ เดฒเดญเดฟเด•เตเด•เตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต ะธ เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดžเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฟเดฏ เด•เต‹เตผเดกเดฟเดจเต‡เดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด…เดŸเตเดคเตเดค เด˜เดŸเตเดŸเด‚ (เด•เตเดฑเด•เตเด•เตฝ) เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต. เด…เดคเดฟเดจเดพเตฝ เด†เดตเดถเตเดฏเดฎเดพเดฏ เด’เดคเตเดคเตเดšเต‡เดฐเตฝ เด•เตˆเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดตเดฐเต† เดธเตˆเด•เตเด•เดฟเตพ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต.

เดŽเดฒเตเดฒเดพเด‚! เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดฎเดฐเดฟเดฏเดพเดจ เดŸเตเดฐเต†เดžเตเดšเดฟเตปเตเดฑเต† เด†เดดเดฎเต‡เดฑเดฟเดฏ เดฎเดฒเดฏเดฟเดŸเตเด•เตเด•เต เดคเต‡เดŸเดฟ เดชเต‹เด•เดพเตป เดคเดฏเตเดฏเดพเดฑเดพเดฃเต. เดจเดฎเตเด•เตเด•เต เดคเตเดŸเด™เตเด™เดพเด‚.

เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เดกเดฟเดธเต†เตปเตเดฑเดฟเดจเตเดณเตเดณ เด•เต‹เดกเต

# ะฝะฐะฟะธัˆะตะผ ั„ัƒะฝะบั†ะธัŽ ะณั€ะฐะดะธะตะฝั‚ะฝะพะณะพ ัะฟัƒัะบะฐ ะฑะตะท ะธัะฟะพะปัŒะทะพะฒะฐะฝะธั ะฑะธะฑะปะธะพั‚ะตะบะธ 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 "เดธเตโ€Œเดฑเตเดฑเต‹เด•เตเด•เดพเดธเตเดฑเตเดฑเดฟเด•เต เด—เตเดฐเต‡เดกเดฟเดฏเตปเตเดฑเต เดกเดฟเดธเต†เตปเดฑเต เดธเดฎเดฏเดคเตเดคเต เดธเตโ€Œเด•เตเดตเดฏเตผ เดตเตเดฏเดคเดฟเดฏเดพเดจเด™เตเด™เดณเตเดŸเต† เด†เด•เต†เดคเตเดคเตเด• (80 เด†เดฏเดฟเดฐเด‚ เดชเดŸเดฟเด•เตพ)"

เดฒเดณเดฟเดคเดฎเดพเดฏ เดฒเต€เดจเดฟเดฏเตผ เดฑเดฟเด—เตเดฐเดทเดจเตเดฑเต† เดธเดฎเดตเดพเด•เตเดฏเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต

เด—เตเดฃเด•เด™เตเด™เตพ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดŸเต, เดชเด•เตเดทเต‡ เด‡เดชเตเดชเต‹เดดเตเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒ. เดธเดพเด™เตเด•เตฝเดชเตเดชเดฟเด•เดฎเดพเดฏเดฟ, เด‡เดคเต เดˆ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดถเดฐเดฟเดฏเดพเด•เตเด•เดพเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด•เดดเดฟเดžเตเดž 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 เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเตฝ เดธเดฎเดฏเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด•เต‹เดกเต (80 เด†เดฏเดฟเดฐเด‚ เด˜เดŸเตเดŸเด™เตเด™เตพ)

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/metod_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.ru/numpy/2.html

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•