编程学院

编程学院分类,是在编程过程中,记录开发心得体会的板块。目前主要涉及PHP、Python、Linux、前端等内容。

  • LeetCode刷题 NO.26 删除有序数组中的重复项 (简单)

    给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。

    Python 569 2022-05-31
  • Pytorch Sequential快速搭建神经网络

    上一篇文章中,介绍了Pytorch的自动求导机制,可以帮我们通过反向传播,求解参数的导数。但模型中的神经层结构,还是需要自己构建,会很麻烦,本文介绍Pytorch中通过Sequential模型容器,快速搭建神经网络的方法。

    人工智能 639 2022-05-30
  • LeetCode刷题 NO.21 合并两个有序链表 (简单)

    将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例,输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4]

    Python 523 2022-05-30
  • LeetCode刷题 NO.20 有效的括号 (简单)

    给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:1)左括号必须用相同类型的右括号闭合。2)左括号必须以正确的顺序闭合。

    Python 521 2022-05-29
  • Pytorch Autograd简化神经网络模型

    前面文章中,为了更好的理解神经网络模型,使用Numpy手写了一个两层的神经网络模型,但如果网络层数增多,激活函数变得复杂的情况下,这种硬解的方式会非常麻烦。可喜的是,Pytorch给我们提供了自动求导(Autograd)的功能,可以在计算损失后,自动反向传播求导。

    人工智能 580 2022-05-29
  • LeetCode刷题 NO.14 最长公共前缀 (简单)

    编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。输入:strs = ["flower","flow","flight"],输出:"fl"。

    Python 505 2022-05-28
  • 手写AI算法之Numpy实现两层神经网络

    很多人可以使用框架,快速搭建神经网络,但对神经网络的实现及反向传播一直是一知半解。本文用Numpy,通过一个隐层连接一个ReLU,再使用L2 Loss,反向传播,原生实现一个两层的线性神经网络,帮大家更好的理解神经网络的结构。

    人工智能 655 2022-05-28
  • Pytorch深度学习基础之Tensor

    Pytorch是一个基于Python的科学计算库,类似于Numpy,但它可以使用GPU运算,也可以用它定义深度学习模型,并训练。本文介绍Pytorch基本数据类型Tensor,Tensor类似于Numpy的ndarray,可以在GPU上进行加速运算。

    人工智能 744 2022-05-27
  • LeetCode刷题 NO.13 罗马数字转整数 (简单)

    给定一个罗马数字,将其转换成整数。例如, 罗马数字 2 写做 II ,即为两个并列的 1 。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。

    Python 587 2022-05-27
  • Pytorch RNN根据正弦sin模拟余弦cos曲线

    循环神经网络(RNN)让神经网络有了记忆,能够更好的模拟序列化的数据。虽然RNN的原理很简单,但代码特别是参数上,需要花一些时间去理解。以下我们用Pytorch中的RNN类,实现用sin曲线预测cos曲线的模型。

    人工智能 1122 2022-05-26
  • LeetCode刷题 NO.9 回文数 (简单)

    给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。

    Python 533 2022-05-26
  • EasyOCR图片文字识别并标注位置

    EasyOCR是一款支持多国语言,且轻量的文字识别模块,本文以一张真实的图片,带大家使用EasyOCR来做一个图片文字识别,并利用EasyOCR返回的坐标位置,将文字位置在图片中标注出来。

    人工智能 2432 2022-05-25
  • LeetCode刷题 NO.1 两数之和 (简单)

    给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

    Python 545 2022-05-25
  • 概率类模型评估指标之对数损失(Log Loss)

    前文介绍了概率类模型的第一种评估指标:布里尔分数,本文介绍另外一种,对数损失,又叫对数似然或者交叉熵损失,它的定义是,对于一个给定的概率分类器,在预测概率为条件的情况下,真实概率发生的可能性的负对数。值越小,效果越好。

    人工智能 1177 2022-05-24
  • 概率类模型评估指标之布里尔分数(Brier Score)

    混淆矩阵和精准率可以帮我们了解贝叶斯的分类结果,然而,选择贝叶斯分类,大多数时候并不是为了单纯追求效果,而是希望看到预测的相关概率。所以对于概率类模型,还要了解两种独有的评估指标。本文先介绍第一种:布里尔分数(Brier Score)。

    人工智能 3329 2022-05-23
  • Sklearn高斯分布下的朴素贝叶斯(GaussianNB)

    本文先介绍高斯朴素贝叶斯(GaussianNB),它通过假设P(xi|Y)服从高斯分布(即正态分布),来估计每个特征下每个类别上的条件概率。以下我们用鸢尾花数据集,对高斯朴素贝叶斯做一些简单探索。

    人工智能 2518 2022-05-22
  • Sklearn使用分箱处理非线性回归问题

    前文介绍了多项式回归的方式,来提升非线性数据在线性回归模型上的表现,本文介绍另一种重要方法,对数据进行分箱,也就是离散化。

    人工智能 1152 2022-05-21
  • 动态规划之钢条切割问题

    某公司出售钢条,出售价格与钢条长度之间的关系如下表。问题:现有一段长度为n的钢条,求切割钢条方案,使得总收益最大。

    Python 727 2022-05-21
  • Sklearn多项式回归拓展特征项解释性

    前一篇文章介绍了多项式回归拓展后,对特定数据集有很好的拟合效果,那么拓展后的特征项是否具有解释性呢?本文以鸢尾花数据集,来对拓展后的特种项,做一个解释说明。但鸢尾花数据集拓展后的拟合效果并没有多大提高,就不做进一步回归拟合了。

    人工智能 655 2022-05-20
  • 贪心算法之活动选择问题

    假设有n个活动,这些活动要占用统一场地,而场地在某时刻只能供一个活动使用。每个活动都有一个开始时间si和结束时间fi(整数),表示活动在[si, fi)区间内占用场地。问:安排哪些活动能够使该场地举办的活动个数最多?

    Python 571 2022-05-20