当前位置: 首页 > news >正文

电影网站建设教程专业的医疗网站建设

电影网站建设教程,专业的医疗网站建设,4399网站开发人员 被挖走,成品短视频app下载有哪些在这篇博文中#xff0c;我们将介绍如何将机器学习支持的预测功能与 ClickHouse 数据库集成。ClickHouse 是一个快速、开源、面向列的 SQL 数据库#xff0c;对于数据分析和实时分析非常有用。该项目由 ClickHouse#xff0c; Inc. 维护和支持。我们将探索它在需要数据准备以…在这篇博文中我们将介绍如何将机器学习支持的预测功能与 ClickHouse 数据库集成。ClickHouse 是一个快速、开源、面向列的 SQL 数据库对于数据分析和实时分析非常有用。该项目由 ClickHouse Inc. 维护和支持。我们将探索它在需要数据准备以支持机器学习的任务中的功能。 预测功能是通过 MindsDB 提供的MindsDB 是一个平台只需使用简单的 SQL 命令即可直接在数据库中自动运行机器学习模型。MindsDB 使机器学习民主化使任何人都可以在数据所在的位置执行基于机器学习的复杂预测。 我们将围绕大型多变量时间序列的预测介绍传统机器学习的一个具有挑战性的用例的整个流程以及 ClickHouse 和 MindsDB 的结合如何使您能够以非常简单和有效的方式实现这一目标。 优化机器学习生命周期 机器学习生命周期是一个仍在完善的主题但构成此流程的主要阶段是准备、建模和部署。 这三个主要阶段中的每一个都分解为更明确定义的步骤。例如数据准备步骤通常分为数据采集、数据清理和标记以及特征工程。 数据库中已有的数据对 ML 友好 根据《福布斯》的一项调查数据准备约占数据科学家工作的 80%同时其中 57% 的人认为数据清理是他们工作中最不愉快的部分。 如果您的公司已经经历了获取数据、将其加载到数据库中的障碍那么它很可能已经采用干净和结构化的格式采用预定义的架构。 SQL 作为特征工程工具 此外对于任何机器学习问题数据采集和数据清理只是第一步。大多数情况下初始数据集不足以从模型中产生令人满意的结果。这就是数据科学家和机器学习工程师需要介入并通过应用不同的特征工程技术来丰富数据集的地方。 SQL 是一个非常强大的数据转换工具数据集的特征实际上是数据库表中的列。 然后选择并转换这些特征以创建新特征这些特征将用于机器学习模型的训练。使用上述数据模型我们可以生成一些描述我们销售的额外特征。例如我们可以创建包含产品已包含的订单数以及该产品价格占总订单价格的百分比的新功能。 SELECTProduct.pk_idProduct, Product.description, TBL_store.storeName, count(Orders.pk_idOrder) as number_of_orders, avg(Product.price / Orders.pricing) as product_percentage_of_order FROM ProductINNER JOIN OrderProducton Product.pk_idProduct OrderProduct.productINNER JOIN Orderson Orders.pk_idOrder OrderProduct.orderINNER JOIN TBL_storeon TBL_store.PK_id_store Product.seller GROUP BY Product.pk_idProduct, Product.description, TBL_store.storeName 因为SQL是一个如此强大的工具我们应该利用它直接从数据库中生成可能的转换。 ClickHouse提供了在非常大的数据集上进行许多转换的功能。与为数据集创建新特征、提取数据。与通过 Python 操作数据的一般方法相反在 ClickHouse 中创建新特征要快得多。 作为 AI 表的机器学习模型 在数据准备之后我们到达了 MindsDB 介入的地步并提供了一个简化机器学习模型建模和部署的结构。 这种结构称为 AI 表是 MindsDB 的一项特定功能允许您像对待普通表一样对待机器学习模型。您可以在 MindsDB 中创建此 AI 表就像在常规数据库中创建表一样然后可以通过外部表功能将此表暴露给 ClickHouse。 创建自己的 AI 表非常容易下面是用于在数据集之上创建它的语法。 CREATE PREDICTOR predictor_nameTRAIN FROM { (select_statement) | namespace|integration.view|table | url }[ TEST FROM { (select_statement) | namespace|integration.view|table | url } ] [ ORDER BY order_col [{ASC|DESC}] ] [ GROUP BY col1, [, col2, ...] ] [ WINDOW window_size ] PREDICT col_name_in_from_to_forecast[ MODEL {auto | json_config | url} ] 这使我们能够考虑与创建表的方式没有什么不同的机器学习部署。因此一旦在数据库中将模型创建为表它就已经部署好了。您唯一需要注意的是如果表架构发生更改则会发生什么情况即需要创建新模型或重新训练模型。 总之所有的部署和建模都被抽象到这个非常简单的结构中我们称之为“AI 表”它使您能够在其他数据库如 ClickHouse中公开此表。 在ClickHouse中构建数据集 尽管与分析数据库市场上的其他类似工具相比ClickHouse是一个相当年轻的产品但与更知名的工具相比ClickHouse具有许多优势甚至是使其在性能方面超越其他工具的新功能。 单个可移植的 C 二进制文件 – 可实现非常快速的 60 秒安装在任何地方运行 – 它可以在任何基于 Linux 的环境中运行例如云虚拟机、容器甚至是裸机服务器或笔记本电脑高级 SQL 功能 – 它有一些额外的扩展建立在常规 SQL 语法之上赋予它一些额外的功能列存储 – 在性能方面为您提供优势在非常高的数据压缩率方面为您提供优势分布式查询 – 由于查询分布在节点和 CPU 内核之间因此需要毫秒级响应时间分片和复制 – 支持从笔记本电脑大小扩展到数百个节点Apache 2.0 许可 – 使 ClickHouse 能够用于任何商业目的 ClickHouse 在全球拥有数千个安装被众多大公司使用如 Bloomberg、Uber、Walmart、eBay、Yandex 等。 数据探索 如前几节所述任何机器学习管道中最耗时的部分是数据准备。它需要有关数据的知识这就是为什么我们总是从数据探索开始。 在这一步我们需要了解我们拥有哪些信息以及哪些功能可用于评估数据质量以便使用它训练模型或对数据集进行一些改进。下面我们可以看到 ClickHouse 中的行程数据数据集示例其中查询了 1 亿行关于纽约出租车的数据以分析数据的质量 SELECTcount() AS rides,avg(fare_amount) AS avg,min(fare_amount) AS min,max(fare_amount) AS max FROM default.tripdata 正如你在这里看到的我们有一些异常值会对机器学习模型产生负面影响所以让我们用ClickHouse工具更深入地研究它。 让我们编写一个查询来更深入地研究这些分布以便更好地理解数据。通过此查询您可以在几秒钟内为这个大型数据集创建直方图视图并查看异常值的分布。 SELECT h_bin.1 AS lo, h_bin.2 AS hi, h_bin.3 AS count FROM (SELECT histogram(5)(fare_amount) hFROM default.tripdata WHERE fare_amount 0 ) ARRAY JOIN h AS h_bin 我们可以看到我们的直方图查询的分布也包含一个计数列。此列中的某些结果是小数不一定表示行计数。实际上根据文档此列实际上包含直方图中条柱的高度。 因为我们试图将整个数据集拟合到一个具有 5 个条柱的直方图中该直方图是通过 histogram(5)(fare_amount) 函数调用指定的并且数据集中的项目数量不是正态分布的所以我们的条柱高度不一定相等。因此我们的一些高度将有一个数字该数字将按比例表示该特定条柱中的值数相对于数据集中的值总数。 如果这仍然有点令人困惑我们可以尝试使用 ClickHouse 中的 bar() 可视化来生成数据集分布的更直观的结果。 我们可以看到条形列包含数据集分布的可视化表示分为 5 个条柱。由于前两个条柱都只包含 1 个值因此条形图显示太小而无法显示但是当我们开始有更多值时条形图也会显示出来。 此外我们可以看到大量我们不希望包含在模型训练数据集中的小负票价值。如果我们反转数据集的过滤只看正 fare_amount 值我们可以看到“干净”数据点的数量要高得多。因为我们有这么大的值所以我们要将条形函数的最小值设置为 10000000以便分布更清晰可见。 数据清洗和聚合 现在我们已经确定我们的数据集包含异常值我们需要删除它们以获得一个干净的数据集。我们将过滤掉所有负数只考虑低于 500 美元的票价金额。由于我们需要预测每个出租车供应商的数据因此我们将按 vendor_id 聚合数据集。 SELECTtoStartOfHour(pickup_datetime) AS pickup_hour,vendor_id,sum(fare_amount) AS fares FROM default.tripdata WHERE total_amount 0 AND total_amount 500 GROUP BY pickup_hour, vendor_id ORDER BY pickup_hour, vendor_id 我们可以通过将时间戳数据下采样到小时间隔并聚合一小时间隔内的所有数据来进一步减小数据集的大小。 使用ClickHouse处理非常大的数据集 就所使用的资源和生成数据所需的时间而言在海量数据集上运行任何查询通常都非常昂贵。当我们必须多次运行查询、使用复杂的转换生成新功能或源数据老化并且我们需要更新版本时这可能会令人头疼。但是ClickHouse对此有一个解决方案即物化视图。 常规 SQL 视图相反在常规 SQL 视图中视图只是封装 SQL 查询并在每次执行时重新运行它具体化视图仅运行一次并将数据馈送到具体化视图表中。然后我们可以查询这个新表每次将数据添加到原始源表时这个视图表也会更新。 正如你在上面看到的我们总是可以查询具体化的视图并确定我们总是根据我们的原始数据获得最新的数据集。然后我们可以在这个物化视图中使用数据集并训练我们的机器学习模型而不必担心过时的数据。 与通用视图相比物化视图在性能方面也有很多好处在 ClickHouse 中在超过 20 亿行的数据集上它们有时甚至快 1 倍。 您还可以利用ClickHouse集群将数据扩展到多个分片以从数据仓库中提取最佳性能。您可以在这些数据子集上创建具体化视图然后将它们统一到分布式表构造下该构造就像是每个节点的数据上的保护伞。 每当需要查询此数据时只需查询一个分布式表该表会自动处理从整个群集中的多个节点检索数据。 这是一种非常强大的技术可以让您查询数万亿行数据聚合它们并以有用的方式转换它们。从现在开始我们可以继续进行机器学习部分甚至可以对数据集进行更深入的分析。 根据复杂的多变量时间序列数据构建预测 现在让我们根据我们刚刚介绍的纽约市出租车“行程数据”数据集来预测出租车需求。我们将仅关注由vendor_id、上车时间和出租车费用列组成的子集。 更好地了解我们的数据 我们可以更深入地研究ClickHouse生成的数据子集并绘制收入流按小时分配。左下角的绿线图显示了 CMT 公司的每小时票价。 但是我们也可以看到不仅单个出租车供应商在一天中的票价分布存在差异而且出租车供应商本身之间的票价分布也存在差异如下图所示。随着时间的推移每家公司都有不同的动态这使得这个问题变得更加困难因为我们现在没有单一的数据系列而是多个数据。 ​ 多变量时间序列预测的挑战 了解我们的数据集包含多个系列的数据是构建数据预测管道时需要注意的重要信息。如果数据科学家或机器学习工程师团队需要预测任何对你获取见解很重要的时间序列他们需要意识到这样一个事实即根据分组数据的外观他们可能会查看数百或数千个序列。 训练此类机器学习模型可能非常耗时且耗费大量资源并且根据要提取的见解类型和使用的模型类型将其扩展到数千个预测其自身时间序列的模型将很难扩展。 在MindsDB我们处理这个问题已经有一段时间了我们已经能够使用来自任何数据库如ClickHouse的任何类型的数据来自动化这个过程。 MindsDB 如何自动构建 ML 模型 我们的方法围绕着应用灵活的理念使我们能够解决任何类型的机器学习问题而不一定只是时间序列问题。这是通过应用我们的编码器-混音器理念来实现的。 MindsDB 预测引擎 – 技术细节 ​ 根据每列的数据类型我们实例化该列的编码器。它的任务是根据该列中的数据开发信息编码。 例如如果我们有一列包含简单的数字不需要训练即可解决时间序列问题那么编码器可以只是一组不需要训练的简单规则。但是如果列包含自由文本则编码器将实例化一个 Transformer 神经网络该神经网络将学习生成该文本的摘要。 下一步是实例化 Mixer这是一个机器学习模型其任务是根据 Encoder 的结果进行最终预测。这种类型的哲学提供了一种非常灵活的方法来预测数值数据、分类数据、文本回归和时间序列数据。 MindsDB 中的自动和动态数据规范化 在开始使用数据训练此模型之前我们可能需要进行一些特定的数据清理例如进行动态归一化。这意味着对每个数据系列进行归一化以便我们的 Mixer 模型学习得更快、更好。 MindsDB 捕获数据集的统计数据并规范化每个序列而 Mixer 模型学习使用这些规范化值预测未来值。 时间信息也通过将时间戳分解为正弦分量来编码。 这样可以进行任意日期处理并便于处理不均匀采样的序列。当时间序列数据间距不均匀且测量值不规则时此方法非常有用。 简而言之对于时间序列问题机器学习管道的工作方式如下图所示。左上角的输入数据包含非时态信息这些信息被输入编码器然后传递到混音器中。 ​ 但是对于时间信息时间戳和一系列数据本身在本例中每个公司每小时收到的票价总数都会自动归一化并通过循环编码器RNN 编码器传递。RNN 在描述符中注入了更强的时间性概念。 所有这些编码功能都传递给 Mixer它可以是以下两种类型之一 神经网络 Mixer 由两个内部流组成其中一个使用自回归过程进行基本预测并给出大致值另一个使用辅助流对每个序列进行微调此预测使用 LightGBM 的梯度增压混合器其顶部是 Optuna 库可实现非常彻底的逐步超参数搜索 这确保了我们从数十个机器学习模型中确定了最佳的预测模型。 如何在ClickHouse数据库中创建和使用预测性AI表 对于没有机器学习背景的人来说上述关于技术方法、规范化、编码混合器方法的信息可能听起来很复杂但实际上您不需要知道所有这些细节即可在数据库中进行预测。 使用单个 SQL 查询训练多变量时间序列预测变量 MindsDB 使用 AI Tables 方法所做的是使任何只了解 SQL 的人都能自动构建预测模型并查询它们。这就像运行单个 SQL 命令一样简单。 例如此查询将从多变量时间序列数据训练单个模型以根据上述数据集预测出租车费用 CREATE PREDICTOR fares_forecaster_demo FROM Clickhouse (SELECT VENDOR_ID, PICKUP_DATETIME, FARE_AMOUNTFROM DEFAULT.TRIPDATAWHERE DATE 2010-01-01 ) PREDICT FARE_AMOUNT ORDER BY DATE GROUP BY VENDOR_ID WINDOW 10 HORIZON 7; 让我们讨论上面的陈述。我们使用 CREATE PREDICTOR 语句创建一个预测性 AI 表并指定训练数据来自的数据库。黄色代码选择筛选后的训练数据。之后我们使用 PREDICT 关键字来指定要预测其数据的列在本例中为票价数量。 接下来有一些标准的 SQL 子句例如 ORDER BY、GROUP BY、WINDOW 和 HORIZON。通过使用带有 DATE 列作为参数的 ORDER BY 子句我们强调我们处理的是时间序列问题并且我们希望按日期对行进行排序。GROUP BY 子句将数据划分为多个分区。在这里每个分区都与特定的出租车公司 vendor_id 相关。对于每个给定的预测我们只考虑最后 10 行。因此我们使用 WINDOW 10。为了准备出租车费用的预测我们定义了 HORIZON 7这意味着我们要提前 7 小时进行预测。 获取预测 我们准备进入最后一步即使用预测模型来获取未来的数据。一种方法是直接查询fares_forecaster_demo预测模型。您只需创建一个 Select 语句在 Where 子句中传递预测的条件。 但是我们考虑一个时间序列问题。因此建议我们将预测模型与历史数据联接到表中。 SELECT tb.VENDOR_ID, tb.FARE_AMOUNT as PREDICTED_FARES FROM Clickhouse.DEFAULT.TRIPDATA as ta JOIN mindsdb.fares_forecaster_demo as tb WHERE ta.VENDOR_ID CMT AND ta.DATE LATEST LIMIT 7; 我们来分析一下。我们将存储历史数据的表即 Clickhouse.DEFAULT.TRIPDATA连接到我们的预测模型表即 mindsdb.fares_forecaster_demo。查询的信息是出租车供应商和每个供应商的预测票价数量。通过指定 MindsDB 提供的条件 ta.date latest我们确保获得每条路线的未来乘车次数。 可视化预测 我们可以将 BI 工具连接到 MindsDB 预测性 AI 表以很好的方式可视化预测。您可以在 Looker 中查看如何为先前训练的预测变量执行此操作。我们连接了我们加入的表我们可以看到历史数据以及 MindsDB 对同一日期和时间所做的预测。在这种情况下绿线代表实际数据蓝线代表预测。 您可以看到对于前 10 个预测预测并不准确这是因为预测器刚刚开始从历史数据中学习请记住我们在训练它时指出了 10 个预测的窗口但在那之后预测变得非常准确。 自动检测异常 使用这种预测理念MindsDB 还可以检测和标记其预测中的异常。下面我们展示了另一个数据集的图该数据集是印度庞迪州的功耗数据集。 这是 t1 的时间序列预测这意味着模型正在查看时间片中所有先前的功耗值并尝试预测下一步在本例中它试图预测第二天的功耗。图中的绿线表示实际功耗值紫色线表示 MindsDB 预测使用截至该时间步长的所有值来训练机器学习模型。 ​ 默认情况下MindsDB 有一个置信度阈值估计值由预测趋势周围的灰色区域表示。每当实际值超过此置信区间的边界时都可以将其自动标记为异常行为并且监视此系统的人员可以更深入地查看并查看是否正在发生某些事情。 与这个单序列模型的训练类似MindsDB可以自动学习和预测多组数据。您可以使用整个数据集针对此问题进行训练并获得印度所有州的预测。这非常方便因为它抽象了大部分数据管道处理。 自带 ML 块 MindsDB 使您能够自定义处理管道的各个部分但除此之外您还可以自带模块。例如如果您是机器学习工程师我们使您能够引入自己的数据准备模块即您自己的机器学习模型以更好地满足您的需求。 例如如果您更喜欢用经典的 ARIMA 模型替换 RNN 模型进行时间序列预测我们希望为您提供这种可能性。或者在分析模块中如果要对预测结果运行自定义数据分析。 AI Tables 即将推出的新 ML 功能 预测流中的数据 MindsDB现在正在做的主要任务之一是尝试从数据流中预测数据而不仅仅是从数据库中预测数据。目标是创建一个预测器该预测器读取来自 Redis 和 Kafka 等工具的流数据并创建对将要发生的事情的预测。 改善长期预测 我们正在开发的下一个功能是改进对长期范围的预测其中包括分类数据和时间数据。这是一项具有挑战性的任务因为我们需要在多个不同的列中归因我们认为将要发生的事情但我们相信我们可以改进这一点。 检测渐进式异常 当前的异常检测算法可以很好地处理数据中的突然异常但需要改进以检测发生在数据序列本身之外的元素的异常。这是我们一直在努力改进的地方。 结论 在本文中我们将指导你完成机器学习工作流。您了解了如何使用 ClickHouse 的强大工具如物化视图来更好、更有效地处理数据清理和准备尤其是对于具有数十亿行的大型数据集。 然后我们深入研究了 MindsDB 的 AI 表的概念以及如何在 ClickHouse 中使用它们来自动构建预测模型并使用简单的 SQL 语句进行预测。 我们使用了一个多变量时间序列问题的示例来说明MindsDB如何能够自动执行非常复杂的机器学习任务并展示了通过将AI表连接到BI工具来检测异常和可视化预测是多么简单所有这些都是通过SQL完成的。
文章转载自:
http://www.morning.ydmml.cn.gov.cn.ydmml.cn
http://www.morning.cwskn.cn.gov.cn.cwskn.cn
http://www.morning.4q9h.cn.gov.cn.4q9h.cn
http://www.morning.pqqxc.cn.gov.cn.pqqxc.cn
http://www.morning.yltyr.cn.gov.cn.yltyr.cn
http://www.morning.wtrjq.cn.gov.cn.wtrjq.cn
http://www.morning.mrfnj.cn.gov.cn.mrfnj.cn
http://www.morning.rkfh.cn.gov.cn.rkfh.cn
http://www.morning.nkrmh.cn.gov.cn.nkrmh.cn
http://www.morning.jlthz.cn.gov.cn.jlthz.cn
http://www.morning.mqlsf.cn.gov.cn.mqlsf.cn
http://www.morning.rfwgg.cn.gov.cn.rfwgg.cn
http://www.morning.smmrm.cn.gov.cn.smmrm.cn
http://www.morning.cwkcq.cn.gov.cn.cwkcq.cn
http://www.morning.jcnmy.cn.gov.cn.jcnmy.cn
http://www.morning.lsgjf.cn.gov.cn.lsgjf.cn
http://www.morning.yhywr.cn.gov.cn.yhywr.cn
http://www.morning.csnmd.cn.gov.cn.csnmd.cn
http://www.morning.bkxnp.cn.gov.cn.bkxnp.cn
http://www.morning.lmqfq.cn.gov.cn.lmqfq.cn
http://www.morning.mltsc.cn.gov.cn.mltsc.cn
http://www.morning.cnwpb.cn.gov.cn.cnwpb.cn
http://www.morning.ffhlh.cn.gov.cn.ffhlh.cn
http://www.morning.jrwbl.cn.gov.cn.jrwbl.cn
http://www.morning.hsdhr.cn.gov.cn.hsdhr.cn
http://www.morning.ygrkg.cn.gov.cn.ygrkg.cn
http://www.morning.kyhnl.cn.gov.cn.kyhnl.cn
http://www.morning.junmap.com.gov.cn.junmap.com
http://www.morning.hhqtq.cn.gov.cn.hhqtq.cn
http://www.morning.2d1bl5.cn.gov.cn.2d1bl5.cn
http://www.morning.jcxyq.cn.gov.cn.jcxyq.cn
http://www.morning.prplf.cn.gov.cn.prplf.cn
http://www.morning.bpttm.cn.gov.cn.bpttm.cn
http://www.morning.ydwsg.cn.gov.cn.ydwsg.cn
http://www.morning.bmts.cn.gov.cn.bmts.cn
http://www.morning.newfeiya.com.cn.gov.cn.newfeiya.com.cn
http://www.morning.dyrzm.cn.gov.cn.dyrzm.cn
http://www.morning.gsrh.cn.gov.cn.gsrh.cn
http://www.morning.tktyh.cn.gov.cn.tktyh.cn
http://www.morning.pzlcd.cn.gov.cn.pzlcd.cn
http://www.morning.tlbhq.cn.gov.cn.tlbhq.cn
http://www.morning.rrdch.cn.gov.cn.rrdch.cn
http://www.morning.jtmrx.cn.gov.cn.jtmrx.cn
http://www.morning.rfhm.cn.gov.cn.rfhm.cn
http://www.morning.hpjpy.cn.gov.cn.hpjpy.cn
http://www.morning.kpwcx.cn.gov.cn.kpwcx.cn
http://www.morning.bppml.cn.gov.cn.bppml.cn
http://www.morning.lsgsn.cn.gov.cn.lsgsn.cn
http://www.morning.pmdnx.cn.gov.cn.pmdnx.cn
http://www.morning.lbbyx.cn.gov.cn.lbbyx.cn
http://www.morning.jkcnq.cn.gov.cn.jkcnq.cn
http://www.morning.wnjbn.cn.gov.cn.wnjbn.cn
http://www.morning.gsdbg.cn.gov.cn.gsdbg.cn
http://www.morning.lbssg.cn.gov.cn.lbssg.cn
http://www.morning.tpxgm.cn.gov.cn.tpxgm.cn
http://www.morning.hhpbj.cn.gov.cn.hhpbj.cn
http://www.morning.fcrw.cn.gov.cn.fcrw.cn
http://www.morning.rwnx.cn.gov.cn.rwnx.cn
http://www.morning.gbhsz.cn.gov.cn.gbhsz.cn
http://www.morning.wfttq.cn.gov.cn.wfttq.cn
http://www.morning.qjxkx.cn.gov.cn.qjxkx.cn
http://www.morning.qcrhb.cn.gov.cn.qcrhb.cn
http://www.morning.qtzwh.cn.gov.cn.qtzwh.cn
http://www.morning.lhygbh.com.gov.cn.lhygbh.com
http://www.morning.pfnlc.cn.gov.cn.pfnlc.cn
http://www.morning.lhsdf.cn.gov.cn.lhsdf.cn
http://www.morning.tpmnq.cn.gov.cn.tpmnq.cn
http://www.morning.xfmwk.cn.gov.cn.xfmwk.cn
http://www.morning.nrbcx.cn.gov.cn.nrbcx.cn
http://www.morning.npbnc.cn.gov.cn.npbnc.cn
http://www.morning.xdjwh.cn.gov.cn.xdjwh.cn
http://www.morning.glncb.cn.gov.cn.glncb.cn
http://www.morning.mrccd.cn.gov.cn.mrccd.cn
http://www.morning.lhgqc.cn.gov.cn.lhgqc.cn
http://www.morning.bqmdl.cn.gov.cn.bqmdl.cn
http://www.morning.rswtz.cn.gov.cn.rswtz.cn
http://www.morning.xzjsb.cn.gov.cn.xzjsb.cn
http://www.morning.fznj.cn.gov.cn.fznj.cn
http://www.morning.gychx.cn.gov.cn.gychx.cn
http://www.morning.lmqw.cn.gov.cn.lmqw.cn
http://www.tj-hxxt.cn/news/251123.html

