- 博客(52)
- 资源 (1)
- 收藏
- 关注
原创 CIFAR-10 图片识别
"""Copyright 2022 The TBAALi Authors. All rights reserved.Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License at http://www.apache.org
2022-05-24 08:54:44
211
原创 MNIST手写数字识别
"""Copyright 2022 The TBAALi Authors. All rights reserved.Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License at http://www.apache.org
2022-05-18 22:32:27
365
原创 PyTorch 笔记 (四)
import pandas as pdimport torchimport torch.nn as nnimport numpy as npfrom torch.autograd import Variablefrom torch.utils.data import Dataset, DataLoaderfrom torch import optimfrom torchvision import datasets, transformsfrom torch.utils.data.datalo
2022-03-29 19:47:35
1549
原创 PyTorch 笔记 (三)
# AutoGrad 自动求导机制import pandas as pdimport torchimport torch.nn as nnimport numpy as npfrom torch.autograd import Variablefrom torch.utils.data import Dataset, DataLoaderfrom torch import optimfrom torchvision import datasets, transformsfrom torch
2022-03-15 14:03:15
1706
原创 PyTorch 笔记 (二)
# 线性神经网络# 小批量随机梯度下降:在每次需要计算更新的时候随机抽取一小批样本import mathimport timeimport numpy as npimport torchfrom d2l import torch as d2limport matplotlibimport matplotlib.pyplot as pltimport randomfrom torch.utils import datafrom torch import nn# 正态分布于平方损失
2022-03-07 18:40:32
958
2
原创 PyTorch 笔记 (一)
PyTorch 笔记'''张量类宇 Numpy 中的 ndarray 类似,但是比 ndarray 多了一些功能.张量表示由一个数值组成的数组,这个数组可能由多个维度。具有一个轴的张量对应数学上的向量。具有两个轴的张量对应数学上的矩阵。'''# %matplotlib inlineimport torchimport numpy as npfrom IPython import displayfrom torch.distributions import multinomialfrom
2022-03-05 22:26:54
817
原创 Matplotlib 笔记 (一)
Matplotlib 笔记# Matplotlib 是 Python 的绘图库,它能让使用者很轻松地将数据图形化,# 并且提供多样化的输出格式# 可以用来绘制各种静态、动态、交互式的图标# Pyplot 是 Matplotlib 的子库,提供了和 MATLAB 类似的绘图 API# pyplot 是常用的绘图模块,能很方便让用户绘制 2D 图标# Pyplot 包含一些列绘图函数的相关函数,每个函数会对当前的图像进行一些修改,# 例如:绘图像加上标记,生成新的图像,在图像中产生新的绘图区域等
2022-03-05 22:25:44
205
原创 Pandas 笔记 (一)
Pandas 笔记# Pandas 提供高性能、易于使用的数据结构和数据分析工具# Pandas 可以从 CSV、JSON、SQL、MICROSOFTEXCEL 导入数据# Pandas 可以对各种数据进行运算操作,比如归并、再形成、选择、还有数据清洗和特征加工# Pandas 主要数据结构是 Series (一维数据) 与 DataFrame (二维数据)# Series 是一种类似于一维数组的对象,它由一组数据 (各种 Numpy 数据类型) 以及一组与之对应的# 数据标签 (即索引) 组成
2022-03-05 22:24:50
2228
原创 NumPy笔记 (一)
NumPy 笔记# NumPy 是 Python 语言的扩展库,支持大量的维度数组与矩阵运算,# 此外也针对数组运算一共大量的数学函数库# 包括:一个强大的 N 维对象 ndarray,广播功能函数,整合 C/C++ 代码的工具# 线性代数、傅里叶变换、随机数生成等功能'''创建 ndarraynumpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0 object 数
2022-03-05 22:23:05
343
原创 AST解释
AST 是什么 AST (Abstract Syntax Tree (抽象语法树)) 是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构。由一堆节点 (Node) p组成,每个节点都表示源代码中的一种结构。不同结构用类型曲风,常见的类型由 : Identifer (标识符),BinaryExpression (二元表达式),VariableSeclaration (变量定义),FunctionDeclaration (函数定义) 等。 AST 是编译器看的,编译器会将源码转化成
2021-12-25 21:01:15
309
原创 clang 命令行生成 Token、Ast 与 IR
clang_notes查看编译过程 clang -ccc-print-phases main.m词法分析生成 Token clang -fmodules -E -Xclang -dump-tokens main.m语法分析生成语法树 AST clang -fmodules -fsyntax-only -Xclang -ast-dump main.m生成中间代码 .ll clang -S -emit-llvm main.m .bc clang -c -emit-llvm main.mIR 基本语
2021-12-19 08:46:05
1867
原创 llvm源码编译
下载源码git clone https://github.com/llvm/llvm-project.gitcd llvm-project编译 llvmmkdir llvm-buildcd llvm-buildcmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local/clang -DCMAKE_BUILD_TYPE=Debug ../llvm/makemake install编译 clangmkdir clan.
2021-05-05 17:37:25
168
原创 Linux 常用命令
https://www.toutiao.com/i6947662843621802528/?tt_from=weixin&utm_campaign=client_share&wxshare_count=1×tamp=1617635139&app=news_article&utm_source=weixin&utm_medium=toutiao_android&use_new_style=1&req_id=202104052305390
2021-04-11 21:21:39
88
原创 COM组件简介
COM组件简介面向对象的思想难以适应这种分布式软件模型,于是组件化程序设计思想得到了迅速的发展。按照组件化的程序设计的思想,复杂的应用程序被设计成一些小的,功能单一的组件模块,这些组件模块可以运行在同一台机器上,也可以运行在不同的机器上。为了实现这样的应用软件,组建程序和组建程序之间需要一些极为细致的规范, 只有组件程序遵守了这些共同的规范,然间系统才能正常运行。为此,OMG和Microsoft分别提出了CORBA(Common Object Request Breaker Architecture
2021-01-26 16:46:38
1171
原创 C语言编译过程总结
概述C语言的编译链接过程要把我们编写的一个c程序(源代码)转换成可以在硬件上运行的程序(可执行代码),需要进行编译和链接。编译就是把文本形式源代码翻译为机器语言形式的目标文件的过程。链接是把目标文件、操作系统的启动代码和用到的库文件进行组织形成最终生成可执行代码的过程。过程图解如下:从图上可以看到,整个代码的编译过程分为编译和链接两个过程,编译对应图中的大括号括起的部分,其余则为链接过程。编译过程编译过程又可以分成两个阶段:编译和汇编。编译编译是读取源程序(字符流),对之进行词法和语法的分析,
2021-01-26 16:45:33
207
原创 Linux系统下C语言编程--使用gcc/Makefile编译执行C程序
基础知识源程序编译使用 gcc 编译程序int main(int argc, char** argv){ printf("Hello Linux\n");}要编译这个程序,执行以下命令gcc -o hello hello.cgcc 编译器会为我们生成一个可执行文件 hello。gcc 参数选项-o 表示我们要求编译器为我们输出可执行文件。-c 表示我们只要求编译起输出目标代码,而不必输出可执行文件。-g 表示我们要求编译器在编译的时候提供对程序的调试信息。MakeFile
2021-01-24 22:26:32
986
1
转载 时间复杂度与空间复杂度
概述在满足准确性和健壮性行的基础上,还需要一个重要的筛选条件,即通过算法所编写的程序的运行效率。程序的运行效率具体可以通过2个方面衡量:程序的运行时间程序运行所徐内存空间的大小时间复杂度基本的计算步骤时间复杂度的定义一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数。记作T(n)=O(f(n)),称O(f(n))为算法的渐进时间复杂
2021-01-21 21:13:28
165
原创 逻辑结构与存储结构关系
概述逻辑结构是数据元素之间的关系,存储结构是数据元素一起关系在计算机中的存储方式。逻辑结构逻辑结构是数据元素之间抽象化的关系,与数据的存储无关,独立于计算机,它是从具体问题中抽象出来的数学模型。集合数据元素键除同属一个集合外,无其他联系。集合中的元素是离散、无序的。线性结构一个对一个,如线性表、栈、队列、数组、广义表。线性结构就想穿珠子,是一条线,不会分叉。有唯一的开始和唯一的结束。树形结构一个对多个,像树一样。树形结构像一颗倒立的数,树根可以发出多个分支。图形结构多个对多个,如
2021-01-21 16:49:13
17816
原创 UML总结
UML 总结1. UML 概述UML 是一种编制软蓝图的标准化语言,它的目标之一就是为开发团队提供标准通用的设计语言来开发和构建计算机应用。UML的模型主要有三部分构成:事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象关系(Relationships):关系把事物紧密联系在一起图(Diagrams ):图是事物和关系的可视化表示UML 的核心是图表,大致可以将这些图归类为结构图和行为图。结构图是由静态图,如类图,对象图等静态图;行为图是由像序列
2020-05-26 19:21:26
641
原创 设计模式总结 -- C++代码示例
设计模式QQ:1841545843邮箱:jiaxx903@foxmail.com一.什么是设计模式设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是一套被反复使用的、多数人知晓的、...
2020-04-25 17:06:46
318
原创 Git学习笔记
Git学习笔记邮箱: jiaxx903@163.comQQ: 1841545843Git简介Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的...
2020-03-21 19:56:54
214
原创 计算机网络-自顶向下方法
计算机网络-自顶向下方法QQ: 1841545843邮箱: jiaxx903@163.com详细内容后续添加一.计算机网络和因特网1. 什么是因特网2. 网络边缘3. 网络核心4. 分组交换网中的延时、丢包和吞吐量5. 协议层及其服务层次6. 面对攻击的网络7. 计算机网络和因特网的历史二. 应用层1. 应用层协议原理2. Web和HTTP3. 因特网中的电子邮件...
2020-02-16 17:45:33
759
原创 OpenCv基本架构分析
OpenCv笔记一. OpenCv基本架构分析下面是OpenCv的所有模块,按照宏定义(opencv_modules.hpp)的顺序介绍【calib3d】Calibration(校准)和3D这两个词的组合缩写。这个模块主要是相机校准和三维建模相关内容,包括基本的多视角几何算法、单个立体摄像头标定、物体姿态估计、立体相似性算法、3D信息的重建。【contrib】...
2019-11-21 23:00:07
376
原创 一个简单的语法制导翻译器
一个简单的语法制导翻译器翻译非终结符号的过程#include <iostream>using namespace std;int main(){ cout<<"Anycodes, Hello World of C++!"<<endl; return 0;}void expr(){ term(); rest...
2019-10-27 17:15:50
518
原创 Compiler
Compilercompiler.h#pragma once/*** @ Name: Simplified C Compiler** @ Auther: TBAALi** @ Time: 2019-07-24** ** @ Introduction:** SC 语言(源程序) -> SCC编译器 -> Intelx86机器语言(目标语言)** ...
2019-07-24 21:23:49
579
5
原创 《C和指针》笔记(十四)-- 经典抽象数据类型
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.com一. 堆栈/*** 堆栈模拟接口*/#define STACK_TYPE int// pushvoid push(STACK_TYPE value);// popvoid pop(void);// topSTACK_TYPE top(void);// is_emptyin...
2019-07-21 17:18:01
158
原创 Lua设计与实现(二) -- Lua中的数据类型
Lua设计与实现QQ : 1841545843邮箱 : jiaxx903@163.comLua中我们使用一个通用的数据结构lua_TValue 来统一表示所有在Lua虚拟机中需要保存的数据类型。首先在C语言中实现通用数据结构的一般做法首先两点:需要一个字段来存储数据的类型需要存储不同的类型的数据有两种方法来表示:定义一个公共的数据结构作为基础类型,其他基本类型是从...
2019-06-08 23:36:43
394
原创 Lua设计与实现(一) -- Lua源码组织
Lua设计与实现QQ : 1841545843邮箱 : jiaxx903@163.comLua特性可移值性良好的嵌入式非常小的尺寸Lua的效率很高,是执行最快的脚本语言之一用户可以使用C, C++等语言进行主要功能的开发,而一些需要扩展配置的等会频繁动态变化的部分使用Lua语言来开发。游戏服务器的组织与分工C、C++语言实现服务器引擎内核,其中包括最核心的功能...
2019-06-07 17:48:55
1274
原创 《C和指针》笔记(十三)-- I/O
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.com错误报告void perror ( char const *message );优点是容易使用。标准库函数在一个外部整型变量 errno (errno.h)中保存错误代码之后把这个信息传递给用户程序,提示操作失败的准确原因。终止执行exit 用于终止一个程序的执行void exit (...
2019-06-04 18:56:06
132
原创 Linux0.11(一) -- Linux内核体系结构
Linux0.11(一) – Linux内核体系结构QQ : 1841545843邮箱 : jiaxx903@163.com
2019-05-29 22:48:48
349
原创 《C和指针》笔记(十一)-- 预处理器
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.com编译一个c程序涉及很多步骤,第一个阶段为预处理阶段。在源代码编译之前做一些文本性的操作。删除注释插入被#include包含的内容或文件定义和替换#define指令定义的符号以及确定代码的部分内容是否应更具一些条件编译进行编译预定义符号* __FILE__ "name.c" ...
2019-05-20 08:28:22
168
原创 《C和指针》笔记(十)-- 高级指针
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.com收集各种各样涉及指针的技巧指向指针的指针
2019-05-19 15:47:59
140
原创 《C和指针》笔记(九)-- 使用结构和指针
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.com通过组合使用结构和指针创建强大的数据结构单链表有一个根节点 root pointer节点的声明typedef struct NODE{ struct NODE* link; int value;} Node;单链表// 单链表typedef struct NODE{ st...
2019-05-19 15:28:47
139
原创 《C和指针》笔记(八)-- 动态内存分配
C/C++ 笔记QQ : 1841545843邮箱 : jiaxx903@163.commalloc 和 free : malloc从内存池中提取一块合适的内存,并向该程序返回一个指向这块内存的指针。malloc分配的是一块连续的内存,对每个malloc返回的指针都进行检查,确保不是空的,malloc返回一个void*指针。calloc 在返回指向内存的指针之前把它初始化伟0reall...
2019-05-19 12:16:45
278
原创 Parrot Linux文件系统和文件管理
Parrot Linux 文件系统和文件管理1. 文件系统简介根目录根目录,即整个文件系统的逻辑终点,/一级目录/bin 包含普通用户和系统、系统管理员可以共享的各种通用程序/boot 包含引导及其配置文件/etc 包含系统管理和维护方面的所有配置文件/home 包含所有普通用户的家目录/lib 包含系统引导过程及其运行过程所需要的内核模块和各种动态链接共享库文件/med...
2019-05-03 15:48:53
888
1
原创 C++ 动态内存与智能指针
C++动态内存QQ : 1841545843邮箱 : jiaxx903@163.com静态内存用来保存局部 static 对象、类的 static 数据成员,以及定义在任何函数之外的变量。栈内存用来保存定义在函数之内的 static 对象。除了栈内存和静态内存外,每个程序还拥有一个内存池,这部分称之为 堆 ,堆用来进行存储动态分配。即在运行时分配的内存new 在动态内存中位对象分配内存...
2019-04-12 19:11:40
148
原创 C++ 泛型算法
C++ 泛型算法QQ : 1841545843邮箱 : jiaxx903@163.com大多数算法定义在 algorithm 中, numeric 中定义了一组数值泛型算法。find 前两个参数是迭代器的范围,第三个参数是值。算法永远不会执行容器的操作,他们只会运行于迭代器之上,算法永远不会改变底层容器的大小。只读算法findcountaccumulate (在头文件 n...
2019-04-08 19:14:32
194
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人