About a month ago, my partners @martin_casado and @peter_lauten argued in a great blogpost that data network effects are mostly bullshit. I could not agree more! Every one of their insights maps directly to some aspect of my experience at X.https://a16z.com/2019/05/09/data-network-effects-moats/ …
-
-
Prikaži ovu nit
-
First, some context: The ultimate goal of our robotics project was to leverage the combination of Machine Learning and Distributed Systems to enable robots to learn from each other’s experience in order to effectively operate in unstructured environments with limited sensor data.pic.twitter.com/vsMGFh2muG
Prikaži ovu nit -
One important sub-problem that my team and I found ourselves having to solve is teaching a robot how to open a door using this approach. This may sound easy (and it is, if you’re doing it for just a single door), but it’s a hard problem to solve under *all* circumstances.
Prikaži ovu nit -
This is because there is a very long tail of variations in lighting and resultant shadows; the color, texture, and reflectivity of the door and handle; the weight of the door; the type of the handle and the specific forces required to operate it; and so on.
Prikaži ovu nit -
There are even slight variations between different “identical” robots that are running the same software. They inevitably have different sensor/camera calibrations and motor characteristics. A true solution to the problem has to be general enough to contend with all of this.
Prikaži ovu nit -
Our approach was to depart from traditional techniques in robotics that favor modularity (e.g. one subsystem determines the pose of the handle, a completely independent one controls the arm of the robot, and yet another system then operates the gripper, etc).
Prikaži ovu nit -
Instead, we set out to train a single deep neural network to do everything, end-to-end. The goal was to get the network to go directly from the robot’s raw sensor data all the way to the final output: 7 torques to apply to the robot’s 7 joints for 20 ms.pic.twitter.com/LhzozlVrQG
Prikaži ovu nit -
After 20 milliseconds, the neural network runs again (this time with slightly different sensor data, for the robot has since moved). It thus produces seven *new* torques. And so, in this manner, the network guides the robot toward opening the door 20 ms at a time.
Prikaži ovu nit -
To do this, it must internalize a model of everything from the high level look of a door (and its handle) in different conditions, down to the proprioceptive “feeling” of interacting with the handle and imparting on it the right forces so that the door opens.
Prikaži ovu nit -
And, to make this more fun, we wanted to get the same neural network (with the same weights) to work across different kinds of doors with different handles, and across distinct “identical” robots, each with diverging camera and sensor calibrations.
Prikaži ovu nit -
This required a lot of data. And, collecting it required running multiple robots simultaneously, each learning from trial and error on a different door with a unique handle.
Prikaži ovu nit -
We wanted to get the robots to learn from each other’s experience in real time and to use the data produced from each individual robot’s experience to train a single, global neural network that is shared across all robots. We wanted to build a hivemind :)pic.twitter.com/VwYwHZ5bNs
Prikaži ovu nit -
We called this Collective Reinforcement Learning. The proof of concept was a collective effort with Adrian Li,
@mkalakrishnan,@YevgenChebotar, and@svlevine. Check out the full paper here! https://arxiv.org/pdf/1610.00673.pdf …pic.twitter.com/8Cpb4bRV8m
Prikaži ovu nit -
But, what does all of this have to do with data network effects and product defensibility?
Prikaži ovu nit -
Well, at the surface it might seem like this one case (of all cases!) should benefit from strong data network effects because each robot that is added to the network learns (immediately and continually) from the experience of every robot that precedes it.
Prikaži ovu nit -
If you believe, as we did, that each robot would contribute to the collective a differentiated set of experiences, then the marginal utility offered by the network to a new user bringing her robot online should scale superlinearly with the number of robots in the network.
Prikaži ovu nit -
That right there is a network that gets more valuable for the next guy who joins, the more people are already on it, right? That’s a network effect by definition, no? It’s Metcalfe’s Law! (:
Prikaži ovu nit -
And indeed, all of that is partly true. The nuance here, as Martin and Peter would observe, is that this effect can actually be better explained by the scale of the collected data than by the fact that the robots are incidentally connected to one another in a network.
Prikaži ovu nit -
If you could somehow collect the exact same data but without the network, the result would be the same. The network is an implementation detail — it’s just the mechanism by which the data is collected and updates to the hivemind model are distributed.pic.twitter.com/xifx433ZIq
Prikaži ovu nit -
This is different from the dynamics of, say, a social network where every edge connecting one user to another really does play a functional role in increasing the network’s value. Our robot hivemind benefits far more from data scale effects than it does from data network effects.
Prikaži ovu nit -
And, as it turns out, scale effects tend to be less powerful (and less defensible) than network effects. Why?
Prikaži ovu nit -
Well, at least in principle, the utility curve that best models a network effect is a true superlinear curve. Social networks do indeed continue to get more valuable with each additional user that joins. And each new user brings to the network more value than the last.
Prikaži ovu nit -
This superlinear effect tends to hold indefinitely regardless of how big these social networks get. The same cannot be said for scale effects. The utility curve that best models a scale effect tends to be an S-curve. At some point marginal returns to scale flatten out.pic.twitter.com/6j8Jw2zKZP
Prikaži ovu nit -
This is because scaling any one part of a system tends to cause other parts to have to scale disproportionately. At some point, some physical limit begins to challenge the assumptions that originally held the system together and causes returns to scale to slow down.
Prikaži ovu nit -
The reality of scaling our hivemind is that, as the network grows, the new data that is contributed by each additional robot becomes ever more redundant with the data that has already been collected by other robots. It thus no longer offers as much useful signal.
Prikaži ovu nit -
And so, at scale, the amount of additional data that must be collected in order to yield the next useful datapoint begins to increase. This slows down returns to scale and allows trailing competitors to narrow the gap.
Prikaži ovu nit -
A related problem that is especially important when dealing with the physical world is that systematic errors (biases) in how data is collected might have no effect at a small scale. But, at larger scale, they often accumulate and begin having a real impact on models’ performance
Prikaži ovu nit -
This is compounded by the fact that scaling a robotic fleet tends to coincide with the loosening of quality controls in data collection (or with an increase in infrastructure and QA costs). This creates an additional source of bias (or cost) slow down returns to scale even more.
Prikaži ovu nit -
As Martin and Peter point out, there is nothing about data that inherently confers defensibility. Any data advantages must be connected to a more holistic product, technology, or business story.
Prikaži ovu nit -
Scale effects, on the other hand, can and do confer some defensibility but only during the accelerating portion of the S-curve. In the world of robotics, how significant this effect is comes down to the shape of the data distribution.
Prikaži ovu nit - Još 8 drugih odgovora
Novi razgovor -
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.