【头歌】梯度下降法

第1关:模型优化基础

1、解决最优化问题的手段主要有哪些?
A、使用科研结果中最好的模型,放弃最佳的模型
B、做试验,比优劣
C、经验积累,主观判断
D、建立优化模型,求最优策略

【答案】BCD

2、最优化就是在一定条件下,寻求使目标最大或者最小的决策。
A、正确
B、错误

【答案】B

第2关:梯度下降

def student(x, y):
    epsilon = 0.00001
    alpha = 0.01
    a = 0
    b = 0
    m = len(x)
    error0 = 0
    error1 = 0
    # ********* Begin *********#
    while True:
        for i in range(m):
            diff1 = ((a * x[i] + b) - y[i]) * x[i] * (2 / m)
            diff2 = ((a * x[i] + b) - y[i]) * (2 / m)
            a -= alpha * diff1
            b -= alpha * diff2
        error1 = 0
        for lp in range(len(x)):
            error1 += (y[lp] - (a * x[lp] + b))
        if abs(error1 - error0) < epsilon:
            print(int(round(a)))
            print(int(round(b)))
            break
        else:
            error0 = error1
        # ********* End *********#

你可能感兴趣的:(头歌,算法,python,开发语言)