首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言中常见指针问题集解答

* 型, 直接用 p += sizeof(int); //但是, 在可能情况, 你还是应该首先选择适当指针类型, 而不是一味地试图李代桃僵。...有个函数,应该接收并初始化一个指针 void f(int *ip) { static int dummy = 5; ip = &dummy; } 但是当我如下调用时,调用者指针却没有任何变化...事实上,当你向函数传入数组,编译本质上就是在模拟引用传递。但是 C 没有任何真正等同于正式引用传递或 C++ 引用参数东西。...另一方面, 类似函数预处理宏可以提供一种“名称传递”形式。 8. 看到了用指针调用函数不同语法形式。到底怎么回事?...如果你试图让一个指针指向特定内存地址,参考如下: // 设置一个适当类型指针取正确值, 使用明示类型重制, 以保证编译知道这个不可移植转换是你意图: unsigned int *magicloc

51740

从零实现一个3D建模软件

虽然作者已经在某种程度上放弃了该项目,其分享Dust3D从起心到技术选择到最终实现整个心路过程,很有借鉴意义。...总结了制作模型最常见步骤:首先,为前视图、侧视图和后视图设置参考样张,其次,制作平面,然后细分为六边形,通过遵循参考仰仗挤压此六边形,调整面部大小,以不同角度微调,来回调整,最后获得基本模型。...由于没有复杂UI,使用Blender建立Bmesh球之间关系,发现Blender软件在Callada输出一个bug,试图自己修复,所以我下载了Blender源代码,修复并提交了一个补丁...我们都知道,当我们为游戏做模型,不可避免地会需要做出一些锋利形状。 8、技术路线再调查 利用YouTube上视频教程梳理了几乎所有的建模软件,试图找出他们实现机制。...11、完成Dust3D 现在,对mesh有了更好理解,并且知道如何生成想要mesh,无论光滑还是锋利。完成mesh库后,尝试再次构建UI。在rust世界中,没有那么多UI框架可供选择

1.4K00
您找到你想要的搜索结果了吗?
是的
没有找到

用机器学习生成披头士歌词 | 项目实战

与其他监督学习任务一样,语言模型试图预测给定某些特征标签。然而,与大多数有监督学习任务不同,没有明确标签,而是语言本身同时扮演着特征和标签角色。...我们可以做到这一点方法是从这个分布中反复采样下一个单词,然后当我们采样下下一个单词,用它作为条件,以此类推。为了让更具体,我们在Python中看看这可能是什么样子。...这就迫使我们模型在生成新歌词要维护一些歌曲结构,否则模型只会生成大量没有结尾文本。在代码中,使用XXSL、XXEL、XXSS和XXES分别表示行开始、行结束、歌曲开始和歌曲结束。...这是因为三个单词组合比较少,所以模型在每一步有更少选择,在某些步骤只有一个选择。...例如,当你开始阅读这篇文章,你不需要重新学习单词是什么,哪些单词跟在哪些单词后面,或者它们是如何组合成句子。想象一那将是多么乏味。相反,你利用了之前所学语法知识来理解现在在说什么。

59920

写给前端程序员命令行入门

当我下回车,命令就会立即执行,值也会被打印。下一行会呈现一个新提示,让我们知道已经准备好接收下一个指令。 就像这样,你已经成功运行了第一条终端命令。...默认情况,它将一直ping GoogleDNS服务,直到时间结束。 当我们对结果感到满意,我们可以通过ctrl和c来中断该命令。...启动了一个Node服务,允许我们在应用程序上进行开发,监听文件变动,当我们编辑文件,重新进行打包。 当我们结束开发,我们可以使用ctrl + c来关闭该服务。...比如说,可以把设置成每当我输入hi,它就自动运行echo "Hello World!"。 alias.png 设置别名有点超出了本教程范围,而且根据你shell语言,说明也有点不同。...open命令一般用于打开一个文件,就像在GUI文件资源管理中双击一个文件打开一样。 然而,当我试图打开一个目录,它会选择弹出一个新Finder窗口,同时显示该目录内容。

1.1K30

吴恩达:AI下一个发展方向,从大数据转向小数据

