จะสร้างโปรแกรม Python วิเคราะห์ความเชื่อมั่นของ Twitter ได้อย่างไร [การสอนทีละขั้นตอน]

เผยแพร่แล้ว: 2020-08-07

แหล่งที่มา

เนื่องจากบริษัทต่างๆ มีการขับเคลื่อนด้วยข้อมูลมากขึ้น เทคนิคการเรียนรู้ด้วยเครื่องที่เรียกว่า 'การวิเคราะห์ความรู้สึก' จึงได้รับความนิยมอย่างมากในแต่ละวัน โดยจะวิเคราะห์ข้อมูล/ข้อความดิจิทัลผ่านการประมวลผลภาษาธรรมชาติ (NLP) เพื่อค้นหาขั้ว (บวก ลบ เป็นกลาง) ความรู้สึก และอารมณ์ (โกรธ มีความสุข เศร้า ฯลฯ) ที่แสดงออกมาในข้อความ

เนื่องจาก Twitter เป็นหนึ่งในแหล่งข้อมูลสด การสนทนาสาธารณะทั่วโลกที่ครอบคลุมมากที่สุด บริษัทธุรกิจ กลุ่มการเมือง ฯลฯ มีความสนใจในการดำเนินการ 'วิเคราะห์ความคิดเห็น' ของทวีตเพื่อทำความเข้าใจอารมณ์/ความคิดเห็นของตลาดเป้าหมายหรือเพื่อศึกษาตลาดของคู่แข่ง . แม้ว่าพวกเขาจะพร้อมใช้โปรแกรมตามวัตถุประสงค์ แต่เพื่อให้เกิดการคาดคะเนด้วยความแม่นยำสูง เฉพาะสำหรับเกณฑ์และโดเมนเฉพาะ วิธีที่ดีที่สุดคือการสร้าง โมเดลหรือโปรแกรม Twitter Sentiment Analysis Python ที่กำหนดเอง

สารบัญ

บทช่วยสอนทีละขั้นตอน: สร้างโปรแกรมวิเคราะห์ความคิดเห็นของ Twitter โดยใช้ Python

บทช่วยสอนนี้มีจุดมุ่งหมายเพื่อสร้างโปรแกรมวิเคราะห์ความคิดเห็นของ Twitter โดยใช้ Python โปรแกรมผลลัพธ์ควรสามารถแยกวิเคราะห์ทวีตที่ดึงมาจาก Twitter และเข้าใจความรู้สึกของข้อความ เช่น ขั้วและความเป็นตัวตน

สิ่งที่จำเป็น

1. สิ่งสำคัญที่สุดคือความรู้พื้นฐานด้านการเขียนโปรแกรม/การเขียนโปรแกรมของ Python

2. เครื่องมือที่จะติดตั้งบนคอมพิวเตอร์ของคุณ:

  • Python
  • ไลบรารี: Tweepy, text blob, word cloud, pandas, NumPy, matplotlib

(Tweepy เป็นไลบรารี python อย่างเป็นทางการสำหรับ twitter API ที่ช่วยให้ Python สามารถสื่อสารกับแพลตฟอร์ม Twitter)

3. บัญชี Twitter

4. Twitter App ต้องสร้างและรับรองความถูกต้องโดย Twitter: นี่เป็นสิ่งจำเป็นในการรับ 'รหัสผู้บริโภคและโทเค็นการเข้าถึง' ที่คุณต้องการในการเขียนโปรแกรมของคุณ

หากคุณยังไม่มีแอพ Twitter ที่สร้างขึ้นตามจุดประสงค์ นี่คือวิธีการสร้าง

อ่านเพิ่มเติม: บทช่วยสอน Python NumPy: เรียนรู้ Python Numpy ด้วยตัวอย่าง

