Skip to content

Latest commit

 

History

History
99 lines (58 loc) · 4.15 KB

Readme.md

File metadata and controls

99 lines (58 loc) · 4.15 KB

Resource Predict

阿里云算法竞赛:时序预测方向

项目目录介绍

-Dockerfile # Dockerfile

---dockerfile

---online.py

---requirements.txt

-src

---inferenece.py #online serving代码

---training.py #training代码

-data

---dataset_campus_competition.txt #训练数据

---generate_data.txt #三天产出数据

---test_data.json #docker测试文件1

---test_data_1.json #docker测试文件2

-doc

---MODEL.pdf #建模文档

-Readme.MD

Docker构建方法

  • 构建
cd Dockerfile
docker build -t jieli_flask:latest .
docker run -d -p 5000:5000 jieli_flask:latest
  • 测试

测试CPU使用率序列1(完整周期序列)

(base) [lijie@localhost ~]$ curl --data @test_data_1.json 0.0.0.0:5000/predict
{
  "ce88e3e0-b429-43c9-8aed-a11b846bdbfc": "\"1044.74,901.42,847.93,835.46,883.69,1095.55,1406.29,1528.54,1523.14,1482.14,1479.58,1441.85,1456.65,1475.61,1455.95,1462.97,1474.3,1497.85,1521.95,1651.8,1796.04,1860.5,1654.35,1306.41,1038.63,895.3,841.81,829.34,877.57,1089.44,1400.17,1522.42,1517.03,1476.02,1473.46,1435.74,1450.54,1469.5,1449.83,1456.85,1468.18,1491.74,1515.83,1645.68,1789.92,1854.38,1648.23,1300.3,1032.51,889.18,835.69,823.23,871.45,1083.32,1394.05,1516.31,1510.91,1469.9,1467.34,1429.62,1444.42,1463.38,1443.71,1450.73,1462.06,1485.62,1509.72,1639.57,1783.81,1848.26,1642.12,1294.18\""
}

测试CPU使用率序列2(含大量NA数据)

(base) [lijie@localhost ~]$ curl --data @test_data.json 0.0.0.0:5000/predict
{
  "86fc9582-eae6-440b-a7b1-a26ac498e0a4": "\"0.0,59550.16,356956.73,355720.6,134220.02,18.97,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,57893.32,347025.25,345823.52,130485.67,18.45,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,56282.58,337370.1,336201.8,126855.22,17.93,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0\""
}

补充说明:

数据返回形式

经观察,dataset_campus_competition.txt中数据形式为:

ce88e3e0-b429-43c9-8aed-a11b846bdbfc "1010.09,904.91,902.32,869.96,898.34,1078.47,1334.6,1397.88,1395.68,1379.41,1381.01,1372.69,1405.82,1429.34,1377.93,1385.33,1398.96,1435.0,1468.24,1618.8,1769.39,1884.36,1639.31,1300.64,1023.75,886.61,838.89,815.88,868.4,1060.06,1351.69,1425.9,1389.12,1367.36,1364.94,1352.07,1389.42,1416.65,1403.6,1396.63,1394.48,1406.13,1405.66,1529.03,1678.01,1751.33,1600.63,1264.53,1007.82,853.52,811.64,797.56,849.78,1044.51,1326.18,1391.54,1374.36,1328.61,1369.59,1343.0,1399.81,1388.24,1367.56,1394.13,1366.01,1377.9,1430.59,1512.46,1636.08,1746.12,1583.09,1255.23,997.57,875.7,814.49,805.48,862.53,1059.14,1320.03,1375.33,1351.63,1346.65,1350.74,1333.99,1380.62,1377.35,1437.62,1407.09,1413.11,1440.09,1483.2,1586.85,1757.48,1821.02,1624.7,1308.66,1036.04,898.5,848.04,851.57,902.62,1107.53,1367.78,1475.15,1492.47,1427.12,1439.89,1429.17,1446.72,1465.35,1440.66,1447.76,1468.26,1488.43,1520.19,1648.43,1768.5,1832.35,1656.73,1340.13,1078.11,917.44,884.64,858.08,917.24,1141.5,1480.16,1653.34,1666.02,1612.96,1611.35,1539.11,1540.66,1576.69,1533.89,1532.44,1559.81,1576.53,1594.33,1725.15,1899.44,1954.26,1719.73,1354.12,1081.9,940.92,870.94,862.79,902.3,1118.0,1448.0,1573.4,1557.15,1521.76,1506.55,1470.42,1477.61,1493.98,1474.99,1493.16,1498.82,1528.42,1547.68,1687.85,1819.27,1880.42,1671.18,1312.53"

因此返回时也加了引号,如不需要可在inferenece.py 74行进行修改返回形式

数据接收形式

目前仅接收test_data.json形式,也即单条请求仅对应1个CPU使用率序列,如需单条请求对应多个CPU使用率序列可联系修改(其实我觉得批量请求就好了呀)

training代码介绍

cd src
nohup python training.py & #训练代码 生成../data/test-output.txt
#预计等待2-3小时 请后台挂起

输入文件路径为../data/dataset_campus_competition.txt(已固定在代码文件中) 如需修改文件路径,可在training.py修改54行(在不改变当前项目目录结构下很方便,如技术人员需要可再联系改为接收args)

doc介绍

MODEL.pdf涉及数据分析、建模思路以及可能的提升方案。