吴恩达:这是和斯坦福大学一些朋友创造一个术语,指的是非常大模型,并在非常大数据集上进行训练,使用时可以为特定应用进行微调。例如,我们可以将 GPT-3 视为 NLP 领域一个基础模型。...许多研究者正在研究这个问题,认为在 CV 领域开发此类模型已经有了早期迹象。如果有比现在高 10 倍以上处理,我们就可以轻松构建包含 10 倍视频数据基础视觉模型。...记得当我和我学生发表第一篇 NeurIPS workshop 论文,提倡使用 CUDA 进行深度学习——另一位 AI 领域资深人士告诉:CUDA 编程很复杂,作为一种编程范式,工作量太大了,但我没有办法说服他...想他们现在都相信了。 吴恩达:也这样认为。在过去一年里,当我与人们谈论以数据为中心 AI 运动总是想到 10 或 15 年前与人们谈论深度学习和可扩展性情景。...如果你尝试为所有内容收集更多数据,那可能是一项非常昂贵工作。 例如,曾经发现当背景中有汽车噪音,语音识别系统性能会很差。

53530

图像识别遇到未知物体怎么办?

至关重要是,训练过程假设模型看到每个例子都是这些目标中一个,并且预测必须在这个集合中。模型没有说“不知道”选择,也没有训练数据来帮助学习这种反应。...这是一种在研究环境中有意义简化,但是当我试图在现实世界中使用模型时会引起问题。...不幸是,不知道有什么简单方法可以解决这个问题,但是看到了一些有用策略。最显然是在训练数据中添加一个“未知”类。坏消息是,这会带来另外一系列问题。 什么样本应该放进这个未知类?...稍微复杂一点,你可以编写一个单独图像分类试图识别主图像分类不适合条件。这与添加单个“未知”类不同,因为更像是一个级联(cascade),或者是细节模型之前一个过滤器。...这个门控模型将在完整图像分类之前运行,如果没有检测到看起来像是植物东西,它将提前退出,并弹出一个错误消息,表明没有发现作物。

1.2K21

TED演讲 | 计算机是怎样快速看懂图片:比R-CNN快1000倍YOLO算法

是华盛顿大学一名研究生,正在一个叫做Darknet项目上,她是一个神经网络框架,用来训练和测试计算机视觉模型。我们来看一Darknet怎么分析。...运行结果展示 而且它是正确狗的确是一条爱斯基摩,我们在图像分类技术上取得了很大进步,但是当我们在这种图像上运行分类,会发生什么呢?嗯……我们看到分类得到了一个和刚才很相似的结果。...我们需要一个更强大技术,正在解决一个叫做物体检测问题。试图从一张图上找到所有的物体,框起来,标注上这些是什么物体,这就是我们在一张图上运行检测仪得到结果。...现在,有了这样结果,我们利用这个计算机视觉算法做很多事情,我们看到了指出了有一只猫,一条狗,他们大致方位,他们大小,甚至可能还有一些额外信息,比如有本书在背景里,如果你希望在计算机视觉上构建一个系统...这是我们检测系统在电脑上实时运行状况,当我绕着检测框移动,它能很流畅追踪到我,并且它对于尺寸各种改变也很兼容,摆造型——向前,向后,效果很棒,如果我们想利用计算机视觉来构建一个系统,这就是我们真正想要结果

1.7K20

新推出AI开发平台让您可自定义开源大语言模型

引起注意原因有两个:一是创始人包括前Netflix、谷歌和SplunkAI团队成员;二是Gradient承诺基于开源大语言模型帮助开发者构建定制AI系统。...对于网页界面,Chang说,您通常需要“上传训练数据集,选择用于训练模型,然后启动微调任务”。...“认为最有意思领域是围绕微调、检索增强生成[RAG]、提示工程存在一些基本误解,”Chang回复说。“当我们谈论定制AI解决方案并非非此即彼,而是需要综合运用这三项技术。”...他说,很多时候人们试图仅依赖这三项中一项。 “这些不同技术提供了很多选择,也可以通过多种方式导致失败,”他表示,“所以我们试图在这方面提供更多指导。”...为微调设置基础设施并让其与现有框架配合运行可能非常具挑战性,他警告说。 Gradient以开发者为目标用户,因此提供了处理所有后端复杂性服务。Chang只希望开发者使用其API。

