MIT 6.S081 Lab thread

Compulsory exercises

Preparation

  • reading

    To start the lab, switch to the thread branch:
1
2
3
git fetch
git checkout thread
make clean
阅读更多

Hung-yi Lee ML Lecture1: Introduction of Deep Learning

机器学习

  • 机器学习在教授的讲述中被描述为让机器找到一个函数f(),这个函数可以很复杂,但是可以解决许多问题,建立函数原型的过程叫做建立模型,根据函数的好坏进行不断优化的过程叫做训练,这个过程很像人类不断试错找寻更好的解决方案的过程,就像机器在学习一样。
  • 机器学习的一般步骤是
    • 建立模型:建立含有未知参数的函数
    • 定义loss函数L()
    • 优化:找到使L()最小的未知参数,一般使用梯度下降法
  • 一般来说,使用类神经网络建立函数模型,通过叠加神经网络的层数,来达到更高的测试正确率,这样的方法被称为深度学习,深度学习是机器学习中使用最广泛也最重要的方法之一。
  • 过拟合Overfitting指的是,训练出的模型在训练资料上表现好而在测试集上表现不好。
阅读更多

Java

Introduction

Java是一种面向对象的编程语言,JVM虚拟机的使用,让java的编译过程十分特殊,接口的引入,也让面向对象的特征十分突出。

阅读更多

Python

Introduction

Python是一种面向对象的编程语言,不同于C和C++,它是一种解释型语言。

阅读更多

How to start a Project using C

介绍

  • 将会介绍如何使用C开发在Linux平台上运行的控制台应用程序
  • 和HelloWorld一样😄
  • 选用的项目是自己写一个文本编辑器!(Build Your Own Text Editor)
  • 初步开发这个项目,我觉得从中学到最重要的东西就是,开发不是一蹴而就的,为了更新功能,删改重构是常有的事情,现在这个阶段,很难有一次性铺平,统筹规划好所有东西的能力,所以不能用十分平面的想法去开发。当然这一切要尽可能与其他模块解耦,不能因为这里的重构,影响到其他大的模块。
阅读更多

x86

Introduction

  • x86是一种复杂指令集架构的汇编语言
阅读更多

How to start a Project from Zero

介绍

  • 如何从0开始完成一个项目?这是我在学习过程中遇到的一个难以忽视的问题。这篇文章将会包含如何去开始一个项目,如何去维护一个项目的记录。不过这些想法没有经过认证,仅仅是对于开发过程中的思考方式的归纳和总结。
  • 开发的范式很难总结出来,因此我将尝试分析我在一门程序设计专题课最后的大作业开发流程,通过完善这个远古项目开发的过程,来帮助构建一个开发的范式。
  • 这个项目采用C和visual studio2017开发
阅读更多