使用Nyckel的机器学习进行评论审核功能
Nyckel是一个机器学习API,在训练能够执行不同任务的自动化模型方面已经被证明是有效的。一个评论功能可以识别和分类有关它所持有的内容的消息。
在这篇文章中,我们将创建一个评论函数,使用Nyckel训练它的模型,并将Nyckel模型与该函数集成,以对信息中的垃圾邮件的可能性进行分类。
目标
在本文结束时,你应该能够做到以下几点。
- 使用Nyckel机器学习API工作。
- 使用API创建一个评论审核功能。
- 想出一个能够对信息进行分类的工作模型。
要求
为了成功创建你的功能,你需要。
- 对API的事先了解。
- 一个用于训练模型的数据集。
- 一个稳定的网络连接,因为这个API是在线工作的。
开始使用Nyckel
如果你是Nyckel的新手,你需要用一个有效的电子邮件地址或你的Gmail账户进行注册。在Nyckel创建一个账户,你就可以使用Nyckel API提供的服务。登录后,你将被引导到以下页面。

创建评论功能
进入主页后,点击页面底部的New function 按钮,之后你会被引导到如下所示页面。

这个页面给了你两种数据输入方式,即文本和图像。在这种情况下,你要对评论进行分类,所以文本将是最好的输入方式。
选择文本,然后在后面的表格中添加标签,如spam 和Not spam 。之后,点击创建函数按钮,将创建名为NewFunction的函数。
你可以重命名这个函数的名字,给一个可取的名字,在这种情况下,其commentFunction ,以便在你的账户中有多个函数时容易识别。
训练模型
对于这一部分,需要一组CSV 、TSV 、或JSON 格式的数据来训练模型。
点击画布或拖动,上传你打算用于训练的文件,并遵循提供的上传规则。
这个模型的CSV 文件会显示其内容,你必须选择你想使用的列(使用文字较多的列)。
选择一个列,然后点击import 。
导入成功后,文本将按其出现在单元格中的样子显示,在这里你需要手动训练几行。你所需要的是选择你所指的文本类型,如下面的图片所示,spam 和not spam 。

你需要标记大约15个输入,然后模型需要时间来学习。一旦模型从输入中进行训练,它就会自动为其余部分贴上标签,同时以百分比的形式显示准确率。
你会注意到,训练了几个后,准确率很低,但随着你训练的增多,准确率也随之上升。这与人工智能的事实相吻合,即训练数据越多,模型的准确性就越高。
测试模型的准确性
在用大量的数据训练了模型后,你可以用不同的数据进行满意度测试,以确定你的模型有多准确。
要做到这一点,请在顶部导航到Invoke ,移动到测试页面。在该页面上,在标有函数输入的画布上输入或粘贴你想用来测试的数据。
结果显示在函数输出处,并标明标签和准确率百分比,如下图所示。

这是用来确认模型已经训练有素,可以用于真实数据。如果你对模型的准确性感到满意,你可以使用JavaScript将其与你的网站集成,如下所述。
使用JavaScript将模型与网站集成
由于本指南是关于使用Nyckel的机器学习,我们不会深入到开发一个网站来使用该模型。
本节将介绍如何从Nyckel调用模型,就像它在网站中建立一样。
下面的代码创建了与API的连接。
// The whole of this code send a request to the API from the website
function checkText(text)
{
var formdata = new FrmData();
formdata.append('file', text);
// this enables the model interpret the appended text as if it is in the web application
$.ajax({
url: 'https://www.nyckel.com/v1/functions/j3l3xdfs0fv4tec7/invoke',
type: 'post',
data: formdata,
//contentType: false,
//processData: false,
dataType: 'json',
success: function (response) // the text is checked against the model for easy classification
{
displayResult(response); // On checking, the text is classified as either "Spam" or "Not Spam" and displayed by this function
},
error: function (response)
{
// in case of an error with the text, the resetPage function clears the page with no response to indicate an error with classification.
alert("Error checking text", response);
$("#title").show();
resetPage();
}
});
}
链接到应用程序的URL是在API上提供的。要为你的模型获得一个URL,请导航到API部分。你会看到一个类似于这个的URL。https://www.nyckel.com/v1/functions/j3l3xdfs0fv4tec7/invoke
随着所有这些步骤的正常工作,你应该有你的模型完成并准备使用。
为什么使用Nyckel API?
随着机器学习领域的技术进步,不同的人都在努力想出更容易的方法,让大家接受人工智能。
构建API是迄今为止最有效的方法之一,因为不需要编程/编码技能就能提出训练好的模型。
为什么人们仍然喜欢手工训练?
尽管API提供了简单性,但开发者仍然喜欢训练模型的老方法。
以下是一些原因。
- 准确性--使用其他方法训练你的模型要考虑到许多因素,这些因素会提高模型的准确性
- 对模型的控制--API并没有给你对模型的完全控制。有时你可能永远不知道它做出决定所考虑的因素。出于这个原因,程序员更喜欢用更好的方式来编写训练模型的代码。
结论
到此为止,你已经学会了训练一个可以在任何网站上调用的模型,以对文本进行分类和检测垃圾邮件。虽然API还没有被完全接受,但本教程表达了它们背后的简单性。
这可以帮助许多网络开发者在他们的应用程序中实现机器学习模型,这也是预测的技术的未来。