標籤:

AlphaGo 是什麼語言開發的?

是go語言嗎?

google了一下,頻頻跳出來Go programs,但是還是不確定是否是go開發的

https://www.quora.com/What-programming-languages-are-used-at-Google


這裡是hacker news上的回帖,回帖者是Deepmind的軟體工程師:

C++ and Lua.


原文鏈接:

https://www.quora.com/What-programming-language-did-Google-use-to-create-AlphaGo

我只是搬運工:

What programming language did Google use to create AlphaGo?What programming language did Google use to create AlphaGo?

What programming language did Google use to create AlphaGo?What programming language did Google use to create AlphaGo?

---------------

4 Answers

Isaac Pei

5.4k Views

This is not an answer, but some logical deductions:

My guess is that it"s likely a mixture of several programming languages, such as C++, Lua etc. Looking at David"s publications and some source codes (in C++, and Lua):

----------------------------------------

Amit Thakur, I Love C++

2.2k Views

Language doesn"t matter much.

If we have an AI algorithm, we can use any computer language to implement the algorithm.

So a good question would be :

What AI algorithm did Google"s AlphaGo use to play the Go board game?

----------------------------------------

It doesn"t matter [much].. :)

See: Amit Thakur"s answer to What programming language did Google use to create AlphaGo?

And: Isaac Pei"s answer to What programming language did Google use to create AlphaGo?

But note that David Silver, that Pei links to at "chessprogramming", and while that site covers more than chess, chess uses different algorithms.

At that site, I however, found his paper: http://www.machinelearning.org/a...

"Finally, we compared the performance of our MonteCarlo search to GnuGo" [that seems to be in C++]

Silver references:

Finnsson, H., Bj?rnsson, Y. (2008). Simulation-based approach to general game playing. 23rd Conference on Artificial Intelligence (pp. 259–264).

Yngvi Bj?rnson, was one of my professor, and taught the MonteCarlo [tree] search algorithm (another professor taught artificial neural networks (in MATLAB) and AlphaGo also uses a deep learning variant thereof).

Yngvi actually was very casual about what programming language was used (even though we also had a timed competition), while his framework code was in Java (had been ported from C++ if I recall), so we could take it or leave it. Norvig uses Python I believe for teaching AI. It would be slower.. but ok for learning.

The strength of chess playing is limited by RAM memory (and how much memory overhead, if say you use Python, you can eliminate), but that seems to apply less to MonteCarlo.

This may be a better paper (newer more to the point, might even be on AlphaGo, while I couldn"t locate in paper[s] or any language mentioned):

MOVE EVALUATION IN GO USING DEEP CONVOLUTIONAL NEURAL NETWORKS

http://www.cs.toronto.edu/~cmaddis/pubs/deepgo.pdfhttp://www.cs.toronto.edu/~cmaddis/pubs/deepgo.pdf

"evaluated asynchronously on a GPU [..] GeForce GTX Titan Black GPU"

So a language that works for GPUs is at least better, or that language used with. Julia language could be that language (Java seems not as preferred for GPU work), with or without C++. Behind the scenes, some language for CUDA could be used.

----------------------------------------

Gabriel Cojocaru, love. peace. coffee.

2.5k Views

Not a complete answer, as they"ve used surely more programming languages, but the main are C++, LUA.


推薦閱讀:

柯潔和阿法狗對戰之後,對柯潔的影響有多大?柯潔的棋力提升了多少?
如何看待網路消息「AlphaGo v19 能在讓 v18 四個子的情況下勝率過半」?
生活里有哪些很少人知道,但很實用的人工智慧操作?
如果允許悔棋,人類能在 100 年內下贏 Alpha Go/Master 嗎?
AlphaGo在和李世石對戰時採用的是單機版本么?

TAG:AlphaGo |