HN user

cschmid

212 karma
Posts0
Comments34
View on HN
No posts found.
Llama 2 3 years ago

It's also wrong: SO(n) matrices have determinant +1.

I disagree; I think a system like Wikipedia shows that a textual and visual format like markdown provides the flexibility to convey pretty much any information. For any formal and semantic storage system, you will probably spend more time adapting it to each specific use case than to actually fill it with content.

I'm not sure if this will actually be an HSR stop, but it would be super convenient for someone living in e.g. Fresno: Instead of having to use a connector flight to SFO, you can just take the train and transfer.

There are formal partnerships between rail providers and airlines around the world, where your train ride is treated like a leg of your flight. You have a guaranteed connection, and often your bag is transferred from the train to your airplane.

This is pretty obvious, no? If you choose a (uniformly) random point inside an n-sphere, the components of the vector will go to zero as n gets larger -- after all, the sum of their squares has to be less than 1.

A (uniformly) random point in an n-dimensional cube will have random coordinates from zero to 1, with no other constraint on their size.

Milpitas really is not walkable, although you can somewhat decently navigate it with a bike. Walkability mostly is a function of density, which you can just glean by eye from a satellite picture. Unfortunately, many otherwise pedestrian-friendly places in the Bay Area have homeless camps set up on them, which might be a deterrent.

Anything south of Oakland/SF is mostly strip mall hell, but parts of Alameda County, Contra Costa County, Marin County and San Francisco might be what you're looking for.

I just tried replicating the same experiment using Jax's numpy API, and einsum is still slower, but at least the same order of magnitude:

  %timeit (x_jax @ y_jax).block_until_ready()
  579 µs ± 4.54 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

  %timeit jnp.einsum('bik,bkj->bij',x_jax,y_jax, optimize=True).block_until_ready()
  658 µs ± 1.38 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

  %timeit jnp.einsum('bik,bkj->bij',x_jax,y_jax).block_until_ready()
  660 µs ± 2.82 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

If I understand https://github.com/numpy/numpy/blob/v1.22.0/numpy/core/einsu... and https://github.com/numpy/numpy/blob/v1.22.0/numpy/core/src/m... correctly, using einsum without the optimize flag seems to use a for loop in C to do the multiplication.

The optimizer clearly tries to improve the performance, but in many cases, it doesn't seem to change anything. Let's simply multiply some matrices:

  x, y = np.random.rand(200, 200, 200), np.random.rand(200, 200, 200)
I can do
  %timeit x@y
  40.3 ms ± 2.52 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
or a naive
  %timeit np.einsum('bik,bkj->bij',x,y)
  1.53 s ± 21.8 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
But even with optimization, I see
  %timeit np.einsum('bik,bkj->bij',x,y, optimize=True)
  1.54 s ± 10.7 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
I'm not sure if I'm doing something wrong.

I'd really like to use einsum more often, because it allows me to code my expressions the same way I derive them on pen and paper. Unfortunately, as mentioned in the article, it's slow, because it converts your formula to a for loop.

So usually, I rewrite my formulas into messy combinations of broadcasts, transposes and array multiplications. Is there a package or an algorithm that does this conversion automatically? It seems to be a pretty straightforward problem, at least for most expressions I use.

No carrier should be able to brick a phone without it being locked to the network. I did some research online, and it seems that the culprit here is actually Best Buy (and Apple) for selling phones as unlocked although they actually aren't: Apple sells iPhones to third parties under a 'US Reseller Flex Policy' [1], which means that they are automatically locked to the first carrier they are activated on.

Nothing on the Best Buy website gives me any indication of this happening. If this is really true, it's deceptive advertisement. I'm not a lawyer, but this looks illegal.

[1] https://swappa.com/faq/answer/us-reseller-flex-policy

I don't know what the issue is. Let's assume for simplicity that the sensitivity is exactly 0.2 eV. Then if you measure something slightly above, like 0.201 eV, you can conclude it has a mass. If you measure something slightly below, 0.199 eV, you don't know.

I don't normally complain about this, but that result has been at least four times on the front page in the last two weeks:

https://news.ycombinator.com/item?id=29514642

https://news.ycombinator.com/item?id=29424749

https://news.ycombinator.com/item?id=29405380

https://news.ycombinator.com/item?id=29208141

Finding mathematical patterns and relations by fitting expressive functions has actually been a common technique in experimental mathematics (https://en.wikipedia.org/wiki/Experimental_mathematics) for a while.

In the last few years, neural networks in particular have been used a lot in areas of math related to string theory, where one tries to find structures on certain topological spaces that preserve or generate symmetries of the resulting physics. Here's a review that might be interesting:

https://arxiv.org/abs/2101.06317

Unfortunately, none of these mathematicians have the marketing prowess of a multi-billion dollar company...

I don't think replacing a workstation with a Macbook because of RAM makes too much sense: If running one minibatch of your model already takes up all the memory you have, where would the rest of your training data sit? In the M1, you don't have a separate main memory.

Also, software support for accelerated training on Apple hardware is extremely limited: Out of the main frameworks, only tensorflow seems to target it, and even there, the issues you'll face won't be high on the priority list.

I know that nvidia GPUs are very expensive, but if you're really serious about training a large model, the only alternative would be paying rent to Google.