- 博客(569)
- 资源 (7)
- 收藏
- 关注
原创 编译原理动手实操之一个输入系统的实现
大家好,欢迎大家来到coding迪斯尼,愿天下没有难学的知识阅读博客的朋友可以到我的网易云课堂中,通过视频的方式查看代码的调试和执行过程: http://study.163.com/course/courseMain.htm?courseId=1002830012这篇文章是我课程中的系列讲稿,也是编译原理动手实操系列的文章。在我们南方有一句老话叫:无
2016-03-16 10:02:54
4357
5
原创 输入及词法分析详解
欢迎大家来到coding迪斯尼,我的愿景是:让天下没有难学的知识 这句话是跟马云学的,就算没马云的命,那就用马云的话,也是不错的。阅读博客的朋友可以到我的网易云课堂中,通过视频的方式查看代码的调试和执行过程: http://study.163.com/course/courseMain.htm?courseId=1002830012 大家好,继上几节我们通过实现一个简易编译
2016-03-08 12:08:29
4055
1
原创 编译原理动手实操,用java实现一个简易编译器-语法解析
语法和解析树:举个例子看看,语法解析的过程。句子:“我看到刘德华唱歌”。在计算机里,怎么用程序解析它呢。从语法上看,句子的组成是由主语,动词,和谓语从句组成,主语是“我”,动词是“看见”, 谓语从句是”刘德华唱歌“。因此一个句子可以分解成 主语 + 动词 + 谓语从句:句子-->主语+动词 + 谓语从句 主语是名词,因此有 :主语->名词句子里的
2016-02-21 18:03:43
13979
8
原创 利用DSF深度优先搜索来解容器倒水问题
在一些面试算法或智力题中,时不时会遇到容器倒水的问题,例如,有三个容器,分别是10升,7升,4升,7升和4升的容器装满了水,10升容器是空的,如果将容器a中的水倒入容器b时,必须使得a中的水全部倒完,或者b被倒满,问有没有一种倒水序列,使得7升容器或4升容器中只有2升的水。这个问题怎么会跟图论的深度优先搜索联系起来呢。如果我们把三个容器的水量和容量状态当作一个点,例如初始时刻[10(e
2015-12-07 21:27:36
2703
1
原创 一个在线显示doc文本的实例
最近带着一对攻城狮给客户做一个web平台系统,在与客户做需求分析的过程中,发现客户有个需求痛点,那就是希望能在web上直接浏览doc文本的内容。原来的老平台在显示doc文本时,有很多问题,例如原有doc文本排版格式显示错误,例如表格位置发生了偏移,字体不再是原有doc里的字体等等。如果新系统能解决客户这一痛点,想必我们技术团队的实力会得到客户进一步的肯定。我做过调查,发现在线显示doc
2015-11-24 15:20:00
3755
原创 一个android文本比对app的实现(二)--界面
本篇对该app的界面实现做一些说明。谷歌对android app 的界面开发提供了精巧的设计,其界面设计的布局技术(layout), 运用了类似于设计模式的composite pattern, 具体来说,就像俄罗斯娃娃,外面一个大娃娃可以套一个小娃娃。android 的layout 里面可以再嵌入其他layout, 层层递进,进而形成变化多样而又非常灵活的界面布局。
2015-11-17 15:36:42
1408
原创 一个android 文本比对App的实现(一)
做c++开发很多年了,从早年windows vc6.0 做客户端程序开发,这些年后台流媒体服务器后台开发。随着时代变迁,移动互联逐渐兴起,直到现在,移动互联的风头早已盖过传统互联网应用,因而传统后台开发似乎日渐式微。如今要找工作的话,android,IOS等开发的职位不但数量远远多于c++,而且报酬也要比c++高很多,如果在移动开发上做过三年以上,年薪25W以上的机会多的是,但是对于c++ 要达到
2015-11-13 17:05:27
3737
原创 一道看似简单的面试算法题所隐藏的潜在意图
大家面试历程中有没有经历过类似情况,面试官给出一道算法题,看似不难,你三下五除二搞定了,时间和空间效率都是最优,你乐呵呵以为offer,已经到手,结果左等右等,望穿秋水,面试的结果却是无疾而终,你反复确认,觉得题做得没错啊,为什么会失败呢。我就有过类似的情况,后来反复思考,才明白,其实我没明白简单的表面其实隐藏着潜在的考察点。举个栗子,一道常用的面试算法题是:给你一个链表,让你将链表反转。
2015-11-11 17:45:51
1584
原创 运用面向对象的分析与设计模式巧解面试算法题
IT行业,千变万化,日新月异,身处其中的各位同仁必感同身受,特别是对从事技术开发的朋友们而言,或许能感觉到唯一不变的就是变化。对纷繁复杂的程序人生而言,其实有一个看不见的主旋律,那就是找工作,找房子,找人(另一半)。如果你是心怀梦想,浪迹于上广北深的千万大军中的一员的话,我想这一句话该是你生活的写照了。在三找中,找工作是其他两找的基础,本系列文章主要是就找工作展开而言。对开发而言,面试
2015-02-09 17:06:40
1441
原创 揉扁搓圆transformer架构:
假设我们已经有了好的模型架构,有了足够多的GPU训练卡,也有了满足需求的调度系统,那么模型的训练是不是就比如水到渠成呢,答案是否定的。可以看到有不少开源大模型在给出详细的架构和算法时,他们总会遮遮掩掩一个信息,那就是模型的初始化参数,通常情况下,如果初始化参数调节不对,后续的训练极有可能失败,而一次大模型的训练迭代花费有几千万,因此缺失了模型参数初始化数值,即使把模型架构和相应算法全部公开给你,你依然未必能实现给定的性能。问题在于模型确定之后,模型的训练则是重中之重。才能搞出大模型的原因。
2026-04-03 09:43:24
464
原创 揉扁搓圆Transformer架构:激活函数
在充分了解Transformer架构前,我们需要知道它的一些前置知识,如果对前置知识了解不清楚,我们深入transformer架构时就会愈发糊涂最后走不下去。Transformer其实是有早期深度学习网络进化而来,他是基于早起深度学习网络架构上进行的一次进化。Transformer最早的祖先就是最简单形式的深度学习网络,简称”向前传导网络”, Feed Forward Network,它的基本结构如下:它本质上是使用基于计算机的数据结构形式来对人脑用于思考推理的脑神经活动过程进行模拟。人脑中大量的神经元以层
2026-03-31 11:50:24
298
原创 揉扁搓圆Transformer架构: 激活函数说明
从上图可以看出,右边的网络结构中最左边一层叫做输入层,它不用接收其他神经元的输出,而是直接接收大脑传递的电信号,对应到数据结构上,最左边一层的每个节点在代码上对应一个向量,向量其实是多个浮点数构成的一维数组,上图中最左边的输入层有三个绿色节点,那意味着网络对应的输入数据就是3个向量,当然这里的三个节点只是示例,具体输入层需要多少个节点要根据具体的应用情况来决定。这就意味这上一层节点跟下一层有连接的节点之间的连线上还有一个系数,这个系数乘以节点的输出值就得到该节点传递给对应节点的数值,这个系数叫做权重。
2026-03-29 19:45:52
377
原创 手撸 chatgpt 大模型:滑动窗口算法原理
大语言模型(LLM)的主要任务是:给定输入文本,它应该能够正确预测下一个单词。例如,给定句子 “llm is used to generate text”,LLM 的输入和输出如下:llm -> is llm is -> used llm is used -> generate llm is used generate -> text可以看出,这类似于使用滑动窗口将输入文本...
2024-12-12 15:51:41
560
原创 golang 实现比特币内核:如何接入 RPC 后端获得特定交易的二进制数据
本文描述了如何通过查询 rpc 后端接口的方式获得比特币交易的二进制数据
2024-11-28 18:59:26
856
2
原创 golang 实现比特币内核:transaction 结构中输入和输出两部分的一些说明
本文进一步描述了如何理解交易二进制数据中,输入和输出两部分的数据结构和解析方法
2024-11-28 18:54:08
657
原创 golang实现比特币内核:区块链交易“transaction“二进制数据结构解析和代码实现1
本文对比特币和区块链中最为关键的 transaction 概念进行详细说明,并用代码实现其二进制的解析
2024-11-28 18:43:39
387
原创 基于大模型和 RAG 的工程实战:以统计学方法将单词转换为向量
在前一节中,我们介绍了整个 RAG 过程,我们展示了需要将文档切分成更小的部分,并将其转换为某种数学向量。本节将介绍如何将文档部分转换为向量,并搜索给定文档部分作为问题上下文,以提高 LLM 的响应质量。我们需要了解的第一个概念是 TF-IDF,即“词频-逆文档频率”(Term Frequency-Inverse Document Frequency)。它是一种统计方法,用于评估某个单词在文档中的...
2024-11-22 13:08:50
1011
原创 手撸 chatgpt 大模型:详解 OpenAI 用于训练 gpt3 模型的数据预处理算法:BPE
ChatGPT使用了另一种复杂的分词方案,叫做“字节对编码”(Byte Pair Encoding,简称BPE),最初这是一种数据压缩算法,让我们来看看它的过程。BPE在多次迭代中合并频繁使用的字符对。例如,给定字符串:“low low low low low lower lower newest newest newest newest newest newest widest widest w...
2024-11-17 14:48:32
847
原创 手撸 chatgpt 大模型:模型训练前的数据预处理算法详解
在将文本用于训练 LLM 模型之前,我们需要将文本转换为模型可以处理的某种数学对象。预处理的第一步是将单词转换为数字,并能够将数字转换回单词。例如,给定文本:“I love you”,我们需要将其转换为数字数组,例如 [1, 2, 3];然后,再将这些数字数组转换回原始文本,比如 [1, 2, 3] 变回 “I love you”。让我们看看如何实现这一点。首先,我们需要一些基础文本作为素材,可以...
2024-11-16 13:06:41
468
原创 手撸 chatgpt 大模型:详解 OpenAI 训练 gpt3 模型时使用的数据预处理算法:BPE
本文详细描述了 OpenAI 在训练 gpt3 模型时所使用的数据预处理算法,并给出了详细的代码实现
2024-11-16 13:00:00
1709
原创 基于 RAG 和大模型的工程实战:原生大模型应用回复质量和初步输入增强后大模型回复质量的比较研究
本文给出了没有任何增强处理情况下原生 LLM 应用输出质量和仅仅针对输入作初步增强的情况下 LLM 输出质量的提升比较研究
2024-11-13 16:03:06
393
Android 4.4 App Development Essential
2014-11-21
一个java实现的简易编译器
2016-02-18
一个android 文本比对app的实现代码
2015-11-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