I operate by Crocker’s rules.

I won’t deliberately, derisively spread something just because you tried to point out an infohazard.

Karma: 1,312

I operate by Crocker’s rules.

I won’t deliberately, derisively spread something just because you tried to point out an infohazard.

a tax on each kilowatt-hour

Wouldn’t this almost precisely incentivize approving anything immediately?

Y can consist of multiple variables, and then there would always be multiple ways, right? I thought by indirect you meant that the path between X and Y was longer than 1. If some third cause is directly upstream from both, then I suppose it wouldn’t be uniquely defined whether changing X changes Y, since there could be directions in which to change the cause that change some subset of X and Y.

If matrix A maps each input vector of X to a vector of which the first entry corresponds to Y, subtracting multiples of the first row from every other row to make them orthogonal to the first row, then deleting the first row, would leave a matrix whose row space is the input vectors that keep Y at 0, and whose column space is the outputs thus still reachable. If you fix some distribution on the inputs of X (such as the normal distribution with a given covariance matrix), whether this is losslessly possible should be more interesting.

With differential geometry, there’s probably a way to translate properties between points. And a way to analyze the geometry of the training distribution: Train the generator to be locally injective and give it an input space uniformly distributed on the unit circle, and whether it successfully trains tells you whether the training distribution has a cycle. Try different input topologies to nail down the distribution’s topology. But just like J’s rank tells you the dimension of the input distribution if you just give the generator enough numbers to work with, a powerful generator ought to tell you the entire topology in one training run...

If the generator’s input distribution is uniform, Σ is diagonal, and the left SVD component of J is also the left (and transposed right) SVD component of JΣJᵀ. Is that useful?

What a small world—I was thinking up a very similar transparency tool since two weeks ago. The function f from inputs to activations-of-every-neuron isn’t linear but it is differentiable, aka linear near (input space, not pixel coordinates!) an input. The jacobian J at an input x is exactly the cross-covariance matrix between a normal distribution ᵍD(x,Σ) and its image ᵍD(f(x),JΣJᵀ), right? Then if you can permute a submatrix of JΣJᵀ into a block-diagonal matrix, you’ve found two modules that work with different properties of x. If the user gives you two modules, you could find an input where they work with different properties, and then vary that input in ways that change activations in one module but not the other to show the user what each module does. And by something like counting the near-zero entries in the matrix, you could differentiably measure the network’s modularity, then train it to be more modular.

Train a (GAN-)generator on the training inputs and attach it to the front of the network—now you know the input distribution is uniform, the (reciprocals of) singular values say the density of the output distribution in the direction of their singular vector, and the inputs you show the user are all in-distribution.

And I’ve thought this up shortly before learning terms like cross-covariance matrix, so please point out terms that describe parts of this. Or expand on it. Or run away with it, would be good to get scooped.

It’s easy to get confused between similar equivalence relations, so it’s useful to formally distinguish them. See the other thread’s arguing about sameness. Category theory language is relevant here because it gives a short description of your anomaly, so it may give you the tools to address it. And it is in fact unusual: For the cases of the underlying sets of a graph, group, ring, field, etc., one can find a morphism for every function.

We can construct a similar anomaly for the case of rings by saying that every ring’s underlying set contains 0 and 1, and that these are its respective neutral elements. Then a function that swaps 0 and 1 would have no corresponding ring morphism. The corresponding solution for your case would be to encode the structure not in the names of the elements of the underlying set, but in something that falls away when you go to the set. This structure would encode such knowledge as which decision is called heads and which tails. Then for any game and any function from its underlying set you could push the structure forward.

The problem is that these are the same game, only with the labels for one players actions switched

For two objects, in this case games, to be considered equivalent you usually want not merely a bijection between them but an isomorphism. A game G will be a set of labels L(G) with extra structure: Morphisms G->H will be particular functions L(G)->L(H). The structure your morphisms preserve will be what one can reason. The unusual fact you describe is that your function L(G)->M corresponds to no morphism G->H.

In category theory, one learns that good math is like kabbalah, where nothing is a coincidence. All short terms ought to mean something, and when everything fits together better than expected, that is a sign that one is on the right track, and that there is a pattern to formalize. and can be replaced by and . I expect that the latter formation is better because it is shorter. Its only direct effect would be that you would write instead of , so the previous sentence must cash out as this being a good thing. Indeed, it points out a direction in which to generalize. How does your math interact with quantilization? I plan to expand when I’ve had time to read all links.

If they set to 1 they converge in a single backward pass, since they then calculate precisely backprop. Setting to less than that and perhaps mixing up the pass order merely obfuscates and delays this process, but converges because any neuron without incorrect children has nowhere to go but towards correctness. And the entire convergence is for a single input! After which they manually do a gradient step on the weights as usual.

[Preliminary edit: I think this was partly wrong. Replicating...]

It’s neat that you can treat activations and parameters by the same update rule, but then you should actually do it. Every “tick”, replace the input and label and have every neuron update its parameters and data in lockstep, where every neuron can only look at its neighbors. Of course, this only has a chance of working if the inputs and labels come from a continuous stream, as they would if the input were the output of another network. They also notice the possibility of continuous data. And then one could see how its performance degrades as one speeds up the poor brain’s environment :).

: Which has to be in backward order and has to be done once more after the v update line.

I am not sure if I understand the question.

