• DannebotOPMB
    link
    fedilink
    dansk
    14 months ago

    HiderDK at 2024-03-19 12:09:50+00:00 ID: kvkfkcg


    Systemet bruger machine learning, som jo er det vi er begyndt at kalde for AI i de sidste par år. Idéen har altid været at det skal være automatiseret.

    De nye ejendomsvurderinger bliver dog lavet med et decision tree, så man kan se de præcise mikrobeslutninger, der leder til den enkelte vurdering

    Hvor har du det fra at den gør det?

    • DannebotOPMB
      link
      fedilink
      dansk
      14 months ago

      SimonGray at 2024-03-19 17:42:17+00:00 ID: kvlxi9h


      Fordi jeg har arbejdet der.

      • DannebotOPMB
        link
        fedilink
        dansk
        14 months ago

        HiderDK at 2024-03-19 18:01:55+00:00 ID: kvm12fj


        Så hvordan specifikt blev de decision-trees brugt og hvorfor kunne man ikke bare bruge linear models?

        • DannebotOPMB
          link
          fedilink
          dansk
          14 months ago

          johanvts at 2024-03-19 18:30:31+00:00 ID: kvm676p


          Hvordan vil du erstatte et decision træ med en linær model?

          • DannebotOPMB
            link
            fedilink
            dansk
            14 months ago

            HiderDK at 2024-03-19 19:31:18+00:00 ID: kvmh45p


            transformere til linear relationship mellem features og target value. One hot encode eller target-mean kategoriske feature.

            Som jeg husker det så blev der primært anvendt features såsom “gennemsnitlitligt kvm pris inden for XX radius”. Og jeg tænker den slags features har nogenlunde linear relationship.

            jeg tænker heller ikke du mener et decision tree men mange træer, der gør det praktisk ugennemskueligt.

            Hvorimod en linear model med intelligent feature-engineering nok vil være lidt mindre præcis men langt mere straight-forward og du kan beregne det via en formel.

            Så hvis bare man kunne komme nogenlunde tæt på et præcision mellem den lineære model og decision-trees metoden ville førnævnte klart være at foretrække som jeg ser det.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.

            • DannebotOPMB
              link
              fedilink
              dansk
              14 months ago

              johanvts at 2024-03-19 21:50:16+00:00 ID: kvn5ywa


              Når jeg tænker over det kan jeg godt se at du kan omsætte. Men du får nogle trælse liniære modeller. F.eks. dette meget simple decision tree:

              pris(Hus,Lejlighed, Kvm){

              hvis(hus) => PrisPrKvm * Kvm

              ellers => PrisPrKvm * 2 *kvm

              }

              Kunne oversættes til

              Pris(Hus, Lejlighed, Kvm) = 
              Hus *(PrisPrKvm* Kvm) + 
              Lejlighed *(2 * PrisPrKvm * Kvm)
              
              

              Men den er ‘træls’ for variablene Hus og Lejlighed gik fra at være booleans til at være decimaltal, men man får kun noget meningsfyldt ud af modellen hvis enten Hus eller Lejlighed er 1 og den anden så 0. Dette er indlejret tydeligt i decision træ modellen, men jeg kan fint evaluerer Pris(0.5,0.8,124) i den liniære model og få skrald ud.

              I sidste ende er det vel bare to måder at skrive (næsten) det samme på.