<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: KANTAPAT KWANSOMKID (PEEM)</title>
    <description>The latest articles on DEV Community by KANTAPAT KWANSOMKID (PEEM) (@kantapat_kwansomkid_mdtkmutt).</description>
    <link>https://dev.to/kantapat_kwansomkid_mdtkmutt</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1058429%2F1982c511-efb0-4f94-8ed3-7f2675fb5fb6.jpeg</url>
      <title>DEV Community: KANTAPAT KWANSOMKID (PEEM)</title>
      <link>https://dev.to/kantapat_kwansomkid_mdtkmutt</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kantapat_kwansomkid_mdtkmutt"/>
    <language>en</language>
    <item>
      <title>วิธีการสร้างอัลกอริทึมทำนายอนาคตโดยใช้ PYTHON</title>
      <dc:creator>KANTAPAT KWANSOMKID (PEEM)</dc:creator>
      <pubDate>Sun, 09 Apr 2023 01:17:58 +0000</pubDate>
      <link>https://dev.to/kantapat_kwansomkid_mdtkmutt/withiikaarsraangalkrithuemthamnaaynaakhtodyaich-python-1k6o</link>
      <guid>https://dev.to/kantapat_kwansomkid_mdtkmutt/withiikaarsraangalkrithuemthamnaaynaakhtodyaich-python-1k6o</guid>
      <description>&lt;p&gt;ถ้าเราต้องการจะทำนายสิ่งต่าง ๆ ในอนาคต อาทิเช่น การทํานายอนาคตของโควิด ราคาหุ้น ราคา bitcoin และผลกําไรทางธุรกิจของคุณ ซึ่งในวันนี้กระผมจะมาแนะนำวิธีในการสร้างอัลกอริทึมสำหรับใช้ในการทำนายอนาคตโดยใช้ PYTHON กันครับ&lt;/p&gt;

&lt;p&gt;บทความนี้ เราจะมาดูการสร้างอัลกอริทึมสำหรับใช้ในการทำนายอนาคตใน Python กัน ซึ่งกระผมได้ใช้ Google Colab ในการรันชุดคำสั่งต่าง ๆ &lt;/p&gt;

&lt;p&gt;ซึ่ง Dataset ที่กระผมได้นำมาใช้เป็นตัวอย่าง คือ ข้อมูลสถิติราคาตลาดหุ้นย้อนหลังจาก Yahoo! Finance&lt;/p&gt;

&lt;p&gt;โดยทางกระผมจะมีวิธีการและขั้นตอนในการสร้างอัลกอริทึมสำหรับใช้ในการทำนายสิ่ง ๆ ซึ่งในวันนี้ตัวอย่างที่จะนำมาเป็นสิ่งที่ใช้ในการทำนาย คือ การคาดการณ์แนวโน้มของราคาตลาดหุ้นในอนาคต&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ซึ่งจะมีวิธีการและขั้นตอนในการสร้างอัลกอริทึม ดังต่อไปนี้ครับ&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ขั้นตอนที่ 1 ติดตั้งไลบรารี
&lt;/h2&gt;

&lt;p&gt;ก่อนอื่นต้องติดตั้งไลบรารี pystan ที่ช่วยให้เรียกใช้ไลบรารี fbprophet ได้อย่างง่ายดาย ซึ่งสามารถติดตั้งไลบรารี pystan โดยใช้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip install pystan
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;จากนั้นคุณสามารถติดตั้งไลบรารี fbpropeht โดยใช้คําสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip install fbprophet
or
conda install -c conda-forge fbprophet
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;จากนั้นเราจะใช้ไลบรารี yfinance เพื่อดึงข้อมูลราคาหุ้น&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip install yfinance
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ในที่สุดเราต้องติดตั้งไลบรารี plotly และ pandas เพื่อทํางานกับข้อมูลในอดีตที่ได้ดึงมาและพล็อตมัน&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip install plotly==4.4.1
!pip install pandas==1.3.4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ขั้นตอนที่ 2 นำเข้าไลบรารี
&lt;/h2&gt;

