1. 程式人生 > >基於keras 的 python情感分析案例IMDB影評情感分析

基於keras 的 python情感分析案例IMDB影評情感分析

(來源-魏貞原老師的深度學習一書)

情感分析是自然語言處理中很重要的一個方向,目的是讓計算機理解文字中包含的情感資訊。在這裡將通過IMDB(網際網路電影資料庫)收集的對電影評論的資料集,分析某部電影是一部好電影還是一部不好的電影,藉此研究情感分析問題。

1.匯入資料

為了便於在模型訓練中使用資料集,在keras提供的資料集將單詞轉化成整數,這個整數代表單詞在整個資料集中的流行程度。

匯入資料之後,將訓練資料集和評估資料集合並,並檢視相關統計資訊,如中值和標準差,結果通過箱線圖和直方圖展示,程式碼如下:

from keras.datasets import imdb
import numpy as np
from matplotlib import pyplot as plt
(x_train, y_train), (x_validation, y_validation) = imdb.load_data()

#合併訓練資料集和評估資料集
x = np.concatenate((x_train , x_validation), axis=0)
y = np.concatenate((y_train , y_validation), axis=0)

print('x shape is %s , y shape is %s' % (x.shape, y.shape))
print('Classes: %s' % np.unique(y))

print('Total words: %s' % len(np.unique(np.hstack(x))))

result = [len(word) for word in x]
print('Mean: %.2f words (STD: %.2f)' % (np.mean(result), np.std(result)))

#圖形表示
plt.subplot(121)
plt.boxplot(result)
plt.subplot(122)
plt.hist(result)
plt.show()