profile
viewpoint
Lukas Geiger lgeiger @plumerai @larq London www.linkedin.com/in/lgeiger deep learning scientist | astroparticle physicist | software engineer

larq/larq 300

An Open-Source Library for Training Binarized Neural Networks

lgeiger/black-action 150

A GitHub action that runs black code formatter for Python

lgeiger/addons 0

Useful extra functionality for TensorFlow maintained by SIG-addons

lgeiger/altair 0

Declarative statistical visualization library for Python

lgeiger/angular 0

One framework. Mobile & desktop.

lgeiger/anser 0

:tv: A low level parser for ANSI sequences.

lgeiger/aperture.js 0

A library for screen recording

lgeiger/apm 0

Atom Package Manager

lgeiger/atom 0

The hackable text editor

lgeiger/atom-busy 0

:wavy_dash: A generic display and progress for things that take time

PR opened larq/docs

Fix link to end2end notebook
+1 -1

0 comment

1 changed file

pr created time in 7 hours

create barnchlarq/docs

branch : fix-link

created branch time in 7 hours

PR opened mkdocs/mkdocs

Prefer list comprehensions over list.append()

This PR is just a minor simplification for improved readability.

+3 -10

0 comment

2 changed files

pr created time in 9 hours

create barnchlgeiger/mkdocs

branch : simplify

created branch time in 9 hours

fork lgeiger/mkdocs

Project documentation with Markdown.

http://www.mkdocs.org

fork in 9 hours

PR opened larq/docs

Change page navigation structure and redirects

This PR adds a redirect plugin following this example so we can change the URL structure to be consistent without breaking existing links:

  • / -> /larq
  • /faq -> /larq/faq
  • /compute-engine/api/converter -> /compute-engine/api/python
+21 -14

0 comment

13 changed files

pr created time in 9 hours

create barnchlarq/docs

branch : structure

created branch time in 9 hours

delete branch lgeiger/mkdocs-material

delete branch : patch-1

delete time in 9 hours

delete branch larq/docs

delete branch : dependabot/pip/mkdocs-material-6.0.0

delete time in 10 hours

push eventlarq/docs

dependabot[bot]

commit sha cca5e002499a38f600d7c264d430cf314b5d50f9

