Coder Social home page Coder Social logo

deep-tda's Introduction

The src folder contains a file mkProjections.py which shows how to use the tensornets library to extract the projected data points at each layer. Right now, it tries to store all the data on disk (in the projections folder), but this is too much data.

So, you need to:

  • Modify the code so that it writes only a single layer to disk
  • Write another python script that takes that layer as input and outputs a bar code/persistence diagram
  • Write a shell script that automates this process by calling mkProjections.py, then calling the other script, then deletes the intermediate results, then repeats the loop

There's about 10T free in the /data partition right now, but try to keep your usage down in the 1T range as things might start breaking if the disk gets full.

deep-tda's People

Contributors

mathemonads avatar mikeizbicki avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

deep-tda's Issues

How does ReLU affect metric entropy?

Related to: #3

How do you relate the decrease in point sizes to holes? We are inclined to look into doubling dimension and covering number as a way to explain distance and holes.

Prove/disprove a lemma

I've created a folder called paper with a latex file in it. In the latex file is a lemma about how the relu function transforms the shape of data. In our meeting, we were talking about how the relu function can change the shape of holes in the dataset, and the lemma is an easier version of that problem considering how the relu function changes the distance between points.

I want you to try to prove/disprove the lemma for next week.

Also, some extensions to think about are:

  • What if we use a different activation function?
  • How can we extend the lemma to discuss how holes in the data change?
  • How does this apply to neural networks like ResNet?

major paper update

I've updated the paper in the mybranch branch. I didn't want to overwrite the things you'd added in master. I'll let you merge them as you see fit. The update has the outline of next step questions to work on like we talked about earlier.

The paper \citet{carlsson2008local} has the 3x3 image topology.

This paper http://pages.cs.wisc.edu/~jerryzhu/ssl/pub/homology.pdf has step-by-step definitions to get to the rips complex.

Test Ripser on Whole Dataset

Our ultimate goal is to generate diagrams using the whole data set:

  • We have to guarantee that our code is bug-free and that Ripser does crash or cannot hold our dataset in memory

To test this do the following.

  • Make sure the code is not bugged
  • Do a dataset of 5000 but on all the classes
  • Do all classes at once

If this is the case, we need to figure out how to stitch diagrams together.

Refactor code

Rewrite mkProjections.py to be more readable (more modular), add docstrings everywhere.

For next week

Goals for next week are:

  1. Type out the results for the covering number

  2. Create examples for the doubling number/dimension, try to prove results

  3. Fix the computations to repeat multiple batches on the gpu / round of the tda program

  4. Combine Theorem 6.8 (from understanding machine learning theory and practice) and the results from this paper to explain why VC dimension doesn't explain the generalization error of deep neural networks. Lemma 4.2 and definition 4.3 (from understanding...) may help you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.