摘要: 本文不详细解释梯度下降和反向传播算法的具体过程,但会引用相应较好的博客作为参考。 本文主要对于这两者进行概念上的解释和比较。 首先解释梯度下降:具体过程可以参考这篇博客https://www.cnblogs.com/pinard/p/5970503.html 1.梯度下降是求解函数最值的一种方法,在 阅读全文
posted @ 2018-04-23 10:46 Initial_Dream 阅读(799) 评论(0) 推荐(0) 编辑
摘要: 这里有一篇讲的很详细new和malloc的区别 总结一下: 1.new/delete是操作符,malloc/free是函数 2.malloc分配内存需指定大小,且只能是一般数据类型,分配成功返回void*,需要强制类型转换,分配失败返回NULL,需手动检查是否分配成功;new分配内存无需指定大小,可 阅读全文
posted @ 2017-09-01 18:06 Initial_Dream 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 多态是OOP中一个十分重要的特性,至于如何使用可以参考这篇C++与JAVA多态相同与不同,相信对于学习C++和java的人都有帮助。 多态实现的关键技术是动态绑定。 动态绑定:程序在运行期间寻找函数地址 静态绑定:代码在编译时已经确定了函数地址 多态的实现表象是指针+虚函数,本质是虚表+虚指针。 这 阅读全文
posted @ 2017-09-01 15:46 Initial_Dream 阅读(5227) 评论(0) 推荐(0) 编辑
摘要: 真正的高手总是精益求精,不会放过任何一个能够优化的机会。 一. 首先是32位和64位系统的类型所占字节数。 除了指针与long随操作系统长变化而变化外,其他的都固定不变(32位和64位相比) 二. 然后就是内存对齐,具体规则是: 1.每个变量按照变量类型的整数倍进行对齐。 2.整个结构体按照结构体中 阅读全文
posted @ 2017-08-31 16:25 Initial_Dream 阅读(429) 评论(0) 推荐(0) 编辑
摘要: extern关键词有两个用途: 1. extern "C“ 表示修饰的函数是在C中定义的,告诉编译器编译时按照C的规则来编译。这是由于C++为了实现函数的重载,在编译时会将函数翻译为函数名加参数的形式,例如void foo( int x, int y );会被翻译成类似_foo_int_int的样子 阅读全文
posted @ 2017-08-31 11:49 Initial_Dream 阅读(1248) 评论(0) 推荐(0) 编辑
摘要: 其实脚本语言已经封装的很好了,用到的一切都可以说是对象了,单独学习一下lua的OOP只是为了将来看代码方便一点。 首先需要注意的: 1.lua不存在类的概念,没有明确的语法用来声明类 2.lua的OOP实际上是通过table来实现的,这也有道理,因为对象本质就是数据和操作封装在一起 一.对象 上面提 阅读全文
posted @ 2017-08-30 10:07 Initial_Dream 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 原文地址采访 Lua 发明人的一篇文章,不再转载,只谈感受。 最近在学习lua,偶然看到了这篇文章,本来觉得看一下可能对lua的学习会有帮助,但是发现这里面的思想不仅限于lua,有很多思想的闪光点。 首先谈一下编程语言本身: 1.编码风格 lua算是我学习的第三种脚本语言,前两种是python和C# 阅读全文
posted @ 2017-08-30 09:18 Initial_Dream 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 本以为看完C API lua就学的差不多了,没想到越陷越深啊。 首先说元表的概念,元表是一个特殊的表,作用是定义一个表的操作(metamethod元方法)。类似于C++中类的运算符重载。 使用元表需要注意的事项: 1.元表可以定义的metamethod有下面这些 1 __add(a, b) --加法 阅读全文
posted @ 2017-08-29 12:35 Initial_Dream 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 学习Lua的最终目的就是为了和C/C++互调,所以C API是承上启下的重头戏。 核心思想:Lua与C通过一个抽象的栈进行通信。你可以理解为Lua和C各司其职,只是通过栈进行沟通,类似操作系统的进程通讯一样。这样做至少有两点好处:1. 程序员不必关心另一个语言是如何工作的,只需要清楚有哪些值是自己需 阅读全文
posted @ 2017-08-28 16:20 Initial_Dream 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 1.函数声明语法: 首先说明一点,lua中函数是第一类值,和其他的类型(table,number,boolean等)一样,所以可以作为函数的参数,table的键和值。 2.函数调用 直接使用函数名称调用,参数按照形参表里面依次匹配,如果实参多于形参,则多余实参被丢弃;如果实参少于形参,那么剩下的形参 阅读全文
posted @ 2017-08-24 11:36 Initial_Dream 阅读(337) 评论(0) 推荐(0) 编辑