大唐官府服务器比武在哪_大唐官府秒几「2021大唐官府怎么玩」

  项目可以让你利用WebGL在GPU驱动的、你的欣赏器上运行练习好的Keras模子。模子直接根据KerasJSON格式设置文件和关联的HDF5权重而序列化(serialized)。

  项目地点:https://github.com/transcranial/keras-js

  互动演示

  用于MNIST的根本卷积网络

  在MNIST上练习的卷积变自编码器(ConvolutionalVariationalAutoencoder)

  在ImageNet上练习的50层的残差网络(ResidualNetwork)

大唐官府服务器比武在哪_大唐官府秒几 大唐官府服务器比武

在哪_大唐官府秒几「2021大唐官府怎么玩」 行业资讯

  在ImageNet上练习的InceptionV3

  用于IMDB感情分类的双向LSTM

  

  

  

  

  为什么要做这个项目?

  消除对后端底子办法或API调用的需求

  完全将盘算卸载到客户端欣赏器

  互动应用程序

  利用方法

  查察demos/src/获取真实案例的源代码。

  1.对Model和Sequential都实用

  model=Sequential()

  model.add(...)

  ...

  ...

  model=Model(input=...,output=...)

  一旦练习完成,生存权重和导出模子架构设置:

  model.save_weights('model.hdf5')

  withopen('model.json','w')asf:

  f.write(model.to_json())

  拜见演示的jupyternotebooks相识详情:demos/notebooks/

  2.在HDF5权重文件上运行编码器脚本:

  $pythonencoder.py/path/to/model.hdf5

  这将在同一个文件夹中产生两个用作HDF5权重的文件:model_weights.buf和model_metadata.json

  3.Keras.js所需的三个文件:

  模子文件:model.json

  权重文件:model_weights.buf

  权重元数据文件:model_metadata.json

  4.GPU支持由weblas(https://github.com/waylonflinn/weblas)驱动。将Keras.js和Weblas库包罗进去:

  src="lib/weblas.js"/

  src="dist/keras.js"/

  5.创建新模子

  实例化时,数据通过XHR(雷同域或要求CORS)加载,层被初始化为有向无环图。当这些步调完成之后,类方法ready()返回一个办理题目的Promise。然后,利用perdict()让数据通过模子,这也会返回一个Promise。

  constmodel=newKerasJS.Model({

  filepaths:{

  model:'url/path/to/model.json',

  weights:'url/path/to/model_weights.buf',

  metadata:'url/path/to/model_metadata.json'

  }

  gpu:true

  })

  model.ready().then(()={

  //inputdataobjectkeyedbynamesoftheinputlayers

  //or`input`forSequentialmodels

  //valuesaretheflattenedFloat32Arraydata

  //(inputtensorshapesarespecifiedinthemodelconfig)

  constinputData={

  'input_1':newFloat32Array(data)

大唐官府服务器比武在哪_大唐官府秒几 大唐官府服务器比武

在哪_大唐官府秒几「2021大唐官府怎么玩」 行业资讯

  }

  //makepredictions

  //outputDataisanobjectkeyedbynamesoftheoutputlayers

  //or`output`forSequentialmodels

  model.predict(inputData).then(outputData={

  //e.g.,

  //outputData['fc1000']

  })

  })

  可用的层

  高级激活:LeakyReLU,PReLU,ELU,ParametricSoftplus,ThresholdedReLU,SReLU

  卷积:Convolution1D,Convolution2D,AtrousConvolution2D,SeparableConvolution2D,Deconvolution2D,Convolution3D,UpSampling1D,UpSampling2D,UpSampling3D,ZeroPadding1D,ZeroPadding2D,ZeroPadding3D

  内核:Dense,Activation,Dropout,SpatialDropout2D,SpatialDropout3D,Flatten,Reshape,Permute,RepeatVector,Merge,Highway,MaxoutDense

  嵌入:Embedding

  归一化:BatchNormalization

  池化:MaxPooling1D,MaxPooling2D,MaxPooling3D,AveragePooling1D,AveragePooling2D,AveragePooling3D,GlobalMaxPooling1D,GlobalAveragePooling1D,GlobalMaxPooling2D,GlobalAveragePooling2D

  循环:SimpleRNN,LSTM,GRU

  包装器:Bidirectional,TimeDistributed

  还没有实现的层

  如今还不能直接实现Lambda,但终极会创建一个通过Java界说盘算逻辑的机制。

  内核:Lambda

  卷积:Cropping1D,Cropping2D,Cropping3D

  本地毗连:LocallyConnected1D,LocallyConnected2D

  噪声:GaussianNoise,GaussianDropout

  备注

  WebWorker及其限定

  Keras.js可以与主线程分开单独运行在WebWorker中。由于Keras.js会实行大量同步盘算,这可以防止该UI受到影响。但是,WebWorker的最大限定之一是缺乏canvas访问(以是要用WebGL)。以是在单独的线程中运行Keras.js的长处被必须运行在CPU模式中的要求抵消了。换句话说,在GPU模式中运行的Keras.js只能运行在主线程上。

  WebGLMAX_TEXTURE_SIZE

  在GPU模式中,张量对象被编码成了盘算之前的WebGLtextures。这些张量的巨细由gl.getParameter(gl.MAX_TEXTURE_SIZE)限定,这会根据硬件或平台的状态而有所差别。参考https://webglstats.com/相识典范的预期值。在im2col之后,卷积层中大概会有一个题目。比如在InceptionV3网络演示中,第一层卷积层中im2col创造了一个22201x27的矩阵,并在第二层和第三层卷积层中创造21609x288的矩阵。第一个维度上的巨细高出了MAX_TEXTURE_SIZE的最大值16384,以是必须被分割开。根据权重为每一个分割开的张量实行矩阵乘法,然后再组合起来。在这个案例中,当createWeblasTensor()被调用时,Tensor对象上会提供一个weblasTensorsSplit属性。相识其利用的例子可查察src/layers/convolutional/Convolution2D.js

  开辟/测试

  对于每一个实现的层都存在广泛的测试。查察notebooks/获取为全部这些测试天生数据的jupyternotebooks。

  $npminstall

  要运行全部测试,实行npmrunserver并访问https://localhost:3000/test/。全部的测试都会主动运行。打开你的欣赏器的开辟工具获取额外的测试数据信息。

  对于开辟,请运行:

  $npmrunwatch

  编辑src/中的恣意文件都会触发webpack来更新dist/keras.js。

  要创建生产型的UMDwebpack版本,输出到dist/keras.js,运行:

  $npmrunbuild

  证书

  MIT:https://github.com/transcranial/keras-js/blob/master/LICENSE

  文章泉源:呆板之心

  《Node.js项目实战:从编写代码到服务器摆设以实现一个根本功能完备的论坛体系入手,以实现业务逻辑为主,力图显现编写Node.js项目标整个流程。同时在实现过程中也会先容各种常用模块的根本利用方法,比如express、supertest、mocha、passport、mysql、pm2、async、webpack等。点击下方二维码查察课程详情

你可能想看:

客户评论

我要评论