Umm, I don’t know how deep you’ve gotten into even simple non-ai machine learning. But this is based on simply wrong assumptions. Even your simplification is misleading -
If you’re having a list sorting algorithm like QuickSort, you can just look at the code and then get lots of intuitions about what kinds of properties the code has
I’ve talked with and interviewed a lot of software developers, and it’s probably fewer than 5% that really understand QuickSort including the variance in performance on pathological lists. This is trivially simple compared to large models, but not actually easy or self-explaining.
I am pretty sure that there is a program that you can write down that has the same structural property of being interpretable in this way, where the algorithm also happens to define an AGI.
I’ve talked with and interviewed a lot of software developers, and it’s probably fewer than 5% that really understand QuickSort including the variance in performance on pathological lists. This is trivially simple compared to large models, but not actually easy or self-explaining.
Well, these programmers probably didn’t try to understand Quicksort. I think you can see simple dynamics such as, “oh this will always return a list that is the same size as the list that I input” and “all the elements in that list will be elements from the original list in a bijective mapping. There won’t be different elements and there won’t be duplicated elements or something like that.” That part is pretty easy to see. And now there are some pathological cases for quick search, though I don’t understand the mechanics of why they arise. However, I’m pretty sure that I can, within one hour, understand very well what these pathological cases are and why they arise, and how I might change a quick search algorithm to handle a particular pathological case well. That is, I’m not saying I look at Wikipedia and just read up on the pathological cases, but I just look at the algorithm alone and then derive the pathological cases. Maybe an hour is not enough, I’m not sure. That seems like an interesting experiment to test my claim.
I am pretty sure that there is a program that you can write down that has the same structural property of being interpretable in this way, where the algorithm also happens to define an AGI.
I am pretty sure that this is not possible.
Could you explain why you think that this is not possible? Do you really think there isn’t an explicit Python program that I can write down such that within the Python program, e.g. write down the step-by-step instructions that when you follow them, you will end up building an accurate model of the world. And such that the program does not use any layered optimization like SGD or something similar. Do you think these kinds of instructions don’t exist? Well, if they don’t exist, how does the neural network learn things like constructing a world model? How does the human brain do it?
Once you write down your algorithm explicitly like that, I just expect that it will have this structural property I’m talking about of being possible to analyze and get intuitions about the algorithm.
Umm, I don’t know how deep you’ve gotten into even simple non-ai machine learning. But this is based on simply wrong assumptions. Even your simplification is misleading -
I’ve talked with and interviewed a lot of software developers, and it’s probably fewer than 5% that really understand QuickSort including the variance in performance on pathological lists. This is trivially simple compared to large models, but not actually easy or self-explaining.
I am pretty sure that this is not possible.
Well, these programmers probably didn’t try to understand Quicksort. I think you can see simple dynamics such as, “oh this will always return a list that is the same size as the list that I input” and “all the elements in that list will be elements from the original list in a bijective mapping. There won’t be different elements and there won’t be duplicated elements or something like that.” That part is pretty easy to see. And now there are some pathological cases for quick search, though I don’t understand the mechanics of why they arise. However, I’m pretty sure that I can, within one hour, understand very well what these pathological cases are and why they arise, and how I might change a quick search algorithm to handle a particular pathological case well. That is, I’m not saying I look at Wikipedia and just read up on the pathological cases, but I just look at the algorithm alone and then derive the pathological cases. Maybe an hour is not enough, I’m not sure. That seems like an interesting experiment to test my claim.
Could you explain why you think that this is not possible? Do you really think there isn’t an explicit Python program that I can write down such that within the Python program, e.g. write down the step-by-step instructions that when you follow them, you will end up building an accurate model of the world. And such that the program does not use any layered optimization like SGD or something similar. Do you think these kinds of instructions don’t exist? Well, if they don’t exist, how does the neural network learn things like constructing a world model? How does the human brain do it?
Once you write down your algorithm explicitly like that, I just expect that it will have this structural property I’m talking about of being possible to analyze and get intuitions about the algorithm.