I wish there was something using DNNs that users could train and use without writing code or connecting to some centralized service. It would help to get the "feel" for how good these algorithms are. Something moderately general-purpose, I mean. However, it seems that mapping them to the problem domain is an art in itself.
Teaching Deep Convolutional Neural Networks to Play Go
11–20 of 21 posts
Re: Teaching Deep Convolutional Neural Networks to Play Go
#12I wish there was something using DNNs that users could train and use without writing code or connecting to some centralized service. It would help to get the "feel" for how good these algorithms are. Something moderately general-purpose, I mean. However, it seems that mapping them to the problem domain is an art in itself.
Re: Teaching Deep Convolutional Neural Networks to Play Go
#13I would be extremely interested in seeing this used as a pruning function for a state-of-the-art MCTS (Monte Carlo Tree Search) Go engine. As it stands, your generic MCTS algorithm expands a game tree of nodes, and gives more attention to more promising branches, but it still must give attention to other branches to find out if they are promising or not (exploration vs. exploitation). In the paper, they get the right…
[1] ..and a faked visit-count. So the algorithm beliefs that the action was already evaluated n times, which resulted in the given mean utility.
Re: Teaching Deep Convolutional Neural Networks to Play Go
#14Earlier quoted context omitted.
Specialized pattern recognition in extremely constrained environments is only a hair's width away from higher order intelligence, self-awareness, and a desire for independence.
I think you're conflating intelligence with human instinct.
Re: Teaching Deep Convolutional Neural Networks to Play Go
#15I would be extremely interested in seeing this used as a pruning function for a state-of-the-art MCTS (Monte Carlo Tree Search) Go engine. As it stands, your generic MCTS algorithm expands a game tree of nodes, and gives more attention to more promising branches, but it still must give attention to other branches to find out if they are promising or not (exploration vs. exploitation). In the paper, they get the right…
Integration in MCTS should be straightforward. And I would be surprised if the author's hadn't done it already. Normally, no actions are pruned away per-se. Instead, the available actions are initialised with a utility value [1] from an external oracle, i.e. the neural net. From then on, the normal MCTS procedure continues until the time or memory runs out. [1] ..and a faked visit-count. So the algorithm beliefs that…
Re: Teaching Deep Convolutional Neural Networks to Play Go
#16I would be extremely interested in seeing this used as a pruning function for a state-of-the-art MCTS (Monte Carlo Tree Search) Go engine. As it stands, your generic MCTS algorithm expands a game tree of nodes, and gives more attention to more promising branches, but it still must give attention to other branches to find out if they are promising or not (exploration vs. exploitation). In the paper, they get the right…
Integration in MCTS should be straightforward. And I would be surprised if the author's hadn't done it already. Normally, no actions are pruned away per-se. Instead, the available actions are initialised with a utility value [1] from an external oracle, i.e. the neural net. From then on, the normal MCTS procedure continues until the time or memory runs out. [1] ..and a faked visit-count. So the algorithm beliefs that…
The most obvious next step is to integrate a
DCNN into a full fledged Go playing system. For
example, a DCNN could be run on a GPU in parallel with
a MCTS Go program and be used to provide highly quality
priors for what the strongest moves to consider are. Such
a system would both be the first to bring sophisticated pat-
tern recognitions abilities to playing Go, and have a strong
potential ability to surpass current computer Go programs.
I agree that the integration should be exceedingly straightforward. I've written MCTS implementations (though not a Go implementation -- I used it on Connect 4 and other easy-to-code games), and it seems like you'd just plug it into your already-existing bias function.The authors didn't mention my idea about using the probability distribution output from the network to guide the random playouts, which I would also be interested in.
Re: Teaching Deep Convolutional Neural Networks to Play Go
#17Re: Teaching Deep Convolutional Neural Networks to Play Go
#18http://computer-go.org/pipermail/computer-go/2014-December/0...
Re: Teaching Deep Convolutional Neural Networks to Play Go
#19Re: Teaching Deep Convolutional Neural Networks to Play Go
#20http://computer-go.org/pipermail/computer-go/2014-December/0...