Exercise:Logistic Regression Exercise:Logistic Regression记录一下逻辑回归作业代码 Task1 假设函数: $h_\theta(x)=sigmoid(\theta^Tx)$ 代价函数: $J(\theta)=\frac{1}{m}\sum\limits_{i=1}^{m}[-y^{(i)}log(h_\theta(x^{(i)}))-(1-y^{(i)})log(1-h_\theta(x^{(i)} 2021-02-23 ml homework
RDP 配置文件编写记录 RDP 配置文件编写记录RDP Wrapper 官方配置文件只能支持到18年的Win10系统,新版本的系统需要自己编写 INI 文件,当然也可以去 RDP 的官方 github issues 里面寻找相应的配置文件。 RDP Ini 文件样本 for win10(10.0.19041.789) 123456789101112131415161718192021222324252627282930 2021-02-22 RedTeam Reverse Windows
Ml3:Classification Classification模型分类问题中,预测的变量 y 为离散值,以前学习的线性回归模型就不适用了。分类将用到的算法是逻辑回归( Logistic Regression )。 我们先讨论二元的分类算法,即把输入分成两类,也就是说 y 的值为 0 或 1. 逻辑回归假设函数:$h_\theta(x)=g(\theta^Tx)$ 该函数值的范围始终是 0 到 1 之间。 当 $h_\theta( 2021-02-21 ml note
Register Allocation Register Allocation寄存器分配问题,为变量分配寄存器。变量的数量可以是无限的,CPU 内部寄存器的数量是有限的,这就牵扯到一个问题,如何为变量分配寄存器。 目前我学习了两种方法,分别是: 图染色寄存器分配算法 线性扫描寄存器分配算法 Liveness Analysis无论是图染色算法还是线性扫描算法,都涉及到活跃变量分析。变量在某个程序点有两种状态,live 或 dead。对 2021-02-20 compiler note
Ml2:Octave Notes Octave记录一些 Octave 特有的语法 逻辑运算 不等于: ~= 注释 % 语句后面加分号可以避免回显。 disp(var) 输出var的值 矩阵写法: A = [1, 2; 3 , 4 ; 5, 6] 类似python 中 range 的写法: v = 1:0.1:2 v = 1 : 6 产生矩阵的方法 ones(2, 3) zeros(2, 3) rand(2, 3) eye 2021-02-16 ml note
SSA Form SSA FormSSA 全称是 Static Single Assignment Form 即静态单赋值形式,LLVM 就采用了 SSA Form,当然 LLVM 处理 SSA 的过程是透明的,生成 LLVM IR 的时候只需要处理好 Basic Block 之间的关系,LLVM 就会自动将 IR 转换成 SSA Form。然而对于布尔短路,则需要自己实现 SSA 过程。 简单讲,SSA 形式只允 2021-02-10 compiler note
Ml1: Linear Regression Linear Regression寒假无聊,就打算学习机器学习。 课程地址: https://www.bilibili.com/video/BV164411b7dx?p=1 学习机器学习的过程中,第一个要学的算法就是线性回归。通过学习线性回归算法,可以了解到机器学习中的监督学习(Supervised Learning) 基本流程。高中数学课程已经讲过线性回归,但是仅仅是给出了计算公式,其中的原理从 2021-02-08 ml note
Semantic Analysis 语义分析 (Semantic Analysis)语义分析主要检查程序代码语义是否正确。比如标识符是否定义、二元运算的两个操作数的类型是否合法、定义数组的大小是否大于1、函数调用语句是否传递正确的参数等等。另外,语义分析还需要为代码生成阶段收集程序信息,比如确定每一个标识符对应的意义。 实现语义分析 Attribute Grammars 在 parse 阶段检查语义,只需要对输入代码 pas 2021-02-01 compiler note
LLVM Practice LLVM PracticeDecaf 语言要用 LLVM 作为后端,生成机器代码。我本人对 LLVM 相关的 API 也十分感兴趣。这篇文章记录我学习 LLVM 的过程及相关代码片段。 编译 LLVM123456git clone https://github.com/llvm/llvm-project.gitcd llvm-projectmkdir buildcd buildcmake -G & 2021-01-31 compiler homework llvm
编写decaf语法解析器 编写 Decaf 语法解析器Decaf 是 SFU Compiler 课程要实现的语言,前一篇 Blog 写了如何编写 Decaf 词法分析器, 这一篇 Blog 则是写 Decaf 编译器的第二个阶段,语法解析。语法解析器的作用是解析程序语法,并生成抽象语法树 (Abstract Syntax Tree),抽象语法树(AST)是程序结构的一种高抽象层次的表达,有了它我们并再不需要源代码的存在了 2021-01-25 compiler homework