提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|使用教程|编辑:郑恭琳|2018-01-11 09:55:23.000|阅读 637 次
概述:Python和R是实现ML应用程序的两种非常流行的语言,在野外部署通常需要与用另一种语言编写的应用程序集成。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
相关链接:
Python和R是数据中心工程师最流行的编程语言之一。但是,它们并不总是构建应用程序的其余部分的语言。这就是为什么你有时需要找到一种方法来将用Python或R编写的机器学习模型部署到基于.NET等语言的环境中。
在本文中,我将展示如何使用Web API将机器学习模型集成到.NET编写的应用程序中。
我们可以使用Flask作为共享和主持我们的机器学习预测的一种方式。让我们使用来自Kaggle比赛的著名的Titanic数据集。首先,创建一个新文件,并将其命名为titanic_app.py(或任何你想要的名称)。导入并初始化Flask应用程序;然后在底部启动服务器。在中间留出空间,以便稍后添加模型和路径。
import flask app = flask.Flask(__name__) #-------- MODEL GOES HERE -----------# #-------- ROUTES GO HERE -----------# if __name__ == '__main__': '''Connects to the server''' HOST = '127.0.0.1' PORT = 4000 #make sure this is an integer app.run(HOST, PORT)
请注意,我们指定了我们希望应用程序运行的主机和端口。
加载Titanic数据集并在其上创建一个模型:
#-------- MODEL GOES HERE -----------#
import numpy as np
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
df = pd.read_csv('data/titanic.csv')
include = ['Pclass', 'Sex', 'Age', 'Fare', 'SibSp', 'Survived']
# Create dummies and drop NaNs
df['Sex'] = df['Sex'].apply(lambda x: 0 if x == 'male' else 1)
df = df[include].dropna()
X = df['Pclass', 'Sex', 'Age', 'Fare', 'SibSp']
y = df['Survived']
PREDICTOR = RandomForestClassifier(n_estimators=100).fit(X, y)
这是有趣的部分。现在我们有一个PREDICTOR,我们需要得到一些值来做出我们的预测。一种方法是从URL参数中获取信息,这些参数是出现在URL中的?之后的key:value对。 例如,如果您导航到//localhost:4000/predict?pclass=1&sex=1&age=18&fare=500&sibsp=0,则Flask可以为您检索该数据。
我们写一条路径来做到这一点:
#-------- ROUTES GO HERE -----------#
@app.route('/predict', methods=["GET"])
def predict():
pclass = flask.request.args['pclass']
sex = flask.request.args['sex']
age = flask.request.args['age']
fare = flask.request.args['fare']
sibsp = flask.request.args['sibsp']
item = [pclass, sex, age, fare, sibsp]
score = PREDICTOR.predict_proba(item)
results = {'survival chances': score[0,1], 'death chances': score[0,0]}
return flask.jsonify(results)
保存文件并启动您的应用程序。您的模型现在有一个简单的API!
在您的.NET环境中部署Flask有很多选择——它们将大大依赖于您的基础架构选择。为了让您了解这个过程,我们来看看使用Microsoft Azure部署到IIS环境。
我会假设你:
如果您已正确设置环境,则可以将您的Web应用程序部署到Azure。这可以通过创建一个web.config文件来更新Web服务器上的文件来匹配您的实例中的文件。为此,请执行以下步骤:
< system.webServer >
< handlers >
< add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="D:\home\Python27\python.exe|D:\home\Python27\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/ >
< /handlers >
< /system.webServer >
< !-- Flask apps only: change the project name to match your app -- > < add key="WSGI_HANDLER" value="tutorial.app"/ >
D:\home\Python27>python -m pip install --upgrade -r /home/site/wwwroot/requirements.txt
更多有关信息,请查看以下链接:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn




在现代软件开发过程中,自动化单元测试是确保代码质量与可靠性的关键环节。尤其对于特定框架(如MFC)的代码,测试复杂度显著增加,常因依赖外部资源或交互操作而难以在静默环境中顺利执行。Parasoft C/C++test作为专业的软件测试工具,致力于帮助开发团队高效实施自动化测试,通过其强大的桩函数功能,能够有效模拟依赖组件的行为,从而实现对复杂逻辑的隔离测试。
本文将为大家介绍如何在MyEclipse中使用XDoclet开发EJB 2 Session Bean,欢迎下载最新版体验!
如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站 