下面的python代码可以很好地找到梯度下降:
def gradientDescent(x, y, theta, alpha, m, numIterations):
xTrans = x.transpose()
for i in range(0, numIterations):
hypothesis = np.dot(x, theta)
loss = hypothesis - y
cost = np.sum(loss ** 2) / (2 * m)
print("Iteration %d | Cost:
我正在尝试实现线性回归的梯度下降算法。我想我理解了数学部分,但它在Python中不起作用。
from sklearn.datasets import load_boston
import pandas as pd
import numpy as np
import random
data = load_boston()
df = pd.DataFrame(data['data'], columns=data['feature_names'])
y = data['target']
X = df.TAX
def RMSE(y, y_hat):
我有一个二进制音分类器。我有一个特征集,是从大小为48的音频中提取出来的。我有一个模型(多层神经网络),它在测试和验证集上的准确率约为90%。(没有标准化或标准化)
我看到,特性值主要围绕着-10 +10。但也有某些特征,平均值为4000。看到特性中的不成比例值,我认为一些特性缩放可能会改进一些东西。因此,使用scikit学习工具,我尝试了以下几种方法:
- Simply removing the means from features
- Normalizer
- Min max scaler
- Robust Scaler
所有这些都使我的准确度下降到~ %50!(