Twitter 감정 분석 Python 프로그램을 구축하는 방법은 무엇입니까? [단계별 자습서]
게시 됨: 2020-08-07원천
기업이 점점 데이터 중심으로 변해감에 따라 '감정 분석'이라는 머신 러닝 기술이 나날이 큰 인기를 얻고 있습니다. 디지털 데이터/텍스트를 자연어 처리(NLP)를 통해 분석하여 텍스트에 표현된 양극성(긍정, 부정, 중립), 느낌, 감정(분노, 행복, 슬픔 등)을 찾습니다.
트위터는 전 세계적으로 가장 포괄적인 실시간 공개 대화 소스 중 하나이기 때문에 기업, 정치 단체 등은 대상 시장의 감정/의견을 이해하거나 경쟁자 시장을 조사하기 위해 트윗의 '감정 분석'을 수행하는 데 관심이 있습니다. . 그들이 목적을 위해 프로그램을 사용할 준비가 되어 있지만 특정 기준 및 도메인에 특정한 높은 수준의 정확도로 예측을 달성하기 위해 가장 좋은 방법은 맞춤형 Twitter 감정 분석 Python 모델 또는 프로그램을 만드는 것입니다.
목차
단계별 자습서: Python을 사용하여 Twitter 감정 분석 프로그램 만들기
이 튜토리얼은 Python을 사용하여 Twitter 감성 분석 프로그램을 만드는 것을 목표로 합니다. 결과 프로그램은 트위터에서 가져온 트윗을 구문 분석하고 극성 및 주관성과 같은 텍스트의 감정을 이해할 수 있어야 합니다.
전제 조건
1. 가장 중요한 것은 Python의 기본적인 코딩/프로그래밍 지식입니다.
2. 컴퓨터에 설치할 도구:

- 파이썬
- 라이브러리: Tweepy, text blob, word cloud, pandas, NumPy, matplotlib
(Tweepy는 Python이 Twitter 플랫폼과 통신할 수 있도록 하는 Twitter API용 공식 Python 라이브러리입니다.)
3. 트위터 계정
4. Twitter 앱을 만들고 Twitter에서 인증해야 합니다. 프로그래밍에 필요한 '소비자 키 및 액세스 토큰'을 가져오는 데 필요합니다.
목적을 위해 만든 Twitter 앱이 아직 없는 경우 만드는 방법은 다음과 같습니다.
더 읽어보기: Python NumPy 튜토리얼: 예제를 통해 Python Numpy 배우기
트위터 앱을 만드는 방법?
- Twitter 개발자 사이트( dev.twitter.com)로 이동합니다.
- 트위터 계정으로 로그인
- '내 애플리케이션'으로 이동
- '새 애플리케이션 만들기' 를 클릭 합니다.
- 다음으로 아래와 같이 양식을 작성해야 합니다.
원천
- 그런 다음 '내 액세스 토큰 만들기'를 클릭합니다.
- 다음 페이지의 '애플리케이션 유형' 열에서 '읽기 및 쓰기' 옵션을 선택합니다.
소비자 키, 소비자 암호, 액세스 토큰, 액세스 토큰 암호 등과 관련된 모든 필수 세부 정보가 포함된 Twitter 앱 OAuth 설정이 제공됩니다. 이러한 API 자격 증명을 사용하면 트윗을 가져올 수 있으므로 이러한 세부 정보를 기록해 두어야 합니다. 트위터에서. 컴퓨터에 CSV 파일로 저장하는 것이 더 낫습니다. 후자는 CSV 파일을 프로그램에 직접 업로드하여 API 자격 증명을 읽을 수 있습니다.
Twitter 감정 분석 Python 프로그램 만들기 시작하기
1. 라이브러리 가져오기 : Tweepy, text blob, word cloud, pandas, NumPy, matplotlib
2. Twitter 앱 인증: 다음으로 Twitter API 자격 증명이라고도 하는 Twitter App OAuth 설정 자격 증명을 사용하여 Twitter 앱을 인증해야 합니다. 이를 위해 아래 이미지와 같은 코드를 사용하여 인증 객체를 생성해야 합니다.
원천
Twitter API 자격 증명을 채우려면 CSV 파일을 업로드하거나 자격 증명 세부 정보를 수동으로 복사하여 붙여넣을 수 있습니다.
3. Twitter 사용자로부터 트윗 가져오기: 이제 트윗을 가져오려면 먼저 트윗에 표현된 감정을 이해하기 위해 구문 분석하려는 트윗의 Twitter 사용자를 선택해야 합니다. 의 말을하자; UserXYZ의 100개 트윗에 대한 감정 분석을 수행하여 'UserXYZ'의 트윗이 긍정적인지 부정적인지 중립적인지 확인하고 싶습니다.
트윗을 가져오는 코드
게시물 = api.user_timeline(screen_name = ”UserXYZ”, 개수= 100, Lang =”en”, tweet_mode=“extended”)
위의 명령을 실행하면 트윗이 표시됩니다.
4. 데이터 프레임 생성: 이제 가져온 트윗에 대한 데이터 프레임을 생성해야 합니다. df의 첫 번째 열 이름을 'Tweets'로 지정하고 100개 트윗을 분석하기 때문에 100개 행에 걸쳐 있는 모든 트윗을 포함한다고 가정해 보겠습니다.
Df = pd.dataframe( [게시물의 트윗에 대한 tweet.full_text] , columns=[ '트윗'])
5. 텍스트 정리: @, #, 리트윗, URL의 하이퍼링크 등과 같은 원치 않는 기호가 많기 때문에 트윗 텍스트를 정리하는 것은 트위터 감정 분석 파이썬 프로그램의 성공에 중요합니다. 여기에서 귀하의 python'' 라이브러리가 사용됩니다.
주관성 및 극성 가져오기 : 텍스트를 정리했으면 TextBlob Python 라이브러리를 사용하여 트윗의 주관성과 극성을 가져오는 두 가지 함수를 만들어야 합니다. 주관성은 텍스트가 얼마나 독단적인지 보여주고 극성은 텍스트의 긍정 또는 부정을 나타냅니다. 주관성과 극성을 호스트하기 위해 데이터 프레임에 두 개의 열을 더 만드는 Python 스크립트를 작성하는 것이 가장 좋습니다. 이제 데이터 프레임에는 3개의 열이 있습니다(첫 번째는 트윗, 두 번째는 주관, 세 번째는 극성).

