Git Product home page Git Product logo

Comments (10)

lightvector avatar lightvector commented on August 14, 2024

How much faster is it? I would think that it would be many, many years. Even if it's a good GPU, one GPU isn't much.

But if you merely want to get a network to human pro level or a bit beyond it rather than to match current bots, it's already the case that one RTX 30xx gaming GPU is probably enough to get there in several weeks to a few months, and of course proportionally less if you have more than one GPU. So with existing hardware it should already be practical for people to train from scratch to reach a very strong level, and to do some experiments of the kind you mention.

from katago.

horos22b avatar horos22b commented on August 14, 2024

from katago.

lightvector avatar lightvector commented on August 14, 2024

Thanks. I guess I don't know what you're doubtful about? Both of the things I've said sound like they're still true. 8x isn't very much to compete with a run that's gone for years with contributors who have collectively donated a lot more GPUs at a time than 8, so it should still take years if you do insist on catching up all the way to the current run. And even if an H100/H200 would be faster, it's also still true that a gaming GPU right now is enough to do meaningful experiments, as I just said it's already possible for existing users to train KataGo from scratch to top human strength in practical amounts of time, and getting to top human strength is a much easier target and is enough to still be able to research some meaningful things about training.

from katago.

lightvector avatar lightvector commented on August 14, 2024

Anyways, the GPU you mention sounds impressive and would certainly make doing experiments faster and easier. I tend to think of it all on a continuum - saying that it's "prohibitively expensive" to do research and then suddenly one new GPU release makes it suddenly not "prohibitively expensive" feels a bit too discrete. Rather, right now AlphaZero-like training is already possible for individuals to replicate in many different cases, even in the full game of Go, enough to do research already. But yes, each new improvement in hardware makes everything a bit faster.

from katago.

horos22b avatar horos22b commented on August 14, 2024

from katago.

lightvector avatar lightvector commented on August 14, 2024

Yes that was my paper. Are you only interested in getting to ELF's strength, or only to the relatively weak strength we reached in the paper? In your initial post, you didn't ask for that, you asked for:

how fast could you go from zero to the current ELO?

Which is what I said seems like it would take many many years, (aside: although if an H100 really is a 100x speedup over a V100 for practical uses and it's not just marketing claims from an overly ideal benchmark, then it would perhaps it would be something like many many months, rather than many many years).

That's why in every reply so far I've been continuing to emphasize that its's worth first considering more carefully your goal and what level is sufficient. ELF is vastly weaker than modern bots, far lower than "current ELO", so if you would be satisfied only to reach ELF's level, then of course it's cheaper. Remember, the stuff you've cited is way back from work done in 2018/2019. It's 2024 now, so of course the top bots have already gone way further.

Whether you draw the line at "just beyond top human level", or at "ELF's strength", or "current Elo", or even "100x beyond any level we've reached yet", is ultimately a little arbitrary in the sense that ALL of them are quite far enough into runs to meaningfully observe scaling trends and to do useful research. Each successive one is a little further along in scaling and marginally better for such research, but because strength is ultimately logarithmic in compute invested, each one costs exponentially more. If the kind of research you imagine could already be done at a weaker level rather than "current Elo", then you don't need an H100. Or you could use an H100 still, but do the research massively faster.

So because the gains are only incremental while the costs are exponential, it's extremely important to be clear about what level you wish to reach that would be sufficient for your research.

It's often the case that when hardware gets 1-2 orders of magnitude faster, software needs to be refactored or rewritten a little to take full advantage of it, and and KataGo's repo is no exception. If you're interested in doing the work and/or contributing improvements, you're welcome to look at https://github.com/lightvector/KataGo/blob/master/SelfplayTraining.md. The closest thing KataGo has to a single-script that runs everything is the "synchronous_loop.sh" script documented there, and with further documentation via inline comments and configuration: https://github.com/lightvector/KataGo/blob/master/python/selfplay/synchronous_loop.sh. The script by default is configured in a way that probably makes more sense for a casual user on a single RTX 20xx or 30xx, so one would probably need to test and adjust a lot of things, and probably switch to asynchronous training once comfortable with the greater complexity of setting that up, since asynchronous is more efficient.

from katago.

lightvector avatar lightvector commented on August 14, 2024

By the way, if you're serious about doing hundreds of runs to study the variety of play that results, let me know how I can support you or if you have specific questions I can answer. I think it would be a cool thing to study.

Note that we do have some data about how different runs already. In the past we've seen many different independent reproductions of AlphaZero-like training - such as ELF, Leela Zero, MiniGo, Sai, and KataGo. All of them ended up with relatively similar opening styles, and all of them ended up pretty similar overall in common tactics.

So I think we can already rule out the idea that they will be "wildly different in tactics and strategy but with some core similarities". Rather it's more likely they will be all extremely similar, but with subtler differences in some specific situations. But the differences could still contain a lot of interesting things to study! For example the various bots differed nontrivially in how fallible they were in specific complex sequences, such as "Miyting's flying dagger joseki". Additionally, KataGo has a ladder solver, but if you disabled it you could study ladder learning, which is a strange beginner-level tactic that AlphaZero bots find difficult to learn if you don't have a solver for it.. I recall ELF and Leela Zero ended up with relatively different on whether they tended to err in thinking ladders would work, or whether they tended to err the other way, and I don't think anyone knows why or whether those differences are random or reproducible.

from katago.

horos22b avatar horos22b commented on August 14, 2024

from katago.

lightvector avatar lightvector commented on August 14, 2024

hence my original question.

I don't know what your original question is, beyond "how fast could you go from zero to the current ELO?" and I've answered that. But your subsequent posts have indicated that you might have conflating "current ELO" with ELF's level, and so on. If all you care about is studying style differences, ELF's level, though vastly weaker than KataGo now, should be plenty. Regardless of H100 or no, it would be extremely wasteful of resources to replicate the entire current run repeatedly. As I mentioned before, I would guess that even barely-stronger-than-humans-level might already be an interesting point for studying style evolution and distribution, and barely-stronger-than-humans-level is already reachable on home consumer GPUs and if that were enough rather than ELF-level, it would be another large multiplicative factor cheaper and faster on top of whatever GPU you use.

from katago.

lightvector avatar lightvector commented on August 14, 2024

Anyways, if you're interested, go for it!

GPU strength is very likely non-blocking for bot-playing-style research, it's more a very-nice-to-have rather than something critical. Even if you lose a factor of 20 in GPU strength relative to what you wanted, that just means you perhaps train each run 7x less far, and do 3x fewer samples, and voila you've made up a factor of 20. And given that Go bots are already massively massively overshooting top human strength and are all so converged that they all arrive to very similar high-level opening preferences and tactics and agree with each other on most positions, and also due to the fact that strength gains are logarithmic (i.e. highly diminishing-returns) in compute anyways, a factor of 5x-10x on a run is probably okay to give up for this kind of purpose, even if it's very nice if you have it.

from katago.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.