机器学习算法在专利分类与贝叶斯规则增强中的应用
1. 引言
在当今科技快速发展的时代,专利和专利申请对于衡量国家或公司的科技进步水平和能力至关重要。自动专利分类是一个具有挑战性的多类问题,与传统模式分类问题有诸多不同,如规模大、具有层次结构、样本有时间变化特征、样本数量持续增加以及多标签等特点。同时,在机器学习领域,提升局部朴素贝叶斯规则也是一个重要的研究方向,它能有效提高分类的准确性和效率。
2. 提升局部朴素贝叶斯规则
2.1 AdaBoost.LCR 算法
提出了 AdaBoost.LCR 算法来提升局部分类器规则,其工作方式类似于用于多类分类问题的 AdaBoost.M1。每个成员局部分类器规则的错误率要求不高于 50%,并且使用留一法技术估计错误率以保持泛化能力。
2.2 局部朴素贝叶斯规则的归纳
为了回答如何在带有权重信息 w 的数据集 D 上构建局部分类器规则的问题,设计了 DiscoverAnLNBR 算法。该算法本质上是一个空间搜索过程,关键在于衡量候选局部分类器规则的优劣。需要考虑两个因素:局部朴素贝叶斯规则的错误率(可通过方程 (4) 估计)和 zeta 值(在方程 (9) 中定义)。
以下是 DiscoverAnLNBR 算法的伪代码:
FUNCTION DiscoverAnLNBR(D, A)
INPUT: A is the set of attributes, and D is the training data set
OUTPUT:
1.
NBG:=a naïve Bayesian classifier trained using A and D
2.
GoodEnough:=true;
3.
IF (error(D, NBG)>50%) GoodEnough:=false; ENDIF
4.
DLocal:=D; ALocal:=A;
5.
rulbest:=∅ÆNBG;
6.
WHILE (true)
7.
rulSuper:=rulbest;
8.
FOR each attribute-value pair (a, v) where a∈ALocal and v∈domain(a)
9.
DSub:={x∈DLocal|a(x)=v}; ASub:=ALocal−{a};
10.
NBSub:=a naïve Bayes classifier trained on DSub and ASub;
11.
rulsub:=
Sub
rul
NB
v
a
Scope
Super
→
∪
)}
,
{(
;
12.
IF error(Dsub, rulSuper)<error(Dsub, rulsub)
13.
rulsub:=
Super
Super
rul
rul
Classifier
v
a
Scope
→
∪
)}
,
{(
;
14.
ENDIF
15.
IF GoodEnough and (error(rulsub)<0.5) and (zeta(rulSub)>zeta(rulbest))
16.
(abest, vbest):=(a, v);
17.
rulbest:= rulSub;
18.
ELSEIF (not GoodEnough) and (error(rulSub)<error(rulbest))
19.
(abest, vbest):=(a, v);
20.
rulbest:=rulSub;
21.
IF (error(rulSub)<0.5) GoodEnough:=true; ENDIF
22.
ENDIF
23.
ENDFOR
24.
IF rulbest!=rulSuper
25.
DLocal:={x∈DLocal|abest(x)=vbest};
26.
ALocal:=ALocal−{abest};
27.
ELSE
28.
break; //exit the while loop
29.
ENDIF
30.
ENDWHILE
31.
return rulbest;
2.3 与懒惰贝叶斯规则算法的比较
- 效用衡量标准不同 :LBR 仅关注错误率,而该算法更强调 zeta 值,考虑了局部朴素贝叶斯规则的覆盖范围,倾向于短前件的规则,运行速度更快。
- 算法类型不同 :LBR 是懒惰算法,候选属性 - 值对取决于给定的测试实例;而该算法是急切算法,需要考虑所有可能的候选属性 - 值对,运行速度较慢。
2.4 实验结果
随机选取了 UCI 机器学习库中的 21 个数据集进行实验,采用十折交叉验证估计错误率,并使用熵基离散化算法对数值属性进行预处理。实验使用了四种算法:LocalBayesBoost、懒惰贝叶斯规则(LBR)算法、BoostedNB 算法和朴素贝叶斯(NB)算法。
| 数据集 | # exams | # attr | # cls | NB | BoostedNB | LBR | LocalBayesBoost |
|---|---|---|---|---|---|---|---|
| Australian | 690 | 14 | 2 | 14.3% | 14.3% | 14.2% | 15.8% |
| Breast | 699 | 10 | 2 | 3.0% | 4.2% | 3.0% | 3.9% |
| Chess | 3196 | 36 | 2 | 12.0% | 5.1% | 2.6% | 0.7% |
| Cleve | 303 | 13 | 2 | 16.5% | 15.2% | 16.5% | 18.5% |
| Crx | 690 | 15 | 2 | 14.2% | 15.7% | 14.8% | 13.5% |
| Diabetes | 768 | 8 | 2 | 25.4% | 25.3% | 25.4% | 25.4% |
| German | 1000 | 20 | 2 | 25.2% | 25.4% | 25.1% | 27.3% |
| Horse - Colic | 368 | 22 | 2 | 21.2% | 22.0% | 17.4% | 10.7% |
| Hypothyroid | 3163 | 25 | 2 | 1.5% | 1.5% | 1.2% | 1.3% |
| Ionosphere | 351 | 34 | 2 | 10.0% | 9.6% | 10.5% | 9.7% |
| Nursery | 12960 | 8 | 5 | 9.7% | 8.1% | 2.3% | 0.2% |
| Pendigits | 10992 | 16 | 10 | 12.3% | 7.7% | 3.9% | 2.2% |
| Pima | 768 | 8 | 2 | 25.3% | 25.4% | 25.5% | 24.9% |
| Satimage | 6435 | 36 | 6 | 17.9% | 17.6% | 13.6% | 12.2% |
| Segment | 2310 | 19 | 7 | 8.8% | 8.3% | 5.8% | 4.5% |
| Shuttle - Small | 5800 | 9 | 7 | 0.7% | 0.2% | 0.3% | 0.2% |
| Sick | 2800 | 29 | 2 | 2.9% | 3.1% | 2.6% | 2.8% |
| Soybean - Large | 683 | 35 | 19 | 7.0% | 6.3% | 6.7% | 5.7% |
| Tic - Tac - Toe | 958 | 9 | 2 | 29.8% | 15.9% | 14.4% | 0.5% |
| Vote | 435 | 16 | 2 | 9.7% | 5.3% | 6.4% | 3.9% |
| Waveform - 21 | 5000 | 21 | 3 | 18.9% | 18.9% | 16.2% | 18.6% |
| Mean | 13.6% | 12.2% | 10.9% | 10.1% |
从实验结果可以看出,LocalBayesBoost 算法取得了最佳结果,平均错误率为 10.1%,相比 NB 算法的 13.6% 有了显著降低,相对错误率降低了 25.7%。
3. 将先验知识融入大规模专利分类的任务分解
3.1 专利分类问题描述
针对 NTCIR - 5 日本专利数据库进行日本专利分类任务。该数据库采用国际专利分类(IPC)分类法,具有层次结构,包括五个级别:部、类、子类、组和亚组。当前研究主要集中在顶部三个级别。
以下是 1993 - 1999 年八个部类别的专利数量分布表:
| Section | 1993 | 1994 | 1995 | 1996 | 1997 | 1998 | 1999 | Total |
| — | — | — | — | — | — | — | — | — |
| A | 30,583 | 31,316 | 28,357 | 25,444 | 22,475 | 32,427 | 33,126 | 203,728 |
| B | 65,538 | 68,474 | 68,130 | 68,278 | 62,436 | 68,148 | 69,648 | 470,652 |
| C | 30,747 | 31,834 | 34,163 | 37,996 | 35,700 | 31,198 | 31,494 | 233,132 |
| D | 4,904 | 5,228 | 5,794 | 6,127 | 5,604 | 4,642 | 4,968 | 37,267 |
| E | 18,605 | 18,000 | 16,114 | 13,690 | 11,099 | 18,604 | 18,810 | 114,922 |
| F | 30,296 | 31,188 | 29,358 | 28,258 | 26,671 | 31,403 | 32,938 | 210,112 |
| G | 77,692 | 81,691 | 81,677 | 88,716 | 95,679 | 79,158 | 83,942 | 588,555 |
| H | 72,589 | 72,164 | 72,544 | 81,486 | 86,834 | 75,305 | 80,594 | 541,516 |
| Total | 330,954 | 339,895 | 336,137 | 349,995 | 346,498 | 340,885 | 355,520 | 2,399,884 |
3.2 专利的时变特征
3.2.1 对分类的影响
专利具有时间依赖性,一方面人们使用的词汇随时间变化,另一方面技术方向也随时间改变。通过实验发现,随着训练数据和测试数据之间的时间间隔减小,专利分类器的分类性能提高。
3.2.2 不同词汇的变化
为了解释分类性能的变化趋势,对训练数据和测试数据中不同词汇及其频率进行了简单分析。
3.3 任务分解策略
采用最小 - 最大模块化支持向量机(M3 - SVM)解决大规模专利分类问题,并提出了一种将先验知识(时间信息和层次结构信息)融入任务分解的新方法。通过实验证明,应用 M3 - SVM 与该任务分解方法在训练时间、泛化准确性和可扩展性方面优于传统 SVM。
3.4 实验流程
graph LR
A[数据准备] --> B[构建训练和测试数据集]
B --> C[选择分类算法]
C --> D[训练模型]
D --> E[评估模型]
E --> F[结果分析]
4. 总结
本文介绍了提升局部朴素贝叶斯规则的方法和将先验知识融入大规模专利分类任务分解的策略。通过实验验证了这些方法的有效性,为机器学习在专利分类和贝叶斯规则增强领域的应用提供了有价值的参考。在未来的研究中,可以进一步探索如何更好地利用先验知识和优化算法,以提高分类的准确性和效率。
5. 技术点分析
5.1 提升局部朴素贝叶斯规则技术
5.1.1 AdaBoost.LCR 算法核心
AdaBoost.LCR 算法用于提升局部分类器规则,其核心在于通过迭代的方式,不断选择表现较好的局部分类器规则,使其在整体分类中发挥更大作用。每个成员局部分类器规则的错误率要求不高于 50%,这是为了保证整体分类的准确性。留一法技术的使用,能够在估计错误率时,避免数据的过度拟合,从而保持模型的泛化能力。
5.1.2 DiscoverAnLNBR 算法流程
DiscoverAnLNBR 算法是构建局部朴素贝叶斯规则的关键。其流程如下:
1. 初始化:使用所有属性和数据集训练一个全局朴素贝叶斯分类器 NBG,并判断其错误率是否高于 50%,以此设置 GoodEnough 变量。同时,初始化训练子集 DLocal 和属性集 ALocal,以及初始规则 rulbest。
2. 迭代搜索:在每次迭代中,将 rulbest 赋值给 rulSuper,然后遍历所有可能的属性 - 值对 (a, v)。
- 对于每个 (a, v),创建一个候选规则 rulSub,训练对应的朴素贝叶斯分类器 NBSub。
- 比较 NBSub 和 rulSuper 的分类器在训练子集 DLocal 上的表现,选择更优的分类器作为 rulSub 的分类器。
- 根据 GoodEnough 的值和规则的错误率、zeta 值,更新 rulbest。
3. 更新数据集和属性集:如果 rulbest 发生了更新,更新 DLocal 和 ALocal;否则,退出迭代。
4. 返回结果:返回最终的 rulbest。
5.1.3 与 LBR 算法的差异优势
与懒惰贝叶斯规则(LBR)算法相比,提升局部朴素贝叶斯规则的算法有以下优势:
-
效用衡量标准
:LBR 仅关注错误率,而该算法更强调 zeta 值,考虑了规则的覆盖范围。这使得该算法更倾向于短前件的规则,减少了不必要的计算,从而提高了运行速度。
-
算法类型
:LBR 是懒惰算法,其候选属性 - 值对取决于给定的测试实例,只有在需要分类时才进行规则构建。而该算法是急切算法,在训练阶段就考虑所有可能的候选属性 - 值对,虽然运行速度较慢,但能够在训练过程中充分挖掘数据的特征,构建更全面的规则集合。
5.2 专利分类任务分解技术
5.2.1 先验知识的利用
在大规模专利分类中,充分利用了两种先验知识:时间信息和层次结构信息。
-
时间信息
:专利具有时间依赖性,人们使用的词汇和技术方向随时间变化。通过实验发现,训练数据和测试数据之间的时间间隔越小,分类性能越好。因此,在任务分解中考虑时间信息,可以使模型更好地适应不同时间段的专利特征。
-
层次结构信息
:国际专利分类(IPC)具有层次结构,包括部、类、子类、组和亚组。利用这种层次结构信息,可以将大规模的分类问题分解为多个小规模的子问题,降低问题的复杂度。
5.2.2 M3 - SVM 与任务分解方法
采用最小 - 最大模块化支持向量机(M3 - SVM)解决大规模专利分类问题。M3 - SVM 的基本思想是将复杂问题分解为一系列简单子问题,使用支持向量机(SVM)学习每个子问题,然后根据最小化和最大化原则集成训练好的 SVM。将先验知识融入任务分解的方法,使得 M3 - SVM 在训练时间、泛化准确性和可扩展性方面优于传统 SVM。
6. 实际应用建议
6.1 提升局部朴素贝叶斯规则的应用
- 数据预处理 :在使用 DiscoverAnLNBR 算法之前,对数据进行预处理是很重要的。可以使用熵基离散化算法对数值属性进行离散化,以提高算法的性能。
- 参数调整 :根据具体的数据集和问题,调整算法中的参数,如错误率阈值和 zeta 值的权重,以获得更好的分类效果。
- 规则选择 :在实际应用中,可以根据规则的错误率和 zeta 值,选择合适的规则进行分类,避免使用过于复杂或不准确的规则。
6.2 专利分类任务分解的应用
- 时间信息的利用 :在构建训练和测试数据集时,尽量使训练数据和测试数据的时间间隔较小,以提高分类性能。可以按照时间顺序划分数据集,或者根据时间信息对数据进行加权处理。
- 层次结构的应用 :根据 IPC 的层次结构,将大规模的分类问题分解为多个小规模的子问题。可以先在高层级别进行分类,然后在每个子类中进行更细致的分类。
- 模型评估 :使用交叉验证等方法评估模型的性能,选择最优的模型参数和任务分解策略。
7. 未来展望
7.1 算法优化
在提升局部朴素贝叶斯规则方面,可以进一步优化 DiscoverAnLNBR 算法,例如改进搜索策略,减少不必要的计算,提高算法的效率。在专利分类任务分解方面,可以探索更有效的先验知识利用方法,如结合更多的领域知识和语义信息,提高分类的准确性。
7.2 多领域应用
这些技术不仅可以应用于专利分类和贝叶斯规则增强领域,还可以推广到其他领域,如文本分类、图像识别等。通过将先验知识和任务分解的思想应用到不同的领域,可以提高模型的性能和可解释性。
7.3 与其他技术的结合
可以将这些技术与深度学习、强化学习等其他先进技术相结合,以获得更好的分类效果。例如,使用深度学习模型提取专利文本的特征,然后使用提升局部朴素贝叶斯规则的方法进行分类。
8. 总结
本文详细介绍了提升局部朴素贝叶斯规则和将先验知识融入大规模专利分类任务分解的相关技术。通过对这些技术的原理、实验结果和应用建议的分析,我们可以看到这些技术在提高分类准确性和效率方面具有很大的潜力。在未来的研究和应用中,我们可以进一步探索这些技术的优化和拓展,使其在更多领域发挥更大的作用。
8.1 关键要点回顾
- 提升局部朴素贝叶斯规则的 AdaBoost.LCR 算法和 DiscoverAnLNBR 算法,通过迭代和空间搜索的方式,构建更准确的局部分类器规则。
- 专利分类任务分解中,充分利用时间信息和层次结构信息,采用 M3 - SVM 算法,提高了分类的性能和可扩展性。
- 实验结果表明,这些技术在多个数据集上取得了较好的分类效果,为实际应用提供了有力的支持。
8.2 行动呼吁
希望本文能够为从事机器学习和分类问题研究的人员提供有价值的参考。在实际应用中,读者可以根据自己的需求和数据特点,选择合适的技术和方法,并不断探索和创新,以推动机器学习技术的发展和应用。
超级会员免费看
3万+

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



