使用MindSDB和MongoDB预测阿姆斯特丹住房价格的教程
#hacktoberfest #machinelearning #mongodb #mindsd

什么是Mindsdb?

当今大多数企业都利用机器学习来为他们的决策提供动力。从推荐系统到优化的运输路线再到客户情绪分析,公司现在都将机器学习和人工智能纳入了业务的各个方面。公司生成的数据是所有这些ML算法和模型的骨干。用于准备机器学习模型的处理和处理数据可能是昂贵且繁琐的。这是Mindsdb进入图片的地方。 MindSDB将机器学习带入数据库,使您能够利用存储在数据库中的数据上的机器学习技术。在MindSDB的帮助下,您可以在数据库中直接创建,训练和优化ML模型,而无需其他平台使机器学习更加易于访问和高效。

â!在本教程中我们将学习什么?

ð第1部分:设置要求

首先,我们将准备我们的设置,这对于开始使用MindSDB和Mongoapi进行预测至关重要。

  • 下载mongodb和mongodb指南针
  • 开始使用MindSDB
  • 将MindSDB与MongoDB集成

ð第2部分:生成ML模型

我们将看到如何在数据库中创建和训练ML模型。在本教程中,我们将使用this dataset预测阿姆斯特丹的住房价格。

  • 准备数据库
  • 创建预测变量模型
  • 查询预测变量模型

第1部分:设置要求

我们将简要解释本节,以便我们可以继续进行预测。有关更详细的说明,请参考this article

ð下载mongodb和mongodb指南针

要开始,我们必须同时在系统中安装和工作MongoDB Community Edition和MongoDB指南针。

成功下载了MongoDB和MongoDB指南针后,我们可以转到下一步。

ð从Mindsdb

开始

MindSDB为所有用户提供免费的MindSDB云版本,他们可以访问其数据库上的预测。您可以注册免费// MINDSDB云版本//。验证您的电子邮件并登录到您的帐户,您已经准备好了。完成后,您应该看到这样的页面:

MindsDB Cloud Sign Up

如果愿意,可以选择使用Docker Image或使用PyPI在本地系统上安装MindsDB。但是,我们将在本教程中与Minds DB Cloud合作。

ð将MindSDB与MongoDB集成

MindSDB为我们提供了使用MongoApi与MongoDB集成的能力。我们可以按照给定的步骤来做到这一点。

打开您的MongoDB指南针。在左侧导航面板上,您将有一个新连接的选项。单击该选项,将为您提供连接的详细信息。

在URI部分中输入以下内容:

mongodb://cloud.mindsdb.com/

单击高级连接选项下拉列表。在这里,您的主机将被视为MindSDB云。

在“身份验证”选项中,输入您的MindSDB用户名和密码。然后单击保存并连接,为您的连接提供一个名称,然后选择和颜色。

MongoDB Compass

如果您成功创建了一个连接,则将显示一个类似于此的页面:

MongoDB Compass  Connection

在此页面的底部面板中,您将看到Mongo Shell栏,放大并键入以下查询,然后单击Enter。

> use mindsdb
> show collections

Mongo Shell Code

如果您得到这样的结果,则表明您已成功地将Mindsdb与MongoDB集成在一起。现在让我们转到教程的第二部分。

第2部分:生成ML模型

ð准备数据库

我们将准备我们的数据库,我们可以在其中运行查询并执行预测。在MindSDB云控制台上,单击左导航栏中的最后一个图标。您将看到一个选择数据源页面。我们可以添加各种数据源,但是,对于本教程,我们将使用.csv文件。

转到文件部分,然后单击导入文件。导入您的CSV文件,并为您的数据库表提供一个名称,其中将存储.csv文件的内容。单击保存并继续。

Image upload

现在,我们必须保存刚刚在MongoDB数据库上创建的数据库。我们将使用databases.insertone()命令来执行

要这样做,转到mongo shell并键入以下命令:

db.databases.insertOne({
    name: "HousingDB", // database name
    engine: "mongodb", // databaase engine 
    connection_args: {
        "port": 27017, // default connection port
        "host": "mongodb://cloud.mindsdb.com:27017", // connection host
        "database": "files" // database connection          
    }
});

单击Enter时,您必须收到以下答复:

Dataset Upload

如果您得到了这样的响应,则意味着您的数据集都准备好探索!

ð创建预测变量模型

现在我们的数据库已经准备好,我们可以继续创建我们的第一个预测模型。预测变量模型基本上是一个受过训练的机器学习模型,可用于预测或预测一个称为目标变量或目标值的特定值。

我们使用创建预测命令来创建和训练ML模型。在您的MindSDB控制台中输入以下命令:

CREATE PREDICTOR mindsdb.housing_price_predictor
FROM files
(SELECT * FROM housing)
PREDICT price;

这里的housing_predictor是我们的预测模型的名称,价格是我们要预测的目标价值。我们想预测考虑所有其他属性的房价。单击运行或按Shift+Enter运行我们的查询。如果没有打ic,我们将成功完成查询。

MindsDB Console

就是这样!我们只用几行代码创建并培训了机器学习模型!那是Mindsdb!

的魔力

ð查询预测变量模型

我们可以通过在Mongo Shell中键入以下命令来查看我们的机器学习模型规范:

 db.predictors.find({name:"housing_price_predictor"})

当我们按ENTER时,我们将获取预测模型的所有详细信息,例如其状态,准确性,目标值和错误。

Model Generated

现在,我们最终可以查询我们的ML模型以预测特定条目的目标值。

同样的语法是:

SELECT [target_variable], [target_variable]_explain
FROM mindsdb.[predictor_name]
WHERE [column]=[value] 
AND [column]=[value];

我们还可以通过Mongo Shell查询ML模型并开始生成预测。

结论:

使用MindSDB,我们在数据库中成功创建并培训了机器学习模型,并解锁了生成数据库预测的能力。您可以访问MindsDB Documentation了解Mindsdb的各种功能。

接下来是什么?

如果您喜欢跟随本教程,请确保Sign Up获取自由MindSDB Cloud帐户并继续探索!您也可以在GitHub上检查它们。