주관 및 극성 기능을 생성하기 위한 코드는 다음과 같습니다.
원천
코드를 실행하면 각 열에 표시된 각 트윗의 주관성과 극성 점수를 볼 수 있습니다. TextBlob은 1에서 -1까지의 범위 내에서 극성을 설명합니다. 따라서 트윗의 극성이 -0.4이면 약간 부정적이고 주관성이 0.6이면 상당히 주관적입니다.
6. 다음으로, 단어 구름은 감정 분석에 사용되는 데이터 시각화 기술로 널리 사용되기 때문에 Twitter 감정 분석 Python 프로그램 에 단어 구름을 포함하도록 선택할 수 있습니다. 단어 의 크기는 중요도를 나타냅니다.
WordCloud의 예:
원천
이미 가져온 matplotlib, Pandas 및 WordCloud 라이브러리가 실행됩니다. 단어 구름을 먼저 구성하려면 변수를 만들어야 합니다. 데이터 프레임의 '트윗' 열에 있는 모든 트윗을 나타내기 위해 이름을 'allwords'로 지정하겠습니다.
WordCloud 생성을 위한 코드
allwords = ' '.join( [df의 twts에 대한 twts [ 'Tweets' ]] )
WordCloud = WordCloud(너비 =xxx, 높이 =xxx, randon_state =xxx, max_font_size =xxx. 생성(모든 단어)
plt.imshow(워드클라우드)
plt.axis("꺼짐")
plt.show()
7. 각 트윗에 대한 극성 점수가 있으므로 트윗에 대한 긍정적, 부정적 및 중립적 분석을 계산할 수 있습니다. 이를 위해 '분석'이라는 함수를 생성해야 합니다. 여기에서 점수 0을 중립에, <0을 음수, >0을 양수에 할당할 수 있습니다.
방어 분석(점수):
점수 < 0인 경우
'음수'를 반환합니다.
엘리프 점수 == 0
'중립' 반환
또 다른,
'양수'를 반환합니다.
다음으로, 트윗의 감정 분석 결과를 호스팅하려면 데이터 프레임에 새 열을 만들고 이름을 'TwtAnalysis'로 지정한 후 다음 코드를 작성합니다.
df [ 'TwtAnalysis' ] = df [ '극성' ]. 적용(분석)
8. 새 데이터 프레임에는 'TwtAnalysis'라는 열이 추가되고 극성 점수에 따라 각 트윗을 긍정적, 부정적 또는 중립적으로 참조합니다. 아래 이미지에 예가 나와 있습니다.
원천

9. 트윗을 긍정적, 부정적, 중립적으로 분류하면 Twitter 감정 분석 Python 프로그램 을 계속 구축할 수 있습니다. 다음과 같은 다양한 형식으로 데이터를 표현합니다.
- 긍정적, 부정적 또는 중립적 트윗의 비율을 가져옵니다.
- 모든 긍정적인 의견이나 부정적이거나 중립적인 트윗을 별도로 인쇄하십시오.
- 긍정적, 부정적, 중립적 트윗 등의 시각적 감정 분석 차트를 만듭니다.
더 읽어보기: 기계 학습을 위한 상위 9개 Python 라이브러리
결론
Twitter 감정 분석 Python 프로그램 , 에서 설명 이 기사는 단지 하나입니다 그런 프로그램을 만드는 방법. 개발자는 데이터 읽기에서 최대한의 정확성을 달성하기 위해 사양과 일치하도록 다양한 방법으로 프로그램을 사용자 지정할 수 있습니다. 이는 활발한 개발자 커뮤니티와 너무 많은 라이브러리가 지원하는 훌륭한 언어인 Python을 통해 프로그래밍하는 것의 장점입니다.
Python은 기계 학습 및 데이터 과학 분야에서 엄청난 범위를 보유하고 있습니다. 프로그래밍에 잠시 빠져 있는 사람들은 머신 러닝이 프로그래밍의 미래에 계속해서 획기적인 발전 중 하나가 될 것이라는 것을 잘 알고 있습니다.
포괄적이고 구조화된 학습 경험을 원하거나 기계 학습에 대해 더 자세히 알고 싶다면 일하는 전문가를 위해 설계되었으며 450시간 이상을 제공하는 IIIT-B & upGrad의 기계 학습 및 AI PG 디플로마를 확인하십시오. 엄격한 교육, 30개 이상의 사례 연구 및 과제, IIIT-B 동문 자격, 5개 이상의 실질적인 실습 캡스톤 프로젝트 및 최고의 기업과의 취업 지원.
소셜 미디어에서 감정 분석의 기능적 중요성은 무엇입니까?
소셜 미디어 시대에 소비자 의견은 브랜드를 만들거나 깰 수 있는 무한한 힘을 갖고 있습니다. 감성 분석은 소비자의 의견과 감정 이면의 원동력을 정확하게 파악하는 가장 좋은 방법입니다. 감정 분석에서 제공되는 데이터를 사용하여 기업은 대상 고객을 찾고, 브랜드에 대한 소셜 미디어 영향 요인을 식별하고, 신흥 시장 동향을 파악할 수 있습니다. 또한 소셜 미디어 플랫폼에 대한 감정 분석은 브랜드 상태에 대한 포괄적인 아이디어를 제공합니다. 기업은 새롭게 출시된 제품과 서비스에 대한 정직한 소비자 피드백을 받아 개선할 수 있습니다. 또한 개선 범위 및 문제 해결을 보다 잘 식별하여 온라인 평판을 처리하는 데 효과적입니다.
파이썬을 스스로 배울 수 있습니까?
프로그래밍 경험이 어느 정도 있다면 스스로 Python 학습을 시작할 수 있습니다. 파이썬은 비교적 단순한 구문 구조를 가지고 있으며 직관적이기 때문에 초보자도 쉽게 이해할 수 있습니다. 게다가, 패키지를 설치하고 어디에서나 컴퓨터에서 실행하기 쉽습니다. Python 과정에 등록하고 코딩 부트캠프에 참석하면 학습 속도를 높일 수 있습니다. 항상 기꺼이 지원을 확대하려는 활발한 개발자 커뮤니티, 풍부한 학습 리소스 및 문서를 통해 초보자는 약 7-8주 만에 Python의 기초를 배울 수 있습니다.
Python과 C++ 중 어느 것이 더 배우기 어렵습니까?
Python과 C++는 완전히 다른 동작과 기능을 가진 완전히 다른 프로그래밍 언어입니다. 그러나 둘 다 객체 지향 프로그래밍을 강력하게 지원합니다. 그러나 전체 Python 프레임워크를 고려하면 C++보다 간단하고 훨씬 쉽고 빠르게 배울 수 있습니다. 실제로 많은 사람들이 간단한 코딩이 어떤 느낌인지 경험하기 위해 Python을 배웁니다. Python은 무료 오픈 소스이며 복잡한 기계 학습 응용 프로그램을 개발할 때 엄청난 안정성과 용이성을 제공합니다. C++는 성능 면에서 더 효율적이지만 기계 학습 프로젝트에서는 Python보다 적합하지 않은 것으로 간주됩니다.