Hacker Newsnew | past | comments | ask | show | jobs | submit | colincsl's commentslogin

When looking at the performance, it doesn't seem like the LSTM adds very much compared to simpler multi-layer perceptrons. I wonder if that is because temporal information isn't very useful or because the LSTM wasn't capable of learning some of the more complicated temporal patterns.

I would love to play around with the data, unfortunately, I assume it's private (for good reason) due to potentially sensitive patient data.

If anyone is interested in related methods for time series, I just put up code for our recent action segmentation paper using Temporal Convolutional Networks (https://github.com/colincsl/TemporalConvolutionalNetworks). I would be very interested in trying this model on the ICU data. In my experience, TCNs are much better at learning complex temporal pattern than LSTMs.


That's true, according to the paper improvement over MLP is negligible. It looks like the model is very small and that might be a reason for relatively low performance.


The performance of multilayer perceptrons and linear models is significant. The paper additionally allows the MLP and linear models to "cheat" by giving them heavily hand-engineered features incorporating extensive prior knowledge. Even with this benefit, the LSTM outperforms the baselines, but the improvement is considerably smaller.


The performance improvement over


For those interested in learning vision from a machine learning perspective I would suggest "Computer Vision: Models, Learning, and Inference" [1]. Szelinski's book is also great but gives a more classical overview of computer vision.

[1] http://www.computervisionmodels.com/


They are implying that medical devices are notoriously bad at being proprietary/closed. Hospitals would be much better off if the devices could talk to each other but it isn't feasible as-is because device manufacturers want lock-in. The current situation leads to issues like alarm fatigue where nurses effectively ignore problems due to too many devices. If they were centralized then there could be one management system that intelligently alerts the nurse of any issues.

We have a major effort at Hopkins going on right now to get around this. See this article more info: http://hub.jhu.edu/2015/10/19/hopkins-microsoft-patient-safe...


I used to (almost) exclusively use Python and didn't like that I had to go bath and forth with Cython to make my models fast. Earlier this year I ported some of my code to Julia and feel more productive because of it. I feel like it's easier for me to implement new non-trivial improvements to my models than it was before.

For what it's worth I still stick with Python for computer vision applications. I mostly use Julia for timeseries models (e.g. Semi Markov CRFs) where it's harder to vectorize everything.

If I were restart again I'm not sure if I would suggest going the Julia route. I know there are alternatives like Numba that enable you write efficient code with minimal effort. Overall I like Julia as a language but there are a lot of little issues due to it being a new language.


I assume he's referring to Qt.


PyQT is GPL3+commercial.

PySide is Qt4.

GKT3 looks ugly outside Linux.

Tk looks obsolete everywhere.

wxPython is Python 2 and I think GTK2 on Linux.

Basically, there is no usable, modern cross-platform GUI toolkit for Python right now.


PyQt is very much usable. It's GPL3 but if you're using it in commercial projects, you shouldn't just pinch your nose because you have to get a commercial license.

Besides, PySide is porting to Qt5 too.


I'm not sure I'd pinch my nose over the cost of PyQt, but the cost of PyQt is pretty negligible.

The problem is the cost of Qt itself for commercial development - unless I'm misreading the Qt website I might choke and drown on the cost of a developer license for Qt ("1x Qt for Application Development ($350/Interval)") and (" This subscription is automatically invoiced at 1 months Intervals").

Maybe it's badly-written English confusing me, but that (and other info on their site) sounds suspiciously like "Developing commercially for Qt and being able to do maintenance releases requires a $350/month developer license." Oh, and their licensing FAQ specifically says that you CANNOT start on the LGPL version and change to the commercial license without prior permission from them.

Maybe it's just me, but if I'm going to be expected to spend $4200/year/developer (or "contact us" for a perpetual agreement), maybe I'd be better off spending a little money first checking out the other alternatives.


> PyQt is very much usable. It's GPL3 but if you're using it in commercial projects, you shouldn't just pinch your nose because you have to get a commercial license.

But I do and thousands of other people do as well. Today, the value-add is somewhere else, not in language bindings for GUI toolkits.


No offense to whatever it is you work on, but if you are a commercial project and:

- Can't comply with GPL3 and make your code compatible with the license

- Can't afford to pay for a commercial license

- Can't use a different language, such as C++, which has alternate offers

Then the problem is on your side, because either your business model is wrong or you're simply being cheap. You're not entitled to a free GUI toolkit for no good reason.


The measure is value for money.

For 350 GBP (=500 EUR), you can have Intellij Idea.

When you ask your boss for a budget for Nx500 (N=number of developers), it is a huge difference, if you ask that for language bindings for GUI toolkit, or IDE.

The language and GUI toolkits are both free, the glue between them is not, and that damages them both. How many commercial PyQt apps have you seen in the wild?

Exactly.

Imagine, if someone asked money for XAML for C#... or for JavaFX. What it would do with their adaptation in projects?


> How many commercial PyQt apps have you seen in the wild?

Not many because most people use Qt, not PyQt. It's just easier.


> Besides, PySide is porting to Qt5 too.

Is there any kind of concrete roadmap on this? All I've heard was basically "yeah, we want to move to Qt5 at some point in the future" back in 2013.


Yeah, activity picked up a week or two ago; someone has done most of the legwork to get the bindings auto-generated, and now there's the clean up to do.


That's very nice to hear. I was seriously beginning to fear that PySide was dead in the water.

I'd love to have a decent GUI toolkit for Python I could use with Apache or MIT code (without having to isolate the GPL bits), but I was nervous about being stuck on Qt4, so I was never terribly sure about PySide.


I assumed he was just trolling.


You're right that the video looks very impressive. However, I'm hesitant to believe that this actually works as well as one might perceive. In this area (called semantic segmentation in the computer vision world) it is common for a people to highlight both the good cases (where the labels/segmentation are correct) and the bad cases (where they are incorrect). In the MS video they only show the good. It's easy to cherry-pick examples where it works -- even if the overall accuracy is very low.

Furthermore, I don't know which dataset they're using. Perhaps it only works on a small set of objects such as those shown in the video.

I don't mean to knock their results but it will still take time to get this to work on a more broad set of videos.


I don't know much about PeerJ but I'm intrigued by their efforts as a publishing company to foster open collaborations like this.


I've only been watching from the Deep Learning sidelines -- but I believe people have steered away from pretraining over the past year or two. I think on practical datasets it doesn't seem to help.


As a robotics/computer vision researcher I disagree with you. The first Kinect was a godsend for robotics - previously it cost thousands of dollars for similar types of sensors. Typically we just want the raw data so that we can do whatever processing we want. It was nice because it worked on Mac/Linux/Windows without too much hassle. The new Kinect on the other hand is of little use to me right now. It's locked down on Windows - and as far as I know you need the special dev kit version for it to even work.

Also, a "cheap camcorder" is nothing compared to this. The Kinect is a 3D sensor. You would need 2 "cheap camcorders," stereo vision algorithms/hardware to process it in real-time, and even then the quality typically wouldn't be as good as the Kinect.

Tangentially, it's also disheartening (at least for the time being) that Apple recently bought Primesense - the maker of the original Kinect. Primesense was selling a better 3D sensor for developers/researchers. Apple shut it down as soon as they bought them.


You're in luck - we're working on it. We've had alpha level success in extracting depth data thus far.

https://github.com/OpenKinect/libfreenect2

We're always looking for more contributors!


Hopefully this will also mean decent Python support, because with the Kinect for Windows v2 dev kit I'd have to wait until wrappers became available.

The Kinect v1 was also a pain to get working on x64 Windows, so hopefully things will be a bit easier this time around


We like Python - we support it in libfreenect, so we'll probably have it in libfreenect2.


Sure, but what happens when you get bought by Apple? :)


does alpha mean 'unknown binary blob' or 'raw depth data of more or less known structure'?


The latter.


wooohoo, this is big, why didnt you make an official announcement? this is Hackaday newsworthy


Have you tried the Asus depth camera? I work with motion capture apps and 3D scanning, and in both areas developers are pushing it as a decent if not spectacular replacement for the Primesense camera.


The Asus Xtion cameras have been out of production for some time. At the last place I worked, we bought like 30 of them as well as their successors that PrimeSense sold directly before Apple bought them.


Asus IS Primesense design.


In Europe you typically need a masters degree before you start a PhD program. In the US you don't - you can think of it as a 2+3 type program where you spend the first couple of years taking classes (and getting your masters) and the next three doing your thesis.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: