# classification **Repository Path**: windowzzhhuu/classification ## Basic Information - **Project Name**: classification - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-07-17 - **Last Updated**: 2020-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # pytorch_classification 利用pytorch实现图像分类,可以根据需要再行利用torchvision扩展其他的分类算法 ## 实现功能 * 基础功能利用pytorch实现图像分类 * 包含带有warmup的cosine学习率优化 * 利用flask实现模型云端api部署 ## 运行环境 * python3.6 * pytorch 1.1 * torchvision 0.3.0 ### 数据集形式 原始数据集存储形式为,同个类别的图像存储在同一个文件夹下,所有类别的图像存储在一个主文件夹datasets下,格式依据工程目录样式。 利用preprocess.py将数据集格式进行转换 转换后的数据集为,将训练集的路径与类别存储在train.txt文件中,测试机存储在val.txt中 ### 模型介绍 densenet构建模型 ### 训练 * 在`cfg.py`中修改合适的参数,并在train.py中选择合适的模型 ```shell cd ~/AI_classification/pytorch_classification/ python train.py ``` ### flask云端部署 将训练存储好的权重文件,存储在文件夹中 ```shell cd ~/AI_classification/ nohup python synch_server.py > log1.txt 2>&1 & ``` ### 客户端调用 - HTTP ``` http://ip:port/synchfile/analyze ``` - POST方式,请求参数json格式: ```angular2 {"source_file":"/home/wiscert/AI_classification/pytorch_classification/datasets/val/0/11.jpg"} ``` - 请求成功返回结果 ```angular2 {"error_code": 0, "error_message": "", "request_id": "734c392e-a227-11ea-8ba7-00163e1699a1", "job_id": "734c392f-a227-11ea-8ba7-00163e1699a1", "label": "\u5b66\u4f4d\u8bc1\u4e66", "took": 0.287} ``` label字段对应的类别 - 请求失败返回结果 ```angular2 {"error_code": 10000, "error_message": "parse data fail: 'source_file'", "request_id": "07fa016a-a22c-11ea-8ba7-00163e1699a1", "took": 0.0002} ```