zoukankan      html  css  js  c++  java
  • [占坑]混合编程相关

    [占坑]混合编程相关

    本文只是本人对查阅资料的汇总整理,意图供自己将来学习使用,其中内容很可能对您没有帮助

    1. 多语言交互方式: https://www.zhihu.com/question/270065760

    2. C++与C#混合编程: https://zhuanlan.zhihu.com/p/81924996

    3. C++与Python混合编程: https://www.zhihu.com/question/23003213

      这个问答中高赞的回答都值得一看。

      还有鹅厂这个:

      作者:腾讯技术工程

      随着深度学习的广泛应用,在搜索引擎/推荐系统/机器视觉等业务系统中,越来越多的深度学习模型部署到线上服务。主要用 python 语言实现,当机器学习模型离线训练完成上线部署后,要用 C++ 重新实现 这些 python 的特征工程逻辑代码。

      我们发现,用 C++ 重新实现 这个步骤,给实际业务带来了大量的问题:

      1. 繁琐,费时费力,极容易出现 python 和 C++ 代码不一致
      2. 不一致会直接影响模型在线上的效果,导致大盘业务指标不如预期,产生各种 bad case
      3. 不一致难以发现,无法测试,无法监控,经常要靠用户投诉反馈,甚至大盘数据异常才能发现

      目前业界有这么几种解决思路:

      1. 在线特征存储起来给离线用
      2. 在线 C++ 代码编译成 so 导出给离线用
      3. 根据一份配置生成离线和在线代码
      4. 提取公共代码,加强代码复用,等软件工程手段,减少不一致

      但这些思路都有各种缺点:

      1. 所有在线请求的所有特征,这个存储量数据量很大
      2. 算法改代码需要等待后台开发,降低了算法同学的工作效率
      3. 特征处理代码的复杂度转移到配置文件中,不一定能充分表达,而且配置格式增加学习成本
      4. 就这边真实离线特征处理代码来看,大部分代码都无法抽取出公共代码做复用。

      回到问题出发点考虑,显而易见,这个问题归根结底就是需要一个 “ python 到 c++ 的翻译器 ”

  • 相关阅读:
    list for循环中删除元素
    XMLFeedSpider例子
    myeclipse一直卡在loading workbench解决方法
    代码
    在Github上面搭建Hexo博客(一):部署到Github
    RegEX正则表达式截取字符串
    将后台值传单前台js接收
    C# List<T>泛型用法
    基于jQuery——TreeGrid
    在线编程学习网站
  • 原文地址:https://www.cnblogs.com/jiading/p/12046641.html
Copyright © 2011-2022 走看看