【发布时间】:2018-04-09 22:38:40
【问题描述】:
我正在开展一个项目,该项目涉及必须使用以下形式的预处理数据。
上面也给出了数据说明。目标是预测书面数字是否与所述数字的音频匹配。首先,我将形式 (N,13) 的语音数组转换为时间轴上的均值:
这将为口语中的每个数组创建一致的 (1,13) 长度。为了在一个简单的香草算法中对此进行测试,我将两个数组压缩在一起,以便我们创建一个形式为 (45000, 2) 的数组,当我将其插入 LogisticRegression 类的 fit 函数时,它会抛出以下错误:
我做错了什么?
代码:
import numpy as np
from sklearn.linear_model import LogisticRegression
match = np.load("/srv/digits/match_train.npy")
spoken = np.load("/srv/digits/spoken_train.npy")
written = np.load("/srv/digits/written_train.npy")
print(match.shape, spoken.shape, written.shape)
print(spoken[0].shape, spoken[1].shape)
def features(signal, function):
new = np.copy(signal)
for i in range(len(signal)):
new[i] = function(new[i], axis=0)
return new
spokenMean = features(spoken, np.mean)
print(spokenMean.shape, spokenMean[0])
result = np.array(list(zip(spokenMean,written)))
print(result.shape)
X_train, X_val, y_train, y_val = train_test_split(result, match, test_size =
0.33, random_state = 123)
model = LogisticRegression()
print(X_train.shape, y_train.shape)
model.fit(X_train, y_train)
yh_val = model.predict(X_val)
【问题讨论】:
-
spokenMean 和 ytrain 的形状是什么?
-
@Siddharth speakMean 不应该在 fit 函数中,当然应该是 X_train。 X_train 的形状为 (30150,2); y_train 的形状为 (30150,)。
-
X_train 是否仍然出错?
-
@MennoVanDijk 理想情况下,您应该创建一个人们可以运行的示例。无法从屏幕截图中复制和粘贴代码。
-
@MennoVanDijk: stackoverflow.com/help/mcve
标签: python arrays numpy machine-learning data-science