返回信息流我的keras model预测分类结果的时候第一次是正确的,之后在预测结果就不变了,有人遇到过跟我一样的情况吗
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #33585同步于 2019/3/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖
keras 连续预测结果相同
thz201421
2019/3/26镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
model = Sequential()
model.add(Conv2D(filters=32, kernel_size=(5, 5), padding='Same', activation='relu', input_shape=(150, 150, 3)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(filters=64, kernel_size=(3, 3), padding='Same', activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
model.add(Conv2D(filters=96, kernel_size=(3, 3), padding='Same', activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
model.add(Conv2D(filters=96, kernel_size=(3, 3), padding='Same', activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
model.add(Flatten())
model.add(Dense(512))
model.add(Activation('relu'))
model.add(Dense(5, activation="softmax"))
model.load_weights("./temp2.h5")
IMG_SIZE=150
import cv2
import numpy as np
def readData(path):
X = []
img = cv2.imread(path, cv2.IMREAD_COLOR)
img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
X.append(np.array(img))
return X
def server():
import socket
import os
sk = socket.socket()
print(sk)
address = ('127.0.0.1', 8127)
sk.bind(address) # 将本地地址与一个socket绑定在一起
sk.listen(3) # 最多允许有3个客户称呼
print('waiting........ ')
BASE_DIR = os.path.dirname(os.path.abspath(__file__)) # 26:11,当前目录
while 1:
conn, addr = sk.accept()
while 1:
data = conn.recv(1024) # 缓冲区大小,接收文件的个数 第一次获取请求
cmd, filename, filesize = str(data, 'utf8').split('|') # 第一次提取请求信息,获取 post name size
path = os.path.join(BASE_DIR, 'rece', filename)
filesize = int(filesize)
f = open(path, 'ab')
has_receive = 0
while has_receive != filesize:
data = conn.recv(1024) # 第二次获取请求,这次获取的就是传递的具体内容了,1024为文件发送的单位
f.write(data)
has_receive += len(data)
f.close()
data=readData(path)
send = []
send.append(r)
ret = model.predict(send, batch_size=1)
print("nparray:",ret)
list=ret.tolist()
import pickle
conn.send(pickle.dumps(list))
conn.close()
break
server()