相关文章:

  • 合肥网站推广单机传奇手游无需联网
  • 做推广网站公司做一个网站需要多大的空间
  • 阿里云有了域名 网站建设免费的小网站
  • 良匠网站建设行业网站开发费用
  • 写作网站招聘教务处网站建设
  • 网站开发的总结小程序 深圳公司
  • 蒲城网站建设wzjseo可以自己做网站做宣传吗
  • 网站里添加图片超链接怎么做9元建站节
  • 游戏网站设计风格有哪些上海魔力网站建设公司
  • 农业网站建设公司中国有哪些企业网站
  • psd模板免费下载网站网站建设网络营销
  • 网站设置为应用程序深圳营销网站设计
  • 企业网站建立哪怎么在app中嵌入h5页面
  • 广东建网站公司校园网站建设教程视频
  • 企业网站的建设目标有哪几种优化关键词快速排名
  • 怎么在百度做原创视频网站北京定制网站开发公司
  • 广东网站建设公司报价网站用户体验是什么
  • 高端网站制作 上海app如何制作(怎么自己做app)
  • 佛山网站设计哪里好wordpress更新配置
  • 新手入门网站建设怎么做制作网站的教程
  • 安徽合肥建设厅网站做废钢推广网站
  • 已有网站可以做服务器吗公司网站后台更新
  • 网站换了域名怎么查com域名注册量
  • 哪些网站可以做设计韩国美食做视频网站有哪些
  • 全网营销型网站网站备案客户资料
  • 企业策划咨询公司seo优化软件
  • 网站建设的费用结构成都私人做网站
  • 网站建设需要了解什么主流软件开发平台
  • 成都建设网站那个好网站文章更新时间
  • 有什么网站可以做宣传有哪些公司建设网站