Anstatt die traditionellen, historisch definierten Grenzen der Weltmeere zu verwenden, lasse ich einen Clustering-Algorithmus allein anhand der Geometrie entscheiden, wie sie aufgeteilt werden.

    Die Methode: Ich habe mithilfe einer Fibonacci-Spirale ca. 80.000 Punkte generiert, die gleichmäßig über die Erdoberfläche verteilt sind (wobei ich die polare Überabtastung vermieden habe, die man von einem regulären Lat/Lon-Gitter erhält). Nachdem alle Punkte an Land herausgefiltert wurden, blieben etwa 57.000 Meerespunkte übrig. Ich habe sie in kartesischen 3D-Koordinaten auf eine Einheitskugel projiziert und K-Means-Clustering mit k=7 ausgeführt.

    Es ist interessant, die Ergebnisse mit den herkömmlichen Ozeangrenzen zu vergleichen. Der Algorithmus teilt den Atlantik in zwei Regionen (Nord und Süd) auf und der Indische Ozean bleibt ein Cluster. Der Pazifik, der mit Abstand größte Ozean, ist in vier Regionen unterteilt: Norden, Süden, Osten und Westen.

    Verwendete Tools: Python, scikit-learn, cartopy (Robinson-Projektion), global-land-mask, numpy.

    Von 1000_bucks_a_month

    Share.

    14 Kommentare

    1. Riuchando420 on

      interesting but you get some oddities where part of the gulf of mexico is apart of a primarily pacific ocean sea

    2. Is it even stable? Like what do you get if you rerun it a few times? How do centroids behave? Do they land in similar points or not really? And how does it depend on the method to choose initial centroids?

      Also what about 4 oceans not 7 seas?

    3. Ignoring sailing distance and just taking pure distance is probably the biggest failure point you have here.

      Suez and Panama should 100% be boundaries of things, and yet they both leak seas.

    4. On one hand the Yellow Sea is in the yellow sea. On the other hand, the Red Sea is not in the red sea.

    5. Why not density based clustering? Partitioning algorithms are good for convex shaped clusters and it shows here.

    6. Atlantic Ocean, Arctic Ocean, Indian Ocean, Pacific, Pacific, Pacific, and Pacific Ocean lol

    7. dylantherabbit2016 on

      Cyan: North Atlantic Ocean

      Blue: South Atlantic Ocean

      Pink: American Ocean

      Red: Hawaiian Ocean

      Brown: Indian Ocean

      Yellow: Asian Ocean

      Orange: Oceanic Ocean (Australian Ocean if that’s too confusing)

    Leave A Reply