# easyAI-pro
**Repository Path**: guoliang1983/easyAI-pro
## Basic Information
- **Project Name**: easyAI-pro
- **Description**: No description available
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2026-05-31
- **Last Updated**: 2026-05-31
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# easyAI-pro
> **声明:该项目以 easyAI 为基础进行增强改进。目前处于研究阶段,商用请注意风险。**
## 项目简介
easyAI-pro 是一个原生 Java 人工智能算法框架,无任何外部依赖,开箱即用。它既包含已封装好的图像目标检测及人工智能客服模块,也提供各种深度学习、机器学习、强化学习、启发式学习、矩阵运算等底层算法工具。开发者可以通过简单的学习,根据自身业务深度开发符合自己需求的小微模型。
### 项目特点
- **零依赖**:纯 Java 实现,无需任何额外的环境配置与依赖
- **开箱即用**:Maven 一键引入,即刻开始使用
- **功能全面**:涵盖机器学习、深度学习、NLP、强化学习等多个领域
- **易于扩展**:模块化设计,方便根据业务需求定制开发
## 功能模块
### 机器学习
#### 分类算法
| 算法 | 说明 |
|-----|------|
| KNN | K近邻分类 |
| SVM | 支持向量机 |
| DecisionTree | 决策树 |
| AdaBoost | 自适应增强 |
| XGBoost | 极端梯度提升 |
| LightGBM | 轻量级梯度提升 |
| CatBoost | 类别特征梯度提升 |
| LogisticRegression | 逻辑回归 |
| GaussianNaiveBayes | 高斯朴素贝叶斯 |
| MultinomialNaiveBayes | 多项式朴素贝叶斯 |
| ComplementNaiveBayes | 补充朴素贝叶斯 |
| GradientBoosting | 梯度提升分类 |
#### 聚类算法
| 算法 | 说明 |
|-----|------|
| KMeans | K均值聚类 |
| DBSCAN | 基于密度的聚类 |
| HDBSCAN | 层次密度聚类 |
| GMM | 高斯混合模型 |
| Birch | 层次聚类 |
| MeanShift | 均值漂移聚类 |
| OPTICS | 排序点聚类 |
| SpectralClustering | 谱聚类 |
| HierarchicalClustering | 层次聚类 |
#### 回归算法
| 算法 | 说明 |
|-----|------|
| LinearRegression | 线性回归 |
| RidgeRegression | 岭回归 |
| LassoRegression | Lasso回归 |
| ElasticNetRegression | 弹性网络回归 |
| SVR | 支持向量回归 |
| PolynomialRegression | 多项式回归 |
| HuberRegression | Huber回归 |
| RANSACRegression | RANSAC回归 |
| QuantileRegression | 分位数回归 |
| DecisionTreeRegression | 决策树回归 |
#### 集成学习
| 算法 | 说明 |
|-----|------|
| Bagging | 自助聚合 |
| Stacking | 堆叠集成 |
| VotingClassifier | 投票分类器 |
| ExtraTrees | 极端随机树 |
| GBM | 梯度提升机 |
| RandomForest | 随机森林 |
### 深度学习
#### 神经网络基础
- 神经元模型
- 激活函数:ReLU, Sigmoid, Tanh, ELU
- 反向传播算法
#### 卷积神经网络
| 模型 | 说明 |
|-----|------|
| ResNet | 残差网络 |
| UNet | 图像分割网络 |
#### 目标检测
| 模型 | 说明 |
|-----|------|
| YOLO | 实时目标检测 |
| FastYolo | 快速YOLO |
#### 生成模型
| 模型 | 说明 |
|-----|------|
| GAN | 生成对抗网络 |
| DCGAN | 深度卷积GAN |
| BigGAN | 大规模GAN |
| BigGANHD | 高分辨率BigGAN |
| StyleGAN | 风格生成网络 |
| StyleGAN3 | StyleGAN第三代 |
| StyleGANXL | 超大规模StyleGAN |
| CycleGAN | 循环一致性GAN |
| VAE | 变分自编码器 |
| VQVAE | 向量量化VAE |
| VQVAE2 | 向量量化VAE二代 |
| BetaVAE | Beta变分自编码器 |
| BetaTCVAE | Beta-TC变分自编码器 |
| ConditionalVAE | 条件VAE |
| VAEGAN | VAE-GAN混合模型 |
#### 扩散模型
| 模型 | 说明 |
|-----|------|
| DiffusionModel | 扩散模型基础 |
| StableDiffusion | 稳定扩散 |
| StableDiffusionV2 | 稳定扩散V2 |
| DALLE | DALL·E图像生成 |
| DALLE2 | DALL·E 2 |
| MAE | 掩码自编码器 |
| BEiT | BERT预训练图像Transformer |
### 自然语言处理
#### 词向量模型
| 模型 | 说明 |
|-----|------|
| Word2Vec | 词向量训练 |
| GloVe | 全局词向量 |
| FastText | 快速文本向量 |
#### 预训练语言模型
| 模型 | 说明 |
|-----|------|
| BERT | 双向编码器表示 |
| DistilBERT | 蒸馏BERT |
| RoBERTa | 优化BERT |
| ALBERT | 轻量级BERT |
| GPT | 生成式预训练 |
| GPT3 | GPT第三代 |
| GPT4 | GPT第四代 |
| AutoGPT | 自动GPT |
| T5 | 文本到文本Transformer |
| Pegasus | PEGASUS摘要模型 |
| BART | 双向自回归Transformer |
| XLNet | 排列语言模型 |
| Llama | LLaMA大模型 |
| LLaMA2 | LLaMA 2 |
| Mistral | Mistral模型 |
| BLOOM | BLOOM大模型 |
| Claude | Claude模型 |
#### 文本处理
| 功能 | 说明 |
|-----|------|
| TF-IDF | 词频-逆文档频率 |
| TextClassification | 文本分类 |
| Tokenizer | 分词器 |
| KeyWord | 关键词提取 |
| Sentence | 句子处理 |
| Word | 词语处理 |
### 时间序列
| 模型 | 说明 |
|-----|------|
| LSTM | 长短期记忆网络 |
| GRU | 门控循环单元 |
| BidirectionalLSTM | 双向LSTM |
| LSTMAutoencoder | LSTM自编码器 |
| LSTMSeq2Seq | LSTM序列到序列 |
| LSTMVariants | LSTM变体 |
| ARIMA | 自回归积分滑动平均 |
| SARIMA | 季节性ARIMA |
| Prophet | Prophet预测模型 |
| NBEATS | 神经基扩展分析 |
| Time2Vec | 时间向量编码 |
| VAR | 向量自回归 |
| ExponentialSmoothing | 指数平滑 |
| TemporalFusionTransformer | 时序融合Transformer |
| TimeSeriesTransformer | 时间序列Transformer |
| TransformerTimeSeries | Transformer时序模型 |
### 强化学习
| 算法 | 说明 |
|-----|------|
| DQN | 深度Q网络 |
| PPO | 近端策略优化 |
| A3C | 异步优势Actor-Critic |
| A2C | 优势Actor-Critic |
| DDPG | 深度确定性策略梯度 |
| SAC | 软Actor-Critic |
| TD3 | 双延迟DDPG |
| SARSA | 状态-动作-奖励-状态-动作 |
| IMPALA | 重要性加权Actor-Learner架构 |
| IQN | 隐式分位数网络 |
| Rainbow | Rainbow DQN |
| Dreamer | Dreamer智能体 |
| QLearning | Q学习 |
| DynamicProgramming | 动态规划 |
### 图神经网络
| 模型 | 说明 |
|-----|------|
| GCN | 图卷积网络 |
| GAT | 图注意力网络 |
| GraphSAGE | 图采样聚合网络 |
| GraphRNN | 图循环神经网络 |
| GraphTransformer | 图Transformer |
| GraphBERT | 图BERT |
| HeterogeneousGNN | 异构图神经网络 |
| GNNExplainer | GNN解释器 |
| Node2Vec | 节点向量表示 |
| Louvain | Louvain社区检测 |
### 注意力机制
| 模型 | 说明 |
|-----|------|
| ViT | Vision Transformer |
| ViT22B | ViT 220亿参数版本 |
| ViTModel | ViT模型 |
| SwinTransformer | Swin Transformer |
| SwinTransformerV2 | Swin Transformer V2 |
| Longformer | 长文档Transformer |
### 自监督学习
| 方法 | 说明 |
|-----|------|
| SimCLR | 对比学习 |
| BYOL | 不需要负样本的对比学习 |
| MoCoV3 | 动量对比学习V3 |
| CLIP | 对比语言-图像预训练 |
| MAE | 掩码自编码器 |
| SimSiam | 简单孪生网络 |
| BarlowTwins | Barlow Twins |
| DINOV2 | DINO V2 |
### 异常检测
| 算法 | 说明 |
|-----|------|
| IsolationForest | 孤立森林 |
| LOF | 局部异常因子 |
| LocalOutlierFactor | 局部异常因子 |
| EllipticEnvelope | 椭圆包络 |
| OneClassSVM | 单类SVM |
### 关联规则挖掘
| 算法 | 说明 |
|-----|------|
| Apriori | Apriori算法 |
| FPGrowth | FP-Growth算法 |
| Eclat | Eclat算法 |
### 降维与特征工程
#### 降维算法
| 算法 | 说明 |
|-----|------|
| PCA | 主成分分析 |
| TSNE | t-SNE降维 |
| UMAP | 均匀流形近似投影 |
| Isomap | 等距映射 |
| LDA | 线性判别分析 |
| LLE | 局部线性嵌入 |
#### 特征选择
| 方法 | 说明 |
|-----|------|
| RFE | 递归特征消除 |
| MutualInformation | 互信息 |
| SelectKBest | 选择K个最佳特征 |
| SelectPercentile | 选择百分比特征 |
| VarianceThreshold | 方差阈值 |
| SelectFromModel | 从模型选择 |
### 推荐系统
| 方法 | 说明 |
|-----|------|
| CollaborativeFiltering | 协同过滤 |
| ContentBasedFiltering | 基于内容的过滤 |
| MatrixFactorization | 矩阵分解 |
### 其他模块
#### 语音处理
| 模块 | 说明 |
|-----|------|
| Whisper | Whisper语音识别 |
| WaveFile | 波形文件处理 |
| MP3 | MP3音频处理 |
#### 概率模型
| 模型 | 说明 |
|-----|------|
| BayesianNetwork | 贝叶斯网络 |
#### 优化算法
| 算法 | 说明 |
|-----|------|
| PSO | 粒子群优化 |
#### 矩阵运算
| 模块 | 说明 |
|-----|------|
| Matrix | 矩阵基础运算 |
| CudaMatrix | CUDA加速矩阵 |
| SimdMatrix | SIMD加速矩阵 |
| SVD | 奇异值分解 |
| QRMatrix | QR分解 |
| MatrixOperation | 矩阵操作 |
| MatrixPool | 矩阵池 |
| AdvancedMatrixOperation | 高级矩阵运算 |
| MatrixMulAccelerate | 矩阵乘法加速 |
### 工具模块
| 工具 | 说明 |
|-----|------|
| AutoML | 自动化机器学习 |
| DataAugmentation | 数据增强 |
| DataPreprocessing | 数据预处理 |
| FeatureEngineering | 特征工程 |
| ModelCompression | 模型压缩 |
| ModelExporter | 模型导出 |
| ModelInterpretation | 模型解释 |
| ModelSelection | 模型选择 |
| ModelTrainer | 模型训练器 |
| ModelVisualizer | 模型可视化 |
| HyperparameterOptimization | 超参数优化 |
| AdvancedHyperparameterOptimization | 高级超参数优化 |
| PerformanceMetrics | 性能指标 |
| ImageTools | 图像工具 |
| CreateImageData | 图像数据创建 |
## 安装
### 环境要求
- JDK 1.8 或更高版本
- Maven 3.x
### Maven 依赖
```xml
org.dromara.easyai
easyAi
1.6.1
```
## 快速开始
### KMeans 聚类示例
```java
import org.dromara.easyai.clustering.KMeans;
import org.dromara.easyai.entity.Cluster;
public class KMeansExample {
public static void main(String[] args) {
KMeans kMeans = new KMeans();
kMeans.setK(3);
List clusters = kMeans.fit(data);
}
}
```
### LSTM 时间序列预测示例
```java
import org.dromara.easyai.time_series.LSTM;
public class LSTMExample {
public static void main(String[] args) {
LSTM lstm = new LSTM();
lstm.train(trainData);
float[] prediction = lstm.predict(inputData);
}
}
```
### BERT 文本处理示例
```java
import org.dromara.easyai.nlp.BERT;
public class BERTExample {
public static void main(String[] args) {
BERT bert = new BERT();
float[] embeddings = bert.encode("Hello World");
}
}
```
## 项目结构
```
src/main/java/org/dromara/easyai/
├── anomaly/ # 异常检测
├── anomaly_detection/ # 异常检测扩展
├── association/ # 关联规则
├── association_rules/ # 关联规则扩展
├── attention/ # 注意力机制
├── batchNerve/ # 批处理神经网络
├── bayesian/ # 贝叶斯算法
├── classification/ # 分类算法
├── clustering/ # 聚类算法
├── computer_vision/ # 计算机视觉
├── config/ # 配置类
├── conv/ # 卷积相关
├── deep_learning/ # 深度学习
├── diffusion/ # 扩散模型
├── dimensionality/ # 降维算法
├── dimensionality_reduction/# 降维算法扩展
├── ensemble/ # 集成学习
├── entity/ # 实体类
├── feature_selection/ # 特征选择
├── function/ # 激活函数
├── gameRobot/ # 游戏机器人
├── graph/ # 图算法
├── graph_neural_network/ # 图神经网络
├── matrixTools/ # 矩阵工具
├── naturalLanguage/ # 自然语言处理
├── nerveCenter/ # 神经网络中心
├── nerveEntity/ # 神经网络实体
├── nlp/ # NLP模型
├── probabilistic/ # 概率模型
├── pso/ # 粒子群优化
├── randomForest/ # 随机森林
├── recommend/ # 推荐系统
├── recommendation/ # 推荐系统扩展
├── regression/ # 回归算法
├── regressionForest/ # 回归森林
├── reinforcement/ # 强化学习
├── reinforcement_learning/ # 强化学习扩展
├── resnet/ # ResNet实现
├── rnnJumpNerveCenter/ # RNN跳跃连接中心
├── rnnJumpNerveEntity/ # RNN跳跃连接实体
├── rnnNerveCenter/ # RNN中心
├── rnnNerveEntity/ # RNN实体
├── self_supervised/ # 自监督学习
├── time_series/ # 时间序列
├── tools/ # 工具类
├── transFormer/ # Transformer实现
├── unet/ # UNet实现
├── utils/ # 工具类
├── vehicle/ # 车辆相关
├── voice/ # 语音处理
└── yolo/ # YOLO目标检测
```
## 贡献指南
1. Fork 本仓库
2. 新建 Feature 分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 提交 Pull Request
## 许可证
本项目采用 Apache License 2.0 许可证。详见 [LICENSE](http://www.apache.org/licenses/LICENSE-2.0.txt)
## 致谢
本项目基于 [easyAI](https://gitee.com/dromara/easyAi) 进行增强改进,感谢原作者的贡献。
## 与原版 easyAI 对比增强点
本项目在原版 easyAI 基础上进行了大量增强改进,以下是主要新增模块和功能:
### 一、新增核心模块
#### 1. 机器学习算法扩展
| 模块 | 新增内容 |
|------|---------|
| **分类算法** | CatBoost, LightGBM, LogisticRegression, GaussianNB, MultinomialNB, ComplementNB, GradientBoosting |
| **聚类算法** | HDBSCAN, SpectralClustering, HierarchicalClustering |
| **回归算法** | ElasticNet, Polynomial, Quantile, DecisionTreeRegression |
| **特征选择** | MutualInformation, SelectKBest, SelectPercentile, VarianceThreshold, SelectFromModel |
| **异常检测** | IsolationForest, EllipticEnvelope, LocalOutlierFactor, OneClassSVM |
| **关联规则** | Eclat |
#### 2. 深度学习与生成模型
| 模块 | 新增内容 |
|------|---------|
| **生成对抗网络** | BigGAN, BigGANHD, StyleGAN, StyleGAN3, StyleGANXL, CycleGAN, DCGAN |
| **变分自编码器** | VQVAE, VQVAE2, BetaVAE, BetaTCVAE, ConditionalVAE, VAEGAN |
| **扩散模型** | StableDiffusion, StableDiffusionV2, DALLE, DALLE2, BEiT |
| **计算机视觉** | ResNet, UNet, ImageProcessing |
#### 3. 自然语言处理
| 模块 | 新增内容 |
|------|---------|
| **预训练大模型** | GPT-3, GPT-4, LLaMA, LLaMA2, Claude, BLOOM, Mistral, T5, BART, XLNet |
| **Transformer变体** | ALBERT, DistilBERT, RoBERTa |
| **语言处理** | FastText, GloVe, TextClassification |
#### 4. 图神经网络
| 模块 | 新增内容 |
|------|---------|
| **核心模型** | GAT, GraphSAGE, GraphTransformer, GraphBERT |
| **扩展功能** | HeterogeneousGNN, GNNExplainer |
#### 5. 注意力机制与自监督学习
| 模块 | 新增内容 |
|------|---------|
| **Vision Transformer** | ViT, ViT22B, SwinTransformer, SwinTransformerV2, Longformer |
| **自监督学习** | SimCLR, BYOL, MoCoV3, CLIP, MAE, SimSiam, BarlowTwins, DINOV2 |
#### 6. 强化学习扩展
| 模块 | 新增内容 |
|------|---------|
| **核心算法** | A2C, DDPG, Dreamer, IMPALA, IQN, Rainbow, SAC, TD3, QLearning |
#### 7. 时间序列增强
| 模块 | 新增内容 |
|------|---------|
| **深度学习模型** | BidirectionalLSTM, LSTMAutoencoder, LSTMSeq2Seq, LSTMVariants |
| **现代模型** | Prophet, NBEATS, TemporalFusionTransformer, TimeSeriesTransformer |
#### 8. 推荐系统
| 模块 | 新增内容 |
|------|---------|
| **协同过滤** | CollaborativeFiltering, ContentBasedFiltering, MatrixFactorization |
#### 9. 工具与实用模块
| 模块 | 新增内容 |
|------|---------|
| **机器学习工具** | AutoML, DataAugmentation, FeatureEngineering, ModelCompression, ModelExporter, ModelInterpretation |
| **性能优化** | ModelVisualizer, PerformanceMetrics, AdvancedHyperparameterOptimization |
| **概率模型** | BayesianNetwork |
### 二、模块增强
| 模块 | 改进内容 |
|------|---------|
| **Transformer** | 新增 model 子模块(含 CodecBlockModel, MultiSelfAttentionModel 等),新增 seflAttention 子模块(含 SelfAttention, LayNorm 等) |
| **自然语言处理** | 新增 languageCreator 子模块 |
| **回归森林** | 新增 Forest, LinearRegression, RegressionForest |
| **矩阵运算** | 新增 AdvancedMatrixOperation, MatrixMulAccelerate |
| **Utils** | 新增 DataUtils, MathUtils, ModelUtils |
### 三、依赖增强
| 依赖 | 用途 |
|------|------|
| **Apache POI** | Excel 文件处理 |
| **HanLP** | 中文 NLP 处理 |
### 四、总结
**增强规模**:从原版约 30 个模块扩展到 60+ 个主要模块,新增 20+ 个算法类别。
**核心优势**:
- ✅ 全面支持现代深度学习模型(GAN系列、扩散模型、Transformer系列)
- ✅ 新增图神经网络模块
- ✅ 完整的 NLP 大模型支持
- ✅ 丰富的时间序列预测能力
- ✅ 增强的强化学习算法库
- ✅ 完善的工具链和实用模块
- ✅ 中文 NLP 支持(HanLP 集成)
- ✅ 高性能矩阵运算优化
---
**注意:该项目目前处于研究阶段,商用请注意风险。**