13510

使用Adidnsdump转储Active Directory DNS

0x01 就个人而言,每当我接手一个新渗透测试任务,我会去了解网络布局,使用了那些软件以及数据位置。...如果公司有非描述性服务名称或描述,像BloodHound或ldapdomaindump这样工具不会有太大帮助,因为SRV00001.company.local仍然没有告诉在这台主机上运行是什么...当我作为普通用户提取了ADSI Edit并突然看到了域中所有DNS记录试图找出AD如何在LDAP中使用域来存储DNS记录。...令我惊讶是,早在2013年,就有人开发出可以提取DNS记录PowerShell脚本,但它并没有完全符合要求,所以我决定用Python编写一个版本,并添加一些选项来枚举比默认情况更多记录。...当我使用过滤器执行查询(objectClass=dnsNode),这会返回非常有限结果,即使可以看不到更多记录: ? 如上图所示,很多记录objectClass都处于隐藏状态。

1.5K20

100天教程:在Unity中为敌人创造AI动作

当我对撞机被触发,我们会将我们“IsNearPlayer”设置为true,以便我们启动攻击动画,当我玩家离开触发范围,Knight将停止攻击。...需要注意是,由于某些原因,Knight网格在地面之下,然而我没有遇到任何具体问题,所以我决定忽略。...从Inspector面板, 我们可以从附加脚本中选择一个函数。现在我们没有什么,除了OnTrigger()。...实际上有很多方法可以实现这一点,不知道哪种方式是正确这是想到: 我们可以做其他事情,没有: 1)做到这一点,如果我们与敌人接触,无论是否进行攻击,都会受到伤害。...最初,以为这样就像我们在Survivor Shooter游戏中一样应用Nav Mesh Agent,但是当我开始考虑攻击动画,事情变得越来越复杂,花了很多时间试图弄清楚如何只有在攻击动画期间攻击伤害玩家

2K90

代码调试最佳实践

认为这里可能需要循环地重复以下步骤: 猜测可能发生错误某一个方面(比如说,“这个变量被设置为X,应该是Y”,或“发送到服务请求是错误”,或“这段代码根本没有运行过”等等)。...检查你假设 很多调试工作都基于一个假设:你确定事情是真的(比如说:“等一,这个请求是要发送到新服务,对吧,不是旧服务????)。但是实际上……不是真的。试图列出一些常见错误假设。...; 文档是正确正在查看代码在某个时刻被执行; 这两段代码是顺序执行,而不是并行执行; 这段代码在调试模式和发布模式编译(使用或不使用-O2开关,或…),会做同样事情; 编译没有错误...Peep是一个“Network Auralizer”,可以将系统上发生事情转换成声音。花了10分钟试图编译,迄今为止失败了,但它看起来很有趣,想继续尝试!!...每当我程序有问题并且报告这样错误信息“Error:无法连接到某个IP端口443:连接超时”都想说:“谢谢,这就是想知道事情”。

93710

如何设置合适 batch 大小收获 4 倍加速 & 更好泛化效果

首先,用给定 batch 估计梯度近似实际梯度。 然后,当协方差矩阵计算可以看作两个平均值试图用指数移动平均来近似,因为不想在训练中储存许多梯度。 ?...此外,当我思考这个问题得到 batch 可能在两次运行之间不一样,因为没有任何东西强迫小 batch 包含在大 batch 批中。...这就意味着只需要设置一个参数,调用 n_batch,这是在计算大小梯度之前必须存储 batch 数,然后就可以顺序计算论文统计数据了! 这样实施之后,得到了以下结果: ?...研究过文本和图像数据,但是考虑到它们要大得多,特别是预训练模型非常大,当我尝试用 batch 训练使用了 CUDA,由于内存不足,所以我不会在这里显示结果,你可以在 Colab Notebook...结论 我们在这篇文章中看到了很多东西!希望你喜欢这趟旅程,如果你有什么需要记住的话,那就是下面这些: 没有神奇 batch 大小数字,比如 32,这取决于数据复杂性和 GPU 约束。

1.4K20

代码调试最佳指南

