สิ่งนี้สร้างขึ้นสำหรับ CruzHacks 2020 โดย Garrett Webb และ Chandni Nagda โปรดอย่าขโมยงานของเรา เพียงแค่ถามเรา มันถูกโพสต์ไปที่ Devpost สำหรับ hackathon ดังกล่าวที่ https://devpost.com/software/what-would-trump-twitter-ds6wxl
นอกจากนี้ เนื่องจากการแบน Twitter ของ Donald Trump ทำให้ข้อมูลนี้ไม่สามารถป้อนข้อมูลใหม่ได้ แต่สามารถนำไปปรับใช้บนหน้า Twitter ของผู้อื่นได้
วิเคราะห์เรื่องไร้สาระของทรัมป์โดยใช้ Microsoft Azure NLP และโมเดลภาษาไตรแกรม สร้างเรื่องไร้สาระที่คล้ายกันสำหรับหัวข้อที่กำหนด
ติดตั้งสิ่งที่คุณต้องการ:
go on the internet and get python 3.xx (latest version)
sudo easy_install pip (mac only, or just install pip the way you would)
pip install nltk (or pip3)
pip install tweepy (or pip3)
pip install azure (or pip3)
pip install numpy (or pip3)
python3 (this will take you to the python interpereter CLI)
>> import nltk
>> nltk.download('punkt')
there may be more but it should tell you.
เพียงสร้างไฟล์ config.py ของคุณเองด้วยคีย์ API สำหรับ twitter และ Microsoft Azure Text Analytics ตั้งค่าต่อไปนี้สำหรับ Microsoft Azure:
subscription_key = "whatever"
endpoint = "whatever"
filename = "whatever"
ตั้งค่าต่อไปนี้สำหรับ Twitter
auth = tweepy.OAuthHandler("whatever")
auth.set_access_token("whatever")
จากนั้นรัน model.py โดยมีหัวข้อเป็นอาร์กิวเมนต์บรรทัดคำสั่ง หรือรัน trumptweets .py แล้วปล่อยมันไป (มันจะทวีตอย่างต่อเนื่องในช่วงเวลาที่คุณตั้งไว้) นี่คือตัวอย่างในบรรทัดคำสั่ง:
python3 model.py <keyword>
จะส่งทวีตไปยังคอนโซลpython3 trumptweets .py
จะสร้างและส่งออกทวีตไปยังคอนโซล รวมถึงโพสต์ไปที่ twitter ในช่วงเวลาที่คุณระบุในโค้ดไปที่ https://twitter.com/R3alFakeDonald (บอท Twitter ของเรา) หรือสร้างบัญชีนักพัฒนา Twitter และบอทของคุณเองเพื่อดูความบ้าคลั่งของคุณคลี่คลาย
แรงบันดาลใจ
ความอยากรู้อยากเห็นและประธานาธิบดีทรัมป์
มันทำอะไร
วิเคราะห์ทวีตของ Donald Trump และระบุวลีสำคัญ สร้างแบบจำลองภาษาสำหรับทวีตของ Donald Trump ในหัวข้อนั้น จากนั้นใช้แบบจำลองเพื่อสร้างทวีตที่เป็นไปได้ และทวีตไปยัง Twitter
ฉันสร้างมันขึ้นมาได้อย่างไร
ขั้นแรก เราล้างข้อมูลที่เก็บถาวร Twitter ของ Donald จากนั้นใช้ Microsoft Azure Text Analysis API เพื่อรับวลีสำคัญของแต่ละทวีต หลังจากนั้น เราได้เพิ่มฟังก์ชันการทำงานเพื่อซับเซ็ตทวีตตามลักษณะของคำที่กำหนดในชุดวลีสำคัญของทวีตที่สร้างโดย Azure ด้วยชุดย่อยนี้ เราจะสร้างและเรียกใช้โมเดลภาษากับชุดข้อมูลที่เกี่ยวข้องมากกว่าชุดเล็กๆ สิ่งนี้ทำให้ทวีตมีความเกี่ยวข้องกับคำหลักที่เราให้ไว้กับระบบมากขึ้น
ความท้าทายที่ฉันพบเจอ
ความท้าทายที่ใหญ่ที่สุดคือการค้นหาและผสมผสานโมเดลภาษาที่ทำงานได้ดีกับทวีตชุดย่อยเล็กๆ เราเอาชนะสิ่งนี้ได้โดยใช้ NLTK และแบบจำลองภาษาไตรแกรม ความท้าทายต่อไปคือการใช้สิ่งนี้เพื่อสร้างคลังข้อมูลที่กำหนดเองโดยอิงตามข้อมูล ไม่ใช่กับคลังข้อมูลที่กำหนดไว้ล่วงหน้าในไลบรารี ความท้าทายอีกประการหนึ่งคือการใช้ Microsoft Azure Text Analytics API และคิดถึงขีดจำกัดการใช้งาน โดยมีการวิเคราะห์ทวีตจำนวนมากของเรา เราเอาชนะสิ่งนี้ได้ด้วยการประมวลผลเป็นกลุ่มๆ ละ 1,000 ทวีตทุกๆ นาที เพื่อให้เป็นไปตามขีดจำกัด 1,000/60 วินาที
ความสำเร็จที่ฉันภาคภูมิใจ
การปรับปรุงโมเดล Neural Net มาตรฐานที่ให้ทวีตที่เข้าใจยากโดยใช้ Azure เพื่อเชื่อมโยงกับหัวข้อใดหัวข้อหนึ่ง ฉันเชื่อว่านี่เป็นความคิดที่ดีจริงๆ สำหรับการใช้ชุดข้อมูลเล็กๆ
สิ่งที่ฉันได้เรียนรู้
ฉันเรียนรู้วิธีใช้ NLTK, Microsoft Azure Text Analytics API และ Tweepy (twitter API) เพื่อสร้างบอท Twitter ที่ทำงานได้อย่างสมบูรณ์โดยใช้การประมวลผลภาษาธรรมชาติ
อะไรต่อไปสำหรับสิ่งที่ทรัมป์ทวีต
เพื่อเผยแพร่สู่โลก และอาจนำไปวางไว้บนอินสแตนซ์คลาวด์ AWS หรือ Azure เพื่อทำงานอย่างไม่มีกำหนด