Bump mkdocs-material from 5.5.14 to 6.0.0 (#212) * Bump mkdocs-material from 5.5.14 to 6.0.0 Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 5.5.14 to 6.0.0. - [Release notes](https://github.com/squidfunk/mkdocs-material/releases) - [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md) - [Commits](https://github.com/squidfunk/mkdocs-material/compare/5.5.14...6.0.0) Signed-off-by: dependabot[bot] <support@github.com> * Fix mkdocs config Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Lukas Geiger <lukas.geiger94@gmail.com>

view details

push time in 10 hours

PR merged larq/docs

Bump mkdocs-material from 5.5.14 to 6.0.0 dependencies

Bumps mkdocs-material from 5.5.14 to 6.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/releases">mkdocs-material's releases</a>.</em></p> <blockquote> <h2>mkdocs-material-6.0.0</h2> <p><strong>Thanks to all sponsors for making this release possible!</strong></p> <ul> <li>Improved search result look and feel</li> <li>Improved search result stability while typing</li> <li>Improved search result grouping (pages + headings)</li> <li>Improved search result relevance and scoring</li> <li>Added display of missing query terms to search results</li> <li>Reduced size of vendor bundle by 25% (84kb → 67kb)</li> <li>Reduced size of the Docker image to improve CI build performance</li> <li>Removed hero partial in favor of custom implementation</li> <li>Removed deprecated front matter features</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md">mkdocs-material's changelog</a>.</em></p> <blockquote> <h3>6.0.0 <!-- raw HTML omitted -->_ September 25, 2020<!-- raw HTML omitted --></h3> <ul> <li>Improved search result look and feel</li> <li>Improved search result stability while typing</li> <li>Improved search result grouping (pages + headings)</li> <li>Improved search result relevance and scoring</li> <li>Added display of missing query terms to search results</li> <li>Reduced size of vendor bundle by 25% (84kb → 67kb)</li> <li>Reduced size of the Docker image to improve CI build performance</li> <li>Removed hero partial in favor of custom implementation</li> <li>Removed deprecated front matter features</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/080a4fc596c310a573f6c8a4b8ab34353dc9b0ca"><code>080a4fc</code></a> Prepare 6.0.0 release</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/540cef3f89b097cbf043327f7cc8ec102db20b1c"><code>540cef3</code></a> Updated changelog</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/27747366f4de63549dccb8c3b6bf033a62c7504c"><code>2774736</code></a> Updated changelog</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/01fdf2648613a93b0880a08df0054e938a98c5b9"><code>01fdf26</code></a> Updated upgrading guide and changelog</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/ca0b6a93b14899fff2f1f3e2ed8bdb1682bdc682"><code>ca0b6a9</code></a> Updated Material icons and removed hero logic</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/9c28dc92a113fd3b2fd1e7e81123072550daad54"><code>9c28dc9</code></a> Updated site search documentation</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/d2aa34767ea0f36b593943ebf42c41c0a1f3468d"><code>d2aa347</code></a> Fixed spacing problems with sponsor logos</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/8e1c93cfc6bddeb44db1d2702874b2446fd12bcc"><code>8e1c93c</code></a> Added Basler to sponsors in README</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/d618e57ce1071d1551b9d2ce93df1dd59da2937d"><code>d618e57</code></a> Added new sponsor logo</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/ea79a9dd1136533fbef88f6279a8fdacb7bf6eb3"><code>ea79a9d</code></a> Fixed source code references in documentation after merge</li> <li>Additional commits viewable in <a href="https://github.com/squidfunk/mkdocs-material/compare/5.5.14...6.0.0">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+3 -3

0 comment

2 changed files

dependabot[bot]

pr closed time in 10 hours

PullRequestReviewEvent

PR opened squidfunk/mkdocs-material

Fix deprecations links (second try)

I messed up #1947 and the links now point to upgrading/deprecations/#hero this should hopefully fix it for real. Sorry about that.

+2 -2

0 comment

1 changed file

pr created time in 10 hours

push eventlgeiger/mkdocs-material

Lukas Geiger

commit sha 01f7f0d592b2510408ce57ee4c23c7a6bc91d998

Fix deprecations links (second try)

view details

push time in 10 hours

delete branch lgeiger/mkdocs-material

delete branch : patch-1

delete time in 10 hours

push eventlarq/docs

Lukas Geiger

commit sha e79af1518f255a2c0ad297018947dac3a1c6796b

Fix mkdocs config

view details

push time in 10 hours

PR opened squidfunk/mkdocs-material

Fix links to deprecations

The docs currently link to localhost which breaks the links on the deployed version. This PR removes the prefix to fix the links.

+2 -2

0 comment

1 changed file

pr created time in 10 hours

push eventlgeiger/mkdocs-material

Lukas Geiger

commit sha 4c5986fe6d9e2b8ce5be7b4c58d8c3bd382f86d0

Fix links to deprecations The docs currently link to localhost which breaks the links on the deployed version. This PR removes the prefix to fix the links.

view details

push time in 10 hours

delete branch lgeiger/tensorflow

delete branch : object-wrapper-slots

delete time in 2 days

push eventlarq/docs

dependabot[bot]

commit sha f1666c940bc88c1cf988203a3cc7fec9edec2d46

Bump larq from 0.10.0 to 0.10.1 (#211) * Bump larq from 0.10.0 to 0.10.1 Bumps [larq](https://github.com/larq/larq) from 0.10.0 to 0.10.1. - [Release notes](https://github.com/larq/larq/releases) - [Commits](https://github.com/larq/larq/compare/v0.10.0...v0.10.1) Signed-off-by: dependabot[bot] <support@github.com> * retrigger build Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Lukas Geiger <lukas.geiger94@gmail.com>

view details

push time in 2 days

delete branch larq/docs

delete branch : dependabot/pip/larq-0.10.1

delete time in 2 days

PR merged larq/docs

Bump larq from 0.10.0 to 0.10.1 dependencies

Bumps larq from 0.10.0 to 0.10.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/larq/larq/releases">larq's releases</a>.</em></p> <blockquote> <h2>v0.10.1</h2> <h2>:bug: Bug Fixes</h2> <ul> <li>Fix variable saving on tf-nightly (<a href="https://github-redirect.dependabot.com/larq/larq/issues/578">#578</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Raise exception when causal padding is used with pad_values != 0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/575">#575</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Improve model summary for TF layers and multi output layers (<a href="https://github-redirect.dependabot.com/larq/larq/issues/572">#572</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Fix distributed quantized variable assignment in TF 2.x (<a href="https://github-redirect.dependabot.com/larq/larq/issues/556">#556</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:book: Documentation</h2> <ul> <li>Fix indentation of DoReFa warning (<a href="https://github-redirect.dependabot.com/larq/larq/issues/576">#576</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Emphasize importance of LCE in README.md (<a href="https://github-redirect.dependabot.com/larq/larq/issues/564">#564</a>) <a href="https://github.com/leonoverweel">@leonoverweel</a></li> </ul> <h2>:construction_worker_man: Internal Improvements</h2> <ul> <li>Only warn for missing kernel constraints when quantizers are binary (<a href="https://github-redirect.dependabot.com/larq/larq/issues/577">#577</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Run linting using Python 3.8 on CI (<a href="https://github-redirect.dependabot.com/larq/larq/issues/557">#557</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:arrow_up: Dependencies</h2> <ul> <li>Bump pytype from 2020.9.16 to 2020.9.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/573">#573</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.2 to 5.5.3 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/570">#570</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.9.14 to 2020.9.16 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/569">#569</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.28 to 2020.9.14 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/568">#568</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.1 to 5.5.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/567">#567</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.0 to 5.5.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/566">#566</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.2 to 5.5.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/565">#565</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.17 to 2020.8.28 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/563">#563</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump black from 19.10b0 to 20.8b1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/561">#561</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<2.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/560">#560</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-mock requirement from <!-- raw HTML omitted -->=2.0,<3.4 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/559">#559</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.10 to 2020.8.17 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/558">#558</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<2.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/555">#555</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.1 to 5.4.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/554">#554</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.0 to 5.4.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/552">#552</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.3.2 to 5.4.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/551">#551</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump actions/setup-python from v2.1.1 to v2.1.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/550">#550</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.30 to 2020.8.10 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/549">#549</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.3.0 to 5.3.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/548">#548</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.2 to 5.3.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/547">#547</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.1 to 5.2.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/545">#545</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.24 to 2020.7.30 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/546">#546</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.0 to 5.2.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/543">#543</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest requirement from <!-- raw HTML omitted -->=5.2.4,<6.1.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/542">#542</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Run test against TensorFlow 2.3 stable on CI (<a href="https://github-redirect.dependabot.com/larq/larq/issues/540">#540</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<1.35 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/541">#541</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.1.4 to 5.2.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/539">#539</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.20 to 2020.7.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/538">#538</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump actions/setup-python from v2.1.0 to v2.1.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/536">#536</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.14 to 2020.7.20 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/537">#537</a>) <a href="https://github.com/dependabot">@dependabot</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/larq/larq/commit/ae9ea66c03d9bd2151fa19fb05422a1794426295"><code>ae9ea66</code></a> :arrow_up: 0.10.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/579">#579</a>)</li> <li><a href="https://github.com/larq/larq/commit/726d634ed76c960c7a77da64c4b9ed16e6323028"><code>726d634</code></a> Only warn for missing kernel constraints when quantizers are binary (<a href="https://github-redirect.dependabot.com/larq/larq/issues/577">#577</a>)</li> <li><a href="https://github.com/larq/larq/commit/a59b19235ad93a55699054d1d1e83a36bb175463"><code>a59b192</code></a> Fix variable saving on tf-nightly (<a href="https://github-redirect.dependabot.com/larq/larq/issues/578">#578</a>)</li> <li><a href="https://github.com/larq/larq/commit/1b6078eaceb2e46e58341429ef18b18757a62d97"><code>1b6078e</code></a> Fix indentation of DoReFa warning (<a href="https://github-redirect.dependabot.com/larq/larq/issues/576">#576</a>)</li> <li><a href="https://github.com/larq/larq/commit/394a9086fea0a3eac982a689c5ca2918dbe1e017"><code>394a908</code></a> Raise exception when causal padding is used with pad_values != 0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/575">#575</a>)</li> <li><a href="https://github.com/larq/larq/commit/846f09077a60e5e6f5e0854f3773d39f185b8b9d"><code>846f090</code></a> Bump pytype from 2020.9.16 to 2020.9.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/573">#573</a>)</li> <li><a href="https://github.com/larq/larq/commit/1da7e04bed56607883236227b44b61fc0a7cd7e0"><code>1da7e04</code></a> Improve model summary for TF layers and multi output layers (<a href="https://github-redirect.dependabot.com/larq/larq/issues/572">#572</a>)</li> <li><a href="https://github.com/larq/larq/commit/4a9c649db4d5c95683f0cd86b2065e652e68236c"><code>4a9c649</code></a> Bump isort from 5.5.2 to 5.5.3 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/570">#570</a>)</li> <li><a href="https://github.com/larq/larq/commit/2e8b73305f2806b4f98b3076a49b6ff5f6fae0de"><code>2e8b733</code></a> Bump pytype from 2020.9.14 to 2020.9.16 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/569">#569</a>)</li> <li><a href="https://github.com/larq/larq/commit/ceb67182d5f471bb740ae8ca098441e099b0fbb3"><code>ceb6718</code></a> Bump pytype from 2020.8.28 to 2020.9.14 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/568">#568</a>)</li> <li>Additional commits viewable in <a href="https://github.com/larq/larq/compare/v0.10.0...v0.10.1">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+2 -3

2 comments

3 changed files

dependabot[bot]

pr closed time in 2 days

push eventlarq/docs

Lukas Geiger

commit sha e6ae633a97bad3b35d0fece7ac974234a5d1c2de

retrigger build

view details

push time in 2 days

PullRequestEvent

PR closed larq/docs

Bump larq from 0.10.0 to 0.10.1 dependencies

Bumps larq from 0.10.0 to 0.10.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/larq/larq/releases">larq's releases</a>.</em></p> <blockquote> <h2>v0.10.1</h2> <h2>:bug: Bug Fixes</h2> <ul> <li>Fix variable saving on tf-nightly (<a href="https://github-redirect.dependabot.com/larq/larq/issues/578">#578</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Raise exception when causal padding is used with pad_values != 0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/575">#575</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Improve model summary for TF layers and multi output layers (<a href="https://github-redirect.dependabot.com/larq/larq/issues/572">#572</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Fix distributed quantized variable assignment in TF 2.x (<a href="https://github-redirect.dependabot.com/larq/larq/issues/556">#556</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:book: Documentation</h2> <ul> <li>Fix indentation of DoReFa warning (<a href="https://github-redirect.dependabot.com/larq/larq/issues/576">#576</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Emphasize importance of LCE in README.md (<a href="https://github-redirect.dependabot.com/larq/larq/issues/564">#564</a>) <a href="https://github.com/leonoverweel">@leonoverweel</a></li> </ul> <h2>:construction_worker_man: Internal Improvements</h2> <ul> <li>Only warn for missing kernel constraints when quantizers are binary (<a href="https://github-redirect.dependabot.com/larq/larq/issues/577">#577</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Run linting using Python 3.8 on CI (<a href="https://github-redirect.dependabot.com/larq/larq/issues/557">#557</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:arrow_up: Dependencies</h2> <ul> <li>Bump pytype from 2020.9.16 to 2020.9.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/573">#573</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.2 to 5.5.3 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/570">#570</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.9.14 to 2020.9.16 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/569">#569</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.28 to 2020.9.14 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/568">#568</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.1 to 5.5.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/567">#567</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.5.0 to 5.5.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/566">#566</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.2 to 5.5.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/565">#565</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.17 to 2020.8.28 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/563">#563</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump black from 19.10b0 to 20.8b1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/561">#561</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<2.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/560">#560</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-mock requirement from <!-- raw HTML omitted -->=2.0,<3.4 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/559">#559</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.8.10 to 2020.8.17 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/558">#558</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<2.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/555">#555</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.1 to 5.4.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/554">#554</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.4.0 to 5.4.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/552">#552</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.3.2 to 5.4.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/551">#551</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump actions/setup-python from v2.1.1 to v2.1.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/550">#550</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.30 to 2020.8.10 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/549">#549</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.3.0 to 5.3.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/548">#548</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.2 to 5.3.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/547">#547</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.1 to 5.2.2 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/545">#545</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.24 to 2020.7.30 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/546">#546</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.2.0 to 5.2.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/543">#543</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Update pytest requirement from <!-- raw HTML omitted -->=5.2.4,<6.1.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/542">#542</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Run test against TensorFlow 2.3 stable on CI (<a href="https://github-redirect.dependabot.com/larq/larq/issues/540">#540</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Update pytest-xdist requirement from <!-- raw HTML omitted -->=1.30,<1.35 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/541">#541</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump isort from 5.1.4 to 5.2.0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/539">#539</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.20 to 2020.7.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/538">#538</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump actions/setup-python from v2.1.0 to v2.1.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/536">#536</a>) <a href="https://github.com/dependabot">@dependabot</a></li> <li>Bump pytype from 2020.7.14 to 2020.7.20 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/537">#537</a>) <a href="https://github.com/dependabot">@dependabot</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/larq/larq/commit/ae9ea66c03d9bd2151fa19fb05422a1794426295"><code>ae9ea66</code></a> :arrow_up: 0.10.1 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/579">#579</a>)</li> <li><a href="https://github.com/larq/larq/commit/726d634ed76c960c7a77da64c4b9ed16e6323028"><code>726d634</code></a> Only warn for missing kernel constraints when quantizers are binary (<a href="https://github-redirect.dependabot.com/larq/larq/issues/577">#577</a>)</li> <li><a href="https://github.com/larq/larq/commit/a59b19235ad93a55699054d1d1e83a36bb175463"><code>a59b192</code></a> Fix variable saving on tf-nightly (<a href="https://github-redirect.dependabot.com/larq/larq/issues/578">#578</a>)</li> <li><a href="https://github.com/larq/larq/commit/1b6078eaceb2e46e58341429ef18b18757a62d97"><code>1b6078e</code></a> Fix indentation of DoReFa warning (<a href="https://github-redirect.dependabot.com/larq/larq/issues/576">#576</a>)</li> <li><a href="https://github.com/larq/larq/commit/394a9086fea0a3eac982a689c5ca2918dbe1e017"><code>394a908</code></a> Raise exception when causal padding is used with pad_values != 0 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/575">#575</a>)</li> <li><a href="https://github.com/larq/larq/commit/846f09077a60e5e6f5e0854f3773d39f185b8b9d"><code>846f090</code></a> Bump pytype from 2020.9.16 to 2020.9.24 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/573">#573</a>)</li> <li><a href="https://github.com/larq/larq/commit/1da7e04bed56607883236227b44b61fc0a7cd7e0"><code>1da7e04</code></a> Improve model summary for TF layers and multi output layers (<a href="https://github-redirect.dependabot.com/larq/larq/issues/572">#572</a>)</li> <li><a href="https://github.com/larq/larq/commit/4a9c649db4d5c95683f0cd86b2065e652e68236c"><code>4a9c649</code></a> Bump isort from 5.5.2 to 5.5.3 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/570">#570</a>)</li> <li><a href="https://github.com/larq/larq/commit/2e8b73305f2806b4f98b3076a49b6ff5f6fae0de"><code>2e8b733</code></a> Bump pytype from 2020.9.14 to 2020.9.16 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/569">#569</a>)</li> <li><a href="https://github.com/larq/larq/commit/ceb67182d5f471bb740ae8ca098441e099b0fbb3"><code>ceb6718</code></a> Bump pytype from 2020.8.28 to 2020.9.14 (<a href="https://github-redirect.dependabot.com/larq/larq/issues/568">#568</a>)</li> <li>Additional commits viewable in <a href="https://github.com/larq/larq/compare/v0.10.0...v0.10.1">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+2 -2

1 comment

2 changed files

dependabot[bot]

pr closed time in 2 days

pull request commentlarq/docs

Bump larq from 0.10.0 to 0.10.1

@dependabot recreate

dependabot[bot]

comment created time in 2 days

push eventlarq/larq

Lukas Geiger

commit sha ae9ea66c03d9bd2151fa19fb05422a1794426295

:arrow_up: 0.10.1 (#579)

view details

push time in 2 days

delete branch larq/larq

delete branch : lgeiger-patch-1

delete time in 2 days

PR merged larq/larq

:arrow_up: 0.10.1 skip-changelog

We've had a few small fixes which I think would be nice to get released.

+1 -1

0 comment

1 changed file

lgeiger

pr closed time in 2 days

PR opened larq/larq

Upgrade TensorFlow versions on CI internal-improvement
+4 -4

0 comment

2 changed files

pr created time in 2 days

create barnchlarq/larq

branch : ci-tf

created branch time in 2 days

PR opened larq/larq

:arrow_up: 0.10.1 skip-changelog

We've had a few small fixes which I think would be nice to get released.

+1 -1

0 comment

1 changed file

pr created time in 2 days

create barnchlarq/larq

branch : lgeiger-patch-1

created branch time in 2 days

PR opened larq/larq

Fix variable saving on tf-nightly bug

TensorFlow added a new argument to _map_resources in https://github.com/tensorflow/tensorflow/commit/aad8c6685f78adb5caf059b0b71692a855f81337. This PR adds support tf-nightly.

+2 -2

0 comment

1 changed file

pr created time in 2 days

create barnchlarq/larq

branch : tf-2.4

created branch time in 2 days

issue closedlarq/larq

Causal Padding

Describe the bug

"causal" padding with QuantConv1D doesn't work. It reduces the dimension. I got this summary:

+model stats--------------------------------------------------------------------------------------+
| Layer                     Input prec.           Outputs  # 4-bit  # 32-bit  Memory  32-bit MACs |
|                                 (bit)                        x 1       x 1    (kB)              |
+-------------------------------------------------------------------------------------------------+
| input_1                             -  ((None, 29, 1),)        0         0       0            ? |
| quant_conv1d                        -      (-1, 28, 12)       24         0    0.01            ? |
| activation                          -      (-1, 28, 12)        0         0       0            ? |
| quant_conv1d_1                      -      (-1, 26, 16)      384         0    0.19            ? |
| activation_1                        -      (-1, 26, 16)        0         0       0            ? |
| quant_conv1d_2                      -      (-1, 22, 20)      640         0    0.31            ? |
| activation_2                        -      (-1, 22, 20)        0         0       0            ? |
| quant_conv1d_3                      -      (-1, 21, 24)      960         0    0.47            ? |
| activation_3                        -      (-1, 21, 24)        0         0       0            ? |
| global_average_pooling1d            -          (-1, 24)        0         0       0            ? |
| flatten                             -          (-1, 24)        0         0       0            0 |
| quant_dense                         -           (-1, 4)       96         4    0.06           96 |
| activation_4                        -           (-1, 4)        0         0       0            ? |
+-------------------------------------------------------------------------------------------------+
| Total                                                       2104         4    1.04           96 |
+-------------------------------------------------------------------------------------------------+

Described by this:

kwargs = dict(
                  kernel_quantizer=kernel_quantizer,
                  kernel_constraint=kernel_constraint,
                  padding="causal",
                  use_bias = False,
    )

    x = tf.keras.Input(shape=(Time_series_length, 1))

    ConvL1 = lq.layers.QuantConv1D(filters=12, kernel_size=2, dilation_rate=1, **kwargs)(x)
    ConvL1 = tf.keras.layers.Activation(activation)(ConvL1)

    ConvL2 = lq.layers.QuantConv1D(filters=16, kernel_size=2, dilation_rate=2, **kwargs)(ConvL1)
    ConvL2 = tf.keras.layers.Activation(activation)(ConvL2)

    ConvL3 = lq.layers.QuantConv1D(filters=20, kernel_size=2, dilation_rate=4, **kwargs)(ConvL2)
    ConvL3 = tf.keras.layers.Activation(activation)(ConvL3)

    ConvL4 = lq.layers.QuantConv1D(filters=24, kernel_size=2, dilation_rate=1, **kwargs)(ConvL3)
    ConvL4 = tf.keras.layers.Activation(activation)(ConvL4)

    final = tf.keras.layers.GlobalAveragePooling1D()(ConvL4)
    final = tf.keras.layers.Flatten()(final)
    final = lq.layers.QuantDense(classi, kernel_quantizer=kernel_quantizer, kernel_constraint=kernel_constraint)(
        final)
    final = tf.keras.layers.Activation("softmax")(final)

But using tf.keras.layers.Conv1D instead of lq.layers.QuantConv1D I got this:

+model stats-----------------------------------------------------------------------------+
| Layer                     Input prec.           Outputs  # 32-bit  Memory  32-bit MACs |
|                                 (bit)                         x 1    (kB)              |
+----------------------------------------------------------------------------------------+
| input_1                             -  ((None, 29, 1),)         0       0            ? |
| conv1d                              -      (-1, 29, 12)        24    0.09            ? |
| activation                          -      (-1, 29, 12)         0       0            ? |
| conv1d_1                            -      (-1, 29, 16)       384    1.50            ? |
| activation_1                        -      (-1, 29, 16)         0       0            ? |
| conv1d_2                            -      (-1, 29, 20)       640    2.50            ? |
| activation_2                        -      (-1, 29, 20)         0       0            ? |
| conv1d_3                            -      (-1, 29, 24)       960    3.75            ? |
| activation_3                        -      (-1, 29, 24)         0       0            ? |
| global_average_pooling1d            -          (-1, 24)         0       0            ? |
| flatten                             -          (-1, 24)         0       0            0 |
| quant_dense                         -           (-1, 4)        96    0.38           96 |
| activation_4                        -           (-1, 4)         0       0            ? |
+----------------------------------------------------------------------------------------+
| Total                                                        2104    8.22           96 |
+----------------------------------------------------------------------------------------+

They should be the same. What can I do to fix it? I need quantizations and causal padding.

TensorFlow version: 2.1 Larq version: 10.0

closed time in 2 days

AlexRux

push eventlarq/larq

Lukas Geiger

commit sha 016142985e759d904c8f281c64f051107a61de7b

Only warn for missing kernel constraints when quantizers are binary

view details

push time in 2 days

PR opened larq/larq

Only warn for missing kernel constraints when quantizers are binary internal-improvement

Larq can be used with many different quantizer and not all of them require a kernel constraint for proper training. This PR changes the warning message to only trigger when using a binary quantizer without a kernel constraint.

+15 -9

0 comment

1 changed file

pr created time in 2 days

create barnchlarq/larq

branch : warn-constraints

created branch time in 2 days

push eventlarq/larq

Lukas Geiger

commit sha 1b6078eaceb2e46e58341429ef18b18757a62d97

Fix indentation of DoReFa warning (#576)

view details

push time in 2 days

delete branch larq/larq

delete branch : fix-dorefa-indent

delete time in 2 days

PR merged larq/larq

Fix indentation of DoReFa warning documentation

This fixes the indentation of the warning message so it renders correctly on the website.

+3 -3

0 comment

1 changed file

lgeiger

pr closed time in 2 days

PR opened larq/larq

Fix indentation of DoReFa warning documentation

This fixes the indentation of the warning message so it renders correctly on the website.

+3 -3

0 comment

1 changed file

pr created time in 2 days

create barnchlarq/larq

branch : fix-dorefa-indent

created branch time in 2 days

PR opened larq/larq

Raise exception when causal padding is used with pad_values != 0 bug

Following up on #574, we currently do not support causal padding with pad_values != 0 This PR will raise and exception since otherwise the current code would fall back to pad_values=0.

+8 -3

0 comment

2 changed files

pr created time in 2 days

create barnchlarq/larq

branch : raise-conv1d-causal

created branch time in 2 days

issue commentlarq/larq

Causal Padding

I was able to reproduce your issue. This is actually caused by the fact that TensorFlow <= 2.2.1 explicitely checks for the class name in the Conv1D layer which prevent subclasses of Conv1D to use causal padding. This bug has been fixed in https://github.com/tensorflow/tensorflow/commit/17b63987e58a08ecaa950c2668a5870a399cfaba, so upgrading to TensorFlow 2.3 should solve your issue.

I've personally never used causal padding in Keras so please let us know if this fixes your issue.

AlexRux

comment created time in 2 days

push eventlarq/larq

dependabot[bot]

commit sha 846f09077a60e5e6f5e0854f3773d39f185b8b9d

Bump pytype from 2020.9.16 to 2020.9.24 (#573) Bumps [pytype](https://github.com/google/pytype) from 2020.9.16 to 2020.9.24. - [Release notes](https://github.com/google/pytype/releases) - [Changelog](https://github.com/google/pytype/blob/master/CHANGELOG) - [Commits](https://github.com/google/pytype/compare/2020.09.16...2020.09.24) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

push time in 3 days

delete branch larq/larq

delete branch : dependabot/pip/pytype-2020.9.24

delete time in 3 days

PR merged larq/larq

Bump pytype from 2020.9.16 to 2020.9.24 dependencies python

Bumps pytype from 2020.9.16 to 2020.9.24. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/google/pytype/commit/604c802eb58c8143091738dc533aaae003e3a217"><code>604c802</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/google/pytype/issues/689">#689</a> from google/google_sync</li> <li><a href="https://github.com/google/pytype/commit/75f8d58753991be3595a0a317a42098a9af5ad27"><code>75f8d58</code></a> Do a PyPI release.</li> <li><a href="https://github.com/google/pytype/commit/cc2024501e0b1503e6f02a9fc7c68c6d9719d07d"><code>cc20245</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/google/pytype/issues/688">#688</a> from google/google_sync</li> <li><a href="https://github.com/google/pytype/commit/17dceb18d252b72b4d275f9a04bf59e1cc2c3616"><code>17dceb1</code></a> Fix copybara export of attr/setters.pytd.</li> <li><a href="https://github.com/google/pytype/commit/be34e171e7a7426ac0772e6027c41874b2e8ac22"><code>be34e17</code></a> Fix a super bug caused by wrong ordering of conditions.</li> <li><a href="https://github.com/google/pytype/commit/1684a3609895a073d4e43fafd6d14b372bf47cf2"><code>1684a36</code></a> Update attrs pytd files to support version 20.2.0</li> <li><a href="https://github.com/google/pytype/commit/f74547e82a3cc57058d70516e5b75fea41f64974"><code>f74547e</code></a> Fix a few more super() bugs.</li> <li><a href="https://github.com/google/pytype/commit/5174cc5bee69c94d145a308a529da307b082f595"><code>5174cc5</code></a> Create C++ metrics classes.</li> <li><a href="https://github.com/google/pytype/commit/2c7f04100744f87a6214ae21016844cff5185597"><code>2c7f041</code></a> Fix inconsistencies in typegraph.</li> <li><a href="https://github.com/google/pytype/commit/dc4f93eafc0ef512865d5d4aa5a8ce799bfb743e"><code>dc4f93e</code></a> Document special builtins</li> <li>Additional commits viewable in <a href="https://github.com/google/pytype/compare/2020.09.16...2020.09.24">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+1 -1

0 comment

1 changed file

dependabot[bot]

pr closed time in 3 days

push eventlarq/zoo

dependabot[bot]

commit sha 150e02395d9f90a1d97ee4652257bcda23921d34

Bump pytype from 2020.9.16 to 2020.9.24 (#235) Bumps [pytype](https://github.com/google/pytype) from 2020.9.16 to 2020.9.24. - [Release notes](https://github.com/google/pytype/releases) - [Changelog](https://github.com/google/pytype/blob/master/CHANGELOG) - [Commits](https://github.com/google/pytype/compare/2020.09.16...2020.09.24) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

push time in 3 days

delete branch larq/zoo

delete branch : dependabot/pip/pytype-2020.9.24

delete time in 3 days

PR merged larq/zoo

Bump pytype from 2020.9.16 to 2020.9.24 dependencies python

Bumps pytype from 2020.9.16 to 2020.9.24. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/google/pytype/commit/604c802eb58c8143091738dc533aaae003e3a217"><code>604c802</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/google/pytype/issues/689">#689</a> from google/google_sync</li> <li><a href="https://github.com/google/pytype/commit/75f8d58753991be3595a0a317a42098a9af5ad27"><code>75f8d58</code></a> Do a PyPI release.</li> <li><a href="https://github.com/google/pytype/commit/cc2024501e0b1503e6f02a9fc7c68c6d9719d07d"><code>cc20245</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/google/pytype/issues/688">#688</a> from google/google_sync</li> <li><a href="https://github.com/google/pytype/commit/17dceb18d252b72b4d275f9a04bf59e1cc2c3616"><code>17dceb1</code></a> Fix copybara export of attr/setters.pytd.</li> <li><a href="https://github.com/google/pytype/commit/be34e171e7a7426ac0772e6027c41874b2e8ac22"><code>be34e17</code></a> Fix a super bug caused by wrong ordering of conditions.</li> <li><a href="https://github.com/google/pytype/commit/1684a3609895a073d4e43fafd6d14b372bf47cf2"><code>1684a36</code></a> Update attrs pytd files to support version 20.2.0</li> <li><a href="https://github.com/google/pytype/commit/f74547e82a3cc57058d70516e5b75fea41f64974"><code>f74547e</code></a> Fix a few more super() bugs.</li> <li><a href="https://github.com/google/pytype/commit/5174cc5bee69c94d145a308a529da307b082f595"><code>5174cc5</code></a> Create C++ metrics classes.</li> <li><a href="https://github.com/google/pytype/commit/2c7f04100744f87a6214ae21016844cff5185597"><code>2c7f041</code></a> Fix inconsistencies in typegraph.</li> <li><a href="https://github.com/google/pytype/commit/dc4f93eafc0ef512865d5d4aa5a8ce799bfb743e"><code>dc4f93e</code></a> Document special builtins</li> <li>Additional commits viewable in <a href="https://github.com/google/pytype/compare/2020.09.16...2020.09.24">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+1 -1

0 comment

1 changed file

dependabot[bot]

pr closed time in 3 days

PullRequestReviewEvent
PullRequestReviewEvent

push eventlarq/docs

dependabot[bot]

commit sha 874e4ee0a7f31fc5c8e19b2d877f22e161b2a26b

Bump tensorflow-cpu from 2.3.0 to 2.3.1 (#210) Bumps [tensorflow-cpu](https://github.com/tensorflow/tensorflow) from 2.3.0 to 2.3.1. - [Release notes](https://github.com/tensorflow/tensorflow/releases) - [Changelog](https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md) - [Commits](https://github.com/tensorflow/tensorflow/compare/v2.3.0...v2.3.1) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

push time in 3 days

delete branch larq/docs

delete branch : dependabot/pip/tensorflow-cpu-2.3.1

delete time in 3 days

PR merged larq/docs

Bump tensorflow-cpu from 2.3.0 to 2.3.1 dependencies

Bumps tensorflow-cpu from 2.3.0 to 2.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tensorflow/tensorflow/releases">tensorflow-cpu's releases</a>.</em></p> <blockquote> <h2>TensorFlow 2.3.1</h2> <h1>Release 2.3.1</h1> <h2>Bug Fixes and Other Changes</h2> <ul> <li>Fixes an undefined behavior causing a segfault in <code>tf.raw_ops.Switch</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15190">CVE-2020-15190</a>)</li> <li>Fixes three vulnerabilities in conversion to DLPack format (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15191">CVE-2020-15191</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15192">CVE-2020-15192</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15193">CVE-2020-15193</a>)</li> <li>Fixes two vulnerabilities in <code>SparseFillEmptyRowsGrad</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15194">CVE-2020-15194</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15195">CVE-2020-15195</a>)</li> <li>Fixes several vulnerabilities in <code>RaggedCountSparseOutput</code> and <code>SparseCountSparseOutput</code> operations (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15196">CVE-2020-15196</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15197">CVE-2020-15197</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15198">CVE-2020-15198</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15199">CVE-2020-15199</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15200">CVE-2020-15200</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15201">CVE-2020-15201</a>)</li> <li>Fixes an integer truncation vulnerability in code using the work sharder API (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15202">CVE-2020-15202</a>)</li> <li>Fixes a format string vulnerability in <code>tf.strings.as_string</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15203">CVE-2020-15203</a>)</li> <li>Fixes segfault raised by calling session-only ops in eager mode (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15204">CVE-2020-15204</a>)</li> <li>Fixes data leak and potential ASLR violation from <code>tf.raw_ops.StringNGrams</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15205">CVE-2020-15205</a>)</li> <li>Fixes segfaults caused by incomplete <code>SavedModel</code> validation (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15206">CVE-2020-15206</a>)</li> <li>Fixes a data corruption due to a bug in negative indexing support in TFLite (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15207">CVE-2020-15207</a>)</li> <li>Fixes a data corruption due to dimension mismatch in TFLite (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15208">CVE-2020-15208</a>)</li> <li>Fixes several vulnerabilities in TFLite saved model format (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15209">CVE-2020-15209</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15210">CVE-2020-15210</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15211">CVE-2020-15211</a>)</li> <li>Fixes several vulnerabilities in TFLite implementation of segment sum (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15212">CVE-2020-15212</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15213">CVE-2020-15213</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15214">CVE-2020-15214</a>)</li> <li>Updates <code>sqlite3</code> to <code>3.33.00</code> to handle <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15358">CVE-2020-15358</a>.</li> <li>Fixes deprecated usage of <code>collections</code> API</li> <li>Removes <code>scipy</code> dependency from <code>setup.py</code> since TensorFlow does not need it to install the pip package</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md">tensorflow-cpu's changelog</a>.</em></p> <blockquote> <h1>Release 2.3.1</h1> <h2>Bug Fixes and Other Changes</h2> <ul> <li>Fixes an undefined behavior causing a segfault in <code>tf.raw_ops.Switch</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15190">CVE-2020-15190</a>)</li> <li>Fixes three vulnerabilities in conversion to DLPack format (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15191">CVE-2020-15191</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15192">CVE-2020-15192</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15193">CVE-2020-15193</a>)</li> <li>Fixes two vulnerabilities in <code>SparseFillEmptyRowsGrad</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15194">CVE-2020-15194</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15195">CVE-2020-15195</a>)</li> <li>Fixes several vulnerabilities in <code>RaggedCountSparseOutput</code> and <code>SparseCountSparseOutput</code> operations (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15196">CVE-2020-15196</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15197">CVE-2020-15197</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15198">CVE-2020-15198</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15199">CVE-2020-15199</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15200">CVE-2020-15200</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15201">CVE-2020-15201</a>)</li> <li>Fixes an integer truncation vulnerability in code using the work sharder API (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15202">CVE-2020-15202</a>)</li> <li>Fixes a format string vulnerability in <code>tf.strings.as_string</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15203">CVE-2020-15203</a>)</li> <li>Fixes segfault raised by calling session-only ops in eager mode (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15204">CVE-2020-15204</a>)</li> <li>Fixes data leak and potential ASLR violation from <code>tf.raw_ops.StringNGrams</code> (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15205">CVE-2020-15205</a>)</li> <li>Fixes segfaults caused by incomplete <code>SavedModel</code> validation (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15206">CVE-2020-15206</a>)</li> <li>Fixes a data corruption due to a bug in negative indexing support in TFLite (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15207">CVE-2020-15207</a>)</li> <li>Fixes a data corruption due to dimension mismatch in TFLite (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15208">CVE-2020-15208</a>)</li> <li>Fixes several vulnerabilities in TFLite saved model format (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15209">CVE-2020-15209</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15210">CVE-2020-15210</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15211">CVE-2020-15211</a>)</li> <li>Fixes several vulnerabilities in TFLite implementation of segment sum (<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15212">CVE-2020-15212</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15213">CVE-2020-15213</a>, <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15214">CVE-2020-15214</a>)</li> <li>Updates <code>sqlite3</code> to <code>3.33.00</code> to handle <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15358">CVE-2020-15358</a>.</li> <li>Fixes deprecated usage of <code>collections</code> API</li> <li>Removes <code>scipy</code> dependency from <code>setup.py</code> since TensorFlow does not need it to install the pip package</li> </ul> <h1>Release 2.2.1</h1> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tensorflow/tensorflow/commit/fcc4b966f1265f466e82617020af93670141b009"><code>fcc4b96</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/tensorflow/tensorflow/issues/43446">#43446</a> from tensorflow-jenkins/version-numbers-2.3.1-16251</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/4cf223069a94c78b208e6c829d5f938a0fae7d07"><code>4cf2230</code></a> Update version numbers to 2.3.1</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/eee82247288e52e9b8a5c2badeb65f871b4da4c4"><code>eee8224</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/tensorflow/tensorflow/issues/43441">#43441</a> from tensorflow-jenkins/relnotes-2.3.1-24672</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/0d41b1dfc97500e1177cb718a0b14b04914df661"><code>0d41b1d</code></a> Update RELEASE.md</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/d99bd631ea9b67ffc39c22b35fbf7deca77ad1f7"><code>d99bd63</code></a> Insert release notes place-fill</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/d71d3ce2520587b752e5d27b2d4a4ba8720e4bd5"><code>d71d3ce</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/tensorflow/tensorflow/issues/43414">#43414</a> from tensorflow/mihaimaruseac-patch-1-1</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/9c91596d4d24bc07b6d36ae48581a2e7b2584edf"><code>9c91596</code></a> Fix missing import</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/f9f12f61867159120ce6eb08fdbd225d454232b5"><code>f9f12f6</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/tensorflow/tensorflow/issues/43391">#43391</a> from tensorflow/mihaimaruseac-patch-4</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/3ed271b0b05b4f1dfd5660944c54b5fe8cc3d8dc"><code>3ed271b</code></a> Solve leftover from merge conflict</li> <li><a href="https://github.com/tensorflow/tensorflow/commit/9cf3773b717dfd46b37be2ba8cad4f038a8ff6f7"><code>9cf3773</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/tensorflow/tensorflow/issues/43358">#43358</a> from tensorflow/mm-patch-r2.3</li> <li>Additional commits viewable in <a href="https://github.com/tensorflow/tensorflow/compare/v2.3.0...v2.3.1">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+2 -3

0 comment

1 changed file

dependabot[bot]

pr closed time in 3 days

PR opened larq/compute-engine

:arrow_up: tensorflow@2.3.1 dependencies

This PR upgrades LCE to TensorFlow 2.3.1 which fixed a few CVEs.

+4 -4

0 comment

2 changed files

pr created time in 3 days

create barnchlarq/compute-engine

branch : tf-2.3.1

created branch time in 3 days

Pull request review commenttensorflow/tensorflow

Slightly improve performance of TensorShape methods in the common case

 def merge_with(self, other):     other = as_shape(other)     if self._dims is None:       return other+    if other.dims is None:+      return self     else:       try:         self.assert_same_rank(other)-        new_dims = []-        for i, dim in enumerate(self._dims):-          new_dims.append(dim.merge_with(other[i]))+        new_dims = [dim.merge_with(other_dim)+                    for dim, other_dim in zip(self._dims, other.dims)]         return TensorShape(new_dims)       except ValueError:         raise ValueError("Shapes %s and %s are not compatible" % (self, other))    def __add__(self, other):-    if not isinstance(other, TensorShape):-      other = TensorShape(other)

I think this is save to change since the first step in self.concatenate is to convert other into a TensorShape using: https://github.com/tensorflow/tensorflow/blob/fd3c782277bee45ee496d6fb5ca440103e2101cf/tensorflow/python/framework/tensor_shape.py#L982 which handles exactly that case: https://github.com/tensorflow/tensorflow/blob/fd3c782277bee45ee496d6fb5ca440103e2101cf/tensorflow/python/framework/tensor_shape.py#L1230-L1235

lgeiger

comment created time in 3 days

PullRequestReviewEvent

pull request commenttensorflow/tensorflow

Slightly improve performance of TensorShape methods in the common case

@kkimdev Thanks for taking a look at the PR. I don't fully agree with the performance argument you raise (e.g. Python core uses this pattern quite often in key places as well), but you raise a very valid point about TypeError being too generic.

I removed the use of EAFP in 8d93940cbee2d32ddafac4ba2d277f90cb60a09b

lgeiger

comment created time in 3 days

push eventlgeiger/tensorflow

Rachel Lim

commit sha ec43e66b091a929045853840d1354b2067d57f41

Fix colocation attr on Switch in lower_if_op.cc PiperOrigin-RevId: 330802245 Change-Id: I70e3fcacd02824e879f2408905eb0a6ab63ec9d9

view details

Trent Lo

commit sha 67d2ee2c9eafceb7a4f18f8f2916ae51d8c1596d

[XLA/GPU] Address review comments.

view details

Andy Ly

commit sha 86066dfee4c7e90f366bf4722d3460faab573d12

Expose pass pipeline for TF -> HLO conversion/legalization via MLIR in tf-opt. std::vector for custom legalization passes is replaced with llvm::MutableArrayRef. PiperOrigin-RevId: 330804402 Change-Id: I69a10b5573e232ec82bad5262b8b669374cbef78

view details

Andy Ly

commit sha 5b7d76816fa5279f3f3aeac94f6063de78c7dfaf

Update registered TensorFlow dialect resource tensor array ops to have explicit memory side effects defined for resource handles. This is in preparation of migrating off of the defined table of resource ops in tf2xla. - TF_TensorArrayAlloc and TF_TensorArrayFree side effects are added. - TensorArrayScatterV3, TensorArraySplitV3 and TensorArrayWriteV3 are modeled as Read and Write instead of Write only. - TensorArrayV3 is modeled as Alloc instead of Write. - TensorArrayGradV3 is modeled as Read and Write (TensorArray is marked for no resize) for its operand and Alloc for its result, instead of Read only. PiperOrigin-RevId: 330804642 Change-Id: I7775ecaf10c3cdfcf3cdcc081215b84c15709faa

view details

Amit Patankar

commit sha 1bee182c9b0f89d5602bd83a29ec91c7c1ef2449

Create BUILD files and corresponding targets for `tensorflow/core/util/tensor_bundle/BUILD`. PiperOrigin-RevId: 330809796 Change-Id: I14b6dadabc9640232aa0a1fc343b2ab4fddc6f03

view details

TensorFlower Gardener

commit sha bc41b2ef58732c06999758f1717972c0f1c742f5

Merge pull request #43066 from HimaxWiseEyePlus:master PiperOrigin-RevId: 330810950 Change-Id: I0f3f06c9e50e885e9c111fb292550c4e0616a7e9

view details

Akshay Modi

commit sha 7d0114f5e10942bf8462e9c663cc75238c99ad5e

Actually disable the test PiperOrigin-RevId: 330811576 Change-Id: Id90b3b543fde24ab6ceeea552f0755114a6bbff6

view details

TensorFlower Gardener

commit sha bb1680fd998c28f239ae7016f193716e90bd0d5a

Merge pull request #42767 from nyagato-00:fix-tflite_camera_example-with-ios PiperOrigin-RevId: 330814670 Change-Id: Iff5f1e84201fd2ccfbfc12ad362e78ea8fa68192

view details

Trent Lo

commit sha 327aeb645e61e071897e04285c0226f1126b64d6

[XLA/GPU] Revise the shape comparison function in horizontal_input_fusion. So that we can distinguish [128,256] and [256,128].

view details

TensorFlower Gardener

commit sha 500f03c7e2ff403d27c3e76df9e725bc4345e946

Merge pull request #43077 from advaitjain:make-switch-error PiperOrigin-RevId: 330820562 Change-Id: I4343c50cc086f94a7c996f5363fcf91a98ae0ca0

view details

Trent Lo

commit sha d4ccaf4b17eb5c1d3c8be26c2b489b2df869d796

[XLA/GPU] minor comment polishing.

view details

Thomas Köppe

commit sha bb3f444fc9f4670e6d04b7cfe403fa253e44e04e

Capture status value by reference to avoid copies PiperOrigin-RevId: 330823151 Change-Id: Ibd0f8cde4ec7dad04fcade36f0337f612b324743

view details

Mark Daoust

commit sha ddbb2882699a389d3a93d39037a10a66c49ae732

Hide RaggedTensor.__init__ form the doc generator. This hides the signature `tf.RaggedTensor(values, row_partition, internal=False)` and the Args/Raises tables. PiperOrigin-RevId: 330824703 Change-Id: I9159a132c9695d17e2f0d9511b3f75f242e0030b

view details

Meghna Natraj

commit sha 53cffa7e37202543966d5859b67d2be61593cd71

Minor converter doc update PiperOrigin-RevId: 330826838 Change-Id: I6e3a15499e97727f321b4f2bfcc2b4ee49215cc5

view details

YoungSeok Yoon

commit sha 2c55111cb4907a6d3ce41c0f61c5f98087391963

Add API prefixes to CategoriesDelete, QaAnswersDelete This is to make sure that these two functions are correctly exposed in the static framework. PiperOrigin-RevId: 330830574 Change-Id: Ia5b14bf8f972835edc24fced9bd612445b3f2ead

view details

Thai Nguyen

commit sha bafdc186d44f7fe8dcb61b9124740544927af8e2

Make flex build rules works in other repos PiperOrigin-RevId: 330834535 Change-Id: Ifd2504e9878ad9a956ab9745be019bc8d3bd6192

view details

A. Unique TensorFlower

commit sha 0f75923f6c2eda48e780f74de62bcf09d2f3c8dc

Add internal project for access to enable_mlir_bridge_pass visibility. PiperOrigin-RevId: 330836459 Change-Id: I14e4d164f2ab416e66dcdf0cda0bee83343dcc98

view details

TensorFlower Gardener

commit sha f56f3a73913f7e5e70df9954219a330160dc7228

Merge pull request #42539 from DarrenZhang01:master PiperOrigin-RevId: 330840468 Change-Id: Iafdbf4bd8bc74f1487daf05e15ce15f5c406d6aa

view details

Jiri Simsa

commit sha eb461280fefecaff230c4105dd34b2f973b24980

[tf.data] Co-locate placement of iterator ops with the final dataset transformation. PiperOrigin-RevId: 330841511 Change-Id: I3486226f7b50015396317cf8175fe185fd2ac7fd

view details

Skye Wanderman-Milne

commit sha d59bdf549306f2746bf45c06161aeba6151b092d

Add TpuExecutableInterface::fingerprint() virtual method. This also makes the TpuExecutable in tpu_on_demand_compiler.cc subclass TpuExecutableInterface, and implements the fingerprint() method for future use by JAX. I didn't implement it for the TpuExecutable class in tpu_executable.h, since TF doesn't need this functionality (yet?), but it shouldn't be too hard. PiperOrigin-RevId: 330842613 Change-Id: I592068c7b1110e0ae32b241e3e6c5a7b121f3e0f

view details

push time in 3 days

push eventlarq/docs

dependabot[bot]

commit sha 2a7d1f3d70c9899409ef4735fa56782a9dd542bf

Bump mkdocs-material from 5.5.13 to 5.5.14 (#209) Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 5.5.13 to 5.5.14. - [Release notes](https://github.com/squidfunk/mkdocs-material/releases) - [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md) - [Commits](https://github.com/squidfunk/mkdocs-material/compare/5.5.13...5.5.14) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

push time in 4 days

delete branch larq/docs

delete branch : dependabot/pip/mkdocs-material-5.5.14

delete time in 4 days

PR merged larq/docs

Bump mkdocs-material from 5.5.13 to 5.5.14 dependencies

Bumps mkdocs-material from 5.5.13 to 5.5.14. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/releases">mkdocs-material's releases</a>.</em></p> <blockquote> <h2>mkdocs-material-5.5.14</h2> <ul> <li>Improved spacing around image captions</li> <li>Fixed <a href="https://github-redirect.dependabot.com/squidfunk/mkdocs-material/issues/1939">#1939</a>: Long tables cause header overlap in print view</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md">mkdocs-material's changelog</a>.</em></p> <blockquote> <h3>5.5.14 <!-- raw HTML omitted -->_ September 23, 2020<!-- raw HTML omitted --></h3> <ul> <li>Improved spacing around image captions</li> <li>Fixed <a href="https://github-redirect.dependabot.com/squidfunk/mkdocs-material/issues/1939">#1939</a>: Long tables cause header overlap in print view</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/c4be8b34ab1c259001b49d533cfef4a2353c363e"><code>c4be8b3</code></a> Prepare 5.5.14 release</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/b9ce0862ecf448637f5167df81b557112d315b37"><code>b9ce086</code></a> Fixed table headers not wrapping correctly</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/a031f66f8df353444f0ce0a7252c6d26a51534fa"><code>a031f66</code></a> Formatting</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/e1d5f3f3baa389becca1101cb8df76da4d7beecc"><code>e1d5f3f</code></a> Merge branch 'master' of github.com:squidfunk/mkdocs-material</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/01f1aed90020ad3cd99358b938a684c604edb6e8"><code>01f1aed</code></a> Added more bottom spacing for image captions</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/9db3bd92d8112987351f9c3120dcc78c0915381c"><code>9db3bd9</code></a> Bump copy-webpack-plugin from 6.1.0 to 6.1.1</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/77e2b5975412d040287a1d6f45827280fd2b9f2f"><code>77e2b59</code></a> Bump webpack from 4.44.1 to 4.44.2</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/766644e424ed5556bf4d7ad96f31f5b46901412f"><code>766644e</code></a> Bump sass from 1.26.10 to 1.26.11</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/501b1ef7527691f79a69714c8f1301c0a5e7e87b"><code>501b1ef</code></a> Bump ts-loader from 8.0.3 to 8.0.4</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/4de7fed2a8c43811d412d42b3e0f155bb1790358"><code>4de7fed</code></a> Bump @types/node from 14.10.1 to 14.11.1</li> <li>Additional commits viewable in <a href="https://github.com/squidfunk/mkdocs-material/compare/5.5.13...5.5.14">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+1 -1

0 comment

1 changed file

dependabot[bot]

pr closed time in 4 days

delete branch lgeiger/tensorflow

delete branch : nest-lazy-iteration

delete time in 4 days

PR opened tensorflow/tensorflow

Add transform to fuse activations into TFL pooling ops

TFLite average and max pool operations support fused activation functions similar to the convolution ops. This PR adds a MLIR transform to the TFLite converter to fuse activations functions into preceding pooling operations.

+38 -2

0 comment

2 changed files

pr created time in 4 days

create barnchlgeiger/tensorflow

branch : tflite-fuse-pool-act

created branch time in 4 days

Pull request review commentlarq/compute-engine

Add optimised 'Indirect BGEMM' binary convolution kernels.

+#ifndef COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_+#define COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_++#include <cstdint>++#include "larq_compute_engine/core/types.h"+#include "larq_compute_engine/tflite/kernels/bconv2d_params.h"+#include "tensorflow/lite/c/builtin_op_data.h"+#include "tensorflow/lite/kernels/internal/types.h"++using namespace tflite;++namespace compute_engine {+namespace core {+namespace indirect_bgemm {++// This function is (heavily) adapted from this XNNPack function:+// https://github.com/google/XNNPACK/blob/80a8ac59849bfdae8d2e1409f5642baa502c0b9e/src/indirection.c#L18-L76+void FillIndirectionBuffer(const int block_size_pixels,+                           const TfLiteBConv2DParams* conv_params,+                           const RuntimeShape& bitpacked_input_shape,+                           const RuntimeShape& output_shape,+                           const TBitpacked* input_ptr,+                           std::vector<const TBitpacked*>& indirection_buffer,+                           std::vector<TBitpacked>& zero_buffer) {+  using std::int32_t;++  const int32_t kernel_height = conv_params->filter_height;+  const int32_t kernel_width = conv_params->filter_width;+  const int32_t stride_height = conv_params->stride_height;+  const int32_t stride_width = conv_params->stride_width;+  const int32_t dilation_height = conv_params->dilation_height_factor;+  const int32_t dilation_width = conv_params->dilation_width_factor;+  const int32_t input_padding_top = conv_params->padding_values.height;+  const int32_t input_padding_left = conv_params->padding_values.width;++  const int32_t input_height = bitpacked_input_shape.Dims(1);+  const int32_t input_width = bitpacked_input_shape.Dims(2);+  const int32_t bitpacked_input_channels = bitpacked_input_shape.Dims(3);++  const int32_t output_height = output_shape.Dims(1);+  const int32_t output_width = output_shape.Dims(2);++  const int32_t output_size = output_height * output_width;+  const int32_t kernel_size = kernel_height * kernel_width;+  const int32_t tiled_output_size =+      block_size_pixels *+      ((output_size + block_size_pixels - 1) / block_size_pixels);++  indirection_buffer.resize(tiled_output_size * kernel_size);+  zero_buffer.assign(kernel_size * bitpacked_input_channels, 0);++  for (int32_t output_tile_start = 0; output_tile_start < tiled_output_size;+       output_tile_start += block_size_pixels) {+    for (int32_t output_tile_offset = 0; output_tile_offset < block_size_pixels;+         output_tile_offset++) {+      const int32_t output_index =+          std::min(output_tile_start + output_tile_offset, output_size - 1);+      const int32_t output_x = output_index % output_width;+      const int32_t output_y = output_index / output_width;+      for (int32_t kernel_y = 0; kernel_y < kernel_height; kernel_y++) {+        const int32_t input_y = output_y * stride_height ++                                kernel_y * dilation_height - input_padding_top;+        if (0 <= input_y && input_y < input_height) {

I got this from https://github.com/python/cpython/pull/9784 which links to section 14.2 "Bounds Checking" in https://www.agner.org/optimize/optimizing_cpp.pdf for an in-depth explanation.

AdamHillier

comment created time in 4 days

PullRequestReviewEvent

Pull request review commentlarq/compute-engine

Add optimised 'Indirect BGEMM' binary convolution kernels.

+#ifndef COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_+#define COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_++#include <cstdint>++#include "larq_compute_engine/core/types.h"+#include "larq_compute_engine/tflite/kernels/bconv2d_params.h"+#include "tensorflow/lite/c/builtin_op_data.h"+#include "tensorflow/lite/kernels/internal/types.h"++using namespace tflite;++namespace compute_engine {+namespace core {+namespace indirect_bgemm {++// This function is (heavily) adapted from this XNNPack function:+// https://github.com/google/XNNPACK/blob/80a8ac59849bfdae8d2e1409f5642baa502c0b9e/src/indirection.c#L18-L76+void FillIndirectionBuffer(const int block_size_pixels,+                           const TfLiteBConv2DParams* conv_params,+                           const RuntimeShape& bitpacked_input_shape,+                           const RuntimeShape& output_shape,+                           const TBitpacked* input_ptr,+                           std::vector<const TBitpacked*>& indirection_buffer,+                           std::vector<TBitpacked>& zero_buffer) {+  using std::int32_t;++  const int32_t kernel_height = conv_params->filter_height;+  const int32_t kernel_width = conv_params->filter_width;+  const int32_t stride_height = conv_params->stride_height;+  const int32_t stride_width = conv_params->stride_width;+  const int32_t dilation_height = conv_params->dilation_height_factor;+  const int32_t dilation_width = conv_params->dilation_width_factor;+  const int32_t input_padding_top = conv_params->padding_values.height;+  const int32_t input_padding_left = conv_params->padding_values.width;++  const int32_t input_height = bitpacked_input_shape.Dims(1);+  const int32_t input_width = bitpacked_input_shape.Dims(2);+  const int32_t bitpacked_input_channels = bitpacked_input_shape.Dims(3);++  const int32_t output_height = output_shape.Dims(1);+  const int32_t output_width = output_shape.Dims(2);++  const int32_t output_size = output_height * output_width;+  const int32_t kernel_size = kernel_height * kernel_width;+  const int32_t tiled_output_size =+      block_size_pixels *+      ((output_size + block_size_pixels - 1) / block_size_pixels);++  indirection_buffer.resize(tiled_output_size * kernel_size);+  zero_buffer.assign(kernel_size * bitpacked_input_channels, 0);++  for (int32_t output_tile_start = 0; output_tile_start < tiled_output_size;+       output_tile_start += block_size_pixels) {+    for (int32_t output_tile_offset = 0; output_tile_offset < block_size_pixels;+         output_tile_offset++) {+      const int32_t output_index =+          std::min(output_tile_start + output_tile_offset, output_size - 1);+      const int32_t output_x = output_index % output_width;+      const int32_t output_y = output_index / output_width;+      for (int32_t kernel_y = 0; kernel_y < kernel_height; kernel_y++) {+        const int32_t input_y = output_y * stride_height ++                                kernel_y * dilation_height - input_padding_top;+        if (0 <= input_y && input_y < input_height) {+          for (int32_t kernel_x = 0; kernel_x < kernel_width; kernel_x++) {+            const int32_t input_x = output_x * stride_width ++                                    kernel_x * dilation_width -+                                    input_padding_left;+            const int32_t kernel_index = kernel_y * kernel_width + kernel_x;+            const int32_t index = output_tile_start * kernel_size ++                                  kernel_index * block_size_pixels ++                                  output_tile_offset;+            if (0 <= input_x && input_x < input_width) {
            // (0 <= input_x && input_x < input_width)
            if ((unsigned)input_x < (unsigned)input_width) {
AdamHillier

comment created time in 5 days

Pull request review commentlarq/compute-engine

Add optimised 'Indirect BGEMM' binary convolution kernels.

+#ifndef COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_+#define COMPUTE_ENGINE_INDIRECT_BGEMM_PREPARE_H_++#include <cstdint>++#include "larq_compute_engine/core/types.h"+#include "larq_compute_engine/tflite/kernels/bconv2d_params.h"+#include "tensorflow/lite/c/builtin_op_data.h"+#include "tensorflow/lite/kernels/internal/types.h"++using namespace tflite;++namespace compute_engine {+namespace core {+namespace indirect_bgemm {++// This function is (heavily) adapted from this XNNPack function:+// https://github.com/google/XNNPACK/blob/80a8ac59849bfdae8d2e1409f5642baa502c0b9e/src/indirection.c#L18-L76+void FillIndirectionBuffer(const int block_size_pixels,+                           const TfLiteBConv2DParams* conv_params,+                           const RuntimeShape& bitpacked_input_shape,+                           const RuntimeShape& output_shape,+                           const TBitpacked* input_ptr,+                           std::vector<const TBitpacked*>& indirection_buffer,+                           std::vector<TBitpacked>& zero_buffer) {+  using std::int32_t;++  const int32_t kernel_height = conv_params->filter_height;+  const int32_t kernel_width = conv_params->filter_width;+  const int32_t stride_height = conv_params->stride_height;+  const int32_t stride_width = conv_params->stride_width;+  const int32_t dilation_height = conv_params->dilation_height_factor;+  const int32_t dilation_width = conv_params->dilation_width_factor;+  const int32_t input_padding_top = conv_params->padding_values.height;+  const int32_t input_padding_left = conv_params->padding_values.width;++  const int32_t input_height = bitpacked_input_shape.Dims(1);+  const int32_t input_width = bitpacked_input_shape.Dims(2);+  const int32_t bitpacked_input_channels = bitpacked_input_shape.Dims(3);++  const int32_t output_height = output_shape.Dims(1);+  const int32_t output_width = output_shape.Dims(2);++  const int32_t output_size = output_height * output_width;+  const int32_t kernel_size = kernel_height * kernel_width;+  const int32_t tiled_output_size =+      block_size_pixels *+      ((output_size + block_size_pixels - 1) / block_size_pixels);++  indirection_buffer.resize(tiled_output_size * kernel_size);+  zero_buffer.assign(kernel_size * bitpacked_input_channels, 0);++  for (int32_t output_tile_start = 0; output_tile_start < tiled_output_size;+       output_tile_start += block_size_pixels) {+    for (int32_t output_tile_offset = 0; output_tile_offset < block_size_pixels;+         output_tile_offset++) {+      const int32_t output_index =+          std::min(output_tile_start + output_tile_offset, output_size - 1);+      const int32_t output_x = output_index % output_width;+      const int32_t output_y = output_index / output_width;+      for (int32_t kernel_y = 0; kernel_y < kernel_height; kernel_y++) {+        const int32_t input_y = output_y * stride_height ++                                kernel_y * dilation_height - input_padding_top;+        if (0 <= input_y && input_y < input_height) {

Not sure how performance critical this part is, so feel free to ignore this comment. But this should remove one comparison in the generated code:

        // (0 <= input_y && input_y < input_height)
        if ((unsigned)input_y < (unsigned)input_height) {
AdamHillier

comment created time in 5 days

PullRequestReviewEvent
PullRequestReviewEvent

push eventlarq/larq

Lukas Geiger

commit sha d8ba72f9bb9f776bf151ac75de582a231662daed

Add multi output layer to improve test coverage

view details

push time in 5 days

push eventlarq/larq

Lukas Geiger

commit sha 4e4b8232f53bb06142767c1d014d50943010996f

Add model name to fix snapshot test for tf 2.3

view details

push time in 5 days

push eventlarq/larq

Lukas Geiger

commit sha 262c7ae3fc462eeb1eb3345bb9ba5168414a9c3e

Make model summary test lower case to fix TF version compatibility

view details

push time in 5 days

push eventlarq/larq

Lukas Geiger

commit sha ff4c15cc8b12ae5639ccf50464e1bf7e3285d80c

Fix code formatting

view details

push time in 5 days

PR opened larq/larq

Improve model summary for TF layers and multi output layers bug

This PR improves the model summary output for TF layers and multi-output layers. The rendering changes can be viewed in 60b14e1a07194d79f59df89fb179f1c8c49cab36

+47 -1

0 comment

3 changed files

pr created time in 5 days

push eventlarq/larq

Lukas Geiger

commit sha 60b14e1a07194d79f59df89fb179f1c8c49cab36

Improve model summary for TF layers and multi output layers

view details

push time in 5 days

create barnchlarq/larq

branch : tf-layer-summary

created branch time in 5 days

issue commentlarq/larq

Larq loaded model lost all accuracy, metrics are not valid anymore

@ibarrond I just checked and this seems to be a bug in TensorFlow itself. Your code example works as expected in TensorFlow 2.2 but breaks in 2.3 even without using any larq layers in the network.

Fortunately this seems to be fixed in the latest TensorFlow nightly, so for the time beeing I recommend to downgrade to TensorFlow 2.2 or use tf-nightly until TensorFlow 2.4 will be released.

ibarrond

comment created time in 5 days

PullRequestReviewEvent

Pull request review commentlarq/compute-engine

Simplify the bconv2d padding functor.

+/*+ * Functions to apply a correction to the output tensor when we want 'same zero'+ * padding.+ *+ * Bitpacked values naturally represent only +1 (with bit 0) or -1 (with bit 1).+ * When we compute a convolution that requires "SAME" padding we pad with the+ * value zero, meaning bitpacked bits 0, representing the value +1; thus we+ * compute 'same one' padding by default. A correction is needed if we want+ * 'same zero' padding instead -- we have to add or subtract a value to elements+ * at the edge of the output tensor.+ *+ * The correction for a given output element depends on the values of the+ * filters and the position in the output tensor. However, as the filter values+ * are static we can cache some of the computation; this is done in+ * `CacheCorrectionValues`.+ */++#ifndef COMPUTE_ENGINE_CORE_BCONV2D_PADDING_FUNCTOR_H_+#define COMPUTE_ENGINE_CORE_BCONV2D_PADDING_FUNCTOR_H_
#ifndef COMPUTE_ENGINE_CORE_BCONV2D_ZERO_PADDING_CORRECTION_H_
#define COMPUTE_ENGINE_CORE_BCONV2D_ZERO_PADDING_CORRECTION_H_
AdamHillier

comment created time in 5 days

Pull request review commentlarq/compute-engine

Simplify the bconv2d padding functor.

+/*+ * Functions to apply a correction to the output tensor when we want 'same zero'+ * padding.+ *+ * Bitpacked values naturally represent only +1 (with bit 0) or -1 (with bit 1).+ * When we compute a convolution that requires "SAME" padding we pad with the+ * value zero, meaning bitpacked bits 0, representing the value +1; thus we+ * compute 'same one' padding by default. A correction is needed if we want+ * 'same zero' padding instead -- we have to add or subtract a value to elements+ * at the edge of the output tensor.+ *+ * The correction for a given output element depends on the values of the+ * filters and the position in the output tensor. However, as the filter values+ * are static we can cache some of the computation; this is done in+ * `CacheCorrectionValues`.+ */++#ifndef COMPUTE_ENGINE_CORE_BCONV2D_PADDING_FUNCTOR_H_+#define COMPUTE_ENGINE_CORE_BCONV2D_PADDING_FUNCTOR_H_++#include "larq_compute_engine/core/bitpacking/bitpack.h"+#include "larq_compute_engine/core/types.h"+#include "tensorflow/lite/kernels/op_macros.h"++namespace compute_engine {+namespace core {+namespace bconv2d {+namespace zero_padding_correction {++std::size_t GetCacheSize(const int filter_height, const int filter_width,+                         const int filter_count, const int dilation_rows,+                         const int dilation_cols) {+  const int effective_filter_width = (filter_width - 1) * dilation_cols + 1;+  const int effective_filter_height = (filter_height - 1) * dilation_rows + 1;++  return 4 * effective_filter_height * effective_filter_width * filter_count;+}++void CacheCorrectionValues(const TBitpacked* filter_data,+                           const int filter_height, const int filter_width,+                           const int filter_count, const int input_channels,+                           const int dilation_rows, const int dilation_cols,+                           const float* post_activation_multiplier_data,+                           float* output_cache) {+  const int effective_filter_width = (filter_width - 1) * dilation_cols + 1;+  const int effective_filter_height = (filter_height - 1) * dilation_rows + 1;++  // Given an (out_x, out_y) for which you want to compute the correction:+  //+  // Define:+  // overflow_left  = filter_left_offset - out_x * stride_cols+  // overflow_top   = filter_top_offset - out_y * stride_rows+  // overflow_right = -overflow_left + effective_filter_width - input_width+  // overflow_bot   = -overflow_top + effective_filter_height - input_height+  //+  // These numbers say (for a particular out_x,out_y) how many pixels the+  // kernel sticks out at each side.+  //+  // The correction that we need to apply depends on the overflow_ values.+  //+  // The correction is a sum over values in the kernel.+  // Now we describe which kernel pixels contribute to this correction.+  //+  // Define:+  // effective_filter_x = dilation_rows * filter_x+  // effective_filter_y = dilation_cols * filter_y+  //+  // So fix a (overflow_left,overflow_top,overflow_right,overflow_bot) tuple+  // and loop over filter_x, filter_y.+  // If one of the 4 following are satisfied then this filter value is counted+  // for this tuple as correction.+  //+  // (T)                           effective_filter_y <  overflow_top+  // (B) effective_filter_height - effective_filter_y <= overflow_bot+  // (L)                           effective_filter_x <  overflow_left+  // (R)  effective_filter_width - effective_filter_x <= overflow_right+  //+  // For example when (L) is satisfied then this particular pixel in the+  // filter sticks out at the left.+  //+  // So we sum this over all kernel pixels that stick out somewhere+  // to obtain our correction value.+  //+  // So we could save this value for every tuple.+  // However (T) and (B) cannot be both true at the same time,+  // and neither can (L) and (R) because we will assume that the (effective)+  // filter size is always smaller than the image.+  //+  // We have the following cases:+  //+  // 000011+  // 000011+  // 22..11+  // 22..11+  // 223333+  // 223333+  //                       overflow_+  //           | left    right   top     bot+  // ----------|-----------------------------+  // Case 0    | *       <= 0    >  0    <  0+  // Case 1    | <  0    >  0    *       <= 0+  // Case 2    | >  0    <  0    <= 0    *+  // Case 3    | <= 0    *       <  0    >  0+  //+  // For pixels in the top middle, we have overflow_left < 0,+  // but they all share the same correction, namely the+  // correction for overflow_left = 0.+  // The same happens for every * in the table.+  //+  // Therefore, if there is a * then we should clamp it to 0.+  //++  for (int y = 0; y < effective_filter_height; ++y) {+    for (int x = 0; x < effective_filter_width; ++x) {+      for (int out_c = 0; out_c < filter_count; ++out_c) {+        float corrections[4] = {0, 0, 0, 0};++        for (int filter_y = 0; filter_y < filter_height; ++filter_y) {+          for (int filter_x = 0; filter_x < filter_width; ++filter_x) {+            // Sum over input channels+            int popcount = 0;+            int packed_channels = bitpacking::GetBitpackedSize(input_channels);+            for (int in_c = 0; in_c < packed_channels; ++in_c) {+              int filter_idx;+              // filter_data has shape+              // [out_channels, height, width, packed_in_channels]+              filter_idx =+                  out_c * (filter_height * filter_width * packed_channels) ++                  filter_y * (filter_width * packed_channels) ++                  filter_x * packed_channels + in_c;++              // filter = +1.0 --> bit = 0 ; correction += +1.0+              // filter = -1.0 --> bit = 1 ; correction += -1.0+              popcount += xor_popcount(filter_data[filter_idx], 0);+            }+            float cur_correction = input_channels - 2 * popcount;++            const int effective_filter_x = dilation_cols * filter_x;+            const int effective_filter_y = dilation_rows * filter_y;+            // Case 0: overflow_left = x; overflow_top = y+            if (effective_filter_y < y || effective_filter_x < x) {+              corrections[0] += cur_correction;+            }+            // Case 1: overflow_right = x; overflow_top = y+            if (effective_filter_y < y ||+                (effective_filter_width - effective_filter_x) <= x) {+              corrections[1] += cur_correction;+            }+            // Case 2: overflow_left = x; overflow_bot = y+            if ((effective_filter_height - effective_filter_y) <= y ||+                effective_filter_x < x) {+              corrections[2] += cur_correction;+            }+            // Case 3: overflow_right = x; overflow_bot = y+            if ((effective_filter_height - effective_filter_y) <= y ||+                (effective_filter_width - effective_filter_x) <= x) {+              corrections[3] += cur_correction;+            }+          }+        }++        // Output cache size:+        // 4 * effective_height * effective_width * filter_count+        for (int direction = 0; direction < 4; ++direction) {+          int output_idx = direction * (effective_filter_height *+                                        effective_filter_width * filter_count) ++                           y * (effective_filter_width * filter_count) ++                           x * filter_count + out_c;+          const float mul = -1.0f * post_activation_multiplier_data[out_c];+          output_cache[output_idx] = mul * corrections[direction];+        }+      }+    }+  }+  return;+}++void ApplyCorrection(const int input_batches, const int input_height,+                     const int input_width, const int input_channels,+                     const int filter_height, const int filter_width,+                     const int filter_count, const int stride_rows,+                     const int stride_cols, const int dilation_rows,+                     const int dilation_cols, float* output_data,+                     const int output_height, const int output_width,+                     const float* padding_cache) {+  const int effective_filter_width = (filter_width - 1) * dilation_cols + 1;+  const int effective_filter_height = (filter_height - 1) * dilation_rows + 1;++  const int filter_left_offset = ((output_width - 1) * stride_cols ++                                  effective_filter_width - input_width) /+                                 2;+  const int filter_top_offset = ((output_height - 1) * stride_rows ++                                 effective_filter_height - input_height) /+                                2;++  TFLITE_DCHECK(padding_cache != nullptr);++  // We assume that the input numbers are correct because they+  // are already checked by the bconv functor++  for (int batch = 0; batch < input_batches; ++batch) {+    for (int out_y = 0; out_y < output_height; ++out_y) {+      // See the `create_cache` function for an explanation of these+      // parameters:+      // How many pixels does the kernel stick out at the+      // left, top, right, bottom+      const int overflow_top = filter_top_offset - out_y * stride_rows;+      const int overflow_bot =+          -overflow_top - input_height + effective_filter_height;+      for (int out_x = 0; out_x < output_width; ++out_x) {+        const int overflow_left = filter_left_offset - out_x * stride_cols;+        const int overflow_right =+            -overflow_left - input_width + effective_filter_width;++        if (overflow_left <= 0 && overflow_right <= 0 && overflow_top <= 0 &&+            overflow_bot <= 0) {+          // clang-format off+          // The kernel does not stick out.+          // This output pixel corresponds to a completely 'valid' region+          // of the input and there is no padding: we are entering the inside+          // of the image.+          // We now *skip* from the left to the right edge of the image.+          // We want to find `out_x` such that `overflow_right >= 1`+          // We have+          // overflow_right = out_x * stride - offset + effective_filter_width - width+          // So we want+          // out_x * stride >= width + offset - effective_filter_width + 1+          // So we want `out_x` to be the ceiling of+          // (input_with + offset - effective_filter_width + 1) / stride+          // clang-format on+          int new_out_x = (input_width + filter_left_offset -+                           effective_filter_width + stride_cols - 1) /+                              stride_cols -+                          1;+          // The extra -1 is because the for-loop will increment it again+          if (new_out_x > out_x) out_x = new_out_x;+          continue;+        }+        // See the `create_cache` function for an explanation of these cases+        int case_num;+        int cache_X;+        int cache_Y;+        if (overflow_right <= 0 && overflow_top > 0 && overflow_bot < 0) {+          case_num = 0;+          cache_X = (overflow_left >= 0 ? overflow_left : 0);+          cache_Y = overflow_top;+        } else if (overflow_left < 0 && overflow_right > 0 &&+                   overflow_bot <= 0) {+          case_num = 1;+          cache_X = overflow_right;+          cache_Y = (overflow_top >= 0 ? overflow_top : 0);+        } else if (overflow_left > 0 && overflow_right < 0 &&+                   overflow_top <= 0) {+          case_num = 2;+          cache_X = overflow_left;+          cache_Y = (overflow_bot >= 0 ? overflow_bot : 0);+        } else if (overflow_left <= 0 && overflow_top < 0 && overflow_bot > 0) {+          case_num = 3;+          cache_X = (overflow_right >= 0 ? overflow_right : 0);+          cache_Y = overflow_bot;+        } else {+          // This cannot happen.+          continue;+        }++        // Cache is out_channels last+        // Output is also out_channels last+        // So we can have a very effective loop here++        // Cache shape is [case, filter_height, filter_width,+        // out_channels]+        int cache_idx = case_num * (effective_filter_height *+                                    effective_filter_width * filter_count) ++                        cache_Y * (effective_filter_width * filter_count) ++                        cache_X * filter_count;+        // Output shape is [batch, height, width, out_channels]+        const int out_idx =+            batch * output_height * output_width * filter_count ++            out_y * output_width * filter_count + out_x * filter_count;++        const float* cache_ptr = &padding_cache[cache_idx];+        float* output_ptr = &output_data[out_idx];++        // Apply pre-computed correction+        // im2col padded the input with 0s which effectively became +1s.+        // The convolution therefore computed+        // out = correct_part + (+1) * (outside_filter_values)+        // So to correct for this we add (-1) * (outside_filter_values)+        for (int out_c = 0; out_c < filter_count; ++out_c) {+          *output_ptr++ += *cache_ptr++;+        }++      }  // out_x+    }    // out_y+  }      // batch+  return;+}++}  // namespace zero_padding_correction+}  // namespace bconv2d+}  // namespace core+}  // namespace compute_engine++#endif  // COMPUTE_ENGINE_CORE_BCONV2D_PADDING_FUNCTOR_H_
#endif  // COMPUTE_ENGINE_CORE_BCONV2D_ZERO_PADDING_CORRECTION_H_
AdamHillier

comment created time in 5 days

PullRequestReviewEvent
PullRequestReviewEvent

push eventlarq/docs

dependabot[bot]

commit sha 3d82dfb57248d58421caf41163afc1e7bdb1aa15

Bump larq-compute-engine from 0.4.2 to 0.4.3 (#208) * Bump larq-compute-engine from 0.4.2 to 0.4.3 Bumps [larq-compute-engine](https://github.com/larq/compute-engine) from 0.4.2 to 0.4.3. - [Release notes](https://github.com/larq/compute-engine/releases) - [Commits](https://github.com/larq/compute-engine/compare/v0.4.2...v0.4.3) Signed-off-by: dependabot[bot] <support@github.com> * Update version numbers * Add API docs for interpreter * Update description LCE Python API docs Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Lukas Geiger <lukas.geiger94@gmail.com>

view details

push time in 5 days

delete branch larq/docs

delete branch : dependabot/pip/larq-compute-engine-0.4.3

delete time in 5 days

PR merged larq/docs

Bump larq-compute-engine from 0.4.2 to 0.4.3 dependencies

Bumps larq-compute-engine from 0.4.2 to 0.4.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/larq/compute-engine/releases">larq-compute-engine's releases</a>.</em></p> <blockquote> <h2>v0.4.3</h2> <h2>:tada: Features</h2> <ul> <li>Add support for multi threaded interpreter (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/512">#512</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Add support for iterators in Interpreter.predict (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/511">#511</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Add Python wrapper for LCE interpreter (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/507">#507</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:construction_worker_man: Internal Improvements</h2> <ul> <li>Remove redundant code paths: reference BGemm, BGemm functor. (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/510">#510</a>) <a href="https://github.com/AdamHillier">@AdamHillier</a></li> <li>Make Interpreter::get_shapes and get_types more generic (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/509">#509</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> <li>Add padding to temporary arrays to ensure we don't read beyond bounds. (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/505">#505</a>) <a href="https://github.com/AdamHillier">@AdamHillier</a></li> <li>Simplify MAKE_ZERO macro (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/503">#503</a>) <a href="https://github.com/lgeiger">@lgeiger</a></li> </ul> <h2>:arrow_up: Dependencies</h2> <ul> <li>Bump DoozyX/clang-format-lint-action from v0.9 to v0.10 (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/504">#504</a>) <a href="https://github.com/dependabot">@dependabot</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/larq/compute-engine/commit/438f4ae154b335f5159f7bda186bb53700bd4c28"><code>438f4ae</code></a> :arrow_up: 0.4.3 (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/513">#513</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/d07a1eed8e8c1a9ea3960e9a753e9d3fa5262b89"><code>d07a1ee</code></a> Add support for multi threaded interpreter (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/512">#512</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/ca5f8dda0fe42fc95c0952c44428325fdf711355"><code>ca5f8dd</code></a> Add support for iterators in Interpreter.predict (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/511">#511</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/35e0670b961c95be2e7406ba3cc53a5d049ab047"><code>35e0670</code></a> Remove redundant code paths: reference BGemm, BGemm functor. (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/510">#510</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/725493049b67f7bab5cc9e9917f1d9637a97ff6d"><code>7254930</code></a> Make Interpreter::get_shapes and get_types more generic (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/509">#509</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/d72b679ad2380d30116b22798f85a7ecdd08acef"><code>d72b679</code></a> Add Python wrapper for LCE interpreter (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/507">#507</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/6bbc0610c7668a5ddb8f6bf5061770e15e72fa6e"><code>6bbc061</code></a> Add padding to temporary arrays to ensure we don't read beyond bounds. (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/505">#505</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/d54dd3d7a88472a9322fc16ed3864526fc4c15c1"><code>d54dd3d</code></a> Bump DoozyX/clang-format-lint-action from v0.9 to v0.10 (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/504">#504</a>)</li> <li><a href="https://github.com/larq/compute-engine/commit/750566994fbf5fdb3b2fd1ea66744043219993c6"><code>7505669</code></a> Simplify MAKE_ZERO macro (<a href="https://github-redirect.dependabot.com/larq/compute-engine/issues/503">#503</a>)</li> <li>See full diff in <a href="https://github.com/larq/compute-engine/compare/v0.4.2...v0.4.3">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

+19 -14

0 comment

8 changed files

dependabot[bot]

pr closed time in 5 days

PR opened tensorflow/tensorflow

Do not create unnecessary intermediate lists in tf.nest

tf.nest creates intermediate lists for iterating over elements. This PR changes the list comprehensions to generator expresions in places where they are only used to iterate over once inside the same function. This makes the iteration lazy and removes the need for creation of intermediate lists.

+15 -15

0 comment

2 changed files

pr created time in 6 days

create barnchlgeiger/tensorflow

branch : abc-iterators

created branch time in 6 days

create barnchlgeiger/tensorflow

branch : nest-lazy-iteration

created branch time in 6 days

issue commenttensorflow/tensorflow

Unable to build Tensorflow 2.3 on OSX with LLVM

I am running into the same problem with XCode 12.

@ravikyram it seems like the problem has been introduced by 57f0a5e0b67720f0bc94e4decefc09fbff2f2416. Reverting the commit fixes the build issue for me.

ianlokh

comment created time in 6 days

issue commenttensorflow/tensorflow

The New Converter of Tensorflow 2.2.0 generate incorrect model output

This is still a major issue and a fix is available at #41790, it would be great if this could still make it into the 2.4 release.

ghost

comment created time in 6 days

pull request commenttensorflow/tensorflow

Fix invalid fusion of Matmul and Mul

Any updates on this? The main changes of this PR have already been reviewed in #40013 and discussed in #39572 which is a major issue for people using fully connected layers with batch normalisation in TFLite.

lgeiger

comment created time in 6 days

pull request commenttensorflow/tensorflow

Fix deprecated usage of collections ABC

@tanzhenyu @gbaned Do you mind taking a look at this?

lgeiger

comment created time in 6 days

more