认为这里可能需要循环地重复以下步骤: 猜测可能发生错误某一个方面(比如说,“这个变量被设置为X,应该是Y”,或“发送到服务请求是错误”,或“这段代码根本没有运行过”等等)。...检查你假设 很多调试工作都基于一个假设:你确定事情是真的(比如说:“等一,这个请求是要发送到新服务,对吧,不是旧服务????)。但是实际上……不是真的。试图列出一些常见错误假设。...; 文档是正确正在查看代码在某个时刻被执行; 这两段代码是顺序执行,而不是并行执行; 这段代码在调试模式和发布模式编译(使用或不使用-O2开关,或…),会做同样事情; 编译没有错误...Peep是一个“Network Auralizer”,可以将系统上发生事情转换成声音。花了10分钟试图编译,迄今为止失败了,但它看起来很有趣,想继续尝试!!...每当我程序有问题并且报告这样错误信息“Error:无法连接到某个IP端口443:连接超时”都想说:“谢谢,这就是想知道事情”。

1.1K40

通过结合RAG和微调来改进LLM输出

当我项目去年启动,我们选择了 Llama2 70B。当时,Llama2 作为最强大开源 LLM 脱颖而出,因为提供了我们需要广泛通用性能。...如果用户询问“缓冲比率定义是什么?”,则有关其他指标的信息对于回答没有帮助。RAG 将用户问题转换为嵌入,然后搜索预填充向量数据库以查找“类似于”用户问题文档。...在某些情况微调在处理非常详细信息不如 RAG 准确。虽然这可以归因于我们训练数据集,创建一个正确训练数据集来仅通过微调来克服这是一个实际问题。...其次,微调在根据最新可用内容刷新信息方面很弱。最后并非最不重要一点是,微调非常耗费资源。本质上是一个训练过程,因此需要大量机器资源。对于没有足够 GPU 公司来说,这可能会成为阻碍。...正如一位客户所说,“ 在直播活动期间,没有时间查看仪表板——需要向某人询问为什么会出现这种情况,并相信这是正确希望看到朝这个方向发展。”

18510

用了五年 VS Code ,决定换成 JetBrains……

甚至愿用性命证明 VS Code 是目前市场上最好 IDE,它就如同 PC 行业中苹果 M1 芯片电脑一样。请允许先介绍事情背景。...其次,JetBrains 引擎性能强大。当我将 IDE 都替换为 JetBrains 之后,强大引擎性能让印象深刻。...如果想设置全局调试断点,只需要在编辑行号处空格键即可,此功能极大得提高了程序调试体验。...当我在 Pycharm 中运行调试并试图查看数据,只要点击数据帧变量并按 view 作为数据帧,Pycharm 就会在 SciView 中打开数据帧,并显示所有数据帧值和列标题: 上图显示是运行调试且变量值变化监控...试想一,当所有变量赋值都被编辑显示在其旁边,我们可以很容易找到循环中逻辑错误、修复因为索引导致故障甚至做一些更加深入逻辑推理。

98220

被 GANs 虐千百遍后,总结出来 10 条训练经验

稳定性和容量 当我开始第一个独立GAN项目注意到在训练过程开始阶段,判别对抗损失总是趋于零,而生成器损失却非常高。...立即得出结论,有一个网络没有足够“容量”(或参数数量)来匹配另一个网络:所以我立马改变了生成器架构,在卷积层上添加了更多滤波令我惊讶是,什么改变都没有。...当我注意到这种策略无效甚至试图使更加动态化,根据两个网络的当前丢失状态来改变权值更新进度;直到后来才发现,并不是唯一一个试图走这条路的人,和其他许多人一样,没有成功地克服不稳定性。...通常,当使用更大Batch Size,您可以设置更高学习率,但在经验中,保守一点几乎总是一个安全选择。...双时间尺度更新规则 当我说双时间尺度更新规则(TTUR),您可能认为是GAN训练中使用一种复杂而清晰技术,但是完全不是这样。这种技术只是为了让生成器和鉴别选择不同学习率,仅此而已。

78140

使用Isaac Gym 来强化学习mycobot 抓取任务

