用于预测的标准化数据

2024-10-04 09:18:49 发布

您现在位置:Python中文网/ 问答频道 /正文

很抱歉,我对机器学习的概念还不熟悉,但我正在尝试制作一个这样的歌曲类型分类器 在从csv文件中获取所有特征后,我使用min_max对数据进行了规范化,并对模型进行了培训

X = data.drop(data.columns[len(data.columns)-1], axis=1, inplace=True)
X = data.values #returns a numpy array
myscaler = preprocessing.MinMaxScaler()
x_scaled = myscaler.fit_transform(X)
X = pd.DataFrame(x_scaled)

训练模型,但现在在预测阶段,我想预测一首新歌的类型,所以我得到了这首歌,并经历了我在训练中用于特征提取的过程。我不确定我是否应该标准化这个新数据。当我没有标准化它时,我一直得到相同的预测,我首先尝试标准化它得到了错误的模型形状,然后我尝试重新塑造它,但我认为我仍然没有得到与训练标准化相同的结果,因为即使预测训练数据集中的歌曲也会给出错误的预测,我确信我的模型是正确的,精度为0.8

scaler = StandardScaler()
song = np.array(make_dataset_ml("C:\\Users\\USER\\Desktop\\sem8\\AI\\project\\try\\disco.mp3")).reshape(-1,1)
myscaler = preprocessing.MinMaxScaler()
scaled_song = myscaler.fit_transform(song)
song = pd.DataFrame(scaled_song.reshape(1,-1))
prediction = model.predict(song)

这是我在规格化后获得正确形状的唯一方法,make_dataset_ml函数是一个返回经过训练的特征的函数


Tags: columns数据模型类型datasongtransform特征