&lt;p&gt;ให้นําเข้าไลบรารีที่เราเพิ่งติดตั้งไปในขั้นตอนที่ 1 โดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import pandas as pd
from fbprophet import Prophet
import yfinance as yf
import plotly
import warnings

warnings.simplefilter('ignore')

def enable_plotly_in_cell():
    ''' Use this function in each cell to show plot in Google Colaboratory.'''
    import IPython
    from plotly.offline import init_notebook_mode
    display(IPython.core.display.HTML('''&amp;lt;script src="/static/components/requirejs/require.js"&amp;gt;&amp;lt;/script&amp;gt;'''))
    init_notebook_mode(connected=False)


get_ipython().events.register('pre_run_cell', enable_plotly_in_cell)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ขั้นตอนที่ 3 ดาวน์โหลดข้อมูลข้อมูลสถิติราคาตลาดหุ้นย้อนหลังจาก Yahoo! Finance
&lt;/h2&gt;

&lt;p&gt;ใช้ yahoo finance API เพื่อติดตั้งข้อมูลในอดีต แต่คุณสามารถดึงข้อมูลจากที่ใดก็ได้ นอกจากนี้ฉันได้กําหนดเวลาทํานายเป็น 3 ปี โดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;COMPANY = "RELIANCE"
prediction_time = "1Y"
temp = yf.download(f'{COMPANY}.NS', end="2022-01-01") 
temp.tail()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ผลของตารางที่ได้&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ludv5nsx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/it9nbrj3n46e1sh6okol.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ludv5nsx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/it9nbrj3n46e1sh6okol.png" alt="Image description" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ขั้นตอนที่ 4 จัดรูปแบบข้อมูลประวัติสําหรับไลบรารี fbprophet
&lt;/h2&gt;

&lt;p&gt;สร้างกรอบข้อมูลใหม่และกําหนดคอลัมน์วันที่เป็น ds และปิดค่าเป็น y สิ่งนี้สําคัญมากเนื่องจากชื่อคอลัมน์ต้องเป็น ds และ y เนื่องจาก fbprophet จะมองหาคอลัมน์เหล่านี้&lt;br&gt;
df['ds'] —&amp;gt; คอลัมน์ของวันที่&lt;br&gt;
df['y'] —&amp;gt; คุณค่าทางประวัติศาสตร์ที่คุณต้องป้อนให้กับโมเดล&lt;br&gt;
สามารถจัดรูปแบบข้อมูลประวัติสําหรับไลบรารี fbprophet โดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;df = pd.DataFrame()
df['ds'] = temp.index.get_level_values('Date')
df['y'] = temp['Close'].values
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ขั้นตอนที่ 5 ฝึก (train) โมเดลของอัลกอริทึม
&lt;/h2&gt;

&lt;p&gt;ฝึก (train) โมเดลของอัลกอริทึมโดยทั่วไปหมายถึงการป้อนข้อมูลในอดีตและแบบจําลองจะฝึกให้ป้อนข้อมูลทีละรายการและลดการสูญเสีย การสูญเสียเป็นตัวเลขที่แสดงถึงความเลวร้ายของแบบจําลองคือการคาดการณ์ข้อมูลที่กําหนด ยิ่งจํานวนการสูญเสียน้อยเท่าไหร่โมเดลของอัลกอริทึมของคุณก็จะยิ่งดีขึ้นเท่านั้น โดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;m=Prophet()
model = m.fit(df)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ขั้นตอนที่ 6 คาดการณ์ผลในอนาคต
&lt;/h2&gt;

