Skip to content

Latest commit

 

History

History
81 lines (46 loc) · 2.83 KB

README.md

File metadata and controls

81 lines (46 loc) · 2.83 KB

fzProject

Flipped Classroom project 反转课堂项目

Project1 卷积和池化之基础版

题目要求

  1. 使用 C 语言(或伪代码)编写实现“一维卷积和池化”,对一维卷积后的结果进行池化操作。
  2. 自己构建大于等于 $100$ 个数据的一维数组,对其进行卷积和池化,卷积核长度需大于等于 $3$,池化过滤器长度需大于等于 $3$
  3. 讨论是否有快速进行卷积和池化的编程实现方法。

实现方法

卷积使用 FFT 优化,池化使用单调队列优化。复杂度 $O(n \log n + m \log m + n)$,其中 $n$ 为数据集长度,$m$ 为卷积核长度。

Project2 卷积和池化之进阶版

题目要求

  1. 使用 C 语言(或伪代码)编写实现“二维卷积和池化”,对二维卷积后的结果进行池化操作。
  2. 自己构建大于等于 $10 \times 10$ 的二维数组,对其进行卷积和池化,卷积核需大于等于 $3 \times 3$,池化过滤器需大于等于 $3 \times 3$
  3. 讨论是否有快速进行卷积和池化的编程实现方法。

实现方法

卷积没有优化,池化使用单调队列优化。复杂度 $O(MNmn + MN)$,其中 $M, N$ 为数据集大小,$m, n$ 为卷积核大小。

Project3 平方根计算问题讨论

题目要求

  1. 编程实现 $sqrt(x)$ 函数。以 $sqrt(2)$ 为例,可将其转换为 $f(x)=x^2-2$ 的根,也就是 $f(x)$$x$ 轴的交点。
  2. 讨论快速平方根计算算法。

实现方法

  1. 二分法找根
  2. 牛顿法找根

Project4 函数的积分问题讨论

题目要求

  1. 讨论如下函数的积分问题

    image

Project5 方程的最小值问题讨论

题目要求

  1. 讨论如下方程的最小值问题

    $f(x) = 10\sin(x ^ 2) - 2\sin(x) + 5$ image

实现方法

多次跑模拟退火

Project6 人工神经网络之基础版

题目要求

  1. 根据前面给出的人工神经网络背景材料以及查找资料,使用 C 语言(或伪代码)编写实现“只有一个神经元的最简单的神经网络”及其训练过程。
  2. 自己构建大于等于 $100$ 个数据的训练数据集,并进行训练。
  3. 给出训练后神经网络的性能评价值。
  4. 讨论更改学习率 $\eta$ 的值、循环次数对训练的影响。

Project7 人工神经网络之进阶版

题目要求

  1. 使用 C 语言(或伪代码)编写实现“单隐层神经网络”及其训练过程。
  2. 自己构建大于等于 $100$ 个数据的训练数据集,并进行训练。
  3. 给出训练后神经网络的性能评价值。
  4. 讨论更改学习率 $\eta$ 的值、循环次数对训练的影响。