Comments (9)
I don't plan on working on this, but if anyone wants to speed things up, go for it.
I'd also just note that importing a specific function or class is usually pretty quick
from graspologic.
I did some light profiling on this with python -X importtime -c 'import graspologic
-- here's what came up.
import_times.txt
from graspologic.
@bdpedigo I looked at this a bit more just now using tuna.
here's the import profile for graspologic:
appears to be mainly the umap import in graspologic.layouts.auto
and ot
in graspologic.align.seedless_procrustes
from graspologic.
that's interesting! and a cool tool/visualization
im open to discussing proposed fixes, i just dont really know what could be done here, since those other libraries are out of our controll
i can tell you that i dont think we use anything under ot.backend.tensorflow ot ot.backend.torch... so if there's some way to turn off those imports perhaps that could be a big save?
from graspologic.
i wonder why the load time is so much shorter for tuna than you, though?
from graspologic.
i wonder why the load time is so much shorter for tuna than you, though?
no clue, I noticed that too, how long does it take for you?
that's interesting! and a cool tool/visualization
im open to discussing proposed fixes, i just dont really know what could be done here, since those other libraries are out of our controll
i can tell you that i dont think we use anything under ot.backend.tensorflow ot ot.backend.torch... so if there's some way to turn off those imports perhaps that could be a big save?
throw imports inside of functions maybe? makes those functions take "longer" to run, but shorter for anybody who just wants to import the package
from graspologic.
PythonOT/POT#516 i wonder to what extent your issue is related to this? what version of POT are you on? it sounds like the root cause is tensorflow, do you have tensorflow installed in this environment?
from graspologic.
i guess another question - is there a reason you are needing to import all of graspologic, if you're saying you dont want some of these functions? might be much faster to just import the function(s) you need
from graspologic.
i wonder why the load time is so much shorter for tuna than you, though?
no clue, I noticed that too, how long does it take for you?
that's interesting! and a cool tool/visualization
im open to discussing proposed fixes, i just dont really know what could be done here, since those other libraries are out of our controll
i can tell you that i dont think we use anything under ot.backend.tensorflow ot ot.backend.torch... so if there's some way to turn off those imports perhaps that could be a big save?throw imports inside of functions maybe? makes those functions take "longer" to run, but shorter for anybody who just wants to import the package
does this import stick around? are you paying the cost only the first time? if so, this seems totally reasonable to me, but if you add 33 seconds every time you try to save your graph layout, it's going to be a bit wonky. doesn't mean there won't be other ways to fix it, just that this specific one may not work.
from graspologic.
Related Issues (20)
- Audit test warnings for deprecation warnings HOT 1
- [BUG] graspologic v.2.0.1 and networkx 3.0 incompatibility leads to a crash HOT 1
- [BUG] Following the first tutorial on the documentation, first example fails due to networkx HOT 2
- Add CITATION.cff file HOT 2
- MatplotlibDeprecationWarning to address
- Numpy DeprecationWarning to address HOT 1
- Sklearn FutureWarning to address
- [BUG] What does "Spectral Vertex Nomination" implement? HOT 1
- [BUG] The docs do not reflect the modification of the graph_match module HOT 1
- [BUG] Numba warnings
- The whole package works with numpy matrices; why doesn't node2vec? HOT 1
- [Question] coefficient magnitude, GCT HOT 5
- [Question] Running Leiden community detection on random graph generates multiple communities HOT 3
- [BUG] SBMEstimator throws an error when "loops=False" and some block has size 1
- [Question] Is Windows 11 OS supported? HOT 1
- [BUG] Scipy deprecations causing importerrors in gensim HOT 4
- [MAINT] black formatting rules updated in 2024 HOT 1
- Readme install instructions no longer match reality
- Add support for sparse gradient computation in `graph_match`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graspologic.