将 ML 模型导出给利益相关者的 Shell 脚本
我们在职业生涯中特别面临的一项挑战是能够有效地将 ML 模型结果发送给业务利益相关者。尽管许多公司/团队将拥有将 ML 模型结果分发给业务利益相关者的内部工具或机制,但许多初创公司或新团队缺乏此类机制,并且需要一种方法来引导流程以立即产生影响。
在本文中,我们将了解如何使用 Shell 脚本将机器学习模型结果导出给利益相关者。
逐步实施
第 1 步:设置 shell 脚本
在系统上打开终端并运行以下命令
vi shell_script.sh
然后复制粘贴下面的代码。此代码基本上逐行读取模型输出文件中的所有记录,并针对模型输出文件中的每条记录向业务利益相关者发送电子邮件,然后将汇总报告发送到所有电子邮件到指定的电子邮件
- 第一行 #!/bin/bash 告诉终端使用 bash 执行脚本
- 然后第二行 if [ -e $1 ] 检查模型输出文件是否存在
- 如果模型输出文件存在,则文件中的每条记录都会逐行读取并通过电子邮件发送。而 IFS = 读取 -r 行; do 逐行读取记录。
- 一旦所有的行都被读取并通过电子邮件发送,然后 $(cat $1 | xargs | sed -e 's/ /./g') 将通知发送到所有发送给利益相关者的记录的电子邮件。
- 如果模型输出文件不存在,则通过电子邮件通知没有文件/结果延迟
#!bin/bash
if [ -e $1 ]
then
while IFS = read -r line; do
echo “Hello, record $line has been generated from the ML model” | mailx -s “ML Model daily results” business@xyz.com
done < $1
echo “Cases sent by ML model $(cat $1 | xargs | sed -e ‘s/ /./g’)” | mailx -s “Results sent from ML model to business stakeholders” username@xyz.com
else
echo “ML model results have been delayed” | mailx -s “ML Model execution has been delayed” username@xyz.com
按 esc 后跟 “:wq!” 保存上述文件保存对文件所做的更改。
第二步:执行上面的脚本
您可以通过指定模型输出文件位置并运行以下命令来运行上述 shell 脚本
sh shell_script.sh model_results/daily_run_01172022.csv
第 3 步:使用 cronjob 自动化脚本
通过运行以下命令在您的计算机上打开 crontab
crontab -e
现在,您可以创建要执行 shell 脚本的节奏。
0 1 * * 0 – 5 sh shell_script.sh model_results/daily_run_01172022.csv
使用上面的命令,我们将脚本安排在每周 6 天的凌晨 1 点执行。
输出: