python - ValueError:形状(5,640)和(26,26)未对齐:640(dim 1)!= 26(dim 0)
问题描述
我使用极限学习机 (ELM) 模型作为回归进行预测。我使用 K-fold 来验证模型预测。但执行以下代码后,我收到此消息错误:
ValueError: shapes (5,640) and (26,26) not aligned: 640 (dim 1) != 26 (dim 0)
我该如何解决这个问题我的代码:
#---------------------------------(import dataset_without divided)---------
dataset = pd.read_excel("ss.xls")
X=dataset.iloc[:,:-1]
y=dataset.iloc[:,-1:]
#----------Scaler----------
scaler = MinMaxScaler()
X=scaler.fit_transform(X)
kfolds = KFold(n_splits=5, random_state=16, shuffle=False)
train_folds_idx = []
valid_folds_idx = []
for train_index, valid_index in kfolds.split(dataset.index):
train_folds_idx.append(train_index)
valid_folds_idx.append(valid_index)
#------------------------INPUT------------------
input_size = X.shape[1]
#---------------------------(Number of neurons)-------
hidden_size = 26
#---------------------------(weights & biases)------------
input_weights = np.random.normal(size=[input_size,hidden_size])
biases = np.random.normal(size=[hidden_size])
#----------------------(Activation Function)----------
def relu(x):
return np.maximum(x, 0, x)
#--------------------------(Calculations)----------
def hidden_nodes(X):
G = np.dot(X, input_weights)
G = G + biases
H = relu(G)
return H
#Output weights
output_weights = np.dot(pinv2(hidden_nodes(train_folds_idx)), valid_folds_idx)
#------------------------(Def prediction)---------
def predict(X):
out = hidden_nodes(X)
out = np.dot(out, output_weights)
return out
#------------------------------------(Make_PREDICTION)--------------
prediction = predict(valid_folds_idx)
解决方案
推荐阅读
- c++ - Linux Ubuntu-/usr/bin/ld: 找不到 -lbz2
- r - 用户定义的 S3 组通用函数如何在 R 中工作?
- node.js - 如何在服务器端 ExpressJs 上更改密钥名称 API
- excel - 动态平均前 9 个整数中的最低 4 个
- ethereum - 使用 web3 的 Object.exports.toBuffer 的类型无效
- pandas - 如何遍历 dataFrame 中的 value_counts?
- sql - Impala - 如何查询随时间销售的产品的累积不同数量?
- python - 无法将 BigQuery 数据导入 GCP AI Notebook
- python - Selenium Python:Element Click 或 .send_keys 在此网页上均不起作用
- sql - Oracle SQL 多值参数 - ORA-00920:无效的关系运算符