<?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: Paramee Sungrai</title>
    <description>The latest articles on DEV Community by Paramee Sungrai (@parame_e).</description>
    <link>https://dev.to/parame_e</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%2F1062949%2F8bd7ba60-1eef-42c1-bee7-80f02e68771f.png</url>
      <title>DEV Community: Paramee Sungrai</title>
      <link>https://dev.to/parame_e</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/parame_e"/>
    <language>en</language>
    <item>
      <title>การใช้Language Detection ด้วย Python</title>
      <dc:creator>Paramee Sungrai</dc:creator>
      <pubDate>Tue, 11 Apr 2023 16:50:00 +0000</pubDate>
      <link>https://dev.to/parame_e/kaaraichlanguage-detection-dwy-python-50p2</link>
      <guid>https://dev.to/parame_e/kaaraichlanguage-detection-dwy-python-50p2</guid>
      <description>&lt;p&gt;บทความนี้เราจะมาพูดถึง Language Detection with Machine Learning หรือการตรวจจับภาษาและจำแนกภาษา&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Language Detection&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;นั่นคือ "Google Translate" นอกจากนี้ยังมี Machine Learning Model เพื่อตรวจจับภาษาที่คุณสามารถใช้ได้ หากไม่ทราบว่าต้องการแปลภาษาใด&lt;/p&gt;

&lt;p&gt;ส่วนสำคัญที่สุดของการฝึกอบรมการตรวจจับภาษาให้มีประสิทธิภาพ คือ ข้อมูล ยิ่งมีข้อมูลเกี่ยวกับภาษาหลาย ๆ ภาษามาก การตรวจจับภาษาก็จะทำงานได้แม่นยำมากขึ้นในแบบ Real-time &lt;/p&gt;

&lt;p&gt;ในชุดข้อมูลที่ใช้ถูกรวบรวมจาก Kaggle ซึ่งมีข้อมูลเกี่ยวกับภาษายอดนิยม 22 ภาษาและมี 1000 ประโยคในแต่ละภาษา ดังนั้นจะเป็นชุดข้อมูลที่เหมาะสมสำหรับการฝึกอบรมการตรวจจับภาษาด้วยการเรียนรู้ของเครื่อง&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Language Detection using Python&lt;/strong&gt;&lt;br&gt;
ต่อมาเป็นวิธีการฝึก Machine Learning Model โดยใช้ Python&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;❤️&lt;u&gt;ขั้นตอนที่ 1&lt;/u&gt; นำเข้า Python Libraries และ Dataset&lt;/strong&gt;&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
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.model_selection import train_test_split
from sklearn.naive_bayes import MultinomialNB

data = pd.read_csv(
    "https://raw.githubusercontent.com/amankharwal/Website-data/master/dataset.csv"
)
print(data.head())
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ผลที่ได้&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--P3mXAjiP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gqz3wmj8r4310kale4cc.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P3mXAjiP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gqz3wmj8r4310kale4cc.jpg" alt="Image description" width="800" height="156"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;▷ต่อมาให้ลองตรวจสอบว่าDatasetนี้มีค่าว่างหรือไม่ด้วยCodeคำสั่ง&lt;br&gt;
&lt;code&gt;data.isnull().sum()&lt;/code&gt;&lt;br&gt;
จะแสดงผลดังนี้&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KeTjyQq4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0uasipcosynhng17spul.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KeTjyQq4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0uasipcosynhng17spul.jpg" alt="Image description" width="648" height="142"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;▷ตรวจสอบภาษาในDataset ด้วยCodeคำสั่ง&lt;br&gt;
&lt;code&gt;data["language"].value_counts()&lt;/code&gt;&lt;br&gt;
จะแสดงผลดังนี้&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9wOq_PLZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/df3ybo49xfn2nim9qvym.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9wOq_PLZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/df3ybo49xfn2nim9qvym.jpg" alt="Image description" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;❤️&lt;u&gt;ขั้นตอนที่ 2&lt;/u&gt; แบ่งข้อมูลจำแนกคลาสออกเป็นชุดฝึกอบรมกับชุดทดสอบ&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;x = np.array(data["Text"])
y = np.array(data["language"])

cv = CountVectorizer()
X = cv.fit_transform(x)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;เนื่องจากนี่เป็นปัญหาของการจำแนกหลายคลาส ดังนั้นจะใช้ Multinomial Naïve Bayes Algorithm เพื่อฝึก Language Detection Model เนื่องจาก Algorithm นี้ทำงานได้ดีมากในปัญหาการจำแนกประเภทหลายคลาส&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;model = MultinomialNB()
model.fit(X_train,y_train)
model.score(X_test,y_test)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ผลลัพธ์ที่แสดงออกมา&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--osB9M5SQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xwi5ej82lh5d9i8m9f75.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--osB9M5SQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xwi5ej82lh5d9i8m9f75.jpg" alt="Image description" width="625" height="114"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;❤️&lt;u&gt;ขั้นตอนที่ 3&lt;/u&gt; Codeที่ให้ผู้ใช้ป้อนข้อความเพื่อทำการตรวจจับภาษา&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;user = input("Enter a Text: ")
data = cv.transform([user]).toarray()
output = model.predict(data)
print(output)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;เมื่อทำการRun Codeแล้ว จะขึ้นกล่องให้เราใส่ข้อความลงไป👩🏻‍💻&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;p&gt;ผลที่แสดงออกมาเมื่อเรากรอกข้อความลงไป ตัวอย่างเช่น พิมพ์คำว่า "สวัสดีชาวโลก"👽 ภาษาที่แสดงออกมาก็คือ 'Thai'🇹🇭 &lt;/p&gt;

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

&lt;p&gt;👉🏻&lt;strong&gt;&lt;u&gt;สรุป&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
Language Detection Model โดยการเขียนด้วย Python เป็น Machine Learning ประเภท Supervised Learning คือมีการใช้Datasetในการสอนเพื่อให้สามารถตรวจจับภาษาได้ว่า ภาษาที่ผู้ใช้กรอกลงไปเป็นภาษาอะไร แต่ข้อจำกัดของโมเดลนี้คือจะสามารถตรวจจับภาษาได้แค่ 22 ภาษา หรือตามในDatasetนั่นเอง&lt;/p&gt;




&lt;p&gt;🙏🏻ขอบคุณข้อมูลจากเว็บไซต์&lt;a href="https://thecleverprogrammer.com/2021/10/30/language-detection-with-machine-learning/"&gt;https://thecleverprogrammer.com/2021/10/30/language-detection-with-machine-learning/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
