Это было сделано для CruzHacks 2020 Гарретом Уэббом и Чандни Нагда. Пожалуйста, не крадите нашу работу, просто спросите нас. Он был опубликован на Devpost для указанного хакатона по адресу https://devpost.com/software/what-would-trump-tweet-ds6wxl.
кроме того, из-за запрета Дональда Трампа на Твиттер сюда нельзя передавать какие-либо новые данные, но можно адаптировать для использования на чьей-либо другой странице в Твиттере.
Проанализируйте бред Трампа, используя 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
сгенерирует и выведет твит на консоль, а также опубликует его в твиттере через интервал времени, указанный вами в коде.Перейдите на https://twitter.com/R3alFakeDonald (наш твиттер-бот) или создайте собственную учетную запись и бота для разработчика в Твиттере, чтобы увидеть, как разворачивается ваше безумие.
Вдохновение
Любопытство и президент Трамп
Что он делает
Анализирует твиты Дональда Трампа и, учитывая ключевую фразу, создает языковую модель для твитов Дональда Трампа по этой теме, затем использует эту модель для создания потенциального твита и отправляет его в Твиттер.
Как я это построил
Сначала мы очистили данные твиттер-архива Дональда, затем использовали API Microsoft Azure Text Analysis, чтобы получить ключевые фразы каждого твита. После этого мы добавили функцию разделения твитов на основе появления данного слова в наборе ключевых фраз твита, сгенерированного Azure. Используя это подмножество, мы затем генерируем и запускаем языковую модель на меньшем наборе более релевантных данных. Это дает твит, более тесно связанный с ключевым словом, которое мы предоставляем системе.
Проблемы, с которыми я столкнулся
Самой большой проблемой на сегодняшний день было найти и внедрить языковую модель, которая хорошо работала бы с небольшим набором твитов. мы преодолели эту проблему, используя NLTK и модель языка триграмм. Следующей задачей было использовать это для создания собственного корпуса на основе данных, а не с помощью заранее предоставленных корпусов в библиотеках. Еще одной проблемой было использование Microsoft Azure Text Analytics API и размышления об ограничениях использования, учитывая большое количество анализируемых твитов. Мы преодолели эту проблему, просто обрабатывая их партиями по 1000 твитов каждую минуту, чтобы соответствовать лимиту в 1 тыс./60 с.
Достижения, которыми я горжусь
Улучшение стандартной модели нейронной сети, которая выдавала непонятные твиты, с помощью Azure, чтобы связать их с определенной темой. Я считаю, что это была действительно хорошая идея для использования небольшого набора данных.
Что я узнал
Я научился использовать NLTK, Microsoft Azure Text Analytics API и Tweepy (twitter API), чтобы создать полнофункционального твиттер-бота с использованием обработки естественного языка.
Что будет дальше Что напишет в Твиттере Трамп
Выпустить его в мир и, возможно, поместить в облачный экземпляр AWS или Azure для неограниченной работы.