区块链交易异常检测与文本分类特征选择技术解析
在当今数字化时代,区块链交易的安全性和文本数据的有效分类都是重要的研究领域。本文将深入探讨区块链交易异常检测技术以及文本分类中的特征选择方法。
区块链交易异常检测
特征提取技术
交易历史按地址分组,每个地址包含先前交易、交易时间戳和当前货币价值。这些时间序列数据中的特征需通过滚动窗口聚合来提取,以检测异常交易。
-
滚动窗口参数
:
- 时间序列数据按大小为 (v) 的顺序检查,(v) 可表示测量值的数量或时间范围。
- 滚动窗口大小为 (q),即一个窗口中的范围数量。
- 步长 (v) 表示一次交易。
-
分组与特征提取
:时间框架 (q) 和累积函数 (f) 的分组表示为 (q_i f_j),其中 (i\in[1, v]),(j\in[1, k])。(V) 是用于窗口大小的不同时间框架数量,(k) 是用于交易组的不同累积函数数量。每个交易提取的特征是时间框架 (w) 的 (q_i)、(f_s) 和函数 (f) 的组合。
以下是该过程的 mermaid 流程图:
graph TD;
A[交易历史按地址分组] --> B[确定滚动窗口参数 v 和 q];
B --> C[应用滚动窗口聚合];
C --> D[提取特征];
异常检测模型
采用无监督学习的 K - 均值聚类方法构建异常检测模型,用于评估每个交易是正常还是异常。具体步骤如下:
1. 传入整个数据集,估计具有最大度数的点。
2. 根据 (k) 个簇关联这些元素。
3. 选择最多 (k) 个顶点。
4. 遍历数据集,验证每个簇中质心与其基本元素之间的相似度和距离函数。
5. 每个处理元素有以下三种选择:
- 与质心位于同一组,从而减少该组元素,且该元素不会再被选择。
- 保留以供后续查找可能的质心,因为距离函数表明它应在另一个组中。
- 替换当前质心,并满足相似度和距离向量。
6. 继续重复该过程,考虑每个 (k) 组的步骤 4(ii) 部分。
7. 如果执行过程不改变质心,则宣布已成功合并并展示质心数组。
8. 遍历质心数组,将其颜色与元素颜色对应,以展示整个组。
| 步骤 | 操作 |
|---|---|
| 1 | 传入数据集,估计最大度数点 |
| 2 | 根据 (k) 个簇关联元素 |
| 3 | 选择最多 (k) 个顶点 |
| 4 | 验证相似度和距离函数 |
| 5 | 元素有三种选择 |
| 6 | 重复考虑步骤 4(ii) |
| 7 | 若质心不变,宣布成功并展示质心数组 |
| 8 | 遍历质心数组展示组 |
实验结果
- 实验设置 :提出的 CEAD 在 NS3 中进行模拟,区块链模块在 Anaconda 平台上用 Python 实现。将 CEAD 技术与异常交易检测系统 (ATDS) 进行比较,基于检测延迟、抗节点捕获能力、带宽利用率 (BUR) 和剩余能量等参数分析性能。攻击模型考虑了 DDoS 攻击、睡眠不足、数据伪造和节点捕获等高级攻击。
-
结果分析
:在实验中,流量大小从每块 50 到 250 KB 变化。
- 检测准确率 :CEAD 的检测准确率范围为 98.2% 到 96.3%,ATDS 为 97.4% 到 94.4%,CEAD 比 ATDS 高 1.5%。
- 抗节点捕获能力 :CEAD 的强度范围为 98.1% 到 99.1%,ATDS 为 96.4% 到 97.7%,CEAD 比 ATDS 高 1.4%。
- 带宽利用率 :CEAD 的 BUR 范围为 0.96 到 0.98,ATDS 为 0.93 到 0.94,CEAD 比 ATDS 高 3.8%。
- 剩余能量 :CEAD 的剩余能量范围为 11.5 到 12.3 J,ATDS 为 11.2 到 11.8 J,CEAD 比 ATDS 高 3%。
文本分类中的特征选择
引言
文本分类用于将文本文档分类到预定义的标签或类别中。但由于特征数量众多,导致特征空间的高维性,增加了文本分类机器学习技术的难度,并降低了性能。特征选择作为数据预处理技术,可解决高维特征空间问题,提高文本分类效率。
数据预处理
-
数据清理和维度降低
:执行文本分类任务需处理原始语料库数据,数据预处理包括多个步骤:
- 数据清理 :按结构组织数据,去除不需要的子文本。
- 分词 :将文本拆分为单词。
- 归一化 :将所有文本转换为相同大小写,去除标点符号(词干提取保留动词的根形式,词形还原)。
- 替换 :识别待翻译的候选单词,进行词义消歧。
- 维度降低的必要性 :由于数据量的增加,数据维度也在上升。降低数据维度可减少计算和存储开销,避免过拟合问题。特征选择是降低维度的主要子任务,它提供对任务至关重要的原始特征的一部分。
以下是数据预处理步骤的列表:
1. 数据清理
2. 分词
3. 归一化
4. 替换
特征选择方法
特征选择方法的目标包括增强分类器的预测能力、生成具有成本效益的分类器并加快处理过程、提高生成数据技术的清晰度。特征选择方法分为三类:
-
过滤方法
:基于多个统计测试的分数选择前 (N) 个特征,以找到与目标标签的相关性或确定哪些特征对目标标签更具预测性,该过程独立于任何学习算法,计算速度快,但不考虑特征依赖性。
-
包装方法
:根据子集对给定类的有用性评估特征子集,利用学习模型根据其预测能力对特征子集进行排名。但由于重复学习过程和交叉验证,计算成本较高。
-
嵌入式方法
:类似于包装方法,但将特征选择嵌入到训练阶段。
| 方法类型 | 特点 | 计算复杂度 |
|---|---|---|
| 过滤方法 | 独立于学习算法,不考虑特征依赖,计算快 | 低 |
| 包装方法 | 利用学习模型排名,考虑特征对类的有用性 | 高 |
| 嵌入式方法 | 将特征选择嵌入训练阶段 | 中 |
在后续部分,我们将详细介绍过滤方法中的具体技术,包括信息增益、卡方检验、Fisher 分数、皮尔逊相关系数和方差阈值,以及多元过滤方法中的 mRMR 方法。
区块链交易异常检测与文本分类特征选择技术解析
过滤方法详解
单变量特征选择
单变量特征选择方法独立于分类器,能使分类器计算更高效。常见的线性单变量过滤方法如下:
-
信息增益法 :根据特征项相对于类别/标签预测的频率选择特征。它衡量了特征的存在或不存在为分类器决策提供的知识量。计算公式为:
[
IG(t) = - \sum_{i = 1}^{m} P(C_i) \log p(C_i) + p(t) \sum_{i = 1}^{m} P(C_i|t) \log p(C_i|t) + p(\neg t) \sum_{i = 1}^{m} P(C_i|\neg t) \log p(C_i|\neg t)
]
其中,(IG) 表示信息增益,(C_i) 是第 (i) 个类别,(P(C_i)) 是第 (i) 个类别的概率,(m) 是目标类别的数量,(P(t)) 是特征 (t) 出现在文档中的概率,(P(\neg t)) 是特征 (t) 不出现在文档中的概率,(P(C_i|t)) 是特征 (t) 出现在第 (i) 个类别的条件概率,(P(C_i|\neg t)) 是特征 (t) 不出现在第 (i) 个类别的条件概率。该方法能通过排除不必要的特征,降低文本向量的维度,同时提高分类结果。 -
卡方检验 :这是一种应用于分类特征组的统计方法,用于评估特征与类别之间的关联。通过计算特征和类别之间的卡方值,选择卡方值高的元素。计算公式为:
[
CHI2(t, C) = \frac{\sum_{t \in {0, 1}} \sum_{C \in {0, 1}} (N_{t,C} - E_{t,C})^2}{E_{tC}}
]
其中,(t) 表示特征,(C) 表示特定类别,(N_{t,C}) 是特征 (t) 和类别 (C) 同时出现的频率,(E_{t,C}) 是特征 (t) 出现但类别 (C) 不出现的频率。 -
Fisher 分数 :通过计算变量的预期值与观测值的方差来确定变量关于未知参数的信息得分。方差最小时,信息得分最大。计算公式为:
[
F(x_j) = \frac{\sum_{k = 1}^{c} n_k (l_j^k - l_j)^2}{\sigma_j^2}
]
其中,(\sigma_j^2) 计算为 (\sum_{k = 1}^{c} n_k(\sigma_j^k)^2)。算法会选择 Fisher 分数较高的前 (m) 个特征。 -
皮尔逊相关系数 :用于量化两个连续变量之间的线性依赖关系,其值介于 -1 和 +1 之间。-1 表示负相关,+1 表示正相关,0 表示无线性相关。计算公式为:
[
r = \frac{(x_1 - \overline{x_1}) \cdot (x_2 - \overline{x_2})}{|x_1| |x_2|}
]
其中,(\overline{x_1}) 是向量 (x_1) 的均值,(\overline{x_2}) 是向量 (x_2) 的均值。 -
方差阈值 :该方法通过去除所有低方差特征来降低向量维度。如果特征在训练集中的方差低于阈值,则将其移除。方差计算公式为:
[
s = \sqrt{\frac{\sum (x_i - \overline{x})^2}{n - 1}}
]
以下是单变量特征选择方法的对比表格:
|方法名称|原理|优点|缺点|
|----|----|----|----|
|信息增益法|基于特征频率和类别预测选择特征|降低维度,提高分类结果| - |
|卡方检验|评估特征与类别关联|能有效筛选特征| - |
|Fisher 分数|计算方差确定信息得分|选择有区分度的特征| - |
|皮尔逊相关系数|量化线性依赖关系|衡量变量线性关系|只能检测线性关系|
|方差阈值|去除低方差特征|简单直接|可能丢失有用信息|
多变量过滤方法
多变量过滤选择方法在评估时会考虑特征之间的相互依赖关系,以选择相关特征。
-
mRMR(最小冗余最大相关性)
:该方法基于互信息,最大依赖度方法会找到与目标标签依赖性最高的特征集,但可能导致特征冗余。因此,可采用最大相关性方法,找到与目标标签平均互信息值有依赖关系的特征。计算公式为:
[
\max D(S, c), D = \frac{1}{|S|} \sum_{x_i \in S} I(x_i, c)
]
其中,(S) 是特征集,(I) 表示互信息。为了减少特征之间的冗余,可应用最小冗余原则来找到相互排斥的特征。
总结与展望
通过对区块链交易异常检测和文本分类特征选择技术的研究,我们可以看到这些技术在实际应用中的重要性和有效性。
在区块链交易异常检测方面,CEAD 技术在检测准确率、抗节点捕获能力、带宽利用率和剩余能量等方面均优于 ATDS 技术。这表明采用特征提取和 K - 均值聚类的异常检测模型具有较好的性能。
在文本分类特征选择方面,不同的特征选择方法各有优缺点。过滤方法计算速度快,但不考虑特征依赖;包装方法能考虑特征对类别的有用性,但计算成本高;嵌入式方法则将特征选择嵌入训练阶段,具有一定的优势。单变量和多变量过滤方法为解决文本分类中的高维特征空间问题提供了有效的手段。
未来,我们可以进一步研究如何结合不同的特征选择方法,以提高分类器的性能。同时,对于区块链交易异常检测,可探索更复杂的攻击模型,以增强系统的安全性。此外,随着数据量的不断增加,如何高效地进行特征选择和异常检测将是一个重要的研究方向。
以下是整个技术流程的 mermaid 流程图:
graph LR
classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px;
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px;
A([开始]):::startend --> B(区块链交易数据):::process
A --> C(文本数据):::process
B --> D(特征提取):::process
C --> E(数据预处理):::process
D --> F(K - 均值聚类异常检测):::process
E --> G(特征选择):::process
F --> H(输出异常交易结果):::process
G --> I(输出文本分类结果):::process
H --> J([结束]):::startend
I --> J
总之,区块链交易异常检测和文本分类特征选择技术在保障数据安全和提高数据处理效率方面具有重要作用,值得我们深入研究和不断优化。
超级会员免费看
4847

被折叠的 条评论
为什么被折叠?