จะสร้างแอพ Twitter ได้อย่างไร?

  • ไปที่ไซต์นักพัฒนา Twitter: dev.twitter.com
  • ลงชื่อเข้าใช้ด้วยบัญชี Twitter ของคุณ
  • ไปที่ 'แอปพลิเคชันของฉัน'
  • คลิกที่ 'สร้างแอปพลิเคชันใหม่'
  • ถัดไปคุณต้องกรอกแบบฟอร์มดังที่แสดงด้านล่าง

แหล่งที่มา

  • จากนั้น คลิกที่ 'สร้างโทเค็นการเข้าถึงของฉัน'
  • ในหน้าถัดไป ให้เลือกตัวเลือก 'อ่านและเขียน' ใต้คอลัมน์ 'ประเภทแอปพลิเคชัน'

คุณจะได้รับการตั้งค่า OAuth ของแอป Twitter ซึ่งรวมถึงรายละเอียดที่จำเป็นทั้งหมดที่เกี่ยวข้องกับรหัสผู้บริโภค ข้อมูลลับของผู้บริโภค โทเค็นการเข้าถึง ความลับของโทเค็นการเข้าถึง ฯลฯ คุณต้องจดบันทึกรายละเอียดเหล่านี้เนื่องจากข้อมูลรับรอง API เหล่านี้จะช่วยให้คุณสามารถดึงทวีตได้ จากทวิตเตอร์ ดีกว่าที่จะบันทึกไว้ในไฟล์ CSV ในคอมพิวเตอร์ของคุณ หลังคุณสามารถอัปโหลดไฟล์ CSV ลงในโปรแกรมของคุณเพื่ออ่านข้อมูลรับรอง API ได้โดยตรง

เริ่มต้นกับการสร้างโปรแกรม Python การวิเคราะห์ความเชื่อมั่นของ Twitter

1. นำเข้าไลบรารี : Tweepy, text blob, word cloud, pandas, NumPy, matplotlib

2. ตรวจสอบสิทธิ์แอป Twitter: ถัดไป คุณต้องตรวจสอบสิทธิ์แอป Twitter ของคุณโดยใช้ข้อมูลรับรองการตั้งค่า OAuth ของแอป Twitter หรือที่เรียกว่าข้อมูลรับรอง Twitter API สำหรับสิ่งนี้ คุณต้องสร้างออบเจ็กต์ Authentication โดยใช้รหัสดังที่แสดงในภาพด้านล่าง

แหล่งที่มา

ในการกรอกข้อมูลรับรอง Twitter API คุณสามารถอัปโหลดไฟล์ CSV หรือคัดลอกและวางรายละเอียดข้อมูลรับรองด้วยตนเอง

3. ดึงทวีตจากผู้ใช้ Twitter: ตอนนี้ ในการดึงทวีต ก่อนอื่นคุณต้องเลือกผู้ใช้ Twitter ที่มีทวีตที่คุณต้องการแยกวิเคราะห์เพื่อทำความเข้าใจความรู้สึกที่แสดงออกมา สมมติว่า; คุณต้องการดูว่าทวีตของ 'UserXYZ' เป็นบวกหรือลบหรือเป็นกลางโดยการวิเคราะห์ความคิดเห็นของ 100 ทวีตโดย UserXYZ

รหัสสำหรับดึงทวีต

โพสต์ = api.user_timeline (screen_name = ”UserXYZ”, count= 100, Lang =”en”, tweet_mode=“extended”)

การรันคำสั่งดังกล่าวจะแสดงทวีต

4. สร้างกรอบข้อมูล: ตอนนี้ คุณต้องสร้างกรอบข้อมูลสำหรับทวีตที่คุณดึงมา สมมติว่าคุณตั้งชื่อคอลัมน์แรกของ df ของคุณเป็น 'ทวีต' และจะมีทวีตทั้งหมดกระจายไปทั่ว 100 แถว เนื่องจากคุณกำลังวิเคราะห์ 100 ทวีต

Df = pd.dataframe( [tweet.full_text สำหรับทวีตในโพสต์] , columns=[ 'Tweet'])

