X Tutup
The Wayback Machine - https://web.archive.org/web/20220512031231/https://github.com/tensorflow/tfjs-core/commits/master
Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
master
Switch branches/tags

Commits on Aug 12, 2019

  1. Move core to its own folder and enable Monorepo Build (#1876)

    Move core to its own folder `tfjs-core` and enable Monorepo build system where each package build runs only if the PR touches a file in that package folder.
    
    DEV
    dsmilkov committed Aug 12, 2019
  2. Add stft op (#1746)

    FEATURE
    
    Add tf.signal.stft op. 
    
    One TODO is passing fft length parameter because rfft does not support fft length parameter. We can pass fft length parameter after rfft supports it.
    
    See: tensorflow/tfjs#1362
    Lewuathe authored and nsthorat committed Aug 12, 2019
  3. Add memory info to benchmarks page. (#1875)

    FEATURE
    annxingyuan committed Aug 12, 2019
  4. Wait for yarn in webgpu / react native CI cloudbuild.yml. (#1877)

    We need to wait for yarn on the parent folder because child directories will look in the parent node_modules. This introduces a race condition that causes the CI to be flaky.
    
    DEV
    nsthorat committed Aug 12, 2019

Commits on Aug 11, 2019

  1. Add tf.conv3dTranspose (#1629)

    this PR proposes adding a conv3dTranspose op (with tests included).
    
    This PR is driven by my group's desire to use a pre-trained 3D U-Net with Tensorflow JS.
    
    FEATURE
    kaczmarj authored and dsmilkov committed Aug 11, 2019

Commits on Aug 9, 2019

  1. Add non-default noiseShape support to dropout op (#1782)

    This PR is a followup PR for [tfjs-core#1343](#1343) which added `dropout` op, dropout feature initially requested in [tfjs#117](tensorflow/tfjs#117). This PR cleans up a TODO, `implements non default noise shape`. The implementation of noiseShape aligns with TensorFlow Python's dropout API.
    
    The `noiseShape` feature would benefit further dropout related development, for example, make `tf.layers.dropout` support `noiseShape` configuration.
    
    **Relative PR:**
    * Make dropout layer support non default noiseShape and seed [tensorflow/tfjs-layers#556](tensorflow/tfjs-layers#556)
    
    **Reference:**
    * [TensorFlow tf.nn.dropout documentation](https://www.tensorflow.org/api_docs/python/tf/nn/dropout)
    * [TensorFlow tf.nn.dropout implementation](https://github.com/tensorflow/tensorflow/blob/r1.13/tensorflow/python/ops/nn_ops.py#L2982-L3054)
    * [TensorFlow _get_noise_shape implementation](https://github.com/tensorflow/tensorflow/blob/r1.13/tensorflow/python/ops/nn_ops.py#L2903-L2925)
    syt123450 authored and dsmilkov committed Aug 9, 2019
  2. Fixed division by zero in QR decomposition. Issue #1058 (#1473)

    tensorflow/tfjs#1058
    The sign() function returns 0 on 0, which causes a division by zero in the QR decomposition function qr() if there is a zero on the diagonal.
    
    BUG
    jarno-r authored and dsmilkov committed Aug 9, 2019

Commits on Aug 8, 2019

  1. Cleanup intopk to remove it as a kernel. (#1873)

    - Removes the kernel intopk because we don't support async kernels
    - Renames inTopK to inTopKAsync
    - Changes unit tests to support the async error throwing expectations.
    
    FEATURE
    nsthorat committed Aug 8, 2019
  2. Add avgPool3d & maxPool3d (#1778)

    This PR adds `avgPool3d` op & `maxPool3d` op with CPU and WebGL implementation, supports inference and gradient. The APIs align with TensorFlow’s Python API [tf.nn.avg_pool3d](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/nn/avg_pool3d) and [tf.nn.max_pool3d](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/nn/max_pool3d). The `avgPool3d` & `maxPool3d` ops support `tf.layers.averagePooling3d` & `tf.layers.maxPooling3d` (feature requested in [tensorflow/tfjs#1035](tensorflow/tfjs#1035)).
    
    As a checklist, features in this PR:
    * Add `tf.avgPool3d` to ops
    * Add `tf.maxPool3d` to ops
    * Add `avgPool3d` kernel to handle `tf.avgPool3d`’s prediction
    * Add `maxPool3d` kernel to handle `tf.maxPool3d`’s prediction
    * Add private helper `pool3d` function in CPU kernel as the implementation of `avgPool3d` kernel and `maxPool3d` kernel in CPU end
    * Add `Pool3DProgram` in WebGL kernel as the implementation of `avgPool3d` kernel and `maxPool3d` kernel in GPU end
    * Add `avgPool3dBackprop` kernel to handle `tf.avgPool3d`’s gradient
    * Add `avgPool3dBackprop` CPU kernel implementation
    * Add `AvgPool3DBackpropProgram` as the implementation of `avgPool3dBackprop` WebGL kernel
    * Add `maxPool3dBackprop` kernel to handle `tf.maxPool3d`’s gradient
    * Add `maxPool3dBackprop` CPU kernel implementation
    * Add a private helper function `maxPool3dPositions` for maxPool3dBackprop in CPU kernel
    * Add `MaxPool3DBackpropProgram` as the implementation of `maxPool3dBackprop` WebGL kernel
    * Integrate WebGL end’s `maxPool3dPositions` helper function into Pool3DProgram
    * Add a `computePool3DInfo` util function to compute operation information for `avgPool3d` & `maxPool3d`
    * Make check function `eitherStridesOrDilationsAreOne` support 3D input
    * Add 14 unit tests for `avgPool3d` (one test case failed in nodejs env as TF Backend doesn’t support `NUMBER` pad mode)
    * Add 7 unit tests for `avgPool3dBackprop`
    * Add 13 unit tests for `maxPool3d` (one test case failed in nodejs env as TF Backend doesn’t support `NUMBER` pad mode)
    * Add 10 unit tests for `maxPool3dBackprop`
    * Add 8 unit tests for util function `computePool3DInfo`
    * Export `Tensor5D `type
    * Add jsdocs and executable examples for website api documentation
    
    I built a local website, if everything goes well, the `avgPool3d` and `maxPool3d` APIs would lie in `Operations/Convolution` section and look like the screen shot below:
    <img width="1184" alt="Screen Shot 2019-06-06 at 1 32 30 AM" src="https://user-images.githubusercontent.com/7977100/59018883-c13c3400-87fb-11e9-8f36-316edab35231.png">
    
    **Relative PRs:**
    * Make nodejs kernel support  avgPool3d & maxPool3d  [tensorflow/tfjs-node#256](tensorflow/tfjs-node#256)
    * Add averagePooling3d layer & maxPooling3d layer [tensorflow/tfjs-layers#555](tensorflow/tfjs-layers#555)
    * Add avgPool3d & maxPool3d ops for graph model [tensorflow/tfjs-converter#375](tensorflow/tfjs-converter#375)
    
    **Reference:**
    * [tf.nn.avg_pool3d TensorFlow Python API](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/nn/avg_pool3d)
    * [tf.nn.max_pool3d TensorFlow Python API](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/nn/max_pool3d)
    ---
    To see the logs from the Cloud Build CI, please join either
    our [discussion](https://groups.google.com/a/tensorflow.org/forum/#!forum/tfjs)
    or [announcement](https://groups.google.com/a/tensorflow.org/forum/#!forum/tfjs-announce) mailing list.
    
    FEATURE
    syt123450 authored and dsmilkov committed Aug 8, 2019

Commits on Aug 7, 2019

  1. Add inTopK op (#1734)

    FEATURE
    
    This PR add inTopK op, which behaves the same way as [tf.math.in_top_k](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/math/in_top_k#aliases) in TensorFlow. This op help develop further metrics which depend on inTopK operation, such as, topKCategoricalAccuracy (feature requested in [tensorflow/tfjs#27](tensorflow/tfjs#27) ), sparseTopKCategoricalAccuracy (feature requested in [tensorflow/tfjs#26](tensorflow/tfjs#26)). Relative PR [tensorflow/tfjs-layers#537](tensorflow/tfjs-layers#537)
    
    This PR:
    * Add new inTopK op to [src/ops](https://github.com/tensorflow/tfjs-core/tree/master/src/ops)
    * Register inTopK in [src/ops/ops.ts](https://github.com/tensorflow/tfjs-core/blob/master/src/ops/ops.ts)
    * Add inTopK kernel to backend
    * Add shared inTopK implementation between webgl and cpu
    * Add relative tests for inTopK
    
    Reference:
    * [TensorFlow in_top_k doc](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/math/in_top_k#aliases)
    * [TensorFlow in_top_k implementation](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/in_topk_op.cc)
    * [TensorFlow in_top_k test cases](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/ops/nn_ops_test.cc#L442)
    syt123450 authored and nsthorat committed Aug 7, 2019
  2. Add react native unit tests to ci (#1870)

    cla: yes
    Add react native unit tests to CI
    tafsiri authored and dsmilkov committed Aug 7, 2019
  3. Reduce the size of the gramSchmidt-non-tiny test (#1872)

    cla: yes
    * Reduce the size of the gramSchmidt-non-tiny test
    
    Without the change, the test prints slowness warning on my machine:
    
    Chrome 76.0.3809 (Linux 0.0.0) SLOW 0.708 secs: gramSchmidt-non-tiny webgl1 {"WEBGL_VERSION":1,"WEBGL_CPU_FORWARD":false,"WEBGL_SIZE_UPLOAD_UNIFORM":0} 16x32
    .
    Chrome 76.0.3809 (Linux 0.0.0) SLOW 0.641 secs: gramSchmidt-non-tiny webgl2 {"WEBGL_VERSION":2,"WEBGL_CPU_FORWARD":false,"WEBGL_SIZE_UPLOAD_UNIFORM":0} 16x32
    
    With the change, it no longer prints the warning.
    
    DEV
    caisq authored and dsmilkov committed Aug 7, 2019
  4. Add NCHW dataFormat support for conv2d (#1791)

    This PR makes `conv2d` support `NCHW` dataFormat, `NCHW` works well in inference and gradient. The `NCHW` dataFormat is supported in CPU and WebGL backend. Feature requested in [tensorflow/tfjs#1648](tensorflow/tfjs#1648). 
    
    **Features:**
    * Make conv2d support NCHW.
    * Make conv2dDerInput support NCHW.
    * Make conv2dDerFilter support NCHW.
    * Add a helper method `convertConv2DDataFormat` to convert `'NHWC'|'NCHW'` format into `'channelsLast'|'channelsFirst'` format.
    
    **Tests:**
    * Add unit tests for NCHW conv2D inference.
    * Add unit tests for NCHW conv2D gradient.
    * Add unit tests for `convertConv2DDataFormat`.
    
    **Changes in Kernel:**
    * Make CPU kernel function `conv2d`, `conv2dDerInput`, `conv2dDerFilter` support `channelsFirst` and `channelsLast` dataFormat.
    * Make GPU kernel function `conv2d`, `conv2dDerInput`, `conv2dDerFilter` support `channelsFirst` and `channelsLast` dataFormat.
    * Make GPI kernel function `conv2dByMatMul`, `conv2dWithIm2Row` support `channelsFirst` and `channelsLast` dataFormat.
    * Make GPGPUProgram `Conv2DProgram`, `Conv2DDerInputProgram`, `Conv2DDerFilterProgram`, `Im2ColPackedProgram` support `channelsFirst` and `channelsLast` dataFormat.
    syt123450 authored and dsmilkov committed Aug 7, 2019
  5. Add skeleton for the WASM prototype (#1863)

    Add skeleton code for the WASM backend.
    
    Co-author: @nsthorat
    
    - Add `tfjs-backend-wasm` top-level folder (mono-repo style).
    - Add settings/lint/npm configurations (`tslint.json`, `settings.json`, `package.json`, ...).
    - Add initial sketch of the C++ backend.
    - Reuse core's unit tests.
    - Implement element-wise operation `add()` and test against core unit tests.
    - Setup building npm package.
    - Add a simple `build.sh` script (will move to Bazel later)
    - Add a [multi-root workspace](https://code.visualstudio.com/docs/editor/multi-root-workspaces) file so vscode can understand the mono-repo.
    
    Short-term TODOs:
    - Move c++ files to `src/cpp/`
    - Move ts files to `src/ts/`
    - Migrate to Bazel as a build system.
    - Have the `add` kernel live in its own file so we can drop it in modular builds.
    - Remove dependency on stdio.h
    dsmilkov committed Aug 7, 2019
  6. Fix unit test to not use tf.tidy in boolean mask test. (#1871)

    DEV
    
    Also rename booleanMask to booleanMaskAsync.
    nsthorat committed Aug 7, 2019
  7. Add booleanMask op (#1749)

    FEATURE
    
    Add tf.booleanMask op. Feature requested in [tensorflow/tfjs#380](tensorflow/tfjs#380).
    
    Reference:
    * [tf.boolean_mask documentation](https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/boolean_mask?hl=en)
    * [tf.boolean_mask tensorflow python implementation](https://github.com/tensorflow/tensorflow/blob/r2.0/tensorflow/python/ops/array_ops.py#L1274)
    syt123450 authored and nsthorat committed Aug 7, 2019
  8. Add support for generating pseudorandom numbers drawn from a ga… (#1365)

    cla: yes
    * Add support for generating pseudorandom numbers drawn from a gamma distribution
    kgryte authored and dsmilkov committed Aug 7, 2019
  9. add tf.diag (#1256)

    cla: yes
    
    Add tf.diag
    kedevked authored and dsmilkov committed Aug 7, 2019

Commits on Aug 6, 2019

  1. Support complex type in concat op (#1829)

    FEATURE
    
    Modify concat op to support complex type. It is also necessary to support the arbitrary shape of the returned complex value in stft op.
    Lewuathe authored and nsthorat committed Aug 6, 2019

Commits on Aug 5, 2019

  1. Fuse prelu activation. (#1867)

    FEATURE
    PERF
    annxingyuan committed Aug 5, 2019
  2. [io] Add field user-defined metadata; Tweak API for tf.io.fromMemory() (

    #1864)
    
    FEATURE
    
    - This is the first PR for adding support for user-defined metadata in model artifacts. Design doc has been circulated and discussed.
    - Add the field `userDefinedMetadata` to `ModelArtifacts` and `ModelJSON`.
    - Deprecate the old API of `tf.io.fromMemory()` which consisted of multiple arguments. The arguments are consolidated into on in the new API.
    - Add unit tests.
    
    Towards tensorflow/tfjs#1596
    caisq committed Aug 5, 2019
  3. Add exports to remove importing from dist in other packages. (#1856)

    DEV
    
    This pr is to fix dist importing happens in tfjs-node.
    A corresponding pr is here, tensorflow/tfjs-node#289
    WenheLI authored and nsthorat committed Aug 5, 2019
  4. [RN] Remove manual delegation of read to readSync

    INTERNAL
    
    Remove manual delegation of read to readSync in react native platform
    tafsiri committed Aug 5, 2019

Commits on Aug 1, 2019

  1. Update .npmignore (#1862)

    INTERNAL
    Ignore other packages (nodegl, react-native) in the mono-repo when publishing tfjs-core.
    dsmilkov committed Aug 1, 2019

Commits on Jul 29, 2019

  1. Fuse conv2d with bias and activation. (#1859)

    FEATURE
    PERF
    annxingyuan committed Jul 29, 2019
  2. add experimental webgl support for RN platform (#1844)

    * fix tests add webgl backend prototype
    
    * webgl path for ios
    
    * save
    
    * avoid shadowing global functions in clip
    
    * upgrade tfjs version
    
    * remove unused constant in shader compiler
    
    * Merge branch 'master' into rn-webgl
    
    * code review fixes
    
    improve float texture download detection to include half float textures.
    
    * save
    
    * save
    
    * remove warning as it makes tests noisy
    
    consider refactoring this in another PR.
    
    * Merge branch 'master' into rn-webgl
    
    * revert settings update
    
    * add comment
    
    * save
    
    * fix fetching of binary files
    
    * save
    
    * save
    
    * have tests spy on platform.fetch
    
    * Merge branch 'master' into rn-webgl
    
    * code review fixes
    
    * save
    
    * Merge branch 'master' into rn-webgl
    
    * fix lint errors
    
    * code review fixes
    tafsiri committed Jul 29, 2019
  3. Fix serialized classNames for Optimizers (#1861)

    BUG
    INTERNAL
    davidsoergel committed Jul 29, 2019

Commits on Jul 26, 2019

  1. make version 1.2.6 (#1860)

    Kangyi Zhang authored and pyu10055 committed Jul 26, 2019
  2. fix (#1858)

    annxingyuan authored and pyu10055 committed Jul 26, 2019

Commits on Jul 25, 2019

  1. Add Karma and node test for webworker (#1841)

    DEV
    WenheLI authored and dsmilkov committed Jul 25, 2019

Commits on Jul 24, 2019

  1. make benchmark page more flexible (#1826)

    DEV
    tafsiri committed Jul 24, 2019
Older
X Tutup