&lt;p&gt;ใช้แบบจําลองที่ผ่านการฝึก (train) โมเดลของอัลกอริทึมก่อนหน้านี้และคาดการณ์ผลลัพธ์ที่เป็นไปได้ในอนาคต โดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;future = m.make_future_dataframe(periods=int(prediction_time[:-1]),freq=prediction_time[-1])
forecast = m.predict(future)
forecast.tail()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ผลของตารางที่ได้&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rEMmdOqp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y7ongjt6qt1qzdp4y6ja.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rEMmdOqp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y7ongjt6qt1qzdp4y6ja.png" alt="Image description" width="800" height="69"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ขั้นตอนที่ 7 พล็อตการคาดการณ์
&lt;/h2&gt;

&lt;p&gt;ที่จริงแล้วเราได้ทํานายอนาคตได้สําเร็จ แต่เพื่อวัตถุประสงค์ในการวิเคราะห์มันเป็นวิธีปฏิบัติที่ดีในการแสดงภาพโดยใช้กราฟ สามารถพล็อตการคาดการณ์ดังกล่าวโดยใช้ชุดคำสั่งต่อไปนี้&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;forecast.tail()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ผลของพล็อตที่ได้&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RfCGWzso--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/62haa0cc5vftz4j7h5wl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RfCGWzso--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/62haa0cc5vftz4j7h5wl.png" alt="Image description" width="800" height="314"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6bOLPRZd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2tfs6w8gtt0fd90iv3fn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6bOLPRZd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2tfs6w8gtt0fd90iv3fn.png" alt="Image description" width="800" height="782"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ผลของการคาดการณ์นี้แสดงถึงอะไร?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;บนแกน y คุณสามารถดูราคาหุ้นและบนแกน x คุณสามารถดูวันที่ได้ &lt;/li&gt;
&lt;li&gt;เส้นสีดํา คือ ราคาจริง&lt;/li&gt;
&lt;li&gt;ช่วงที่คาดการณ์ไว้คือเส้นสีเขียวและสีน้ําเงิน ซึ่งหมายความว่าราคาหุ้นจะอยู่ระหว่างเส้นสีเขียวและสีน้ําเงิน&lt;/li&gt;
&lt;li&gt;เส้นสีแดง แสดงแนวโน้มและในตัวอย่างนี้แนวโน้มจะปรากฏขึ้นอย่างชัดเจนในอีก 3 ปีข้างหน้า&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  สรุปผล
&lt;/h2&gt;

&lt;p&gt;จากการสร้างอัลกอริทึมจะทำให้เราได้ว่า ถ้าต้องการสร้างอัลกอริทึมเพื่อทำนายอนาคตสิ่งต่าง ๆ ในอนาคตได้นั้น สิ่งหนึ่งที่สำคัญที่สุดที่จะทำให้อัลกอริทึมที่เราสร้างขึ้นนั้นสามารถทำนายอนาคตได้นั้น คือ สถิติของข้อมูลย้อนหลัง ที่จะเป็นสิ่งสำคัญที่ช่วยทำให้อัลกอริทึมของเรานั้นสามารถทำนายผลต่าง ๆ ล่วงหน้าได้ผ่านปัญญาประดิษฐ์ (AI) ที่อยู่ในชุดคำสั่ง PYTHON ของอัลกอริทึมดังกล่าวที่กระผมได้จัดสร้างขึ้นในข้างต้นได้เป็นอย่างดีและเกิดประโยชน์สูงสุดในอนาคตครับผม&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;ขอแสดงความยินดี!!!!! &lt;br&gt;
กับทุกท่านที่สามารถสร้างอัลกอริทึมตามกระผม&lt;br&gt;
ได้อย่างประสบความสำเร็จครับผม 😍🙏🎉❤️✨️&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;แหล่งอ้างอิง (References)&lt;/em&gt;&lt;br&gt;
&lt;a href="https://dev.to/yash_makan/how-to-predict-future-using-python--3i39"&gt;&lt;em&gt;https://dev.to/yash_makan/how-to-predict-future-using-python--3i39&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>predictionsfuture</category>
      <category>python</category>
      <category>mdt</category>
      <category>mediakmutt</category>
    </item>
  </channel>
</rss>
