python - Keras 预测在一类中收集
问题描述
我正在使用 keras 和 python 2.x 并尝试对数据集进行分类。问题是预测总是集中在一个类中。
我是 keras 的新手,我该怎么办?
这是我的混淆矩阵;
Confusion Matrix
[[ 0 37 0]
[ 0 823 0]
[ 0 26 0]]
这是我的报告。
precision recall f1-score support
-1 0.00 0.00 0.00 37
0 0.93 1.00 0.96 823
1 0.00 0.00 0.00 26
平均/总计 0.86 0.93 0.89 886
这是我的代码:
dataset= pd.read_csv("kartnEgitim.csv" )
giris=dataset.iloc [40:,1:20].get_values()
cikis=dataset.iloc [40:,20].get_values()
from sklearn.model_selection import train_test_split
egitimData, testData, egitimEtiket, testEtiket = train_test_split(giris, cikis, test_size = 0.2)
#from sklearn.preprocessing import StandardScaler
#sc = StandardScaler()
#egitimData = sc.fit_transform(egitimData)
#testData = sc.transform(testData)
egitimData=keras.utils.normalize(egitimData,axis=1)
testData=keras.utils.normalize(testData,axis=1)
model=Sequential()
model.add(Dense(6,input_dim=19,activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(6,activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(3))
model.add(Activation('softmax'))
model.compile(optimizer='adam' ,loss='sparse_categorical_crossentropy' , metrics=['accuracy'])
model.fit(egitimData, egitimEtiket,epochs=10,batch_size=64,class_weight='auto') # ,batch_size=64
val_loss, val_acc=model.evaluate(testData,testEtiket)
print(val_loss,val_acc)
# Predicting the Test set results
predictions = model.predict_classes(testData)
from sklearn.metrics import confusion_matrix,classification_report
print('Confusion Matrix')
cm = confusion_matrix(testEtiket, predictions, labels=[-1, 0, 1])
print (cm)
print('Classification Report')
print(classification_report(testEtiket, predictions,target_names = ['-1', '0', '1']))
我是 keras 的新手,我该怎么办?
解决方案
推荐阅读
- matlab - 启动定时器功能后编辑它
- google-cloud-platform - 无法在谷歌云上部署虚拟机
- java - 搜索算法优化
- windows - 使用 WINAPI 找出特殊文件上的进程活动句柄(锁定)
- user-interface - Flutter - 如何实现“草率”的后退手势以返回上一个屏幕?
- amazon-web-services - 是否可以从 Lambda 中部署 AWS CDK 堆栈?
- python - 如何在德威获取远程地址
- python - Django:QuerySet 过滤器没有按预期工作
- javascript - 减少 JS 错误行为中的对象?
- python - 为什么当我执行“runserver”时,它会将我重定向到我的项目中没有的 url 路径