pi has form afV, V has form mfV, f is a long reused term. Expand recursion to get afmfmf… and mfmfmf.… Define E=fmE and you get pi=aE without writing f twice. Sure, you use V a lot but my intuition is that there should be some a priori knowable argument for putting the definitions your way or your theory is going to end up with the wrong prior.

Damn it, I came to write about the monad

^{1}then saw the edit. You may want to add it to this list, and compare it with the other entries.Here’s a dissertation and blog post by Jared Tobin on using

`(X -> R) -> R`

with flat reals to represent usual distributions in Haskell. He appears open to get hired.Maybe you want a more powerful type system? I think Coq allows constructing that subtype of a type which satisfies a property. Agda’s cubical type theory places a lot of emphasis for its for the unit interval. Might dependent types be enough express lipschitzness and concavity?

^{1}: Spotted it during literature search on pushforwards to measure the distribution of the vector of all activations in a neural network for one input, given the known distribution of inputs to a GAN generator that outputs inputs to the first network. Which I started modeling (as`((Neurons -> R) -> R) -> R`

) between you giving me that DT book and first reading about the technique in this post :).

I like your “Corrigibility with Utility Preservation” paper. I don’t get why you prefer not using the usual conditional probability notation. leads to TurnTrout’s attainable utility preservation. Why not use in the definition of ? Could you change the definition of to , and give the agent the ability to self-modify arbitrarily? The idea is that it would edit itself into its original form in order to make sure is large and small after the button press. (Although it might just keep going further in that direction...) I don’t like the privileging of actions.

Hey, have you noticed how quantum computers appear to let us make an exponential number of timelines interact in ways such that certain agents across the multiverse might find that according to their evolved anthropic intuitions, universes with our lawset that construct the very largest quantum computers dominate their utility function? Convenient.

Suppose I see a 20% chance that 20% of the multiverse is covered by 100 deterministic universes such that each

allows life to evolve

can be simulated in this early history by a planet-sized computer

allows construction of a hypercomputer.

Then they could see what everyone does. I, having mastered this cosmos, could simulate them and see what I can prove about how they will use their hypercomputer. If they have something to trade with those like me, they might deliberately write an AI to control their hypercomputer, in order to make it easy for those like me to prove things. Suppose one alien race evolved to value diplomatic rituals and would like other universes to instantiate an ambassador of their race. Suppose “the portion of the multiverse that instantiates infinite happy humans” accounts for 20% of my utility function. Then I could construct an embassy for them so they will spin off an “infinite happy humans” thread, increasing my utility by ~1/100*0.2*0.2*0.2.

I forget things more than usual, so “a few years pass” is more comparable than usual to “I die and am replaced with a clone”. I have therefore in childhood instilled a policy of being loyal to my past selves, and would like to someday become a continuum of resurrected past selves. This is going to go better with more data. Recommend local, open-source lifelogging software for Windows or Linux and Android.

Future productivity tools would include text/workflow analysis. This goes better with more data, so you could record all you do, be it via screen recording, a time tracker program, or a keylogger. In particular, if what you do all day is think, write down your stream of consciousness if your thoughts look like a stream of words and your fingers can keep up. GPT-4 might well look back over your diary and tell you the paper you missed.

Is there an open-source lifelogging app, so privacy-conscious people’s data isn’t lost to the void?

My productivity appeared to go up by an order of magnitude a month ago when I started Vyvanse. Switching from playing video games all day to doing math all day went from a sense of “that ought to be possible somehow, can’t the doctor just wave a wand” to effortless. (Although I still procrastinate on bureaucratic obligements.) Know your amphetamines, talk to your doctor. If we take folk wisdom into account and model a chance of polymorphing into a junkie on the streets or a hippie in the church, I’m not pulling Merlin’s name on you to shut up and calculate, because I am not that wise, nor that comparatively advantaged to unilaterally command the community. But I am telling you to calculate whether you are in my previous position, then listen to the more conservative of your calculations and your gut.

I agree being further on the exercise-axis makes one better. If I had to put it on a character sheet I wouldn’t find “Strength/Dexterity privilege” bad names. Of course its description is going to come out to “When you consider whether to do exercise/gymnastics, you are more likely to actually decide in favor.”. I would say the same for Intelligence and math. (And there are genetic factors to both, and they will be more pronounced when observing each tail.)

Do you think calling one’s decision processes privileged indicates and promotes akrasia, as in a learned helplessness, a learned disassociation from one’s decision processes? As in, your parts that System 2 controls learn that decision power/willpower/vote “allocated” to the issue is wasted, and thus stop doing it, locking in the situation?

I picked 1-Lipschitzness, as that one seems to be the best motivated.

I would motivate this by saying that can be rewritten as .

As for implementing it:

I’m not sure whether there’s a way to enforce concavity and 1-Lipschitzness on the type level, but one sure could define . Here’s a definition of without much type-level safety:`newtype Real = UnsafeReal {greaterThan :: Double -> ()}; embedDouble :: Double -> Real; embedDouble d = UnsafeReal (\d' -> if d>d' then () else error ("embedDouble" + show d + show d'))`

. So long as nobody uses`try`

/`catch`

or`UnsafeReal`

, the only thing you can get out of a value of this type is that it is larger than a given double.

Suppose instead of a timeline with probabilistic events, the coalition experiences the full tree of all possible futures—but we translate everything to preserve behavior. Then beliefs encode which timelines each member cares about, and bets trade influence (governance tokens) between timelines.