自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

L

通俗

  • 博客(245)
  • 收藏
  • 关注

原创 徒手实践深度学习完整项目(一)——图像识别(基于深度学习框架TensorFlow2.0、Keras,含构建原理、代码和部署细节)

目录CIFAR-10数据集简介项目环境项目实践项目部署CIFAR-10数据集简介 官网下载地址:《CRFAR-10数据集》 CIFAR-10数据集由Alex Krizhevsky, Vinod Nair和Geoffrey Hinton收集。如图:一共包含10 个类别的RGB 彩色图片:飞机( airplane )、汽车( aut...

2020-04-17 20:42:40 799

原创 word2vec和doc2vec模型详解及应用

词袋模型(Bag of Word Model) 将所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的。例如如下2个例句:Jane wants to go to Shenzhen.Bob wants to go to Shanghai.就可以构成一个词袋,袋子里包括{ Jane,wants,to,go,Shenzhen,Bob,Shangh...

2020-04-11 19:13:03 1295 1

原创 Java死锁分析(jstack、jconsole、JProfiler、Linux和Windows)

死锁代码示例/** * Created by leboop on 2019/1/16. */public class DeadLock implements Runnable { private String a = ""; private String b = ""; public DeadLock(String a, String b) { ...

2019-01-16 22:29:52 1770

转载 模拟登录(Python)

"""模拟登录"""import requestsfrom lxml import etreeEMAIL = '********'PASSWORD = '********'class Login(object): def __init__(self): self.session = requests.Session() self.head...

2019-01-14 18:58:00 2036 1

原创 验证码识别(Python)

图形验证码识别        图形验证码最早出现,也很常见,一般由4个字母或者数字组成。例如,中国知网注册页面采用的就是图形验证码,链接为http://my.cnki.net/elibregister/commonRegister.aspx,页面如下:该注册页面表单最后一项就是图形验证码,必须正确输入图形验证码才可以完成注册。该图形验证码其实是一张图片,上面是经过变形的4个大写字母,并...

2019-01-10 13:06:13 1228

原创 机器学习之支持向量机SVM(理论基础)

本文符号约定参见《 机器学习之矩阵微积分及其性质》。考虑如下一般形式的约束优化问题(constrained optimization problem): ...

2018-12-22 01:44:52 2513

原创 Linux系统安装Python3环境(超详细)

本文基于如下Linux系统版本:1、默认情况下,Linux会自带安装Python,可以运行python --version命令查看,如图:我们看到Linux中已经自带了Python2.7.5。再次运行python命令后就可以使用python命令窗口了(Ctrl+D退出python命令窗口)。2、查看Linux默认安装的Python位置看到/usr/bin/python...

2018-12-05 14:31:15 222866 78

原创 Spark 2.3.0 Structured Streaming详解

 一、什么是Structured Streaming       结构化流(Structured Streaming)是一个建立在Spark SQL引擎之上可扩展且容错的流处理引擎。你可以使用与静态数据批处理计算相同的方式来表达流计算。当不断有流数据到达时,Spark SQL引擎将会增量地、连续地计算它们,然后更新最终的结果。最后,系统通过检查点和预写日志的方式确保端到端只执行一次的容错保证。...

2018-08-13 21:29:19 9934 1

原创 机器学习实战—天猫用户重复购买预测

商家有时会在特定日期,例如节礼日(Boxing-day),黑色星期五或是双十一(11月11日)开展大型促销活动或者发放优惠券以吸引消费者,然而很多被吸引来的买家都是一次性消费者,这些促销活动可能对销售业绩的增长并没有长远帮助,因此为解决这个问题,商家需要识别出哪类消费者可以转化为重复购买者。通过对这些潜在的忠诚客户进行定位,商家可以大大降低促销成本,提高投资回报率(Return on Investment, ROI)。众所周知的是,在线投放广告时精准定位客户是件比较难的事情,尤其是针对新消费者的定位。

2024-09-18 22:27:02 272

原创 模型验证 — 交叉验证Cross Validation的方法

交叉验证(Cross Validation)是验证模型性能的一种统计分析方法,其基本思想是在某种意义下将原始数据进行分组,一部分作为模型的训练数据集(训练集),另一部分作为模型的验证数据集(验证集)。首先用训练集对模型进行训练,再利用验证集来测试训练得到的模型,以此来作为评价模型的性能指标。常用的交叉验证方法有简单交叉验证、K折交叉验证、留一法交叉验证和留P法交叉验证。本文以一个模拟的线性回归模型为例来介绍各种交叉验证方法。

2024-09-18 13:48:31 210

原创 Level3 — PART 3 — 自然语言处理与文本分析

N-Gram 分词分词及词性标注的难点法则式分词法。

2024-09-08 12:41:37 232

原创 Level3 — PART 2 — 高级数据处理与特征工程

高级数据预处理高级数据预处理。

2024-09-05 12:23:17 70

原创 Level3 — PART 4 机器学习算法 — 集成学习

集成学习(Ensemble Learning)作为一种流行的机器学习,它通过在数据集上构建多个模型,并集成所有模型的分析预测结果。常见的集成学习算法包括:随机森林、梯度提升树、XGBoost等。集成学习的目标:通过考虑多个评估器的预测分析结果,汇总后得到一个综合的结果,以达到比单个模型更好的回归/分类性能的结果。多个模型集成的模型叫做集成评估器(ensemble estimator),其中的每个模型叫做基评估器(base estimator)。

2024-09-02 21:41:31 193

原创 Level3 — PART 4 — 机器学习算法 — 序列模式

在关联规则挖掘中,更关注项集和项集(或两个项)同时出现的关系,而忽略了数据中的序列信息,例如时间、空间等。序列模式挖掘(sequence pattern mining)最早是由Agrawal和Srikant提出的,它在关联规则基础之上,挖掘相对时间(空间)或其他模式出现频率高的模式,典型的应用还是限于离散型的序列。

2024-08-29 16:48:37 67

原创 Level3 — PART 4 — 机器学习算法 — 模型评估

目录模拟题CDA LEVEL III 模拟题(一)CDA LEVEL III 模拟题(二) 关于模型评估,读者可以阅读如下几篇文章:分类模型评估:第7章-使用统计方法进行变量有效性测试-7.5.4-模型评估-CSDN博客聚类模型评估:第9章-用户分群方法-聚类评估指标-CSDN博客回归模型评估:第7章-使用统计方法进行变量有效性测试-7.5-逻辑回归-CSDN博客第7章-使用统计方法进行变量有效性测试-7.4.2-多元线性回归-CSDN博客第7章-使用统计方法进行变量有效性测试-7.4.1-

2024-08-29 11:48:38 76

原创 Level3 — PART 4 — 机器学习算法 — 关联规则

Apriori算法是一种经典的关联规则数据挖掘算法,主要用于在给定数据集中发现频繁项集和关联规则。该算法最早是由Rakesh Agrawal等人在1993年提出的。最初提出的动机是针对购物篮分析问题提出的,其目的是为了发现交易数据库中不同商品之间的联系规则。这些规则可以刻画顾客的购买行为模式,对于商家来说,可以用来指导科学地安排进货、库存以及货架设计等。Apriori算法的名字来源于算法基于先验知识(prior knowledge)来压缩搜索空间,提高算法效率。

2024-08-28 16:10:07 128

原创 Level3 — PART 4 机器学习算法 — 决策树

决策树主要由节点和有向边构成,节点主要分为和(1)根结点(root node):没有入边,但有零条或多条出边(2)内部结点(internal node):恰有一条入边和 两条或多条出边(3)叶结点(leaf node):恰有一条入边,无出边。如图:虽然在一些资料中提到外部节点,但在决策树的基本构成中,外部节点并不是一个独立的节点类型。通常,叶节点已经涵盖了外部节点的概念,即它们是决策树的最终输出点。决策树既可以用来解决分类问题,也可以用来解决回归问题,通常分为和。

2024-08-27 16:22:27 253

原创 Level3 — PART 4 机器学习算法 — 朴素贝叶斯

贝叶斯定理由英国数学家发展,用来描述两个条件概率之间的关系,比如和和是两个随机事件。按照乘法法则,可以立刻导出:其中表示随机事件和随机事件同时发生的概率,表示在事件发生的情况下,事件发生的概率,类似地,表示在事件发生的情况下,事件发生的概率。

2024-08-24 15:06:29 409

原创 Flink CDC Standalone模式部署及Flink CDC Job提交

独立模式(Standalone mode)是Flink最简单的部署模式。本文将介绍如何下载、安装和运行Flink CDC。Flink CDC是基于Flink开发的一个流式数据集成工具。所以按照Flink CDC需要事先按照Flink。具体安装请参见。本文选用Flink CDC 3.1.0和Flink 1.17.2。

2024-08-23 09:57:02 326

原创 Apache Doris安装部署

Apache Doris官网主页如下:Apache Doris介绍:Apache Doris 简介 - Apache Doris。

2024-08-22 10:21:43 317

原创 FlinkCEP - Flink的复杂事件处理详解

FlinkCEP是在Flink之上实现的复杂事件处理(CEP)库。它允许在无尽的事件流中检测事件模式,使您有机会掌握数据中重要的内容。FlinkCEP类似字符串中,使用正则表达式检测感兴趣的字符串。如果您想直接开始,可以设置Flink程序并将FlinkCEP依赖项添加到项目的pom.xml中。2.12为scala版本,1.71.1为flink版本。FlinkCEP不是二进制发行版的一部分。

2024-08-21 12:32:35 219

原创 Table API & SQL之时区Time Zone详解

事件时间属性是使用CREATE table DDL中的WATERMARK语句定义的。watermark语句在已有的事件时间字段上定义一个watermark生成表达式,将该事件时间字段标记为事件时间属性。Flink支持在TIMESTAMP列和TIMESTAMP_LTZ列上定义事件时间属性。如果源中的时间戳数据表示为年-月-日-小时-分-秒,通常是一个不带时区信息的字符串值,例如) WITH (...

2024-08-19 15:48:52 218

原创 Table API之用户自定义函数User-defined Functions详解

目前,Flink区分了以下几种函数:(1)标量函数()将标量值映射到新的标量值。(2)表函数()将标量值映射到新行。(3)聚合函数()将多行的标量值映射到新的标量值。(4)表聚合函数()将多行的标量值映射到新行。(5)异步表函数()是表源执行查找的特殊函数。下面的示例展示了如何创建一个简单的标量函数,以及如何在Table API和SQL中调用该函数。对于SQL查询,函数必须始终以名称注册。对于Table API,可以注册函数或直接内联使用函数。

2024-08-18 16:34:54 48

原创 Table API & SQL系统(内置)函数System (Built-in) Function详解

Flink Table API & SQL允许用户使用函数进行数据转换。

2024-08-17 12:49:11 158

原创 Table API & SQL的概念和通用API

表API和SQL集成在一个联合API中。这个API的核心概念是一个表,它作为查询的输入和输出。本文展示了具有表API和SQL查询的程序的公共结构,如何注册表,如何查询表,以及如何发出表。

2024-08-15 13:23:01 130

原创 侧输出Side Output详解

默认情况下,当Watermark超过窗口末端时,延迟的元素将被删除。在Watermark通过窗口结束之后到达的元素,但在它通过窗口结束之前加上允许的延迟,仍然被添加到窗口中。当使用事件时间窗口时,可能会发生元素到达较晚的情况,即Flink用于跟踪事件时间进程的Watermark已经超过了元素所属窗口的结束时间。为了使这种情况可以工作,Flink保持窗口的状态,直到允许的延迟过期。这是一条延迟数据,因为此时Watermark=4000,Flink任务时间已经到达4000,该数据延迟了1000。

2024-08-14 11:48:48 95

原创 DataStream API的Joining操作

窗口连接(window join)将两个流的元素连接在一起,这两个流共享一个公共键,并且位于同一窗口。这些窗口可以通过使用窗口分配器来定义,并对来自两个流的元素进行计算。然后将来自两边的元素传递给用户定义的JoinFunction或FlatJoinFunction,用户可以在其中发出满足连接条件的结果。

2024-08-13 22:31:35 69

原创 DataStream API的Windows使用及源码分析

简而言之,当应该属于该窗口的第一个元素到达时,就会创建一个窗口,当时间(事件或处理时间)超过其结束时间戳和用户指定的允许延迟时,该窗口将被完全删除。举个例子:比如一个基于事件时间的窗口为[2000,3000),允许延迟2000ms,当事件时间为2500的事件到达时,在该事件之前没有事件时间在[2000,2500)范围的事件,则该事件是属于窗口[2000,3000)的第一个事件,此时就会创建窗口[2000,3000),当事件时间大于5000的事件到达该窗口时,该窗口将触发计算,并被删除。

2024-08-13 13:22:15 52

原创 Watermark水位线实践与源码分析

所以自定义Watermark,也是通过实现WatermarkGenerator接口来生成Watermark,此时可以根据用户的需求定制生成逻辑。自定义Watermark,根据是在onEvent方法中实现生成Watermark逻辑,还是onPeriodicEmit方法中实现生成Watermark逻辑,分为间断性Watermark和周期性Watermark。

2024-08-10 15:53:51 69

原创 Flink的DataStream状态管理

(1)键控状态(keyed state)(2)算子状态(Operator State)(3)广播状态(Broadcast State)说键控状态之前,不得不提键控数据流。

2024-08-07 15:58:03 242

原创 Flink中上游DataStream到下游DataStream的内置分区策略及自定义分区策略

Public/***/partition方法中的key是用于进行分区的键,numPartitions是总分区数,返回值是分区索引或分区号。/***/@Override该分区器将键为偶数数据分到0分区,键为奇数的分到1分区。/***/// 初始化执行环境.// 为了打印方便,设置并行度为2,默认为8.// 从一个包含三个元素的集合数据源中读取流.// 为了打印可以看出数据的分区信息,使用map方法.@Override// 获取分区号.});

2024-08-03 21:47:07 191

原创 DataStream Connector的JDBC Sink

DataStream Connector中的JDBC Connector提供一个接收器,用于将数据写入JDBC数据库。请注意,流连接器目前不是二进制发行版的一部分。如果需要在集群中执行,需要将上面的依赖jar添加到Flink集群中。JDBC接收器提供了至少一次(at-least-once)语义。但是,通过编写upsert SQL语句或幂等SQL更新,可以有效地实现“只执行一次”(exactly-once)语义。

2024-08-02 16:45:29 141

原创 DataStream API使用Sink及自定义Sink

下面自定义实现MySQL Sink。案例将从Socket中读取数据,并写入到MySQL中。/***/@Override@Override//关闭连接和释放资源= null) {if (ps!@Override//组装数据,执行插入操作try {return con;

2024-08-02 11:53:40 191

原创 DataStream API使用Source及自定义Source

下面我们实现一个自定义的Socket源。实现步骤:(1)通过实现SourceFunction,自定义一个SourceFuncttion;(2)调用addSource(sourcefunction)来使用。

2024-08-01 20:50:28 61

原创 Flink DataStream API编程入门

DataStream API的名称来自于DataStream类,该类用于表示Flink程序中的数据集合。您可以将它们视为包含重复项的不可变数据集合。这些数据可以是有限的,也可以是无限的,但是用于处理它们的API是相同的。在使用方面,数据流与常规Java Collection类似,但在一些关键方面有很大不同。DataStream是不可变的,这意味着一旦创建了它们,就不能添加或删除元素。您不仅可以简单地检查其中的元素,还可以使用DataStream API算子(也称为转换)对它们进行处理。

2024-08-01 13:52:23 295

原创 用户自定义Table API Connector(Sources & Sinks)

在许多情况下,实现者不需要从头创建新的连接器,而是希望稍微修改现有的连接器或挂钩到现有的堆栈。在其他情况下,实现者希望创建专门的连接器。本节对这两种情况都有帮助。它解释了表连接器的一般体系结构,从API中的纯声明到将在集群上执行的运行时代码。箭头显示了在转换过程中对象如何从一个阶段转换到下一个阶段的其他对象。

2024-07-31 21:14:55 130

原创 Table & SQL connectors以及FileSystem、JDBC connector

Flink的Table API和SQL程序可以连接到其他外部系统,用于读取和写入批处理和流表( batch and streaming tables)。表源(Table Source)提供对存储在外部系统(如数据库、键值存储、消息队列或文件系统)中的数据的访问。表接收器(Table Sink)将表发送到外部存储系统。根据源和接收的类型,它们支持不同的格式,如CSV、Avro、Parquet或ORC。

2024-07-30 10:58:19 214

原创 Flink CDC基本概念以及MySQL同步到MySQL

本文基于Flink CDC v2.4.2版本和Flink 1.17.1版本。

2024-07-29 13:03:17 1004 1

原创 Flink时间和窗口

如图所示,由事件生成器(Event Producer)生成事件,生成的事件数据被收集起来,首先进入分布式消息队列(Message Queue),然后被 Flink 系统中的 Source 算子(Data Source)读取消费,进而向下游的窗口算子(Window Operator)传递,最终由窗口算子进行计算处理。​ 有两个非常重要的时间点:(1)一个是数据产生的时刻,我们把它叫作“事件时间”(Event Time);

2024-07-24 15:52:11 1245

原创 Flink HA

bigdata111和bigdata112作为master节点,也就是实现JobManager的高可用。bigdata112和bigdata113作为worker节点,作为TaskManager节点。Flink HA集群使用ZooKeeper和HDFS实现。所以需要ZooKeeper集群和HDFS集群。执行zkCli.sh命令连接ZooKeeper集群,最终查找到当前Flink中active JobManager是bigdata111。active JobManager节点已经切换到bigdata112。

2024-07-18 16:26:41 951

第7章-使用统计方法进行变量有效性测试-7.2.2-多因素方差分析

第7章-使用统计方法进行变量有效性测试-7.2.2-多因素方差分析

2023-11-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除