‹ BackHN Continuity

Thread

Bonsai 2 27B: Near-Lossless Compression in a 9x Smaller Footprint

589 points · 200 comments · JonSchneider

  1. miffy900 · · focus · HN ↗
    I really wish people would stop saying N times smaller than something when making a comparison; that makes no sense - it's 1/9th (11.11%) the size. You don't get a smaller quantity by multiplying by a number greater than 1.0. You could instead reverse the subjects being compared - "the original model is 9x bigger than this new smaller, efficient model" or some such. That makes sense.

    I keep seeing this being used when people talk about efficiency or performance gains and it's just very unintuitive language.

    1. hamandcheese · · focus · HN ↗
      If we were talking about speed instead of size, i think it would be perfectly reasonable to say 9x faster. I'm not sure I agree that 9x smaller is unintuitive. It makes sense to me.
      1. simondotau · · focus · HN ↗
        "Nine times" literally means multiplied by nine, but here we're dividing by nine. It's not unintelligible (because the corrupted verbiage is so commonplace) but it is needlessly awkward. Like saying "resulted in a size reduction increase of 10 megabytes."
        1. D-Machine · · focus · HN ↗
          > "Nine times" literally means multiplied by nine

          Rather, "nine times larger" means multiplied by nine, and "nine times smaller" means divided by nine. This is basic and not particularly awkward, certainly not more so than e.g. positive/negative correlation, or many much more awkward and more common linguistic constructions, IMO.

          If you have to edit out words (i.e. context) to argue a phrase doesn't make sense... I am not sure what mental model you have for natural language, exactly, but it certainly isn't a very robust one.

          1. simondotau · · focus · HN ↗

            [dead]

        2. dools · · focus · HN ↗
          Saying something is 9 times bigger is also a shorthand because “times” is a shorthand for repeated addition. You are adding a number “9 times” to make it “9 times larger”. But we don’t say the “adding” part.

          Likewise if I repeatedly subtract a number 9 times to make it “9 times smaller” I can omit the subtracted bit.

          1. simondotau · · focus · HN ↗
            That interpretation doesn’t make sense. Repeated subtraction does not correspond to division in the way repeated addition corresponds to multiplication.
            1. dools · · focus · HN ↗
              Que? Division is the opposite of multiplication of course it does.

              If you divide 81 by 9 you subtract 9 from 81 until you get to 0. The number of TIMES you do that is the result “81 divided by 9”.

              1. simondotau · · focus · HN ↗
                This isn’t analogous to repeated addition giving multiplication. You’ve switched from applying an operation nine times to counting how many times an operation can be applied.

                You chose 81 because it’s the one number that makes your argument appear to work. Try the same reasoning with 80 ÷ 9.

                1. dools · · focus · HN ↗

                  [dead]

      2. _carbyau_ · · focus · HN ↗
        "faster" relates to speed. Speed is related to time and speed of a thing is usually defined by time. 9x faster speed translates to time/9. There is an extra step of related conversion there.

        Conversely, 9x [filesize/natural number] is bigger. Every time. At least in the basic maths used by most people. There is no conversion into other units.

        Therefore "9x smaller" when talking about a natural number like filesize is a nonsense statement in logic terms. If you strive for unambiguous phrasing - which is a significant part of the programming experience - this logical nonsense might well perturb you.

        But english language is a flexible thing and if the phrase communicates your intent to your audience then that's fine by me.

        1. [deleted] · · focus · HN ↗

          [deleted]

        2. jonhohle · · focus · HN ↗
          I think more intuitively for speed - you are multiplying the things per period. If I’m making widgets 9x faster I have 9 x the previous number of units per period of time. To get the amount of time, you invert the ratio to period over units.

          Multiplying some scale by units per period makes sense and is both linguistically and mathematically sound.

        3. [deleted] · · focus · HN ↗

          [deleted]

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.