|

GPT-4 ile Pozitif ve Negatif Yorum Analizi



alicangonullu tarafından 2023-04-26 04:26:30 tarihinde yazıldı. Tahmini okunma süresi 2 dakika, 39 saniye.




Disclaimer: The information provided in this blog post is intended for educational and informational purposes only. It is not intended to encourage or promote any illegal or unethical activities, including hacking, cyberattacks, or any form of unauthorized access to computer systems, networks, or data.

Yasal Uyarı : Bu blog yazısında sağlanan bilgiler yalnızca eğitim ve bilgilendirme amaçlıdır. Bilgisayar korsanlığı, siber saldırılar veya bilgisayar sistemlerine, ağlara veya verilere herhangi bir şekilde yetkisiz erişim de dahil olmak üzere herhangi bir yasa dışı veya etik olmayan faaliyeti teşvik etme veya teşvik etme amacı taşımaz.

Merhabalar.

Bu yazımda sizlere GPT-4 ile yaptığımız Pozitif-Negatif Yorum Analizi programımızın yapım aşamalarını anlatmaya çalışacağım. Şimdiden hepinize iyi okumalar dilerim.

Öncelikle GPT-4 nedir bu konuyu basitçe açıklayalım.

GPT-4 Nedir ?

GPT-4, ChatGPT olarak bildiğiniz GPT-3'ün üst modelidir. Bing AI gibi sistemlerin altyapısında kullanılan GPT-4, bir önceki modeline göre daha hızlı, daha anlamlı veriler üretebilen ve daha yaratıcı bir altyapıdır. Bir önceki model (GPT-3) kopleks problemleri çözmekte zorlanırken GPT-4 bu konuda çok daha başarılı bir iş çıkartmaktadır. Birazdan da bunu daha net şekillerde göreceğiz.

GPT-4'ü anladığımıza göre artık GPT-4 ile analizimizi yapmaya başlayabiliriz.

Colab ve GitHub linkleri için yazılara tıklayın.

Öncelikle gerekli kütüphanelerimizi yüklüyoruz.

!pip install pandas
!pip install numpy
!pip install matplotlib
!pip install plotly
!pip install seaborn
!pip install nltk
!pip install wordcloud
!pip install tqdm
!pip install vaderSentiment

Bu kütüphaneleri yükledikten sonra kütüphanelerimizi import ediyoruz.

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px
import plotly.graph_objs as go
import plotly.offline as pyo
from plotly.subplots import make_subplots
from nltk.probability import FreqDist
from nltk.stem import WordNetLemmatizer
from nltk.corpus import stopwords
from nltk.stem import SnowballStemmer
from nltk import pos_tag
from nltk.tokenize import word_tokenize
from wordcloud import WordCloud
from tqdm.auto import tqdm
from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer
import warnings
import re
import string
import nltk

Ardından basit ayarları içeren kütüphaneleri aktif ediyoruz.

warnings.filterwarnings('ignore')
plt.rc('figure',figsize=(17,13))
pyo.init_notebook_mode()

Veri setimizi indiriyoruz

!curl https://raw.githubusercontent.com/sharmaroshan/Twitter-Sentiment-Analysis/master/train_tweet.csv --output train_tweet.csv

Şimdi CSV dosyamızı yükleyip modelimizi inceliyoruz

df = pd.read_csv('train_tweet.csv')
print('Rows :',df.shape[0])
print('Columns :',df.shape[1])
print('\nFeatures :\n',df.columns.tolist())
print('\nMissing values :',df.isna().sum().values.sum())
print('\nUnique values :',df.nunique())

Şimdi modelimizi eğitmeye ve Pozitif, Negatif ve Diğer olarak Array içerisine gruplandırmaya başlıyoruz

analyser = SentimentIntensityAnalyzer()
scores = []
durum = []

for i in range(len(df['tweet'])):
  score = analyser.polarity_scores(df["tweet"][i])
  score = score['compound']
  scores.append(score)
for i in scores:
  if i >= 0.05:
    durum.append('Pozitif')
  elif i<=(-0.05):
    durum.append('Negatif')
  else:
    durum.append('Normal')

Örnek bir veri bekliyoruz

df['duygu_durumu']=pd.Series(np.array(durum))
df.head(3)

Tüm bunların ardından verilerimizi tablo olarak alıyoruz.

temp=df.groupby('duygu_durumu')['tweet'].count().reset_index().sort_values(by='duygu_durumu', ascending=False)
temp.style.background_gradient(cmap='Blues')

Sonuç çıktımız şu şekilde oluyor

Okuduğunuz için teşekkürler!