cuda与cudnn
GPU 显卡是我们平时说的GPU,现在大多数的电脑使用NVIDIA公司生产的显卡;常见的型号有Tesla V100,GTX950M,GTX1050TI,GTX1080等。
显卡驱动 特指NVIDIA的显卡驱动程序。
CUDA CUDA是显卡厂商NVIDIA推出的运算平台。CUDA™是一种由NVIDIA推出的通用并行计算架构,是一种并行计算平台和编程模型,该架构使GPU能够解决复杂的计算问题。CUDA英文全称是Compute Unified Device Architecture。
有人说:CUDA是一门编程语言,像C,C++,python 一样,也有人说CUDA是API。官方说:CUDA是一个并行计算平台和编程模型,能够使得使用GPU进行通用计算变得简单和优雅。运行CUDA应用程序要求系统至少具有一个具有CUDA功能的GPU和与CUDA Toolkit兼容的驱动程序。查看CUDA版本命令:nvcc -V 或nvcc –version或cat /usr/local/cuda/version.txt
需要知道:CUDA和CUDA Dri ...
关于AI的思考
广义人工智能分为系统、系统和系统之间的通信两个部分,即两个学科:自动化和通信。都属于信息科学。
狭义人工智能即为目前处于研究前沿的机器学习、深度学习等。下面深入分析狭义人工智能。
AI分为三大学派,行为主义、符号主义和连接主义,目前主流是连接主义,即模仿神经元的连接关系。另一个比较火的方向是符号主义,即知识图谱。
连接主义中的人工智能为机器学习,分为监督学习、无监督学习和强化学习(半监督学习),随着硬件算力的发展,深度神经网络逐渐展现出优势,深度学习进入研究前沿。
深度学习不断发展,主要应用于计算机视觉和自然语言处理两个领域。
进一步发展,出现大模型,包括大语言模型、计算机视觉大模型(AIGC)、多模态和音频大模型。
延伸出多个人工智能方向,包括:大模型、可解释性、自动机器学习、部署等。
torch.autograd.Function
torch.autograd.Function用于自定义网络层,自定义前向传播和反向传播
使用到torch.autograd.Function是因为在无线通信中需要把网络输出的float32量化成bit或者星座点,pytorch没有提供任何函数满足要求,因此需要自定义该层。
Function和Module的差异 Function和Module都可以对Pytorch进行自定义拓展,使其满足网络的需求,但这两者还是有区别的:
Function一般只定义一个操作,因为其无法保存参数,因此适用于激活函数等操作,Module是保存了参数,因此适用于定义一层,如线性层,卷积层,也适用于定义一个网络;
Function需要定义三个方法:__init__,forward,backward(需要自己写求导公式)
Module只需定义__init__和forward,而backward的计算由自动求导机制构成
可以不严谨的认为,Module是由一系列Function组成,因此其在forward的过程中,Function和Variable组成了计算图,在backward时,只需调用Funct ...
Python的@staticmethod
Python中的@staticmethod方法总结一句话:不实例化类的情况下直接使用该方法
不需要约定的默认参数self。
静态方法就是类对外部函数的封装,有助于优化代码结构和提高程序的可读性。
class Person: def __init__(self,name): self.name=name print('调用者') def _name(self): print(self.name) @staticmethod def static_method(): print('调用静态方法!')if __name__ == '__main__': person = Person("buji") print("------这是name方法------") person._name() print("------这里调用静态方法------") pers ...
SEU2024年1月研究生英语考试
Academic Communication EnglishSemester contents TC(technical communication project)+IC(international conference)+Mooc
Final exam contents 50%+50%
Module 1: Technical Communication 单选、判断、改写
Module 2: International Conference 单选、判断、配对、翻译
User Manual(TC)
definition of Technical Communication
basic qualities of TC
user dont read, dont scroll, are easily lost, frustrated, strangely persistent, different
The best instruction is no instruction(intuitive and invisible)
A definition clarifies a d ...
路由器和猫
用户的手机、ipad、电脑使用蜂窝4G/5G无线移动网络,压根不需要什么路由器(Router)可以直接上无线接入网络,从而连接上互联网。电脑可能需要安装一个USB适配器(嵌入SIM卡)。这个USB适配器,其实就是一个4G/5G蜂窝网络的调制解调器(MODEM),MODEM是MOdulation(调制)DEModulation(解调制)的英文缩写,发音与猫近似,故调制解调器(Modem) = 猫。
为何电脑需要Modem?
Modem这个硬件适配器,集成了4G/5G网络的物理层(L1)/链路层(L2)的功能。可以与电脑上的TCP/IP(L3/L4)无缝对接,TCP/IP与安全加密TLS(L5)无缝对接,TLS与应用层http(L7)无缝对接,就形成了一个L7-L6-L5-L4-L3-L2-L1的数据包发送流水线(Send Packet),L1-L2-L3-L4-L5-L6-L7的数据包接收流水线(Receive Packet)。
没有这个硬件适配器,无法在物理层/链路层这两个 ...
极简模式
我们真正需要的东西并不多,而那些并不需要的东西不断侵占我们的空间和思想,反而会成为前进的负累。
方法极简工具极简「开学必备好物」「高效学习APP」「上岸文具分享」……打开小红书,搜索「学习好物」,一篇篇封面精美,标题醒目的攻略层出不穷。
把「考研上岸」「国奖第一」与万千精致的学习用品挂钩,为这些学习用品披上了光鲜亮丽的外衣,于是学生们争相购买,争相使用。
然而,对学习而言最重要的,应该是一个主动思考的大脑。为了向老师呈现掌握水平,所需要的也只是能将脑中所想转为可见内容的一支笔、一张纸。为了提高应试能力,最多再摆上一个控制时间的闹钟。
虽然goodnotes、notability、X mind功能强大、工具齐全,但仔细思考,很多纷繁复杂的功能是否自己真的需要?
虽然番茄时钟、forest等软件美观可爱、活泼有趣,但自己需要的究竟是「专注25分钟,休息5分钟」这样普通闹钟也能实现的科学规律,还是花里胡哨的软件以及可以借口拿到的手机。
太多的精致学习好物,不仅需要花费时间学习如何使用,还容易模糊了学习时的主要视线。
资料极简你有没有囤积学习资料的习惯?
辛辛苦苦到手了一套邻班老师发的秘密 ...
GNU&GCC编译器知识总结
很多时候,出现一些类似GNU、GCC、CLANG、LLVM等与编译器有关的名词的时候,我们都不太清楚它到底是干嘛的。但理解这些东西后,对于xcode中很多配置型的需求修改起来都会得心应手。因此,我们有必要了解透彻它们直接的关系与区别。
GNU 先来看看wiki百科上的官方说明:
“GNU,名称来自Gnu’s Not Unix”的缩写,一个类UNIX的操作系统,由GNU计划推动,目标在于创建一个完全兼容于UNIX的自由软件环境。”
由于当时UNIX系统是商业软件,是收费的,而且有一部分源码是没有开放的,所以在1983年,理查德·斯托曼提出GNU计划,希望发展出一套完整的开放源代码操作系统来取代Unix,计划中的操作系统,名为GNU。因此,GNU的出现的目的就是为了取代UNIX系统。但是操作系统是包括很多软件的,除了操作系统内核之外,还要有编辑器,编译器,shell等等一些软件来支持。
1989年,GNU项目中的其他部份,如编辑器、编译器、shell等都已经完成,独缺操作系统核心。1990年,自由软件基金会开始正式发展Hurd,作为GNU项目中的操作系统。注意:li ...
下载卡在99%?
下载最怕什么,那绝对是进度条:99%。这是一个充满魔力的数字,曾让我狂躁、焦虑,甚至激动得想砸键盘锤电脑扔手机。比如下载学习资料或看动作大片,苦苦等待2小时,好不容易下到99%,以为2秒后就能享受大片的美妙,步入极乐世界。结果半小时过去了,进度条死死卡在99%,任你千兆光纤,专线宽带,愣是一丝不动,稳如泰山。再去检查路由器,狂按重启键,发现网络一切正常,网页秒开,唯独进度条上的99%永恒不变。即使你重启电脑,重新打开下载软件,重新开始那99%的下载任务,它依旧还是99%,不增不减。你不禁开始疑惑:为什么进度条总要卡在99%?为什么最后1%永远加载不动?
技术原理导致 关于进度条99%的问题,得从它的诞生说起。
1896年,波兰经济学家Karol Adamiecki制作了一种名叫时间表的图,提出了早期的进度条概念,但是当时没有具体的应用。等到1979年,这哥们Mitchell Model在他的博士论文中提出了进度条。论文里他表示:进度条能在复杂的计算机环境中监视系统行为。说白了就是:进度条能直观展现电脑在做什么,做到哪种程度。
正因为进度条能用最简单的图案和数字,表 ...
无线AP
什么是无线AP 无线AP(Access Point)即无线接入点,它是用于无线网络的无线交换机,也是无线网络的核心。无线AP是移动计算机用户进入有线网络的接入点,主要用于宽带家庭、大楼内部以及园区内部,典型距离覆盖几十米至上百米,目前主要技术为802.11系列。大多数无线AP还带有接入点客户端模式(AP client),可以和其它AP进行无线连接,延展网络的覆盖范围。它不仅包含单纯性无线接入点(无线AP),也同样是无线路由器(含无线网关、无线网桥)等类设备的统称。它主要是提供无线工作站对有线局域网和从有线局域网对无线工作站的访问,在访问接入点覆盖范围内的无线工作站可以通过它进行相互通信。
无线AP的组成 无线AP的组成通常包括以下部分:
无线网卡:这是无线AP的重要组成部分,它可以通过无线方式连接到网络。
处理器:用于处理数据传输和处理其他任务。
内存:用于存储数据和运行程序。
天线:用于接收和发送无线信号。
网络接口:通常包括以太网接口或光纤接口,用于连接有线网络。
电源:用于提供电力。
有哪些不同的无线AP组成方式 无线AP的组成方式有多种,包括以下几种:
单一 ...