• windows下的tfjs-node安装异常总结


    大约有半年没有写博客了,奔波于上海这座魔都之中。险些忘了自己是个有梦想的全栈工程师

    书接上回,由于个人非常厌恶python的语法,半年前发现了tensorflow.js这个宝贝(下简称tfjs),喜出望外,从18年4月Google发布的0.0.1版本至今,都没有一个完好的node版本,之前我就有吐槽过这个问题,深度学习居然只能在browser中跑,而即使在node中引入tfjs也无法保存训练模型,这样的训练真的没有什么意义啊,直到这几天辞职在家,打开npm官网,发现了一个tfjs的项目分支,tfjs-node。

    终于可以给npm上的tfjs归个类了。注意:

    @tensorflow/tfjs这个项目是偏向前端,浏览器而生的

    @tensorflow/tfjs-node是针对后端node,所以如果是在服务器或者PC端运行则应该请使用这个版本

    但是本人在使用tfjs-node的过程中发现他的安装还是有点繁琐的,不是npm install这么简单

    首先根据官网的介绍,windows下需要先安装python2.x系列,所以先到python官网下载2.7版本的python

    package.json文件

    {
        "name": "",
        "description": "",
        "version": "0.0.1",
        "dependencies": {
            "@tensorflow/tfjs-node": "latest"
        }
    }
    

    接下来

    npm install
    

    以上操作是极有可能出现如下错误:
    直接npm install的错误
    整个错误其实很模糊,而且可以清楚的看到其强调了这不是npm的错误。

    这是怎么回事呢,原来前面有提到,tfjs-node依赖于python和C++的,其实是一种将node和python下的tensorflow框架融合的技术,我猜测tfjs-node并没有完整使用js语言开发出神经网络框架,而是需要大量调用原生tf(C++,py)的库。

    所以这里报的错误应该是执行python脚本和其他编译过程抛出的错误,而npm并不能定位到这样的异常或错误。

    不过经过我的成功安装,有以下几点注意:

    1. 可能需要安装msbuild,这应该是用到了一些c++的编译工作(笔者之前没有安装一直报找不到的错,但不确定是不是必要)
    npm install -g --production windows-build-tools
    
    1. 翻越一道墙,执行install.js的过程估计请求了很多不可告人的网站哦,请自行shadowsock全局模式
    2. 删除多余的node_modules,我发现tfjs和tfjs-node项目的module似乎是冲突的,请不要同时安装两项,如果搞不清冲突在哪,建议删除整个node_modules目录即可(建议在构建tfjs-node的项目前,就是一个空项目)
    rm -rf .
    ode_modules
    

    看到这一步基本就是成功了,这个download过程应该是要跨墙的
    下载过程

  • 相关阅读:
    根据方法名执行方法的例子
    修改cmd的默认路径
    事件处理程序的处理顺序问题
    类型事件定义
    修改应用程序搜索程序集的私有路径
    What's New in Visual Studio 2010
    IE 8 中选项卡通过颜色分组
    再谈CLR:无法避免的装箱
    环境变量(Environment Variable)那点事
    默认情况下程序启动后到底是几个线程?
  • 原文地址:https://www.cnblogs.com/devilyouwei/p/10620386.html
Copyright © 2020-2023  润新知