L01-人工智能概述
引入 智能设备、聊天机器人、无人驾驶、机器人……
什么是人工智能 人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它试图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。
机器人
语音识别
图像识别
自然语言处理
专家系统
知识工程
机器学习
人工智能是对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样的思考,甚至超过人的智能。
分类
弱人工智能 Artificial Narrow Intelligence(ANI):弱人工智能是擅长于单个方面的人工智能。
强人工智能 Artificial General Intelligence(AGI):人类级别的人工智能。强人工智能是指在各方面都能和人类比肩的人工智能,人类能干的脑力活它都能干。
超人工智能 Artificial Super Intelligence(ASI):知名人工智能思想家Nick B ...
L01-数学导论
为什么需要数学
在古代,就已经有了精密的数学体系,比如沟渠的建造,算盘等。
在现代,航空工程等各方面都需要极其精密的计算。
人类如何表示数字
史前文明:结绳记事
四大文明古国:都发明了各自的文字
古玛雅文明:零和进位的提出
计算机可以做什么图像处理、音频处理、模型创建、游戏······
0和1如何去做运算
二进制与十进制的转换
计算机如何处理二进制数据
逻辑电路
计算机为什么会产生理论上的误差 0.1+0.2=0.3,但是计算机输出的结果为:0.3000000000000004
原因:十进制小数如何转换为二进制(乘2取整法)
如何看待这个误差?
解决办法:
将小数扩大成整数后运算
提高计算机可表达数的精度
Tips:这是二进制独有的问题吗?答:并不是噢
人工智能如何运转 1、利用计算机强大的算力,按照AI模型的规则,实现特定的逻辑推断任务。
2、AI模型的建立和训练高度依存于相应的数学体系。
人工智能需要什么数学知识
微积分
线性代数
概率&统计
...
ElasticSearch详解
ElasticSearch详解引入-数据类型
结构化数据
非结构化数据
半结构化数据
Elasticsearch 概述Elasticsearch 是什么
The Elastic Stack, 包括 Elasticsearch、Kibana、Beats 和 Logstash(也称为 ELK Stack)。 能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。Elaticsearch,简称为 ES,ES 是一个开源的高扩展的分布式全文搜索引擎,是整个 Elastic Stack 技术栈的核心。它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理 PB 级别的数据。
全文搜索引擎 Google,百度类的网站搜索,它们都是根据网页中的关键字生成索引,我们在搜索的时候输入关键字,它们会将该关键字即索引匹配到的所有网页返回;还有常见的项目中应用日志的搜索等等。对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。
一般传统数据库,全文检索都实现的很鸡肋,因为一般也 ...
SpringBoot整合ES
SpringBoot整合ESES简介 Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎。
官网查看对应的版本: https://docs.spring.io/spring-data/elasticsearch/docs/4.2.1/reference/html/##new-features
安装ES安装ES123456##下载es的镜像docker pull elasticsearch:7.16.3##创建es的容器 并启动 single-node单机docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.16.3##测试http://localhost:9200/
验证:浏览器进入:http://localhost:9200/,看到如下界面即为安装运行成功。
安装kibana 为了界面显示的更为友好,或者说为了我们能 ...
机器学习分类算法
机器学习分类算法-实践:鸢尾花分类分类问题
分类在我们日常生活中很常见
二分类问题
多分类问题
核心算法
决策树
贝叶斯
SVM
逻辑回归
决策树
决策树(decision tree)
树状结构
非叶节点:对应一个特征属性,每个分支边代表这个特征属性在某个值域上的输出
叶节点:对应一个类别
决策过程
根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果。
构建决策树给定训练数据,如何构建决策树呢?
特征选择:选取对训练数据具有分类能力的特征
决策树生成:在决策树各个点上按照一定方法选择特征,递归构建决策树
决策树剪枝:在已生成的树上减掉一些子树或者叶节点,从而简化分类树模型
如何选择分裂特征
ID3算法
C4.5算法
CART算法
贝叶斯分类简介 贝叶斯分类是基于贝叶斯定理和特征条件独立性的分类方法,贝叶斯流派的核心思想:
Probability theory is nothing but common sense reduced to calculation.
概率论只不过是 ...
Python复杂操作
Python复杂操作—实践:爬虫与数据分析统计、文本词频统计类Class定义类
定义一个类Animals:
_ init( ) _定义构造函数,与其他面向对象语言不同的是,Python语言中,会明确地把代表自身实例的self作为第一个参数传入
创建一个实例化对象 cat,init( )方法接收参数
使用点号 . 来访问对象的属性
继承/调用类
通过继承创建的新类称为子类或派生类,被继承的类称为基类、父类或超类。
JSON序列化与反序列化JSON序列化
json.dumps 用于将 Python 对象编码成 JSON 字符串
JSON反序列化
json.loads 用于解码 JSON 数据,该函数返回 Python 字段的数据类型
Pandas库介绍
Pandas是Python第三方库,提供高性能易用数据类型和分析工具
Pandas基于Numpy实现,常与Numpy和matplotlib一同使用
Pandas中有两大核心数据结构: Series(一维数据) 和 DataFrame (多特征数据,既有行索引,又有列索
引)
使用Serie ...
飞桨与python入门操作
飞桨与python入门操作—实践:海量文件遍历、图像直方图统计、文本词频统计飞桨全景图 飞桨(PaddlePaddle)以百度多年的深度学习技术研究和业务应用为基础,是中国首个开源开放、技术领先、功能完备的产业级深度学习平台,集深度学习核心训练和推理框架、基础模型库、端到端开发套件和丰富的工具组件于一体。
Python的优点 Python的设计混合了传统语言的软件工程的特点和脚本语言的易用性,具有如下特性:
开源、易于维护、可移植
易于使用、简单优雅
广泛的标准库、功能强大
可扩展、可嵌入
所有的深度学习框架一般都有一个Python版的接口
Python数据结构数字Number
Python Number 数据类型用于存储数值,包括整型、长整型、浮点型、复数
Python 中数学运算常用的函数基本都在math模块
字符串String
单引号、双引号、三引号
Python中的字符串可以使用单引号、双引号和三引号(三个单引号或三个双引号)括起来,使用反斜杠\转义特殊字符
字符串的连接
使用 + 运算符
使用 join 运算符
...
SpringBoot详解
第1章 Spring 基础Spring 概述 Spring是一个轻量级Java开发框架,为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此Java开发者可以专注于应用程序的开发。
Spring的功能模块被有组织地分散到约20个模块中,这些模块分布在核心容器,数据访问/集成(Data Access/Integration),Web,AOP(Aspect Oriented Programming,面向切面的编程),植入(Instrumentation),消息传输(Messaging)和测试(Test)中。
Spring IoCSpring IoC 的基本概念 控制反转(Inversion of Control,IoC)是Spring框架的核心,用来消减计算机程序的耦合问题。当Spring框架出现后,对象的实例不再由调用者来创建,而是由Spring容器来创建。这样,控制权由调用者转移到Spring容器,控制权发生了反转,这就是Spring的控制反转。
从Spring容器角度来看,Spring容器负责将被依 ...
Docker详解
Docker 详解引言前提知识必须:熟悉Linux命令和相关背景知识
建议:Git相关知识,git,pull
定位和范围
Java开发:
语言:java
Spring MVC/Spring Boot/MyBatis······
Docker开发
语言:Go
Swarm/Compose/Machine/mesos/k8s·······
为什么需要Docker 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发和运维之间的协作,我们需要考虑更多的问题。特别是各种版本迭代后,不同版本环境的兼容等等都是我们所需要考虑的。
Docker之所以发展如此迅速,是因为它对以上的问题给出了一个标准化的解决方案。
形象的说:项目带着环境一起走!
总结一句话:一次构建,处处运行!
Docker理念
Docker是基于Go语言实现的云开源项目。
Docker的主要目标是:“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP ...
Shiro和Spring Security对比
Shiro和Spring Security对比Spring Security 特点
Shiro的功能它都有,但是不能脱离Spring。
Spring Security的权限细粒度更高(还未发现高在哪里)。
Shiro 特点
易于理解的 Java Security API;
简单的身份认证(登录),支持多种数据源(LDAP,JDBC,Kerberos,ActiveDirectory 等);
对角色的简单的签权(访问控制),支持细粒度的签权;
支持一级缓存,以提升应用程序的性能;
内置的基于 POJO 企业会话管理,适用于 Web 以及非 Web 的环境;
异构客户端会话访问;
非常简单的加密 API;
不跟任何的框架或者容器捆绑,可以独立运行。
Shiro 和 Spring Security 比较首先 Shiro 较之 Spring Security,Shiro在保持强大功能的同时,还在简单性和灵活性方面拥有巨大优势。Shiro是一个强大而灵活的开源安全框架,能够非常清晰的处理认证、授权、管理会话以及密码加密。如下是它所具有的特点:
Shiro比Spring更容 ...