Git Product home page Git Product logo

pyglow's People

Contributors

gagandt avatar ritzvik avatar spino17 avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

pyglow's Issues

Keras type Progbar

Currently PyGlow uses tqdm progress bar api but it would be more natural to implement one just like keras (Note: to see keras implementation of progress bar see generic_utils in utils)

Fit method that directly load data from file path

Current implementation of fit use either x, y dataset or takes dataloader as arguments. It would be more less expensive to implement a fit method that directly load data in parallel from the file path passed as argument.

TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first. site:stackoverflow.com

I get this error when compiling and training the model on MNIST dataset on Google Colab using their GPU.

`model = IBSequential(input_shape=(1, 28, 28), gpu=True, track_dynamics=True, save_dynamics=True)
model.add(Conv2d(filters=16, kernel_size=3, stride=1, padding=1, activation='relu'))
model.add(Flatten())
model.add(Dense(784, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(256, activation='relu'))
model.add(Dense(10, activation='softmax'))

model.compile(optimizer='SGD', loss='cross_entropy', metrics=['accuracy'])
model.attach_evaluator(HSIC(kernel='gaussian', gpu=True, sigma=5))`

Does anyone know how I can fix it?

AttributeError: module 'glow.metrics' has no attribute 'get'

I was running the test code in the page https://pyglow.github.io/ on google colab. It gave me this error:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-18-0ea5fc0ad3bd> in <module>()
     35 
     36 # train the model along with calculating dynamics
---> 37 model.fit_generator(train_loader, val_loader, num_epochs)

2 frames
/usr/local/lib/python3.7/dist-packages/glow/models/network.py in fit_generator(self, train_loader, val_loader, num_epochs, show_plot)
    291 
    292         """
--> 293         self.training_loop(num_epochs, train_loader, val_loader, show_plot)
    294 
    295     def predict(self, x):

/usr/local/lib/python3.7/dist-packages/glow/models/network.py in training_loop(self, num_epochs, train_loader, val_loader, show_plot)
    181         train_len = len(train_loader)
    182         val_len = len(val_loader)
--> 183         metric_dict = self.handle_metrics(self.metrics)
    184         epoch_collector = []
    185         for epoch in range(num_epochs):

/usr/local/lib/python3.7/dist-packages/glow/models/network.py in handle_metrics(self, metrics)
    134         metric_dict = {}
    135         for metric in metrics:
--> 136             metric_fn = metric_module.get(metric)  # returns the function
    137             metric_dict[metric] = metric_fn
    138 

AttributeError: module 'glow.metrics' has no attribute 'get'

I don't understand what to do about this.

HSIC sigma network

Base implementations for HSIC networks is available. Using that implement HSIC sigma networks as a classifier.

0 % progress bar in the beginning

As observed during training, at the start of every epoch there appears a 0 % bar. Fix this bug which is most probably related to how the tqdm updates its iterator.

Parallel processing of information plane coordinates

As the calculation of IP coordinates for each layer for each batch for each epoch is independent and can be massively calculated in parallel as compared to current implementation which uses nested loops and affects speed of the computation.

Parallel implementations of methods

Throughout the code there are comments as - ** NOTE - This can be done in parallel !
Which means that the loop can be done in parallel with instruction level parallelism (or some times data level parallelism).

Extend to adam optimizer

Currently on passing 'adam' as argument in compile method of network it is returing None object. Look up on the issue and remove the bug to make it return the optim.adam() object.

Efficient implementations of estimation methods

Currently estimation methods are not appropriately implemented to get complete parallel processing of matrix operations and thus more efficient implementations should be employed to speed up the computation.

Write setup.py properly

Currently setup.py has problems that persist in its 0.0.1 version if you install PyPI then shows no module named glow.

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.