| Having thought about this for a while - this is on you, not me. The idea that some computer programs take too long to finish if their input size is really large isn't a complicated one. You try to discredit the existence of this basic truth by complaining that I'm using jargon, but my jargon is really just vocabulary. I bring up the bellman equations and counterfactual regret, because algorithms built with respect to these things operate against the graph of the game. By invoking them, I'm not being incoherent. I'm firmly rooting my claims in the computational complexity of the algorithms. I'm not doing this because I'm confused. I'm doing it because game graphs have very particular properties. When you add additional moves to a graph on each turn the growth rate isn't one move more of complexity - the number goes in the exponent. So modest amounts of additional states lead to an combinatorial explosion of complexity. They make the graphs extremely big. In practice, as well as in theory, this makes it so the algorithms don't terminate before the universe is expected to. I'll give a practical example of this so you don't rant about lagrane - but also so that everyone reading this will realize you are full of shit and only pretending to know what you claim to know. A practical example of this is that we've managed to solve checkers, but chess is too complicated. The number of states in the graph is so high that we can't enumerate all of them in a reasonable amount of time. Go is a more extreme example than chess. Anyone who doesn't know the jargon can easily look up terms like "branching factor" and "solved checkers" and "solving chess" and "solving go". They'll quickly find that you were misleading others with regard to computational complexity not being relevant to whether error in learning is reasonable. We need to do something to make the problems easier in order to make progress. So we do. Sometimes, when we are lucky, we can use perfect abstractions that make things simpler. One thing you seem to think I'm saying, but which I'm definitely not, is that perfect abstractions don't exist. That is you just being confused about what I'm saying. It isn't something I've claimed. Instead, what I'm claiming is that sometimes perfect abstractions aren't enough. Again, chess can be used to make this point. You can get some perfect abstraction by doing things like rotations on the end game tables. Yet this doesn't actually save you from the game tree being enormous. Despite having perfect abstractions, we still use approximation when we try to learn the best thing to do in a chess position. I think you don't give me enough credit. Your entire interaction with me has tried to imply that I'm just pretending to understand something in order to win an argument. You seem to think these things I'm saying are about big words, because I'm incoherent. That isn't true. If you look up the comment chain you'll find, paraphrased, that one person said something to the effect that learning something that is wrong can be productive for someone who is learning even though it has error in it. Then another person disagreed with that claim on the basis of error existing in the abstraction and later being corrected. So clearly, we definitely were discussing (1) abstraction and (2) learning. Fundamentally, it isn't jargon if I choose to try to make my point by talking about (1) learning theory and (2) abstraction and how it relates to learning theory. You try to act like I'm being incoherent, but really I'm just thinking from first principles. We're discussing learning and instead of thinking about it in terms of programming, a thing where there is plenty of debate about what is the right approach, I'm thinking about it from a lower level. That means my claims are actually a lot more limited than others. More nuanced. This is in keeping with Hacker News guidelines. Our replies are supposed to be more nuanced and thoughtful as we get deeper into the comment tree. When we disagree with each other, we're supposed to be teaching each other something. I don't think it is wrong of me to think from first principles, nor for me to share my thinking from first principles. I can't offer what is the best thing to teach, but I can suggest with confidence that it isn't the case that an abstraction having error and later being corrected while solving more specific problems isn't enough to prove that teaching that abstraction is bad. It might be suggestive, but it isn't sufficient. It really is the case that there exists problems which in their full unabstracted state the problem is too large to solve even if you use a perfect abstraction for certain learning algorithms. That is why we even do approximation. That you can apply approximation to the space of the inputs and reduce the size of the problem means you can connect the introduction of error via abstraction to the simplification of problem complexity. I'm not saying this to sound smart. I'm saying this because you can actually do that. It isn't a universal result - there are some learning frameworks that aren't defined with respect to a graph. That is why I'm so careful to talk about learning algorithms that do the definition in that way. Your entire railing against me for arrogant "jargon" is actually an attack on me having been cautious to not make claims that were too bold. Frankly, I think you should consider the opposite of my point to see if you really believe it. If you believe I'm wrong than it means you believe that it is possible to learn without ever learning errors. So for example, you believe that all babies ought to be able to instantly know all things - even things our society doesn't know anything about as of yet. I'm not saying this to put you on this position or imply that you believe it. I'm saying it to make it more obvious to you that what I'm saying isn't actually a controversial thing. The fact that believing the opposite would create absurd beliefs is suggestive of the fact that I'm right about there being real benefit to being willing to learn and teach abstractions with error. Perhaps most importantly - I linked a paper in which an abstraction with error was better than the best results we've gotten without abstraction with error in a game theory research paper. So I have an existence proof of my claims. I'm right and you're just too conceited with regard to your presumption of my idiocy to see it. If you were less interested in being mean and more interested in actually talking to people, the conversation could have been a lot more interesting. In my estimation of our conversation you're struggling to avoid contending with my points. You attack me, because you can't contest with my ideas. You try to claim I'm rambling, because you can't find flaw in my reasoning. You had a preconception that I was wrong and you never bothered to really engage with what I was saying, just assuming I was wrong. And so, you are; you've become a creature of rhetoric, attacking others character rather than dealing with ideas as a person ought to. |