Python 华为面试手撕代码 + 八股文,机器学习参数调节,损失函数,激活函数,线程、进程和协程

文章讨论了深度学习模型的优化策略,包括激活函数选择、参数初始化、批量大小、学习率调整、正则化、模型结构和数据增强。此外,还提到了通过修改模型结构如添加卷积层、注意力机制来提升模型效果。文章还涉及RNN的梯度消失和梯度爆炸问题以及解决方案,介绍了损失函数的种类,如MSE和交叉熵,以及激活函数在神经网络中的应用。最后,文章对比了Transformer与LSTM的优势,以及Python中的GIL和异步非阻塞编程概念。

一、手撕代码:力扣原题905

"""
给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。
基础版:你可以返回满足此条件的任何数组作为答案。
进阶版:要求在当前数组上原地完成。

示例:
输入:[3,1,6,5,2,4]
进阶版输出:[4,2,6,5,1,3]
基础版输出:[2,4,6,1,3,5],[4,6,2,3,1,5] 等等 也会被接受
"""
def functions(nums)->list:
    n = len(nums)
    left = 0
    right = n-1
    while left < right:
        if nums[left]%2 == 1 and nums[right]%2 == 1:
            right -= 1
        elif nums[left]%2 ==1:
            nums[left],nums[right] = nums[right],nums[left]
            left += 1
        else:
            left +=1
            right -=1
    return nums
nums = [3,1,6,5,2,4]
print(functions(nums))

二、八股文部分:有点紧张,忘了好多东西

1.深度学习模型优化的方法有哪些?

深度学习模型的优化策略包括以下几个方面:

(1)选择合适的激活函数:激活函数对模型的表达能力和收敛速度有很大影响,常用的激活函数包括ReLU、Sigmoid、Tanh等。

(2)初始化模型参数:模型参数的初始化对模型的收敛速度和性能有很大影响,常用的初始化方法包括Xavier初始化和He初始化等。

(3)批量大小(Batch Size):批量大小决定了每次更新模型参数的样本数,通常较大的批量大小可以使参数更新更加平稳,但也会增加内存和计算负担。

(4)学习率(Learning Rate):学习率是指每次参数更新时的步长,过大的学习率会导致模型震荡或者发散,过小的学习率会导致模型收敛缓慢,通常需要通过交叉验证等方法确定一个合适的学习率。

(5)正则化方法:正则化方法可以避免过拟合,但不同的正则化方法对模型性能和收敛速度的影响不同,需要根据实际情况选择合适的正则化方法。

(6)模型结构:模型结构决定了模型的表达能力和复杂度,需要根据实际问题选择合适的模型结构,常用的模型结构包括全连接网络、卷积神经网络、循环神经网络和注意力机制等。

(7)数据增强(Dat

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

医学小达人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值