人工智能笔记 - 机器学习
人工智能 - 机器学习 人工智能的基础是机器学习,顾名思义就是让机器能够处理数据,并在处理的数据中进行学习,从而能够自主地做出决策。简单来说,机器学习是让机器能够在不需要特别编程的情况下进行学习和改进。 而机器学习,大体上分为三种,分别为:监督式学习,无监督式学习,和深度学习。 监督...
人工智能 - 机器学习 人工智能的基础是机器学习,顾名思义就是让机器能够处理数据,并在处理的数据中进行学习,从而能够自主地做出决策。简单来说,机器学习是让机器能够在不需要特别编程的情况下进行学习和改进。 而机器学习,大体上分为三种,分别为:监督式学习,无监督式学习,和深度学习。 监督...
人工智能 - 数据分析和决策 这部分主要分为四个层次: - 数据收集 - 数据清理 - 数据分析 - 决策 数据收集 在人工智能领域数据收集是至关重要的一个环节,它是用于训练模式的输入来源。 作为基础的概念复习,数据收集无非是把目标进行采样,同时我们需要使用科学的方法使样本接近于...
内核加载 在里面我说明过计算机如何从远古到近代的启动流程,然后,走到操作系统一层的时候就没有深入阐述了,在这篇博文我将以Linux系统为例来叙述操作系统是如何启动的。 通常在系统/boot目录下放着内核文件,如下: shell initramfs-linux.img vmlinuz-lin...
远古时代 这个时期,计算机是处于电气化高度相关的环境下,几乎没有软件的概念(这里有点瑕疵,稍后补充)。 计算机这个时候会进行一系列针对硬件的自测试,尤其检测一些必要硬件是否可用,这个过程成为POST自检,如果检测通过就会进行下一个步骤:BIOS模式,或者UEFI模式。 > 一般计算机...
软件设计模式 - 行为模式 行为模式负责对象之间的高效沟通和职责委派。 行为模式包括:责任链,命令,迭代器,中介者,备忘录,观察者,状态,策略,模版方法,访问者。 责任链模式(Chain of Responsibility/CoR) 责任链模式允许你将请求沿着处理者链进行传递。每个...
软件设计模式 - 结构型模式 结构型模式介绍类和对象的组装方式,同时保持较大的灵活性和高效性。 结构型模式包括:适配器,桥接,组合,装饰,外观,享元,代理。 适配器模式(Adapter) 适配器模式是为了解决不同接口之间的适配问题。 适配器通常分为两类:对象适配器,类适配器。...
软件设计模式 - 创建型模式 创建型模式分为:工厂方法,抽象工厂,生成器,原型,单例。 工厂方法模式(Factory Method) 工厂方法模式是一种在父类声明方法,在子类实例化该对象的方法。在C++中通常以虚函数形式来表示,在其他语言,例如Java中则是抽象函数来表示。 工厂方...
软件设计模式简介 软件设计模式属于软件工程领域的解决问题的基本方法,它提供了一种合理地达成目标的处理步骤。本文主要简单提出为何需要它,它的作用,以及它的主要组成元素。 什么是软件设计模式 软件设计模式其实就是为了解决问题,而制定的一种抽象层面的合理地达到目标的处理步骤。 设计模式的...
LZSS算法简介 LZSS算法是LZ77算法的改良版,由James A. Storer和Thomas Szymacski于1982年发表在ACM杂志上。LZSS算法充分地利用了位的标记,从而使得压缩效率相比较于LZ77而言,有了显著提高。 > 参考维基百科 算法逻辑 在看本篇博文之...
LZ77算法简介 LZ77算法是一种无损压缩算法,最早由两位以色列人于1977发表,它是一种典型的字典型压缩算法,目前几乎大多数的无损压缩算法都是基于这个LZ77算法,也就是在其基础上优化修改,此算法可以称得上是无损压缩算法界的鼻祖了。 > 参考维基百科 算法逻辑 LZ77的算法核...
简介 人工智能并非是一个新鲜事物,早在多年前就就已有 TensorFlow,配合一套数值,矩阵,图形,和相关算法库,就可以实现一个简单的人工智能。 其实人工智能经历了许多年的发展,目前逐渐成熟,平时大众与其在生活的交叉并不多,所以难以引人注目,不过这次的 ChatGPT 展现出它强大的语言功...
玩转自搭建 GitLab 社区版 本文的自搭建是基于docker容器技术而实现的,其中包括gitlab-ce和gitlab-runner两个部分。 什么是 GitLab GitLab是一个代码仓库管理系统(它是一套开源项目),使用 Git 作为代码管理工具,集成 Web 管理的服务,Gi...
什么是代码改动 在软件项目中都存在一个生命周期,无论周期长短,都会涉及到代码改动,不管是对以前缺陷的修复,还是在敏捷开发中(每一个故事的迭代),都会或多或少地产生代码修改。 为什么会发生代码改动 代码修改其实是很常见的,但代码修改却是要尽量避免的,我们可以使用极限思维,一种是无比兼容...
什么是MongoDB Cloud MongoDB Cloud 的核心是 ,这是一个适用于现代应用程序的完全托管的云数据库。Atlas 是运行领先的现代数据库 MongoDB 的最佳方式。 的文档模型是一种更快的创新方式,可为数据库带来灵活性和易用性。 这是官网的简介,然后,再看一下它的...
JNI 开发是什么 因本人以前工作中做过此类工作,再加上老同事的疑问,所以,今天抽出时间来探讨一下JNI的开发问题和特定细节(调用的线程安全问题),其实这种JNI层调用和任何其他语言调用C/C++层结构都差不多,比如说CGO,其涉及到Golang和C/C++层的调用,很多方面都存在类似之处。...
什么是分布式系统 关于分布式系统的定义,应该都不会陌生,它就是一些独立的计算机集合,这些计算机也称为节点,为了完成一项事务,由这一组计算节点协作完成。 而分布式还有另外一个特点,就是用户几乎感知不到它是很多节点来完成一项事务的,甚至可以说,站在用户的角度,它和集中式系统几乎雷同,用户不会觉得...
Github的App有两种,一种是普通的App,一般用以制作自动化机器人,另一种是利用用户登录的App,它可以操作登录用户的Github里面的API定义的操作,包括:用户信息获取,仓库信息修改,用户信息修改,等等。 OAuth2的定义 OAuth(开放授权)是一个开放标准,允许用户授权第三方...
什么是coredump? Coredump是继承于UNIX系统的机制,它用于保存程序出错而崩溃时的栈,内存,PID,UID,GID,时间等等信息的快照,通常用于程序诊断和调试,Coredump的信息在计算机中一般保存三天左右(依系统设定而定),如果出错的程序BUG不及时查找,超过三天系统会吧这...
概述 Secure Boot 作为 UEFI 的一个选项,它可以被设置为开启或关闭 ( 有少数的计算机里面, Secure Boot 被设置为开启,却不存在关闭它的选项,但系统主板内置有 Windows 系统的公钥证书签名,使其只能加载 Windows ,其他系统一律不以加载,用户没有选项,不...
问题来源 直接在虚拟机MINIX中阅读它的源代码,十分不便,修改调试做移植也非常困难,如果将MINIX系统中的部分源代码拷贝到实体机LINUX中,在LINUX系统中进行修改调试将会非常方便。 然而,MINIX系统是一种比较基本的系统,不能像vmware中使用Windows类系统那样,直接给它...
TeX系统简介 TeX系统最早由Stanford大学教授Donald E. Kunth制成的计算机排版软件系统,大家对他的《The Art of Computer Programming》应该不会陌生。 实际上,TeX的制成正是由于上述的书出版样本,令他不满意,所以激发了他创制了TeX排版系...
SQL Server是微软的数据库产品,也是一个较为众所周知的数据库产品,其中SQL Server 2000深受广大的用户的青睐,知名度较高,SQL Server 2008是其的后继产品之一,废话不多说了(本文不讨论VS或SQL Server的安装,假设预制环境就绪)。 首先在菜单的视图->其他...
简介 今天来讨论一下PE文件的壳,壳主要用于PE文件的商业保护,以此达到软件不被暴掉的可能性,随着破解知识的普及,软件的壳也愈加复杂才可勉强不被暴。 壳的一个加载过程在许多书上都将过,这里就以图来复习一次: ! 这张图其实是一种情形,原程序被压缩引擎压过,还可以是在EXE文件上直接加...