- 博客(630)
- 资源 (32)
- 收藏
- 关注
原创 git使用
在该目录中运行 git init,这样会创建一个新的 .git 子目录,这个子目录含有你初始化的 Git 仓库的所有必要的骨架文件,但项目本身还没有任何文件跟踪。一个裸仓库没有工作目录, 这意味着它不包含项目的文件, 只包含版本控制系统的数据。这是作为远程仓库的理想选择, 因为它避免了对文件内容的直接操作可能引起的混乱和问题。至此,就成功地在本地创建了一个新的Git仓库,并进行了首次提交。这里的`origin`是远程仓库的默认名字, /path/to/myrepo.git是在第一步中创建的裸仓库的路径。
2021-03-10 09:26:39 535 6
原创 【linux】vim和vi使用
要选中内容进行剪切,先在命令模式下按 v 进入 Visual Mode,然后用 方向键 或 hjkl 选择文本,再按 d 进行剪切。要选中内容进行复制,先在命令模式下按 v 进入 Visual Mode,然后用方向键 或 hjkl 选择文本,再按 y 进行复制。与indent有关的配置,会自动缩进,从window复制代码时候,会造成多行乱缩进,去掉含有indent字符串的配置。"Ny (双引号 + 粘贴板号 + y):复制到粘贴板N ,N 为粘贴板号。:set+空格+tab,可以看到有哪些set命令可用。
2021-02-22 11:15:49 750 3
原创 vscode的使用
1. VSCode列选择2. 跳转3. 中文显示4.编码设置5.tab设置6.更改一个文件的编码7.在项目中打开文件6.
2020-12-15 14:12:09 1654 1
原创 linux常用命令
目录1. 查找当前目录底下的文件夹的子目录中的某个文件2. 查看当前用户3. 查看所有用户组4. 添加用户到已存在的组5. 实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器6. 查看所有服务端口7. 查看文件二进制:8. 新建并写字符串123到文件1.txt,文件最后有换行符。9. 显示文件内容10. 显示目录总占用空间11. 查看磁盘使用情况12. CentOS关闭防火墙13. 在shell中使用find结合grep进行文件字符串的替换14. locate命令15. cd命令16.
2018-01-18 10:18:20 3003 2
原创 ROCm上运行网络中的网络(NiN)
使用`nn.Sequential`定义了NIN的网络结构,它由多个`nin_block`和`MaxPool2d`、`Dropout`等层经过堆叠后形成,并且在网络最后使用全局平均池化层`AdaptiveAvgPool2d`代替全连接层,然后将输出扁平化(`Flatten`)以匹配类别标签数量。导入了PyTorch的核心库,用于构建网络模型和数据处理,以及`d2l`作为`Dive into Deep Learning`书的辅助工具包,用于加载数据和模型训练等功能。
2024-05-24 08:27:14 512 1
原创 ROCm上运行情感分析:使用卷积神经网络
TextCNN模型通过嵌入层(`nn.Embedding`)将单词映射到低维空间,然后使用卷积层(`nn.Conv1d`)提取局部特征,最后通过一个全连接层(`nn.Linear`)进行分类。调用预测函数`predict_sentiment`测试模型效果,传入模型、词汇表和待预测的句子,函数会输出句子的情感倾向(正面或负面)。`train_ch13`函数来自`d2l`工具箱,负责模型的训练过程。通过`apply`函数将初始化操作`init_weights`应用到模型的每个子模块上。
2024-05-24 08:25:44 218
原创 ROCm上运行Transformer
总之,此段代码整体上展示了如何构建 Transformer 模型,训练它进行机器翻译任务,并对其内部的注意力机制进行可视化,帮助我们了解模型是如何工作的。接下来,代码段处理解码器的两组注意力权重:解码器的自注意力权重和编码器-解码器之间的注意力权重。这将为每个头展示编码器-解码器注意力的热图,显示了当生成翻译的每个词元时,模型对输入句子中不同词元的关注分布。显示了解码器自注意力权重的热图,其中包括了当前词元和前面所有已生成的词元之间的关注关系。在代码的后面部分,实现了对注意力权重的可视化。
2024-05-23 07:42:40 1052 2
原创 开源大模型与闭源大模型,你更看好哪一方?
通过开源,全球的开发者可以共同参与到模型的优化和改进中来,这种集思广益的方式有助于快速发现和解决问题,推动模型的迭代升级。具体而言,企业可以在保护核心技术和数据安全的前提下,将部分非核心技术或功能进行开源,以吸引更多的开发者和用户参与到模型的优化和应用中来。同时,企业也可以借鉴开源社区的优秀成果,将其融入到自身的闭源模型中,从而提升模型的性能和用户体验。相比之下,开源大模型由于其透明性和开放性,可能会面临潜在的数据安全风险,但随着社区的快速发展,已经有许多解决方案在这方面取得了突出的成效。
2024-05-23 07:39:25 683 1
原创 自然语言推断与数据集代码解析
文本数据会被截断或补齐到一定长度。3. 实现`read_snli`函数,用于读取SNLI数据集,并将其解析为前提(premises)、假设(hypotheses)以及对应的标签(labels)。7. 定义`load_data_snli`函数,它使用上面定义的`SNLIDataset`类来创建训练和测试数据迭代器,同时返回构建的词汇表(vocab)。值得注意的是,这个代码的部分注释标签是`#@save`,这是d2l包中用于标记某个代码块或函数将会被保存并在后续使用中重新加载的一个特殊注释。
2024-05-22 08:22:19 558 1
原创 Java18新特性
请注意,Java的每个版本都遵循一个快速发布的周期,这意味着像Java 18这样的特性发布版主要聚焦于引入较小但实用的改进,而不是大规模的语言或平台变更。Java 18是Java编程语言的一个重要版本,发布于2014年3月18日,它引入了许多革命性的新特性,改变了Java开发者的编程方式。:作为JEP 425: Virtual Threads的预览特性,虚拟线程旨在提高Java应用程序的并发性能,通过减少传统线程的使用,降低并发编程的复杂性和成本。: 最显著的特性之一,使得Java支持函数式编程风格。
2024-05-22 08:19:17 801
原创 深度神经网络
在训练过程中,每一层的权重都会被调整,以便网络能够从输入数据中学习到特征。与浅层神经网络相比,深度网络通过增加的层数量级联多个隐藏层,能够捕获更深层次的特征,从而在诸如图像识别、语音识别、自然语言处理、游戏策略制定等复杂任务中展现出优越的性能。在致力于提升深度神经网络智能的同时,我们还必须关注模型的可解释性,确保其决策过程是透明和可信的,这样才能在真正实现智能化的路上更加稳健地前进。总之,深度神经网络是一种强大的机器学习技术,它通过模拟人脑神经元之间的连接和传递信息的方式,实现了对大量数据的处理和分析。
2024-05-21 08:07:26 880 3
原创 如何让大模型更聪明?
大模型的智能提升是一个多维度、多层次的挑战。通过深化理解力、提升泛化能力和增强适应性,我们可以逐步推动大模型向更高智能水平迈进。未来,随着技术的不断进步,大模型有望在更多领域发挥其潜力,为人类社会带来更多的便利和创新。让大模型变得更聪明是一个复杂而多维的挑战。通过增强数据多样性、优化算法架构、持续学习与微调、强化鲁棒性和泛化能力,以及关注伦理和可解释性,我们可以推动大模型向更智能的方向发展。这不仅需要技术上的创新,还需要跨学科的合作和全社会的共同努力。
2024-05-21 07:43:46 951
原创 DALL-E2详解
ALL-E2代表了AI生成图像技术的重大飞跃,它不仅在艺术和创意产业应用上开辟新领域,也为科研提供强大工具,推动理解多模态学习和生成模型的界限。
2024-05-20 08:22:22 739 2
原创 如果每个人都是一个agent
如果每个人都被视为一个代理(agent),这意味着每个个体都具有某种程度的自主性和决策能力,能够在特定的环境中采取行动以实现自己的目标或遵循既定的规则。在自主决策和行动的过程中,个体将不断面对新的问题和挑战。如果我们将社会中的每个人视为一个智能体(agent),这个视角可以帮助我们从多个维度理解人类行为和社交互动的复杂性,特别是在社会科学、经济学、计算机科学、人工智能、心理学和多代理系统等领域。在这个设定下,每个人都被赋予了一定程度的自主决策和行动能力,能够根据自身的情况和目标来做出最优的选择。
2024-05-20 08:08:57 962
原创 ROCm上运行预训练BERT
此外,由"#<save>"标记的部分,是保存函数定义的提示,便于以后的复用。请注意,由于硬件和软件的快速发展,具体的安装和配置步骤可能会随着时间而变化,因此建议查阅最新的ROCm和相关深度学习框架的官方文档。因此,在使用ROCm时可能会遇到一些挑战和限制。此外,由于ROCm和BERT都是不断发展的技术,建议您查阅最新的官方文档和社区讨论,以获取最准确的安装和运行指南。要在ROCm上运行预训练的BERT模型,您需要确保您的系统已经安装了支持ROCm的TensorFlow版本,并且已经正确配置了相关的环境。
2024-05-19 05:24:52 636 1
原创 ROCm上运行自然语言推断:使用注意力
具体来说,如果你在PyTorch中实现或运行NLI模型,并且想要确保它能在ROCm环境下运行,你需要确保安装了PyTorch的ROCm版本,并且所有使用到的功能和算子都是ROCm兼容的。因此,在ROCm上进行开发可能需要更多的实验和调试。看起来你可能在尝试恢复一个自然语言推断(NLI)模型的训练或推理过程,该模型可能使用了注意力机制,并且是在ROCm平台上运行的。在ROCm(AMD的开源GPU加速计算平台)上运行自然语言推断(NLI)任务,特别是使用注意力机制,通常涉及深度学习模型的构建和训练。
2024-05-19 05:16:46 941
原创 在Windows上创建RAM Disk
在Windows 10上创建一个与Linux中的tmpfs相似的内存文件系统(一个文件系统,它使用主内存作为存储)通常不是操作系统直接提供的功能。不过,有一些方法可以实现类似的效果。
2024-05-18 08:05:05 825 1
原创 AIGC行业现在适合进入吗
AIGC行业的未来充满无限可能,现在是否是最佳的入场时机,取决于你的准备和决心。在这个充满变革的时代,勇于探索和创新,或许能为你打开一扇通往成功的大门。AIGC行业:现在是否是进入的最佳时机?随着科技的飞速发展,人工智能(AI)技术已经渗透到我们生活的方方面面,而AIGC(人工智能生成内容)作为AI领域的一个重要分支,近年来也受到了广泛关注。然而,面对这一充满潜力的新兴行业,许多人都在犹豫:现在是进入AIGC行业的最佳时机吗?一、AIGC行业的发展阶段。
2024-05-18 08:02:51 709
原创 ROCm上运行自然语言推断:微调BERT
SNLIBERTDataset类处理SNLI数据库的数据,用于BERT的使用,分词数据集中的前提和假设,并创建相应的令牌ID和段ID作为模型的输入。- 使用`d2l`的`train_ch13`函数来训练模型,传入定义的网络、训练和测试迭代器、损失函数、训练器、训练周期数和设备配置。10. 使用定义的训练迭代器、损失函数、优化器以及`d2l`提供的训练工具来对SNLI数据库中的BERT分类器模型进行训练。2. 从指定的`d2l.DATA_HUB`下载预训练模型(BERT基础版和BERT小型版)。
2024-05-17 07:09:21 912
原创 ROCm上运行深度卷积神经网络(AlexNet)
如果你要在支持ROCm的AMD GPU上运行深度学习模型(例如AlexNet),你需要确保ROCm已经安装在你的系统中,并且PyTorch与ROCm兼容。它使用PyTorch框架中的API来实现,并且模仿了AlexNet的一般结构,这是一个著名的网络结构,常用于图像识别任务。然而,确保环境设置正确是至关重要的。3. 查看各层输出:通过遍历网络的每一层,输入一个随机生成的数据`X`(尺寸为1x1x224x224,代表一批大小为1的224x224像素的单通道图像),并打印各层的输出形状。
2024-05-17 07:02:59 631
原创 train_gpt2_fp32.cu - main
为了将这个程序转换为能够在AMD GPU上运行的代码,你需要使用AMD提供的相应工具和库,特别是ROCm (Radeon Open Compute) 平台,它是AMD GPU上的开源计算平台。HIP 是 AMD 的一种编程模型,类似于 CUDA,用于编写可在 AMD 或 NVIDIA GPU 上执行的代码。要将现有的 CUDA 代码转换为适用于 AMD GPU 平台的代码,你需要使用 AMD 的 ROCm 平台,并用 HIP 进行编程,它可以自动将 CUDA 代码转换为 AMD GPU 可支持的代码。
2024-05-16 07:33:07 976 1
原创 Vue.js介绍
Vue.js 是一个功能丰富、灵活且易于上手的JavaScript框架,它通过其渐进式的特性和强大的生态系统,成为了现代前端开发中的一个重要工具。无论是个人项目还是企业级应用,Vue.js 都是一个值得考虑的选择。
2024-05-15 08:57:18 711
原创 文心一言指令
文心一言”指的是百度研发的预训练语言模型“ERNIE 3.0”的一项功能,类似于阿里云的通义千问、腾讯的通义万相等。但请注意,直接与“文心一言”交互或获取其响应可能需要通过百度官方提供的API接口或者特定的产品(如百度的某些智能应用),并且可能涉及具体的编程知识和API调用权限。“文心一言”是百度基于文心知识增强大模型,推出的生成式对话产品。如果`文心一言`是指百度的文心(Wenxin)AI平台相关的服务,可能需要直接参考百度文心API的官方文档,因为具体指令或调用方式会依据它们提供的接口和服务而变化。
2024-05-15 08:41:41 1137
原创 本地运行《使用AMD上的SentenceTransformers构建语义搜索》
从头开始训练一个SentenceTransformers模型包括一个过程,即教导模型理解和编码句子为有意义的、高维度的向量。在这篇博客中,专注于一个包含等价句子对的数据集。总的来说,培训过程的目标是让模型学习如何将语义上相似的句子映射在向量空间中的接近位置,同时将不相似的句子分隔开。与可能无法捕获某些领域或用例的特定性质的通用预训练模型相比,自定义训练模型确保模型能够精确调整以理解与特定领域或应用相关的上下文和语义。感兴趣的是执行非对称语义搜索。在这种方法中,模型承认查询和文档本质上可以是不同的。
2024-05-14 09:06:10 1082 2
原创 你眼中的IT行业现状与未来趋势
IT行业的未来充满了机遇和挑战。技术的融合和创新将继续推动行业向前发展,同时也需要我们关注伴随而来的社会、伦理和法律问题。通过不断的探索和合作,我们可以共同创造一个更加智能、互联和可持续的世界。
2024-05-14 09:04:47 934
原创 深度学习知识点全面总结
随着研究的深入,还会有更多高级的模型和算法被开发出来,推动深度学习技术的进步,以解决更加复杂的问题。深度学习是机器学习领域中的一个新方向,主要是通过学习样本数据的内在规律和表示层次,让机器能够具有类似于人类的分析学习能力。神经网络(Neural Networks):这是深度学习的基础,由大量的神经元(或称为节点)按照不同的层次组织起来,每个神经元都与前一层的所有神经元相连。深度学习是机器学习的一个分支,它通过构建多层的神经网络来模拟人脑处理信息的方式,从而实现对复杂数据的高效处理和分析。
2024-05-13 08:02:31 1120 2
原创 Docker和Kubernetes之间的关系
需要注意的是,Docker的商业化收费只针对Docker桌面版本,而在Docker Engine、上游开源Docker和Moby项目上则没有变化,这些仍然是开源和免费的。因此,如果对Docker有更深入的需求,比如构建大规模的容器化应用程序或者需要更高级的功能和支持,可以考虑使用Docker的其他产品或者服务,并根据需要进行付费。但是,如果需要管理大规模的容器集群,或者需要更高级的功能和更好的支持,那么Kubernetes可能是更好的选择。当然,也可以根据实际需求将两者结合使用,以获得最佳的效果。
2024-05-13 07:50:57 1045
原创 train_gpt2_fp32.cu - cudaCheck
一个枚举值,代表CUDA API调用的返回错误码。:一个字符串指针,代表调用cudaCheck的源文件的名字。int line:一个整数,代表调用cudaCheck的源代码行号。这个cudaCheck函数是一个实用工具,用于在CUDA编程中检查API调用的错误。当调用CUDA API函数时,可以将其返回的错误码传递给cudaCheck,并在出错时立即输出错误信息并终止程序。这有助于快速发现和修复CUDA编程中的错误。
2024-05-12 11:32:03 832
原创 train_gpt2_fp32.cu - layernorm_forward_kernel3
另一方面,如果您的代码已经足够快,或者流操作的使用过于复杂,那么您可能选择不使用它们。:对于内存访问模式和数据类型限制的问题,建议在调用此内核的主机代码中进行检查和处理,例如确保输入输出缓冲区是适当对齐的,以及提供支持不同类型(如。: 使用 AMD GPU 的性能分析工具可以帮助您识别潜在的瓶颈和优化机会,这些工具可以提供关于内存访问模式、数据传输和内核执行的有用信息。替代指令,但您仍然可以通过使用适当的内存管理策略、优化内存访问模式以及利用提供的编程模型和工具来在 AMD GPU 上实现高效的内存操作。
2024-05-12 11:30:52 606
原创 llm.c的Makefile
4. 所有原有的CUDA相关变量和规则(例如 NVCC_FLAGS、`NVCC_LDLIBS`、`cudnn_att.o`、`train_gpt2cu` 等)都被移除或替换为适合AMD平台的变量和规则。- 定义了一些变量,用于存储编译器选项(如 CFLAGS)、库(`LDLIBS`)、包含文件路径(`INCLUDES`),以及一些条件编译标志(`CFLAGS_COND`)。- 最后,定义了各种编译目标的规则,用于编译和链接程序,以及一个 clean 目标用于清除生成的文件。
2024-05-11 08:18:16 977 2
原创 tokenize
该函数用于对Tiny Shakespeare数据集进行预处理和划分,将数据集中的文本进行编码,并将其划分为训练集和验证集。具体步骤包括:读取Tiny Shakespeare数据集文本,将每個人的陈述作为单独的文档处理,对文本进行编码,将编码后的文本划分为训练集和验证集,并将划分后的数据集保存为二进制文件。简而言之,这个函数读取一个文本文件,使用特殊的"end of text"标记将对话中的每个人的陈述分隔开,然后对该文本进行编码,并将编码后的令牌分为验证集和训练集,最后将这两个集合分别保存到二进制文件中。
2024-05-11 08:14:55 625
原创 https://github.com/ROCm/hip-tests/tree/develop/samples/0_Intro/square用hipcc编译时告警及错误处理
在你的Python 3.12.1环境中出现这些警告,而在Python 3.10.14环境中没有,这可能是因为Python 3.12.1对正则表达式的解析更加严格,或者是因为Python 3.12.1中的某些默认行为发生了变化。在Python 3.11及以后的版本中,识别正则表达式的语法做了一些更改,这可能导致在不同版本的Python中,相同的正则表达式被解释的方式不同。如果正则表达式是正确的,那么可能是Python 3.12.1的一个bug,你可以尝试查找相关的bug报告或更新到最新的Python版本。
2024-05-10 07:54:26 924
翻译 llm.c的README
在简单、纯粹的C/CUDA中进行LLM(大型语言模型)训练。没有必要依赖245MB的PyTorch或107MB的cPython。在单个文件[train_gpt2.c]()中,仅用~1000行干净的代码即可完成GPT-2的CPU训练(fp32),并且在GPU上训练只需~3000行代码(增加了CUDA内核),位于[](代码编译运行迅速,与PyTorch参考实现完全一致,目前速度略快于(编译过的)PyTorch(使用bf16、torch编译和闪电注意力)。
2024-05-09 09:39:40 46 2
原创 train_gpt2.c
GPT2Config:定义了GPT-2模型的主要配置参数,如最大序列长度、词汇表大小、层数、头数和通道数。和:分别定义了模型的参数张量和激活张量,用于存储模型的权重和中间激活值。和:定义了参数张量和激活张量的数量。GPT2:是一个结构体,包含了模型的配置、参数、激活值、梯度、优化器状态等所有信息。
2024-05-09 09:31:50 873
翻译 layernorm
LayerNorm最初由Ba等人于2016年提出,并被Vaswani等人在其著名的《Attention is All You Need》论文中引入到Transformer模型中。GPT-2采用了相同的架构,但将LayerNorm的位置移动到了现在被称为预归一化版本的位置,即在Transformer的每个块的第一层进行归一化,这有助于提高训练稳定性。
2024-05-09 09:25:50 22
原创 如何利用AI提高内容生产效率?
AI技术在内容生产领域的应用前景广阔,它不仅能提高生产效率,还能增强内容的个性化和互动性。随着技术的不断进步,AI有望成为内容生产不可或缺的工具,推动整个行业的创新和发展。本文围绕AI技术如何提升内容生产效率和质量这一主题,从写作、推荐、审核、编辑、翻译等多个角度探讨了AI的应用,并展望了AI技术在内容生产领域的未来发展。
2024-05-09 07:29:10 1207
OpenDDS-3.27.tar.gz
2024-04-11
用TensorBoard可视化PyTorch
2024-04-07
一个遵守 robots.txt 规则的爬虫
2024-03-01
Linux 内核中listen系统调用
2024-02-16
SQL电商网站数据库设计案例database-schema.sql
2024-02-13
一个简单HTTP服务的例子,微服务架构的一个组成部分
2024-02-12
OpenBLAS库矩阵乘法的简单Fortran示例
2024-02-11
基于Octave的信号处理与滤波分析案例
2024-02-10
简单的文本文件处理python程序
2024-02-10
用于文本文件处理的Java语言控制台程序示例
2024-02-09
一个简单的linux汇编语言程序
2024-02-08
情人节主题爱心python代码
2024-02-05
春节烟花python示例
2024-02-05
GtkStack的Python例程
2024-01-28
GtkStack实现的可关闭标签页
2024-01-28
GtkNotebook实现的可关闭标签页
2024-01-28
一个GtkGrid的python例程,按钮在窗体右下角
2024-01-28
c语言GtkGrid例程创建了一个包含几个按钮的窗口
2024-01-28
GTKBOX 示例Python版本
2024-01-27
一个简单的例子,展示了如何在一个基本的GTK应用程序中使用`GtkBox`来垂直排列两个按钮
2024-01-27
一个简单的 GtkApplication 和 GtkApplicationWindow 的示例
2024-01-26
使用Python的Gtk模块和Gtk.ListStore的示例
2024-01-25
自动微分解释及python语言的示例代码
2024-01-16
iperfs3开源代码压缩包
2024-01-08
usb桥接示例(单、双向)
2023-10-24
Infiniband MAD建链 verbs传送
2023-05-26
V1r1-2-1.Release-12062007.pdf
2023-05-18
ConnectX-PRM-rev-1-2.pdf
2023-05-18
RDMA-Aware-Programming-user-manual-1.pdf
2023-05-18
Performance-Tuning-Guide-for-Mellanox-Network-Adapters.pdf
2023-05-18
Mellanox-OFED-Linux-User-Manual-v3.20.pdf
2023-05-18
ConnectX-3 VPI Single and Dual QSFP+ Port Adapter Card User Ma
2023-04-15
BREW中的C语言面向对象
2022-06-05
libfilezilla-0.36.0
2022-03-03
FileZilla_Server_1.3.0_src
2022-03-03
FileZilla_3.58.0_src.tar.bz2
2022-03-03
vsftpd-2.1.1.tar.gz
2021-11-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人