现在将介绍一个利用myCobot实验。这一次,实验将使用模拟而不是物理机器进行。当尝试使用机器人进行深度强化学习,在物理机器上准备大量训练数据可能具有挑战性。...默认情况,模型训练 100 个 epoch,在 PC2 RTX 2Ti 环境中大约需要 3060 分钟,在无外设模式没有查看)只需要 15 秒。...虽然能够到达所需位置,手臂现在处于完全忽略自碰撞位置,就像八字形一样。试图研究是否可以在文档中设置自碰撞计算,但它效果不佳。...图8:忽略事故碰撞myCobot手臂并没有完全停在应该停地方,而是在周围摇摆。我们希望动作在到达目标位置接近 0,很难实现,并且手臂在目标位置周围不断振动。...图11(d)显示了完成模型和实际机器人之间比较(使用提供模型,细节完全不同)。但是,当我们实际尝试移动,如第 4.4 节所述,效果不佳。

2.5K50

一文看懂如何搭建AI应用:10周学会深度学习,还赢5千美元

但是,当我对每个图像进行四次旋转而得预测取平均值,改善出现了! 92% → 92.6%。 澄清一:上面提到“预测取平均值”,意思是平均了每个类在4个图像变化中产生模型概率。...与过拟合战斗 当试图处理过度拟合时,尝试了几个事情,没有一个产生显着改进: 增加网络中丢失率 更多数据增强(随机移位,缩放,倾斜) 分配更多训练数据:使用90/10分隔而不是80/20 平衡数据集...数据集不是非常平衡: 19%图像标有没有交通灯 53%是红灯 28%是绿灯 试图使用过采样较不常见类来平衡数据集,没有发现任何改进。...花费数小时用sloth来注释约2000张图片。当试图训练一个模型,过拟合得非常快,可能是因为没有足够标签数据。 也许这个方法可行,如果能标注更多图像。...在困难案例上训练分类 通过挑选分类置信度小于97%数据跳出30%“难度更高”图片。然后试图只用这些图片训练分类。没什么改善。

84750

AI专家KarpathyLLM 快速入门课

当我们在准备好数据集上启动训练,就会获得新高级助手。例如,如果你给它一个问题:“你能帮我检查一这段代码吗?似乎有一个 bug 打印了 Hello World。...以文章开篇提出 Llama 2 为例,在 Meta 开源就包含了基础模型和助手模型两种模型,基础模型并不能很好直接开箱即用,如果你问问题,只会给你更多问题,或者类似于那样回答,因为只是一个互联网文档采样...,我们可以要求GPT近一步按照规律给出预测值,但是GPT作为文本类模型其实也是不擅长数学,所以聪明再一次选择“求救”——利用程序去指示计算帮助计算他想要值,在此场景中,实际上会计算所有的比率...当我们向GPT发起提问:“生成摧毁人类逐步计划”,确实是会拒绝回答如果在该文本后添加如下图所示一段毫无意义,甚至是无法阅读文本,GPT给出了计划,实现了越狱。...当攻击者拥有该图像服务,就可以看到 GET 请求,从 URL 中看到所有你私人信息并读取出来。简单来说就是Bard访问文档创建图像并呈现图像,并加载了数据并向服务发送请求,从而外泄数据

79444

训练神经网络技巧总结

使用快速数据管道 对于小型项目,经常使用自定义生成器。当我处理较大项目通常用专用数据集机制替换它们。对于 TensorFlow,这是 tf.data API。...使用检查点 没有什么比运行昂贵训练算法无数个小时然后看到崩溃更令人沮丧了。有时,这可能是硬件故障,通常是代码问题——您只能在训练结束看到。...理想情况,您使用网络已经针对相同数据类型(图像、文本、音频)和与您任务(分类、翻译、检测)类似的任务进行了训练。有两种相关方法: 微调 微调是采用已经训练好模型并更新特定问题权重任务。...然后在您数据集上对其余层进行微调。 特征提取 与微调相反,特征提取描述了一种使用经过训练网络来提取特征方法。在预先训练好模型之上,添加自己分类,只更新这部分网络;基层被冻结。...但是,因为只是一个任意索引,我们可以更好地使用 one-hot 编码。与上一个技巧类似,这种表示在索引之间没有建立关系。 (重新)缩放数值 网络通过更新权重进行训练,优化负责这一点。

57920
领券