5. ทำความสะอาดข้อความ: การทำความสะอาดข้อความในทวีตมีความสำคัญต่อความสำเร็จของโปรแกรมหลามวิเคราะห์ความคิดเห็น Twitter ของคุณ เนื่องจากจะมีสัญลักษณ์ที่ไม่ต้องการมากมาย เช่น @, #, ทวีตซ้ำ, ไฮเปอร์ลิงก์ใน URL เป็นต้น ที่นี่คุณ ไลบรารี python '' ถูกใช้งาน

รับ Subjectivity และ Polarity: เมื่อคุณทำความสะอาดข้อความแล้ว คุณต้องสร้างสองฟังก์ชันโดยใช้ไลบรารี TextBlob python เพื่อรับ subjectivity และ polarity ของทวีต อัตวิสัยจะแสดงให้เห็นว่าข้อความมีความคิดเห็นอย่างไร และความเป็นขั้วอธิบายถึงแง่บวกหรือแง่ลบของข้อความ จะเป็นการดีที่สุดที่จะเขียนสคริปต์ python เพื่อสร้างคอลัมน์อีกสองคอลัมน์ใน data frame ของคุณเพื่อโฮสต์ Subjectivity และ Polarity ดังนั้น ตอนนี้ data frame ของคุณจะมีสามคอลัมน์ (อันดับแรกสำหรับทวีต, 2 สำหรับ subjectivity, 3 สำหรับขั้ว)

รหัสสำหรับสร้างฟังก์ชัน Subjectivity และ Polarity มีดังนี้:

แหล่งที่มา

หลังจากที่คุณรันโค้ด คุณจะเห็นคะแนนของ subjectivity และ polarity ของทวีตแต่ละรายการที่แสดงในคอลัมน์ที่เกี่ยวข้อง TextBlob อธิบายขั้วภายในมาตราส่วน 1 ถึง -1 ดังนั้น หากทวีตมีขั้ว -0.4 แสดงว่าเป็นลบเล็กน้อย และหากทวีตมีขั้ว 0.6 แสดงว่าเป็นความคิดเห็นที่ค่อนข้างเป็นส่วนตัว

6. ถัดไป คุณสามารถเลือกที่จะรวม word cloud ไว้ใน โปรแกรม Twitter Sentiment Analysis Python ได้ เนื่องจาก word cloud ยังเป็นที่นิยมในฐานะเทคนิคการแสดงข้อมูลที่ใช้สำหรับการวิเคราะห์ความเชื่อมั่น โดยที่ขนาดของคำบ่งบอกถึงความสำคัญ

ตัวอย่างของ WordCloud:

แหล่งที่มา

ไลบรารี matplotlib, Pandas และ WordCloud จะดำเนินการตามที่คุณนำเข้าแล้ว ในการพล็อตคำแบบ cloud-first คุณต้องสร้างตัวแปร ตั้งชื่อว่า 'allwords' เพื่อแสดงทวีตทั้งหมดในคอลัมน์ 'Tweets' ของ data frame

รหัสสำหรับสร้าง WordCloud

allwords = ' '.join( [twts สำหรับ twts ใน df [ 'Tweets']] )

