# 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 集成) - ✅ 高性能矩阵运算优化 --- **注意:该项目目前处于研究阶段,商用请注意风险。**