WordCloud = WordCloud (ความกว้าง =xxx, ความสูง =xxx, randon_state =xxx, max_font_size =xxx. สร้าง (คำทั้งหมด)

plt.imshow (เวิร์ดคลาวด์)

plt.axis (“ปิด”)

plt.show()

7. เมื่อคุณมีคะแนนขั้วสำหรับทวีตแต่ละรายการ คุณสามารถเริ่มคำนวณการวิเคราะห์ทวีตในเชิงบวก เชิงลบ และเป็นกลางได้ สำหรับสิ่งนี้ คุณต้องสร้างฟังก์ชัน เรียกมันว่า 'การวิเคราะห์' ซึ่งคุณสามารถกำหนดคะแนน 0 ให้เป็นกลาง, <0 เป็นค่าลบ และ >0 เป็นค่าบวก

วิเคราะห์ Def (คะแนน):

ถ้าคะแนน < 0

ส่งคืน 'เชิงลบ'

คะแนนเอลลิฟ == 0

กลับ 'เป็นกลาง

อื่น,

กลับเป็น 'บวก'

ถัดไป เพื่อโฮสต์ผลลัพธ์ของการวิเคราะห์ความคิดเห็นของทวีต ให้สร้างคอลัมน์ใหม่ใน data frame ของคุณ ให้ตั้งชื่อมันว่า 'TwtAnalysis' แล้วเขียนโค้ดต่อไปนี้:

df [ 'TwtAnalysis' ] = df [ 'Polarity' ] สมัคร(วิเคราะห์)

8. กรอบข้อมูลใหม่จะมีคอลัมน์ที่เพิ่มเข้ามาชื่อ 'TwtAnalysis' และจะอ้างถึงทวีตแต่ละรายการว่าเป็นค่าบวก ค่าลบ หรือค่ากลางตามคะแนนขั้ว ตัวอย่างแสดงอยู่ด้านล่างในภาพ:

แหล่งที่มา

9. เมื่อคุณจัดประเภททวีตเป็นบวก ลบ และเป็นกลาง คุณสามารถสร้าง โปรแกรม Twitter Sentiment Analysis Python ของคุณต่อไปได้ เพื่อแสดงข้อมูลในรูปแบบต่างๆ เช่น

  • รับเปอร์เซ็นต์ของทวีตเชิงบวก เชิงลบ หรือเป็นกลาง
  • พิมพ์ความคิดเห็นในเชิงบวกหรือทวีตเชิงลบหรือเป็นกลางทั้งหมดแยกกัน
  • สร้างแผนภูมิการวิเคราะห์ความรู้สึกที่มองเห็นได้ของทวีตเชิงบวก เชิงลบ และเป็นกลาง และอื่นๆ อีกมากมาย

ยังอ่าน: 9 สุดยอดไลบรารี่ Python สำหรับการเรียนรู้ของเครื่อง

บทสรุป

โปรแกรม Python Sentiment Analysis Python อธิบาย ไว้ ใน บทความนี้เป็นเพียงหนึ่ง วิธีการสร้างโปรแกรมดังกล่าว นักพัฒนาสามารถปรับแต่งโปรแกรมได้หลายวิธีเพื่อให้ตรงกับข้อกำหนดเพื่อให้ได้มาซึ่งความแม่นยำสูงสุดในการอ่านข้อมูล นั่นคือความสวยงามของการเขียนโปรแกรมผ่าน python ซึ่งเป็นภาษาที่ยอดเยี่ยม ได้รับการสนับสนุนจากชุมชนนักพัฒนาและไลบรารีจำนวนมากเกินไป

Python มีขอบเขตมหาศาลในด้านการเรียนรู้ของเครื่องและวิทยาศาสตร์ข้อมูล ผู้ที่อยู่ในการเขียนโปรแกรมมาระยะหนึ่งรู้ดีว่า Machine Learning จะยังคงเป็นหนึ่งในความก้าวหน้าในอนาคตของการเขียนโปรแกรม

หากคุณต้องการได้รับประสบการณ์การเรียนรู้ที่ครอบคลุมและมีโครงสร้าง หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับแมชชีนเลิร์นนิง ให้ลองดูประกาศนียบัตร PG ของ IIIT-B & upGrad ในการเรียนรู้ของเครื่องและ AI ซึ่งออกแบบมาสำหรับคนทำงานมืออาชีพและให้บริการมากกว่า 450 ชั่วโมง ของการฝึกอบรมที่เข้มงวด กรณีศึกษาและการมอบหมายงานมากกว่า 30 รายการ สถานะศิษย์เก่า IIIT-B โครงการหลัก 5 อย่างและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

การวิเคราะห์ความรู้สึกบนโซเชียลมีเดียมีความสำคัญเชิงหน้าที่อย่างไร

ในยุคของโซเชียลมีเดียนี้ ความคิดเห็นของผู้บริโภคมีอำนาจไม่จำกัดในการสร้างหรือทำลายแบรนด์ การวิเคราะห์ความรู้สึกเป็นวิธีที่ดีที่สุดในการทำความเข้าใจปัจจัยขับเคลื่อนที่อยู่เบื้องหลังความคิดเห็นและอารมณ์ของผู้บริโภคอย่างแม่นยำ ด้วยข้อมูลที่ได้จากการวิเคราะห์ความเชื่อมั่น ธุรกิจต่างๆ สามารถค้นหากลุ่มเป้าหมาย ระบุผู้มีอิทธิพลในโซเชียลมีเดียสำหรับแบรนด์ของตน และระบุแนวโน้มตลาดที่เกิดขึ้นใหม่ นอกจากนี้ การวิเคราะห์ความรู้สึกบนแพลตฟอร์มโซเชียลมีเดียยังให้แนวคิดที่ครอบคลุมเกี่ยวกับสุขภาพของแบรนด์ ธุรกิจสามารถรับความคิดเห็นจากผู้บริโภคอย่างตรงไปตรงมาเกี่ยวกับผลิตภัณฑ์และบริการที่เพิ่งเปิดตัวไปเพื่อปรับปรุงให้ดีขึ้น นอกจากนี้ยังมีประสิทธิภาพในการจัดการชื่อเสียงออนไลน์ด้วยการระบุขอบเขตของการปรับปรุงและการแก้ปัญหาให้ดีขึ้น

คุณสามารถเรียนรู้ Python ด้วยตัวเองได้หรือไม่?

หากคุณมีประสบการณ์ด้านการเขียนโปรแกรมในระดับหนึ่ง คุณสามารถเริ่มเรียนรู้ Python ด้วยตัวเองได้อย่างแน่นอน Python มาพร้อมกับโครงสร้างวากยสัมพันธ์ที่ค่อนข้างง่าย และยังใช้งานง่ายอีกด้วย ทำให้ง่ายต่อการเข้าใจแม้กระทั่งสำหรับผู้เริ่มต้น นอกจากนี้ยังง่ายต่อการติดตั้งแพ็คเกจและใช้งานบนเครื่องของคุณได้จากทุกที่ คุณสามารถเร่งการเรียนรู้ของคุณโดยการลงทะเบียนในหลักสูตร Python เข้าร่วม bootcamp การเข้ารหัส ด้วยชุมชนนักพัฒนาที่กระตือรือร้นและเต็มใจที่จะขยายการสนับสนุน ทรัพยากรการเรียนรู้และเอกสารประกอบมากมาย ผู้เริ่มต้นสามารถเรียนรู้พื้นฐานของ Python ได้ในเวลาประมาณ 7-8 สัปดาห์

การเรียนรู้ระหว่าง Python และ C ++ ใดยากกว่ากัน

Python และ C++ เป็นภาษาการเขียนโปรแกรมที่แตกต่างกันโดยสิ้นเชิงโดยมีพฤติกรรมและคุณลักษณะต่างกันโดยสิ้นเชิง อย่างไรก็ตาม ทั้งสองสนับสนุนการเขียนโปรแกรมเชิงวัตถุอย่างมาก แต่เมื่อพิจารณาจากเฟรมเวิร์กของ Python โดยรวมแล้ว มันตรงไปตรงมา ง่ายกว่า และเรียนรู้ได้เร็วกว่า C++ มาก อันที่จริง หลายคนเรียนรู้ Python เพื่อสัมผัสถึงความรู้สึกในการเขียนโค้ดแบบง่ายๆ Python เป็นโอเพ่นซอร์ส ฟรี และมีความน่าเชื่อถือและความสะดวกอย่างมากในการพัฒนาแอปพลิเคชันการเรียนรู้ของเครื่องที่ซับซ้อน แม้ว่า C++ จะมีประสิทธิภาพมากกว่าในแง่ของประสิทธิภาพ แต่ก็ไม่ถือว่าเหมาะสมสำหรับ Python สำหรับโปรเจ็กต์แมชชีนเลิร์นนิง