<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>cengelsen.no (norsk)</title>
        <link>https://test.cengelsen.no/blog</link>
        <description>Blogginnlegg fra cengelsen.no — på norsk</description>
        <lastBuildDate>Mon, 26 Feb 2024 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>no</language>
        <atom:link href="https://test.cengelsen.no/rss.xml" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Vi Burde Alle Abonnere På Kalendere]]></title>
            <link>https://test.cengelsen.no/blog/vi-burde-alle-abonnere-på-kalendere</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/vi-burde-alle-abonnere-på-kalendere</guid>
            <pubDate>Mon, 26 Feb 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Vi burde normalisere å abonnere på kalenderstrømmer, slik at vi aldri går glipp av hendelser igjen. Pluss, det er mindre tungvint.]]></description>
            <content:encoded><![CDATA[<p>Kanskje ikke så kontroversiell eller nyskapende mening, men vi burde normalisere å abonnere på kalenderstrømmer. I det siste har jeg blitt litt fascinert av å kunne importere hendelser fra andres kalendere inn i min egen. Dette kom fra ønsket om å finne diverse arrangementer som jeg kunne delta på utenfor min vanlige rutine. </p>
<p>Jeg søkte derfor igjennom alle mulige arrangører jeg kunne finne i byen min for å se hvilke arrangementer de tilbydde ut halvåret. Dette tok overraskende lang tid og kan garantert gjøres lettere. </p>
<h3 id="definisjoner">Definisjoner</h3>
<p>Denne seksjonen kan bli litt lang og pedantisk, så <a href="#hvordan-er-situasjonen-n%C3%A5">klikk her om du vil lese forbi</a>.</p>
<ul>
<li><p><strong>Arrangør</strong></p>
<p> Enhver aktør som organiserer hendelser. I denne teksten er det ikke det samme som en nettside som samler hendelser fra flere arrangører inn i samme plattform. </p>
</li>
<li><p><strong>Hendelsestorg</strong></p>
<p> En plattform, hovedsakelig nettside, som fasiliterer for at arrangører kan publisere og dele hendelsene de arrangerer. </p>
</li>
<li><p><strong>Kalender-strøm</strong></p>
<p> En kontinuerlig strøm bestående av hendelser. Hendelsene er objekter i <code>.ics</code>-formatet.</p>
</li>
<li><p><strong>Kalenderabonnent</strong></p>
<p> En hvilken som helst aktør som lytter på en kalenderstrøm.</p>
</li>
<li><p><strong>Hendelse</strong></p>
<p> Fellesbetegning for alle objekter i kalenderstrømmen. Dette er alt fra arrangementer, til fester, til dugnader, til avtaler og møter. Her er alle typer hendelser, slik som jeg logisk deler dem opp i kategorier:</p>
<ul>
<li><p>Arrangement</p>
<p>Et arrangement er en type hendelse hvor deltakerne konsumerer et innhold levert av en arrangementsvert, eller arrangør. Deltakelse er i utgangspunktet helt frivillig, men det er muligens noen tilfeller hvor andre aktører krever at du deltar. </p>
<p>Om et arrangement har en programplan med flere separate hendelser, må en anvende en kategorisering av hver hendelse i programplanen. Om programplanen utelukkende inneholder hendelser av en annen type, kan hele arrangementet defineres som den typen. F.eks. Et arrangement kan ha en programplan hvor alle hendelsene in programplanen er en aktiv fest (se under). I så tilfelle er hele arrangementet en aktiv fest. </p>
</li>
<li><p>Dugnad</p>
<p>En dugnad er en type hendelse hvor deltakerne produserer noe, eller bidrar med arbeid. Poenget med hendelsen er å få gjort arbeid, som del av å møte et visst forhåndsbestemt mål. Dette arbeidet gjøres for å bidra til et fellesskap. Deltakelse er i utgangpunktet frivillig, men deltakerne kan ikke opphøre arbeidet før dugnaden er avsluttet. </p>
</li>
<li><p>Fest</p>
<p>En fest er en type hendelse hvor deltakerne både produserer og konsumerer. Med dette mener jeg at enhver deltaker både tar fra hendelsen og bidrar til hendelsen. Hensikten med hendelsen er sosial interaksjon, og deltakelse er helt frivillig. Denne typen kan videre deles inn i to underkategorier. </p>
<ul>
<li><p>Aktiv fest</p>
<p>En fest som sentrerer seg rundt en aktivitet. I en slik hendelse er det en forventning, og noen ganger et mykt krav, om at deltakeren aktivt involverer seg i aktiviteten. </p>
</li>
<li><p>Inaktiv fest</p>
<p>Sosial hendelse som er foruten en aktivitet som fokus av hendelsen. I en slik hendelse er ikke noe forventning eller krav om aktiv deltakelse. Fokuset er heller bare den sosiale interaksjonen.</p>
</li>
</ul>
</li>
<li><p>Avtale</p>
<p>En type hendelse med natur og hensikt som en fest. En avtale skiller seg fra en fest i en forstand av størrelse. En avtale er mindre i størrelse og mer formell i natur. En avtale har alltid et forhåndsbestemt mål, mens en fest ikke har det. En kan videre dele denne typen inn i to underkategorier.</p>
<ul>
<li><p>Alvorlig avtale</p>
<p>Dette er et type møte hvor deltakere møtes for å produktive formål. Møtet er av en alvorlig natur og ofte relatert til avklaring av informasjon i arbeidstid. </p>
</li>
<li><p>Festlig avtale</p>
<p>Dette er et type møte hvor deltakere møtes for festlige formål. Møtet er av en avslappet natur og ofte relatert til sosial interaksjon på fritiden.</p>
</li>
</ul>
</li>
<li><p>Tidsfrist</p>
<p>En tidsfrist er en type hendelse i kalenderstrømmen som er lik i natur som en avtale. Forskjellen er at en ikke nødvendigvis har samtykket med tidspunktet, som er utelukkende bestemt av arrangøren. Det er et hardt krav at denne tidsfristen må imøtekommes av deltakeren. Hensikten med tidsfrister er vanligvis for at arrangøren skal forsikre seg at mål er nådd i tide, eller at arbeid blir gjort i tide.</p>
</li>
<li><p>Gym</p>
<p>Dette er en type hendelse hvor en hverken produserer eller konsumerer. Hensikten med hendelsen er å delta i en aktivitet, enten for seg selv eller med andre, og gjennomføre sin kroppslige plikt. Hensikten med slike hendelser er å forbedre, eller vedlikeholde, sin egen fysiske kapasitet. Det er helt frivillig grad av deltakelse.</p>
</li>
</ul>
</li>
</ul>
<h3 id="hvordan-er-situasjonen-nå">Hvordan er situasjonen nå?</h3>
<p>Nå vet jeg ikke hvordan det er i din by, men Bergen er ikke særlig oversiktlig når det gjelder å finne diverse hendelser som skjer rundt i byen. Det er ikke ett sentralt sted hvor en kan hente ut absolutt alle hendelser som skjer. De ulike typene hendelser, er spredd ut på en god del forskjellige nettsider. </p>
<p>De aller fleste arrangører har en egen nettside, hvor de legger ut hendelsesdetaljer, men ikke alle. De som ikke har egen nettside, legger bare ut hendelsesinformasjonen på Facebook 🤢 eller Instagram 🤮, hvilket ikke er idéelt for alle.</p>
<p>arrangørene bruker tjenester som <a href="https://www.ticketmaster.no/city/bergen/40500">Ticketmaster for Bergen</a>, <a href="https://ticketco.events/no/nb/m?pattern=bergen">TicketCo for Bergen</a>, <a href="https://www.bergenlive.no/konsertkalender/">Bergenlive</a>, <a href="https://www.studentbergen.no/studentkalender">Studentbergen</a> og <a href="https://www.meetup.com/find/?source=EVENTS&eventType=inPerson&sortField=DATETIME&location=no--Bergen">Meetup for Bergen</a> for å legge ut arrangementsinformasjon i tillegg til sin egen side. <a href="https://kvarteret.no/events">Det Akademiske Kvarter</a> er et eksempel på en side som henter ut en liste av alle arrangementer fra studentbergen, hvor lokalet er Det Akademiske Kvarter. </p>
<p>Det er noe overlapp mellom et par av nettsidene, men ikke helt. Så om en vil finne alle aktuelle hendelser, må en gå fra nettside til nettside og lete. Foreløpig, har ingen av nettsidene nevnt ovenfor, utenom TicketCo, en måte å laste ned en <code>.ics</code>.-fil som jeg kan importere inn i kalenderen min. Viktigst av alt; de har ikke en måte å abonnere på hendelser.</p>
<p><strong>NB</strong>: <em>Jeg legger ved en liste over alle aktuelle arrangører jeg fant under <a href="#arrang%C3%B8rer">arrangører</a>.</em></p>
<h3 id="hva-er-problemet">Hva er problemet?</h3>
<p>Problemet er hovedsakelig at det er tidkrevende og kronglete å finne de hendelsene jeg vil gå på. For hver hendelse jeg finner, må jeg, i min egen kalender, opprette ny hendelse, skrive inn tittel, skrive inn beskrivelse, velge start-tidspunkt, velge slutt-tidspunkt, velge riktig kalender-merkelapp, lagre, gå til neste hendelse og gjenta. </p>
<p>Snork og dobbelsnork! Skal det virkelig forventes av meg i den kommende KI-æraen at jeg skal gjøre noe som helst manuelt?</p>
<p>Ikke bare det, men det er 100% mulig for en arrangør å endre detaljene på en hendelse etter at jeg har manuelt lagt det inn i kalenderen min. Så da må jeg regelmessig verifisere i ettertid at ingenting har forandret seg i hendelsen. </p>
<p>For eksempel, ved <a href="https://bergenbibliotek.no/">Bergens Offentlige Bibliotek</a> (BOB) skulle de vise en film, kalt <a href="https://www.imdb.com/title/tt0050976/">Det Syvende Segl</a>. Jeg la det da manuelt inn i kalenderen et par uker i forkant, fordi jeg ville at hendelsen skulle være en del av en liste av hendelser, eller kalenderstrøm. Dette er bare fordi jeg vil holde kalenderen min organisert. Om da BOB hadde endret tidspunktet for visningen av filmen, til å være et annet tidspunkt, hadde det blitt utrolig bomtreff for meg å møte opp til originalt planlagt tid. </p>
<p>Jeg tenker ikke bare på meg selv her, men også på alle andre. Med tanke på hvor utrolig tungvint dette er, er det ikke rart at det er lite oppmøte på lokale hendelser. Siden det ikke finnes en sentralisert plattform for dette, er det heller ikke rart at ingen vet om hendelsene. Ingen finner dem. Synligheten til hendelser generelt følger hovedsakelig denne filosofien: &quot;Du får vite om det hvis noen du kjenner vet om det&quot;. Dette er ganske ineffektivt. Videre gidder ingen å skrive dem inn i kalenderen sin, fordi det er for tungvint, og vanligvis fordi de ikke kan se hvem andre de kjenner som skal dit.</p>
<h3 id="hvordan-kan-det-bli-bedre">Hvordan kan det bli bedre?</h3>
<p>Den beste løsningen på dette problemet, i min mening, er å abonnere på kalenderstrømr. Å generere en <code>.ics</code>-URL som kan hentes ut av nettside-besøkende. Den URL-en kan de nettside-besøkende legge inn i sin egen kalender. Da blir kalenderen deres regelmessig automatisk synkronisert med arrangøren sin kalenderstrøm. Enhver forandring i hendelsen, gjort av arrangøren, blir oppdatert i de nettside-besøkende sin kalender. Helt uten at nettside-besøkeren trenger tenke på det, eller å gjøre noe.</p>
<p>Jeg ser for meg to løsninger på dette problemet. </p>
<ol>
<li><p><strong>Vi normaliserer å abonnere på andres kalendere.</strong></p>
<p>Hver arrangør, samt hvert hendelsestorg, lager sin egen tekniske løsning som genererer en <code>.ics</code>-URL. En god løsning på dette er Echo sin: <a href="https://echo.uib.no/for-studenter/arrangementer?view=week">https://echo.uib.no/for-studenter/arrangementer?view=week</a>. Her kan du &quot;bygge&quot; din egen <code>.ics</code>-URL ved å krysse av for hvilke typer hendelser du vil følge med på. Da får du en konstant oppdaterende liste med hendelser. Dette er forholdsvis bedre enn å lytte på en URL for hvert individuelle hendelse, siden min personlige kalender blir brått ganske rotete. En semi-dårlig løsning er <a href="https://bergenbibliotek.no/arrangement/alle-arrangementer">BOB</a> sin løsning. Den gir meg absolutt alle hendelser, men jeg kan ikke filtrere ut de som er absolutt ikke relevant for meg. </p>
</li>
<li><p><strong>Én kalender-tjeneste opprettes for alle arrangører.</strong></p>
<p>Meetup er en utrolig god idé, men er ikke helt optimal for å løse dette problemet. Det er et fåtall av arrangører som legger ut hendelser der, og det er ikke mulig å abonnere på hendelser. Du får opp hendelsen i meetup-kalenderen din, om du har bruker, men bare hvis du trykker på at du skal komme innom. Personlig hadde jeg foretrukket et gratis alternativ, hvor en ikke trengte å registrere seg, som alle arrangører brukte. Samtidig, burde også alle hendelser være synlige, uavghengig av om du trykker &quot;skal&quot; eller ikke.</p>
</li>
</ol>
<h3 id="konklusjon">Konklusjon</h3>
<p>Alle organisasjoner, samt andre aktører, som organiserer og verter hendelser, burde opprette en måte for folk å abonnere på en kalenderstrøm som gir dem oversikt over alle kommende hendelser. Alternativt, en måte å importere en <code>.ics</code>-fil om det bare skulle være en enkelt hendelse. På den måten garanterer du, som arrangør, at alle som abonnerer på den kalenderstrømmen får med seg alt de trenger å vite, samt alle fortløpende endringer som blir gjort på hendelsen i forkant av hendelsesdatoen.</p>
<p>Den idéelle løsningen jeg ser for meg fyller følgende krav:</p>
<ul>
<li>Det er en URL som jeg kan importere inn i min egen kalender, som kalenderen min &quot;lytter på&quot;.</li>
<li>Jeg kan filtrere vekk den typen hendelser jeg ikke vil følge med på.</li>
<li>For hvert hendelse, kan jeg laste ned en <code>.ics</code>-fil som bare handler om det hendelseet.</li>
<li>Om det er mulig, burde jeg kunne se hvem som skal på hendelseet. Selvfølgelig, med forutsetningen om at en har samtykke fra alle abonnenter.</li>
</ul>
<p>Denne lille implementasjonen på nettsiden din, uansett hvem du er som arrangør, mener jeg kan drastisk forbedre oppmøtet på hendelsene dine. </p>
<h3 id="arrangører">arrangører</h3>
<p>Under finner du en grov, tafatt liste med arrangører jeg har funnet i Bergen.</p>
<h4 id="generelt">Generelt</h4>
<ul>
<li><p><a href="https://www.bergenlive.no/konsertkalender/">Bergenlive.no</a></p>
</li>
<li><p><a href="https://www.ticketmaster.no/city/bergen/40500">Ticketmaster for Bergen</a></p>
</li>
<li><p><a href="https://ticketco.events/no/nb/m?pattern=bergen">TicketCo for Bergen</a></p>
</li>
<li><p><a href="https://www.kodebergen.no/kalender">Kode (Kunstmuseum)</a></p>
</li>
<li><p><a href="https://usf.no/program/">USF Verftet</a></p>
</li>
<li><p><a href="https://landmark.ticketco.events/no/nb/">Landmark</a></p>
</li>
<li><p><a href="https://bergenbibliotek.no/arrangement">Bergen Offentlige Bibliotek</a></p>
</li>
</ul>
<h4 id="studenter">Studenter</h4>
<ul>
<li><p><a href="https://www.kulturhusetibergen.no/program/">Kulturhuset i Bergen</a></p>
</li>
<li><p><a href="https://kvarteret.no/events">Det Akademiske Kvarter</a></p>
</li>
<li><p><a href="https://asfbergen.no/hva-skjer/">Aktive Studenter Bergen</a></p>
</li>
<li><p><a href="https://rf.uib.no/">Bergen Realistforening</a></p>
</li>
<li><p><a href="https://echo.uib.no/for-studenter/arrangementer">Echo</a></p>
</li>
<li><p><a href="https://www.uib.no/infomedia/38184/enter-studentforeningen-ved-infomedia">Enter</a></p>
</li>
</ul>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Anvendelse av NLP-teknikker på TC39s møtereferater]]></title>
            <link>https://test.cengelsen.no/blog/anvendelse-av-nlp-teknikker-på-tc39s-møtereferater</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/anvendelse-av-nlp-teknikker-på-tc39s-møtereferater</guid>
            <pubDate>Fri, 15 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Denne rapporten detaljerer et kodingsprosjekt rettet mot å utnytte naturlig språkprossesseringsteknikker (NLP) for å ekstrahere og analysere informasjon fra TC39-møtereferater, en avgjørende del av ECMAScript-standardiseringsprosessen]]></description>
            <content:encoded><![CDATA[<h2 id="sammendrag">Sammendrag</h2>
<p>Denne rapporten detaljerer et kodeprosjekt rettet mot å utnytte naturlig språkprossesseringsteknikker (NLP) for å ekstrahere og analysere informasjon fra TC39s møtereferater, en avgjørende del av ECMAScript-standardiseringsprosessen. Bakgrunnen gir kontekst om ECMAScript, TC39, og betydningen av møtereferater i utformingen av webutvikling. Implementeringen beskriver den omhyggelige prosessen med tekstekstraksjon og bruk av ulike NLP-teknikker, fra sentimentanalyse til semantisk rollemerking. Den resulterende datastrukturen i JSON-format gir en klar representasjon av den ekstraherte informasjonen, mens en følelsesanalysegrafikk visuelt illustrerer den følelsesmessige dynamikken innenfor forslag. Prosjektet er i tråd med et bredere mål om å forbedre åpenhet og samarbeid innenfor ECMAScript-standardiseringsprosessen, og gi utviklere en nyansert innsikt i språkendringer og komitédiskusjoner.</p>
<h2 id="introduksjon">Introduksjon</h2>
<p>ECMAScript-standarden står som et grunnleggende element som utvikler og vedlikeholder retningslinjene som JavaScript er bygget på. Den kontinuerlige forbedringen av ECMAScript ledes av TC39-komiteen, en viktig del innen Ecma International. Denne komiteen, som består av representanter fra ulike organisasjoner, spiller en avgjørende rolle i å forme standarden og sikre dens konsistens og tilpasningsevne på tvers av ulike implementeringer.</p>
<p>Fokuset for dette kodeprosjektet er å utforske teknikker innen naturlig språkprosessering (NLP) for å ekstrahere og analysere informasjon som ligger i møtereferatene til TC39-komiteen. Møtereferatene utgjør en omfattende logg over diskusjoner, beslutninger og forslag, og gjenspeiler den dynamiske utviklingen av ECMAScript-standarden.</p>
<p>Denne rapporten beskriver bakgrunnen for ECMAScript og TC39-komiteens rolle, og understreker betydningen av deres møtereferater for å spore språkets utvikling. Deretter går den i dybden på noen NLP-teknikker, fra følelsesanalyse til semantisk rollemerking, og belyser deres relevans for å forstå nyansene i tekstlig innhold.</p>
<p>Implementeringsoversikten gir en trinnvis gjennomgang av utformingen av skriptet, og forklarer hvordan tekstekstraksjon, tidsstempelidentifisering, gjenkjenning av forslagsdeler og ytringsprosessering utføres. Bruken av rammeverk som TextBlob, Universal Sentence Encoder, Yake og andre er detaljert, og viser en førsteutkasttilnærming til informasjonsekstraksjon og -analyse.</p>
<p>Visuell representasjon i form av &quot;sentiment-grafer&quot; forbedrer tolkbarheten av dataene og gir en dypere forståelse av følelsesdynamikken innenfor hvert forslag. I tillegg gir JSON-file som produseres gir en strukturert og lesbar oversikt over de prosesserte dataene, som muliggjør videre analyse eller deling av resultatene.</p>
<p>Relatert arbeid blir diskutert, og introduserer NLP-biblioteker som Stanza og Spacy, i tillegg til Hugging Face Sentence Transformer-modellen. Disse ressursene fungerer som referansepunkter og alternativer, og belyser mangfoldet av verktøy tilgjengelig i NLP-landskapet.</p>
<p>Dette prosjektet har som mål å lage et verktøy som anvender NLP-teknikker på TC39s møtereferater. Målet er å ekstrahere verdifull informasjon fra korpuset som kan gi en dypere forståelse av hvordan et forslag blir diskutert, deltakernes holdninger til det og hvordan dette endrer seg over tid.</p>
<h2 id="bakgrunn">Bakgrunn</h2>
<p><strong>ECMAScript</strong></p>
<p>ECMA-262 er en skriptspråkspesifikasjon som fungerer som standarden JavaScript baserer seg på. Den utvikles og vedlikeholdes av Ecma International, en standardiseringsorganisasjon. ECMAS-262 gir reglene og retningslinjene et skriptspråk må følge for å anses som ECMAScript-<br />kompatibelt.</p>
<p>JavaScript er den mest kjente implementeringen av ECMAScript, men andre språk som JScript og ActionScript følger også ECMAScript-standarden. Målet med ECMA-262 er å standardisere skriptspråket for å sikre interoperabilitet og konsistens på tvers av ulike nettlesere og<br />miljøer.</p>
<p>ECMAScript-spesifikasjonen utvikler seg over tid, med nye funksjoner og forbedringer som legges til for å møte kravene fra utviklere og det skiftende landskapet for webutvikling. Hver versjon av ECMAScript introduserer nye funksjoner, forbedringer og feilrettinger. Utviklere refererer ofte til de ulike versjonene av ECMAScript med utgavenummeret, som ECMAScript 6 (ES6) eller ECMAScript 2015, som brakte betydelige forbedringer til språket. Påfølgende utgaver, som ECMAScript 2016, ECMAScript 2017 og så videre, har fortsatt å bygge på standarden. Den nyeste på skrivingstidspunktet er den 14. utgaven, ECMAScript 2023.</p>
<p><strong>TC39-komiteen</strong></p>
<p>TC39 (Technical Committee 39) er en komité innen Ecma International som er ansvarlig for standardiseringen av programmeringsspråket ECMAScript. TC39s hovedmål er å utvikle, vedlikeholde og videreutvikle ECMAScript-standarden.</p>
<p>TC39 består av representanter fra ulike organisasjoner, inkludert nettleserleverandører, språkutviklere, interesseparter fra programvareutviklingsmiljøet og akademia. Komiteen samarbeider om å foreslå og diskutere nye funksjoner, forbedringer og endringer i ECMAScript.</p>
<p>Prosessen med å introdusere en ny funksjon eller modifisere en eksisterende funksjon, involverer vanligvis flere stadier innen TC39:</p>
<ol>
<li><p><strong>Trinn 0:</strong> Et innledende forslag eller idé blir presentert som en stråmann. Dette er et<br /> uformelt trinn for å få tilbakemelding og innledende tanker fra komiteen.</p>
</li>
<li><p><strong>Trinn 1:</strong> Forslaget formaliseres, og den overordnede designen og<br /> motivasjonen blir presentert for komiteen. Hvis det blir akseptert, går det videre til<br /> neste trinn.</p>
</li>
<li><p><strong>Trinn 2:</strong> Forslaget blir ytterligere raffinert, og en foreløpig spesifikasjon<br /> blir laget. Dette trinnet innebærer mer detaljerte diskusjoner og samarbeid<br /> om den foreslåtte funksjonen.</p>
</li>
<li><p><strong>Trinn 3:</strong> Forslaget anses som ferdig funksjon-komplett, og en komplett<br /> spesifikasjon er levert. På dette trinnet er det klart for innledende testing og<br /> tilbakemelding fra &quot;implementatører&quot;.</p>
</li>
<li><p><strong>Trinn 4:</strong> Forslaget har mottatt tilbakemelding, har blitt testet og er<br /> klart til å bli inkludert i ECMAScript-standarden. Når komiteen<br /> når enighet, blir funksjonen lagt til i standarden.</p>
</li>
</ol>
<p>TC39-komiteen spiller en avgjørende rolle i den pågående utviklingen og forbedringen av ECMAScript, og sikrer at språket utvikler seg for å møte behovene til utviklere og det skiftende landskapet for webutvikling. Komiteens arbeid har en direkte innvirkning på funksjonene og mulighetene tilgjengelig for utviklere når de skriver JavaScript eller andre språk basert på ECMAScript.</p>
<p><strong>Møtereferater</strong></p>
<p>TC39-møtereferatene er dokumenter som oppsummerer diskusjonene, beslutningene og utfallene fra komiteens møter. Disse referatene gir en detaljert logg over hva som ble diskutert i et bestemt møte, inkludert forslag til nye språkfunksjoner, endringer i ECMAScript-standarden og andre relevante emner.</p>
<p>Her er noen nøkkelpunkter om disse møtereferatene:</p>
<ol>
<li><p><strong>Agenda og emner:</strong> Møtereferatene inkluderer vanligvis en agenda som<br /> skisserer emnene som skal diskuteres i løpet av møtet. Dette kan inkludere<br /> spesifikke forslag til nye språkfunksjoner, oppdateringer på eksisterende forslag,<br /> diskusjoner om språkdesignprinsipper og mer.</p>
</li>
<li><p><strong>Deltakere:</strong> Referatene lister ofte opp deltakerne som var til stede på<br /> møtet, inkludert representanter fra ulike organisasjoner, språkutviklere<br /> og interesseparter. Dette gir åpenhet om hvem som bidrar til diskusjonene.</p>
</li>
<li><p><strong>Diskusjon og beslutninger:</strong> For hvert agendapunkt oppsummerer referatene<br /> diskusjonene som fant sted. Dette inkluderer synspunktene som ble uttrykt av<br /> ulike deltakere, potensielle bekymringer og eventuelle beslutninger eller utfall<br /> som komiteen kom frem til. Det gir innsikt i resonnementet bak<br /> beslutningene som ble tatt på møtet.</p>
</li>
<li><p><strong>Forslagsoppdateringer:</strong> Hvis det er oppdateringer på spesifikke språkforslag<br /> (funksjoner som vurderes for inkludering i ECMAScript), vil møtereferatene belyse disse oppdateringene. Dette kan inkludere fremskritt til et høyere trinn i forslagsprosessen eller endringer basert på mottatt tilbakemelding.</p>
</li>
<li><p><strong>Handlinger og neste steg:</strong> Referatene inkluderer ofte handlingspunkter og neste<br /> steg som oppstår fra diskusjonene. Disse kan involvere videre forskning,<br /> adressering av bekymringer eller klargjøring av materiell til neste møte.</p>
</li>
<li><p><strong>Lenker til materiell:</strong> Møtereferatene kan inkludere lenker til tilleggsmaterialer,<br /> som presentasjonslysbilder, dokumenter eller eksterne referanser<br /> som ble diskutert under møtet.</p>
</li>
</ol>
<p>Ved å gjennomgå disse møtereferatene kan utviklere, implementatører og andre interesserte parter holde seg oppdatert om den pågående innsatsen til TC39- komiteen. Det gir det bredere miljøet mulighet til å forstå rasjonalet bak språkendringer, spore fremdriften til spesifikke forslag og gi tilbakemelding på den utviklende ECMAScript-standarden.</p>
<p><strong>Markdown-filer</strong></p>
<p>I GitHub-kodevelvet, i rotmappen, kan det være ulike filer og mapper knyttet til TC39-prosjektet. Blant dem er det en dedikert mappe hvor møtereferater er lagret, kalt &quot;meetings&quot;.</p>
<p>Denne mappen inneholder mapper som representerer hver måned og hvert år hvor det har vært et møte, noe som betyr én mappe for hver andre måned siden mai 2012. I hver av disse mappene finnes møtereferatene, samt andre relevante filer for møtet, som toc.md og summary.md.</p>
<p>For dette prosjektet er det imidlertid kun møtereferatene selv som er relevante.</p>
<p><strong>Formatering av møtereferatene</strong></p>
<p>Møtereferatene er formatert på en slik måte at hver ytring kan knyttes til en bestemt person. På denne måten kan hva hver person bidrar med til det aktuelle forslaget, lett skilles fra de andre personene involvert i møtet. Det kan brytes ned på følgende måte:</p>
<ol>
<li><p><strong>Talers akronym:</strong> Det tretegns-akronymet i starten av hver<br /> linje representerer identifikatoren til personen som snakker. Disse akronymene er<br /> vanligvis unike for hver deltaker og brukes konsekvent gjennom hele<br /> møtereferatet.</p>
</li>
<li><p><strong>Kolon (:) separator:</strong> Kolonet fungerer som en separator mellom<br /> talerens akronym og innholdet i ytringen deres. Det<br /> skiller visuelt taleren fra kommentaren.</p>
</li>
<li><p><strong>Ytringens innhold:</strong> Etter kolonet presenteres selve innholdet i det<br /> personen sier. Dette er essensen av deltakerens<br /> bidrag til diskusjonen, og kan inkludere uttalelser, spørsmål,<br /> forslag, bekymringer eller andre relevante kommentarer.</p>
</li>
</ol>
<p>Her er et eksempel fra feb-01.md i mappen 2023-01:</p>
<pre><code>ABC: Just a note to SYG to follow up with offline and to everyone interested in implementing this and trying implementation...

DEF: Ephemeron collection. 

ABC: Thank you. I was trying to remember the word. By doing the transpose thing, the case that needs to be cheap becomes cheap.

DEF: So there are a couple different implementation strategies. Trade off, the big O notation of the run, the get, or the wrap. (...)
</code></pre>
<p>I dette eksempelet er <strong>ABC</strong> og <strong>DEF</strong> tretegns-akronymer som representerer ulike deltakere. Etter kolonet presenterer hver linje innholdet i deltakerens ytring eller kommentar.</p>
<h2 id="et-overblikk-over-nlp-teknikker">Et overblikk over NLP-teknikker</h2>
<ol>
<li><p><strong>Sentimentanalyse</strong> er en naturlig språkprossesseringsteknikk utviklet<br /> for å oppdage og kvantifisere den følelsesmessige tonen uttrykt i en tekst,<br /> vanligvis kategorisert som positiv, negativ eller nøytral stemning. Denne<br /> prosessen involverer bruk av maskinlæringsalgoritmer for å analysere<br /> ord og uttrykk innenfor en kontekst, samtidig som det tas hensyn til språklige nyanser og<br /> variasjoner. Følelsesanalyse er særlig verdifull i næringslivet<br /> for å vurdere kundetilfredshet gjennom anmeldelser og sosiale medier-kommentarer. I tillegg bidrar det til å overvåke den offentlige stemningen rundt<br /> produkter, tjenester eller merker, slik at organisasjoner kan ta informerte<br /> beslutninger basert på de rådende holdningene blant målgruppen.<br /> (Devopedia. 2022.)</p>
</li>
<li><p><strong>Gjenkjenning av navngitte enheter (NER)</strong> er en viktig komponent innen<br /> informasjonsekstraksjon i naturlig språkprosessering. Det innebærer<br /> å identifisere og klassifisere enheter som navn på personer, organisasjoner,<br /> steder, datoer og andre spesifikke termer innenfor en gitt tekst. NER-<br /> systemer bruker maskinlæringsalgoritmer som er trent på<br /> annoterte datasett for nøyaktig å lokalisere og kategorisere disse enhetene.<br /> Anvendelser av NER spenner fra å ekstrahere strukturert informasjon fra<br /> ustrukturert tekst, forbedre søkemotorers kapasiteter, til å muliggjøre<br /> spørsmål-svar-systemer ved å identifisere nøkkelenheter i et dokument.<br /> (Devopedia. 2020.)</p>
</li>
<li><p><strong>Semantisk rollemerking (SRL)</strong> er en oppgave innen semantisk parsering som<br /> fokuserer på å forstå relasjonene mellom ulike elementer i en setning<br /> ved å tildele spesifikke roller til ord eller fraser, som å identifisere<br /> agenten, pasienten eller mottakeren i en gitt handling. Denne teknikken går<br /> utover tradisjonell syntaktisk parsering for å fange den dypere meningen<br /> og rollene til hver komponent i en setning. SRL er avgjørende i<br /> oppgaver som krever en nyansert forståelse av naturlig språk, inkludert<br /> maskinoversettelse, spørsmål-svar og følelsesanalyse, hvor det er avgjørende å<br /> forstå rollene til enhetene for nøyaktig tolkning.<br /> (Devopedia. 2020.)</p>
</li>
<li><p><strong>Ordklassemerking</strong> POS-tagging, tildele ordklassetagger<br /> til ord, håndterer flertydighet i naturlig språkprosessering ved å løse<br /> flere meninger basert på kontekst. Opprinnelig lingvistisk, gikk POS-taggere<br /> over til en statistisk tilnærming hvor modeller oppnår over 97%<br /> nøyaktighet. Dette forprosesseringstrinnet er grunnleggende i NLP og støtter<br /> applikasjoner som informasjonsgjenfinning, navngitt enhetsgjenkjenning og<br /> talesystemer. (Devopedia. 2019.)</p>
</li>
<li><p><strong>Tekstoppsummering</strong> er en tekstbehandlingsteknikk som tar sikte på å destillere<br /> den essensielle informasjonen fra et dokument samtidig som den kjernebetydningen beholdes.<br /> Det finnes to hovedtyper oppsummering: <em>uttrekkende</em> som<br /> velger og kombinerer eksisterende setninger, og <em>abstraherende</em> som genererer<br /> nye setninger for å formidle det oppsummerte innholdet. Oppsummering finner<br /> anvendelse i nyhetsartikler, forskningsrapporter og dokumenthåndtering,<br /> og gir en konsis oversikt over omfattende tekster og bidrar til informasjonsgjenfinning og beslutningstaking. (Devopedia. 2020)</p>
</li>
<li><p><strong>Semantisk likhet</strong> kvantifiserer likheten mellom to tekstdeler<br /> basert på deres mening heller enn kun å støtte seg på leksikalsk eller syntaktisk<br /> likhet. Disse målene tar hensyn til kontekst, semantikk og<br /> relasjoner mellom ord, noe som muliggjør en mer nyansert forståelse av<br /> likhet. Semantisk likhet anvendes i ulike NLP-oppgaver, inkludert<br /> duplikatdeteksjon, dokumentgruppering og anbefalingssystemer.<br /> Ved å fange den underliggende meningen i tekst, forbedrer semantisk likhet<br /> nøyaktigheten og relevansen i systemer som krever paring eller gruppering<br /> av tekstlig informasjon. (Harispe et al., 2015)</p>
</li>
<li><p><strong>Nøkkelordekstraksjon</strong> innebærer å identifisere og ekstrahere de mest<br /> relevante og signifikante ordene eller frasene fra en gitt tekst. Denne prosessen<br /> bidrar til å destillere de sentrale temaene, emnene eller konseptene innenfor et dokument,<br /> og muliggjør en mer konsis representasjon av dets innhold. NLP-algoritmer<br /> bruker ulike teknikker, som statistisk analyse, naturlig språkprosessering<br /> og maskinlæring, for å bestemme ordenes viktighet<br /> basert på deres frekvens, kontekst og relasjoner innenfor teksten.<br /> Til syvende og sist bidrar nøkkelordekstraksjon til å oppsummere og forstå<br /> den essensielle informasjonen som finnes i en tekstmengde. (Beliga et al., 2015)</p>
</li>
</ol>
<h2 id="implementering">Implementering</h2>
<p>I dette prosjektet har jeg anvendt sentimentanalyse, semantisk likhet og nøkkelordekstraksjon på møtereferatkorpuset. For å ekstrahere relevant data og produsere plott fra møtereferatene, virket dette tilstrekkelig.</p>
<p>For hele dette prosjektet har jeg valgt å bruke python for implementeringen av teknikkene. Dette skyldes hovedsakelig den store mengden biblioteker som er tilgjengelige, men også økt lesbarhet for de fleste utviklere. I tillegg er det også språket jeg er mest fortrolig med.</p>
<p>Du kan finne koden for implementeringen i mitt GitHub-repository, som er oppført i referansene. (Engelsen, 2023).</p>
<p><strong>Tekstekstraksjon</strong></p>
<ol>
<li><p><strong>Filvalg:</strong> Skriptet bruker glob-modulen, hvilket er en python-<br /> modul som kan brukes til å identifisere stinavn som passer til et spesifisert<br /> mønster. Den brukes til å identifisere markdown-filer innenfor den angitte mappen,<br /> og utelukke bestemte filer som &quot;toc.md&quot; eller &quot;summary.md&quot;. Dette sikrer at<br /> kun relevante filer vurderes for prosessering og innsnevrer<br /> analyseomfanget. </p>
</li>
<li><p><strong>Lesing av markdown-filer:</strong> For hver markdown-fil åpner og leser<br /> skriptet innholdet ved å bruke pythons innebygde open-funksjon og read-<br /> metode. Den tilpassede process_markdown_file-funksjonen enkapsulerer<br /> denne operasjonen og muliggjør ekstrahering av tekst fra individuelle markdown-<br /> filer.</p>
</li>
<li><p><strong>Tidsstempelekstraksjon:</strong> Koden ekstraherer tidsstempler fra navn på markdown-<br /> filer ved å bruke regulære uttrykk for å gjenkjenne mønstre som<br /> måned-dag.md. Koden tildeler disse mønstrene til tilsvarende månedsantall<br /> og inneværende år, og genererer nøyaktige tidsstempler for hver forslagsdel.</p>
</li>
<li><p><strong>Ekstraksjon av forslagsdeler:</strong> Innenfor hver markdown-fil<br /> identifiserer skriptet forslagsdeler ved å bruke et regulært uttrykk<br /> (proposal_section_pattern). re.findall-funksjonen brukes til<br /> å ekstrahere tittler på disse forslagsdelene, slik at det dannes en liste over tittler for ytterligere prosessering.  </p>
</li>
<li><p><strong>Ytring- og tekstekstraksjon:</strong> For hver forslagsdel<br /> itererer skriptet gjennom tittellistene, og ekstraherer tilhørende tekst. Den filtrerer bort irrelevante seksjoner basert på forhåndsdefinerte kriterier ved hjelp av isDumbTitle-funksjonen. Relevant tekst ekstraheres deretter ved å dele opp markdown-teksten basert på posisjonen til tittelen.  </p>
</li>
<li><p><strong>Tekstrensing:</strong> Ekstrahert forslagstekst gjennomgår rensing gjennom<br /> regulære uttrykk, hvor uønsket informasjon som presentasjonsdetaljer og<br /> referanser til lysbilder fjernes. Mønstre som navn til foredragsholder og lysbildereferanser blir identifisert og fjernet ved hjelp av re.sub-funksjonen,<br /> noe som sikrer at teksten fokuserer på kjerneinnholdet.</p>
</li>
<li><p><strong>Ytring- og setningsprosessering:</strong> Skriptet prosesserer<br /> forslagsteksten ved å dele den opp i ytringer ved hjelp av et regulært uttrykk<br /> (utterance_pattern) for å identifisere talebidraget. Hver ytring<br /> deles deretter inn i setninger ved hjelp av re.split-funksjonen. Setninger<br /> prosesseres individuelt, og nøkkelordekstraksjon utføres ved hjelp av<br /> Yake-biblioteket.</p>
</li>
</ol>
<p><strong>Dictionary-objekt for forslag</strong></p>
<p>Dictionary-objektet for forslagene lagrer essensiell informasjon om et spesifikt<br />forslag som er ekstrahert fra møtereferatene. Her er en forklaring av objektets egenskaper:</p>
<ul>
<li><p>title: Dette feltet lagrer tittelen på forslaget og gir en konsis<br />  identifikator for forslagets emne.</p>
</li>
<li><p>timestamp: Representerer tidsstempler assosiert med forslaget,<br />  vanligvis ekstrahert fra navnet på markdown-filen.</p>
</li>
<li><p>utterances: Dette er en liste som inneholder individuelle utterance-<br />  ordboksobjekter. Hver ytring tilsvarer en seksjon av forslaget der en<br />  bestemt taler bidrar.</p>
</li>
<li><p>full text: Hele innholdet i forslaget er lagret her, noe som muliggjør<br />  omfattende analyse og sammenligninger.</p>
</li>
</ul>
<p><strong>Utterance Dictionary-objekt</strong></p>
<p>Ytringsobjektet representerer en talers bidrag til diskusjonen<br />som inneholder ytringen. Her er en forklaring av objektets egenskaper:</p>
<ul>
<li><p>utterance_number: Det kronologiske nummeret til ytringen innen forslaget.</p>
</li>
<li><p>timestamp: Bærer tidsstempler assosiert med forslaget. Dette vil<br />  tilsvare datoen for møtet, som er en dato oversatt fra<br />  navnet på markdown-filen.  </p>
</li>
<li><p>sentences: Denne listen inneholder individuelle setningsordboksobjekter,<br />  der hvert objekt representerer en setning innenfor ytringen.</p>
</li>
<li><p>polarity: Representerer den overordnede følelsespolariteten for hele<br />  ytringen.</p>
</li>
<li><p>subjectivity: Gjenspeiler subjektiviteten til ytringen som helhet.  </p>
</li>
<li><p>keywords: Lagrer nøkkelord ekstrahert fra ytringen ved hjelp av Yake-<br />  biblioteket, og gir innsikt i hovedtemaene.</p>
</li>
</ul>
<p><strong>Sentence Dictionary-objekt</strong> </p>
<p>Setningsobjektet representerer en individuell setning innenfor en ytring.<br />Her er en forklaring av objektets egenskaper:</p>
<ul>
<li><p>sentence_number: En unik identifikator for hver setning innenfor en<br />  ytring.</p>
</li>
<li><p>text: En streng som inneholder innholdet i den individuelle setningen.</p>
</li>
<li><p>polarity: Følelsespolariteten til setningen.</p>
</li>
<li><p>subjectivity: Subjektiviteten til setningen.</p>
</li>
</ul>
<p><strong>Rammeverk som er brukt</strong></p>
<ul>
<li><p><strong>TextBlob</strong> TextBlob er et bibliotek som forenkler vanlige naturlige språkprosesseringsoppgaver. I dette skriptet brukes det for grunnleggende sentimentanalyse,<br />  som muliggjør bestemmelse av polaritet og subjektivitet for<br />  både setninger og hele ytringer. (Loria, 2020)</p>
</li>
<li><p><strong>Universal Sentence Encoder</strong> TensorFlows Universal Sentence Encoder<br />  (USE) er en forhåndstrent modell som konverterer tekst til høydimensjonale<br />  vektorer. Dette skriptet bruker USE til å generere embedding for setninger,<br />  noe som muliggjør beregning av semantisk likhet mellom ulike tekster.<br />  (Cer et al., 2018)</p>
</li>
<li><p><strong>Yake</strong> Yake er et nøkkelordekstraksjonsbibliotek som identifiserer signifikante<br />  nøkkelord innen en gitt tekstbit. I dette skriptet brukes Yake til<br />  å ekstrahere nøkkelord fra hver ytring, noe som bidrar til å forstå<br />  hovedtemaene som blir diskutert. (Campos et al., 2020)</p>
</li>
<li><p><strong>Matplotlib</strong> Matplotlib er et plottbibliotek i Python. I dette skriptet<br />  brukes det til å lage følelsesanalyseplotterier. Disse plottene representerer visuelt hvordan<br />  følelser endrer seg gjennom ytringene i et forslag. (Hunter,</p>
<ol start="2007">
<li></li>
</ol>
</li>
<li><p><strong>Regulære uttrykk</strong> Regulære uttrykk brukes for mønstergjenkjenning<br />  og ekstraksjon. I denne sammenhengen bidrar de til å identifisere spesifikke<br />  seksjoner av markdown-filer og rense forslagstekster ved å fjerne<br />  irrelevant informasjon som presentatørdetaljer og lysbildereferanser. (Python<br />  Software Foundation, 2023)</p>
</li>
<li><p><strong>TensorFlow</strong> TensorFlow er et åpen kilde-maskinlæringsrammeverk,<br />  og i dette skriptet brukes det til å laste og utnytte en forhåndstrent modell<br />  for å kode setninger til meningsfulle vektorer. I denne koden blir det brukt<br />  til å laste og bruke Universal Sentence Encoder-modellen. (Abadi et al.,</p>
<ol start="2015">
<li></li>
</ol>
</li>
</ul>
<p><strong>Graf for sentimentanalyse</strong> Sentimentalysediagrammet genereres ved hjelp av Matplotlib og<br />tjener til å visuelt illustrere følelsesdynamikken innenfor et forslag. Her er en<br />forklaring av grafikkegenskapene.</p>
<ul>
<li><p><strong>X-aksen:</strong> Representerer individuelle ytringer innenfor forslaget.  </p>
</li>
<li><p><strong>Y-aksen:</strong> Viser følelsespolariteten og illustrerer endringer i stemningen<br />  fra positiv til negativ mellom -1.0 og 1.0. -1.0 betyr fullstendig<br />  negativ, 0 betyr fullstendig nøytral og 1.0 betyr fullstendig positiv.</p>
</li>
<li><p><strong>Markeringer:</strong> Punkter på grafen markerer ytringer med spesielt<br />  høy positiv eller negativ stemning, og gir en rask oversikt over<br />  følelsestopper og bunnpunkter. Ytringene som er årsaken til denne toppen,<br />  skrives ut i en JSON-fil.</p>
</li>
</ul>
<p>For hvert forslag i proposals-listen plottes et følelsesdiagram for å visualisere<br />følelsen for hver ytring på det forslaget, og hvordan følelsen endrer seg<br />i løpet av antall ytringer.</p>
<p><strong>Forslag som datastruktur i JSON-format</strong> Mot slutten av<br />skriptet skrives datastrukturen for hvert forslag ut i JSON-format. Denne<br />utdataen gir en detaljert visning av de behandlede dataene, inkludert titler,<br />tidsstempler, ytringer og full tekst. JSON-format er valgt for sin lesbarhet<br />og lette inspeksjon, noe som gjør det praktisk for videre analyse eller deling av resultatene.</p>
<p><img src="https://test.cengelsen.no/images/inf319rapport/Decorator_object.webp" alt="Figur 1: Eksempel på en følelsesanalysegrafikk for et forslagsobjekt." /></p>
<h2 id="relatert-arbeid">Relatert arbeid</h2>
<p><strong>Stanford NLP (Stanza)</strong></p>
<p>Stanford NLP, nå kjent som Stanza, er et robust naturlig språkprosesseringsbibliotek<br />utviklet av Stanford NLP-gruppen. Det tilbyr et utvalg av toppmoderne<br />verktøy for ulike språkprosesseringsoppgaver, inkludert tokenisering, ordklassetagging,<br />navngitt enhetsgjenkjenning og avhengighetsanalyse. Stanza tilbyr forhåndstrente<br />modeller for flere språk, noe som gjør det mulig for brukere å utføre avansert<br />språkanalyse med letthet. En av hovedstyrkene er den dype integrasjonen<br />med dype læringstekniker, som resulterer i høy nøyaktighet og effektivitet på tvers av en<br />rekke NLP-oppgaver. Fokuset på flerspråklig støtte gjør det til et allsidig valg<br />for forskere og utviklere som jobber med ulike språkdatasett. (Peng et al., 2020)</p>
<p><strong>Spacy NLP</strong></p>
<p>Spacy er et populært åpen kilde naturlig språkprosesseringsbibliotek designet<br />for effektivitet og brukervennlighet. Det utmerker seg ved å tilby rask og nøyaktig språklig<br />annotasjon, inkludert tokenisering, ordklassetagging, navngitt enhetsgjenkjenning og avhengighetsanalyse. Spacys strømlinjeformede API og forhåndstrente<br />modeller gjør det brukervennlig for både nybegynnere og erfarne utviklere. Det er kjent for sin<br />effektivitet, noe som muliggjør sanntidsbruk i ulike kontekster.<br />Spacy støtter også egendefinert modelltrening, som gjør at brukere kan tilpasse det til<br />domene-spesifikke språkmønstre. Samlet sett er Spacy et allsidig verktøy for NLP-<br />oppgaver, der det oppnår en balanse mellom ytelse og enkelhet. (Honnibal et al., 2020)  </p>
<p><strong>Hugging Face Sentence Transformer (all-MiniLM-L6-v2)</strong></p>
<p>Hugging Face sitt Sentence Transformer-bibliotek, spesifikt modellen &quot;all-<br />MiniLM-L6-v2&quot;, er en del av det bredere Transformers-biblioteket. Det er utviklet<br />av Hugging Face, en plattform som huser en enorm samling av forhåndstrente modeller<br />for naturlige språkprosesseringsoppgaver. Sentence Transformer-modellen utmerker seg<br />i å lage embedding-er for setninger eller tekstbiter, noe som gjør den verdifull for<br />oppgaver som semantisk likhet og informasjonsgjenfinning. &quot;all-MiniLM-L6-v2&quot;<br />refererer til den spesifikke arkitekturen og versjonen av MiniLM-modellen som brukes<br />i denne implementeringen. Hugging Face sin Transformers-bibliotek forenkler<br />integreringen av avanserte transformer-modeller i ulike NLP-applikasjoner,<br />og fremmer tilgjengelighet og innovasjon innen feltet. (Hugging Face, n.d)</p>
<h2 id="konklusjon-og-videre-arbeid">Konklusjon og videre arbeid</h2>
<p>Konklusjonen jeg kan trekke fra dette prosjektet, er at den beste tilnærmingen for å<br />ekstrahere brukbar data fra møtereferatene, er å bruke en kombinasjon av ulike<br />NLP-biblioteker og -teknikker. Å bare bruke én forhåndstrent modell er for utilstrekkelig<br />for formålet med dette prosjektet.</p>
<p>Plottene produsert av implementeringen i dette prosjektet ser ut til å ha en positiv skjevhet.<br />Den gjennomsnittlige følelsen fra alle plottene, ved kvalitativ måling,<br />kan anslås til å være mellom 0,5 og 0. Mens det er noen topper i<br />grafene i både negativ og positiv retning, estimerer følelsesanalysen<br />de fleste ytringer til å være enten nøytrale eller lett positive.  </p>
<p>Det bør imidlertid anerkjennes at den største utfordringen med dette prosjektet<br />har vært å finne en måte å nøyaktig estimere hvorvidt to eller flere diskusjoner<br />omhandler det samme forslaget. Implementeringen i dette prosjektet er ikke<br />like nyansert som den kunne vært, og som et resultat kan ytringene som måles i hvert<br />forslag, ikke fullt ut gjenspeile den sanne utviklingen av følelser for hvert<br />forslag.</p>
<p><strong>Kjøretid</strong></p>
<p>De neste naturlige trinnene for å forbedre denne implementeringen ville være å forbedre<br />kjøretiden. Per nå, på en gjennomsnittlig skrivebordsdatamaskin, tar det mellom 36 og 48 timer å<br />lage følelsesanalysegrafer for alle forslag nevnt i møtereferatene, datert<br />tilbake til 2016. Etter hvert som listen over forslag i proposals-listen blir lengre, øker<br />kjøretiden på grunn av en akkumulering av unike elementer.  </p>
<p>Opprinnelig hadde jeg tenkt å konkatanere fullteksten til hvert forslag som møter<br />likhetsterskel, for å øke nøyaktigheten til den semantiske likkalkuleringen. Skriptet stoppet til slutt på grunn av mangel på tilgjengelig<br />RAM.  </p>
<p>En mulig linje å undersøke kunne være å lage oppsummeringer av fulltekstene<br />til hvert forslag og konkatanere disse for nøyaktig sammenligning.</p>
<p><strong>Unik identifikator for hvert forslag</strong></p>
<p>Den største utfordringen med dette prosjektet var hvordan man skal bestemme om to seksjoner i<br />møtereferatene faktisk diskuterer det samme forslaget. Tanken min var at hvis den<br />semantiske likheten mellom de to seksjonene er over en viss terskel,<br />må de snakke om det samme. Dette er imidlertid ikke nødvendigvis tilfellet.<br />Følgende scenario kan forekomme: Et unikt forslag blir diskutert i 2017. Senere, i 2019, blir et annet unikt forslag diskutert. Det senere forslaget<br />er imidlertid fullstendig avhengig av det tidligere forslaget. Diskusjonen av det<br />senere forslaget inneholder derfor mange referanser og diskusjoner om det<br />tidligere forslaget. Ved kun å evaluere semantisk likhet, ville disse to seksjonene<br />bli vurdert som en del av samme forslag, noe som ikke er tilfellet.</p>
<p>På grunn av denne typen dilemma, er en forbedret måte å estimere likhet på nødvendig<br />for nøyaktig å bestemme om to seksjoner er diskusjoner knyttet til<br />det samme forslaget.  </p>
<p>Mitt første forslag er å gi hvert unikt forslag som blir diskutert på møtene,<br />en unik identifikator, f.eks. &quot;AYD245&quot;. Så hver gang det samme forslaget<br />blir diskutert, blir den samme identifikatoren anvendt på seksjonen i møtereferatet. Mitt andre forslag er å bruke en ensemble av ulike NLP-teknikker for å lage en sammensatt likhetsskår. På denne måten er det mer nyanse involvert i estimeringen av likhet.</p>
<h2 id="referanser">Referanser</h2>
<ol>
<li><p>Abadi, M., Agarwal, A., Barham, P., Brevdo, E., Chen, Z., Citro, C., Corrado, G. S., Davis, A., Dean, J., Devin, M., Ghemawat, S., Goodfellow, I., Harp, A., Irving, G., Isard, M., Jozefowicz, R., Jia, Y., Kaiser, L., Kudlur, M., Levenberg, J., Mané, D., Schuster, M., Monga, R., Moore, S., Murray, D., Olah, C., Shlens, J., Steiner, B., Sutskever, I., Talwar, K., Tucker, P., Vanhoucke, V., Vasudevan, V., Viégas, F., Vinyals, O., Warden, P., Wattenberg, M., Wicke, M., Yu, Y., &amp; Zheng, X. (2015). TensorFlow, Storskalert maskinlæring på heterogene systemer [Datasystem]. <a href="https://doi.org/10.5281/zenodo.4724125">https://doi.org/10.5281/zenodo.4724125</a></p>
</li>
<li><p>Campos, R., Mangaravite, V., Pasquali, A., Jatowt, A., Jorge, A., Nunes, C. og Jatowt, A. (2020). YAKE! Nøkkelordekstraksjon fra enkeltdokumenter ved hjelp av flere lokale funksjoner. I Information Sciences Journal. Elsevier, Vol 509, pp 257-289. <a href="https://doi.org/10.1016/j.ins.2019.09.013">https://doi.org/10.1016/j.ins.2019.09.013</a></p>
</li>
<li><p>Cer, D., Yang, Y., Kong, S.-y., Hua, N., Limtiaco, N., St. John, R., Constant, N., Guajardo-Cespedes, M., Yuan, S., Tar, C., Sung, Y.-H., Strope, B., &amp; Kurzweil, R. (2018). Universal Sentence Encoder. arXiv preprint <a href="https://arxiv.org/pdf/1803.11175.pdf">https://arxiv.org/pdf/1803.11175.pdf</a></p>
</li>
<li><p>Devopedia. 2019. &quot;Ordklassetagging.&quot; Versjon 3, 8. september. Åpnet 12. november 2023. <a href="https://devopedia.org/part-of-speech-tagging">https://devopedia.org/part-of-speech-tagging</a>  </p>
</li>
<li><p>Devopedia. 2020. &quot;Navngitt enhetsgjenkjenning.&quot; Versjon 5, 4. februar. Åpnet 12. november 2023. <a href="https://devopedia.org/named-entity-recognition">https://devopedia.org/named-entity-recognition</a></p>
</li>
<li><p>Devopedia. 2020. &quot;Semantisk rollemerking.&quot; Versjon 3, 10. januar. Åpnet 12. november 2023. <a href="https://devopedia.org/semantic-role-labelling">https://devopedia.org/semantic-role-labelling</a></p>
</li>
<li><p>Devopedia. 2020. &quot;Tekstoppsummering.&quot; Versjon 2, 21. februar. Åpnet 12. november 2023. <a href="https://devopedia.org/text-summarization">https://devopedia.org/text-summarization</a>  </p>
</li>
<li><p>Devopedia. 2022. &quot;Følelsesanalyse.&quot; Versjon 52, 26. januar. Åpnet 12. november 2023. <a href="https://devopedia.org/sentiment-analysis">https://devopedia.org/sentiment-analysis</a></p>
</li>
<li><p>Engelsen, C. (2023). sentiment-plotter [Datasystem]. <a href="https://github.com/Cengelsen/sentiment-plotter">https://github.com/Cengelsen/sentiment-plotter</a></p>
</li>
<li><p>Harispe, S., Ranwez, S., Janaqi, S., &amp; Montmain, J. (2015). Semantisk likhet fra naturlig språk og ontologianalyse. Synthesis Lectures on Human Language Technologies. Springer International Publishing. <a href="https://doi.org/10.1007/978-3-031-02156-5">https://doi.org/10.1007/978-3-031-02156-5</a>  </p>
</li>
<li><p>Honnibal, M., Montani, I., Van Landeghem, S., &amp; Boyd, A. (2020). spaCy: Industriell naturlig språkprosessering i Python. <a href="https://doi.org/10.5281/zenodo.1212303">https://doi.org/10.5281/zenodo.1212303</a></p>
</li>
<li><p>Hunter, J. D. (2007). Matplotlib: Et 2D-grafikkmiljø. Computing in Science &amp; Engineering, 9(3), 90–95. <a href="https://doi.org/10.1109/MCSE.2007.55">https://doi.org/10.1109/MCSE.2007.55</a></p>
</li>
<li><p>Hugging Face. (u.å.). Sentence Transformers: MiniLM-L6-v2. Hugging Face Model Hub. Hentet 18. desember 2023 fra <a href="https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2">https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2</a>  </p>
</li>
<li><p>Loria, S. (2020). TextBlob: Forenklet tekstbehandling (Versjon 0.16.0). Hentet fra <a href="https://textblob.readthedocs.io/_/downloads/en/dev/pdf/">https://textblob.readthedocs.io/_/downloads/en/dev/pdf/</a></p>
</li>
<li><p>Peng Qi, Yuhao Zhang, Yuhui Zhang, Jason Bolton og Christopher D. Manning. 2020. Stanza: Et Python-naturlig språkbehandlingsverktøy for mange menneskelige språk. I Association for Computational Linguistics (ACL) System Demonstrations. 2020. <a href="https://nlp.stanford.edu/pubs/qi2020stanza.pdf">https://nlp.stanford.edu/pubs/qi2020stanza.pdf</a></p>
</li>
<li><p>Python Software Foundation. (2023). &quot;re&quot; - Regulære uttrykksoperasjoner. Python 3.11. Tilgjengelig på: <a href="https://docs.python.org/3/library/re.html">https://docs.python.org/3/library/re.html</a></p>
</li>
<li><p>Beliga, Slobodan; Ana, Meštrović; Martinčić-Ipšić, Sanda. (2015). &quot;Et overblikk over graf-baserte nøkkelordekstraksjonsmetoder og -tilnærminger&quot;. Journal of Information and Organizational Sciences. 39 (1): 1-20. <a href="https://hrcak.srce.hr/file/207669">https://hrcak.srce.hr/file/207669</a></p>
</li>
</ol>
<h2 id="tillegg-a-følelsesanalysegrafer-for-forslag">Tillegg A. Følelsesanalysegrafer for forslag</h2>
<p>Her er noen flere eksempler på grafer produsert av vår implementering.</p>
<p><img src="https://test.cengelsen.no/images/inf319rapport/Async_Context_16.webp" alt="Eksempel 1" /><br /><img src="https://test.cengelsen.no/images/inf319rapport/Decorator_export_ordering_3.webp" alt="Eksempel 2" /><br /><img src="https://test.cengelsen.no/images/inf319rapport/Intl_era_and_monthCode_for_Stage_2_2.webp" alt="Eksempel 3" /><br /><img src="https://test.cengelsen.no/images/inf319rapport/Intl_Locale_Info_API_Stage_3_update_9.webp" alt="Eksempel 4" /><br /><img src="https://test.cengelsen.no/images/inf319rapport/Type_Annotations_Proposal_Update_14.webp" alt="Eksempel 5" /></p>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[En Vurdering Av Den Etiske Bruken Av KI I Sosiale Medier]]></title>
            <link>https://test.cengelsen.no/blog/en-vurdering-av-den-etiske-bruken-av-ki-i-sosiale-medier</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/en-vurdering-av-den-etiske-bruken-av-ki-i-sosiale-medier</guid>
            <pubDate>Mon, 16 Oct 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Utforskende analyse av sosiale mediers bruk av KI og dens innvirkning på psykologiske, kognitive og etiske utfordringer.]]></description>
            <content:encoded><![CDATA[<h3 id="innledning">Innledning</h3>
<p>I det stadig voksende digitale universet, forsøker vi å navigere oss gjennom det komplekse terrenget av sosiale medier. Fra deling av bilder til blogg-innlegg og tankevekkende diskusjoner, har sosiale medieplattformer blitt et dominerende virtuelt torg. Her jobber et mylder av algoritmer og kunstig intelligens (KI)systemer bak kulissene utrettelig for å forme vår opplevelse på nett. Med tanke på dette, burde bruken av KI av sosiale medier bli forbudt?</p>
<p>I denne teksten vil jeg gå inn i de psykologiske og kognitive effektene som sosiale medier påfører brukerne sine og argumentere for hvorfor implementeringen av KI på disse plattformene enten bør forbys fullstendig eller underlegges streng regulering. Videre vil jeg undersøke hvordan dette relaterer til å være et problem med &quot;KI-rettferdighet&quot;.</p>
<h3 id="diskusjon">Diskusjon</h3>
<p>Først vil jeg starte med en definisjon av KI, etterfulgt av en definisjon av sosiale medier.</p>
<p>KI kan defineres som &quot;datasystemer eller algoritmer sin evne til å etterligne menneskelig atferd.&quot; (merriam-webster, u.d.). For å etterligne menneskelig atferd kan datasystemet simulere deler av menneskelig intelligens eller kognitive ferdigheter for å utføre oppgaver som problemløsning, læring, resonnement, persepsjon og forståelse av språk. Typisk bruker KI-systemer algoritmer, data og maskinlæring for å ta autonome beslutninger og tilpasse seg endrede situasjoner.</p>
<p>Sosiale medier refererer til plattformer på nett og nettsteder som gjør det mulig for brukere å opprette, dele og samhandle med innhold og andre brukere. Brukere kan poste tekst, bilder, videoer og engasjere seg med andre gjennom kommentarer og liker-klikk. Sosiale medier legger til rette for kommunikasjon og nettverksbygging i global skala, noe som gjør det til et fremtredende aspekt av moderne digital kultur. (Merriam-Webster, u.d.)</p>
<p>Med dette i bakhodet, og ved å sette konseptet KI til side for et øyeblikk, har det vært noen forskning på de negative psykologiske og kognitive effektene sosiale medier har på sine brukere. Følgende funn er sammensatt av Center for Humane Technology, i deres &quot;Ledger of Harms&quot; (Center of Humane Technology, 2022). Jeg vil fortsette med å liste opp noen av dem.</p>
<ul>
<li><p>Netthets øker betydelig risikoen for selvmordstanker hos barn, og gjør dem tre ganger mer sannsynlig å vurdere selvmord enn jevnaldrende. Mobbeopplevelsen på nett er spesielt belastende, sannsynligvis på grunn av offerets viten om et større offentlig publikum (van Geel, Vedder, &amp; Tanilon, 2014).</p>
</li>
<li><p>Overdreven skjermbasert mediebruk hos barnehagebarn, over en time om dagen, hemmer kjerneområder i hjernen som er ansvarlige for språk og leseferdighet. Når skjermtiden øker, synker språkferdighetene, og vitale hjerneområder lider tap av strukturell integritet. Denne studien setter fokus på bekymringer rundt skjermbruk for barnehagebarns hjerneutvikling (Hutton, Dudley, &amp; Horowitz-Kraus, 2019).</p>
</li>
<li><p>Langvarig skjermtid i tidlig barndom fører til utviklingsmessige forsinkelser i språk, problemløsning og sosial interaksjon, som vedvarer i over et år. Overdreven skjermeksponering i disse formative årene kan betydelig hindre optimal utvikling hos et barn (Madigan, Browne, Racine, &amp; Mori, 2019).</p>
</li>
<li><p>Økende bruk av sosiale medier korrelerer med høyere nivåer av depresjon hos tenåringer. For hver ekstra time brukt på sosiale medier, er det en 2% økning i depressive symptomer (Boers, Afzali, Newton, &amp; Conrod, 2019).</p>
</li>
<li><p>Bare det å ha en smarttelefon i nærheten avleder oppmerksomheten, selv når den er av og med skjermen ned. Et eksperiment viste en nedgang i hukommelse og problemløsning når telefoner var i nærheten, men avslått. Overraskende nok forbedret telefonavhengige mennesker hukommelse og intelligens når telefonene var i et annet rom. Telefoner er &quot;høyprioritetsstimuli&quot;, som tapper oppmerksomheten, selv når de ignoreres (Ward, Duke, Gneezy, &amp; Bos, 2017).</p>
</li>
<li><p>Kort tid etter starten av smarttelefonbruk, avtar mental matematikk evne, oppmerksomheten svekkes, og konformiteten øker. Hjerneskanninger viser redusert aktivitet i den høyre prefrontale cortex, sett i ADHD (Hadar, Hadas, Lazarovits, Alyagon, Eliraz, &amp; Zargen, 2017).</p>
</li>
<li><p>Hukommelsen foretrekker sosial tekst over kompleks tekst. Folk husker kommentarer om nyheter bedre enn artikkelen eller overskriften. De husker Facebook-innlegg bedre enn boksætninger eller ansikter (Mickes, Darby, Hwe, Bajic, Warker, Harris, &amp; Christenfeld, 2013).</p>
</li>
<li><p>Å skifte mellom mediakanaler skader arbeids- og langtidsminnet. Den &quot;ekstraktive oppmerksomhetsøkonomien&quot; og mange sosiale plattformer truer menneskelig hukommelse (Uncapher og Wagner, 2018).</p>
</li>
</ul>
<p>Med disse dokumenterte effektene i tankene, vil jeg fortsette å prøve å svare på det innledende spørsmålet.</p>
<p>KI brukes i ulike aspekter av sosiale medier. Imidlertid ville de mest relevante være bruken i anbefalingsalgoritmer, atferdsbasert markedsføring og ansiktsgjenkjenning. Hvis vi tar hensyn til sosiale mediers negative psykologiske og kognitive effekter på ungdommer og voksne, bør bruken av KI i disse nevnte mekanismene ikke tas lett på. For meg ser det ut til å være tre hovedaspekter som potensielt kan være årsaken til disse negative effektene.</p>
<ol>
<li>Bruk av KI for å holde folk aktive på plattformen lenger</li>
<li>Bruk av KI for å lage målrettede annonser basert på brukerens aktivitet og data</li>
<li>Bruk av KI for å forvrenge folks syn på virkeligheten</li>
</ol>
<h3 id="bruk-av-ki-for-å-holde-folk-aktive-på-plattformen-lenger">Bruk av KI for å holde folk aktive på plattformen lenger</h3>
<p>Anbefalingsalgoritmer, drevet av KI, er trolig det som driver personlige innholdsstrømmer. Disse algoritmene kan analysere brukeratferd, preferanser og engasjementsmønstre for å foreslå innlegg, videoer eller produkter som sannsynligvis vil resonere med brukeren. Dette forbedrer brukeropplevelsen og holder dem engasjert, noe som driver brukerens oppmerksomhet og plattformbruk (Fayyaz, et.al. 2020)</p>
<p>Dette kan vi si er et tilfelle av &quot;ikke-overvåket&quot; automatisert beslutningstaking. KI-en bestemmer hva som skal vises i brukerens innholdsstrøm uten noen menneskelig innblanding. En maskinlæringsmetode for å lage en liste over innhold som skal eksponeres for brukeren, vil resultere i et system som bare anbefaler innhold som algoritmisk anses som relevant for brukeren. Jeg vil si at dette er uetisk, siden det ikke tas hensyn til om brukeren har nytte av å se det; bare beslutningen om at brukeren bør se det, på grunn av nivået av &quot;relevans&quot;.</p>
<p>Innholdet anses som relevant fordi KI-en anslår en høyere sannsynlighet for at brukeren vil samhandle med innholdet på en eller annen måte. Hvis brukeren konsekvent blir vist innhold som brukeren ønsker å samhandle med, forblir brukeren lenger aktiv på plattformen. Hvis brukeren forblir aktiv lenger på plattformen, blir vedkommende eksponert for flere annonser, noe som igjen øker plattformens inntekter.</p>
<p>Med andre ord bruker disse sosiale medieplattformene KI for å lage en liste over innhold som har en høy sannsynlighet for at brukeren vil samhandle med det, og utnytter brukerens kognitive mekanismer for å optimalisere annonseinntekter. Etisk sett er det, i min mening, en uetisk praksis som utnytter menneskers kognitive mekanismer og svakheter for økonomisk gevinst. Spesielt siden disse menneskene mest sannsynlig ikke er klar over hvordan deres kognitive mekanismer fungerer, eller til og med hva de er.</p>
<h3 id="bruk-av-ki-for-å-lage-målrettede-annonser-basert-på-brukerens-aktivitet-og-data">Bruk av KI for å lage målrettede annonser basert på brukerens aktivitet og data</h3>
<p>Atferdsbasert annonsering er konseptet med å spore brukerinteraksjoner og preferanser med det formål å levere svært målrettede annonser (Boerman, S. C., et. al. 2017). Dette resulterer i økt annonseeffektivitet og, i sin tur, bedre avkastning for bedrifter. Med tanke på at Datatilsynet har innført et midlertidig forbud mot atferdsbasert annonsering, som påvirker Metas forretningspraksis (Judin, 2023), tenker jeg det er trygt å anta at Facebook og Instagram har adoptert denne typen praksis.</p>
<p>Bruken av KI for å spore og analysere brukeratferd kan grense til å være invasiv, da den går inn i enkeltpersoners aktiviteter på nett og personlige preferanser. Det hyper-målrettede innholdet som leveres gjennom atferdsbasert markedsføring kan skape ekkokamre og forsterke skjevheter, samt begrense eksponeringen for forskjellige synspunkter og informasjon. Denne uetiske overvåkningen og sporing av enkeltpersoners atferd på nett kan sees på som manipulasjon.</p>
<h3 id="bruk-av-ki-for-å-forvrenger-folks-syn-på-andre-og-seg-selv">Bruk av KI for å forvrenger folks syn på andre og seg selv</h3>
<p>Ansiktsgjenkjenning brukes i sosiale medier til forskjellige formål, men for formålet med denne teksten, vil jeg fokusere på &quot;skjønnhetsfiltre&quot;. Med skjønnhetsfiltre mener jeg filtre som forbedrer en persons utseende for å se mer konvensjonelt attraktive ut og/eller glatter ut ufullkommenheter.</p>
<p>En studie av Ozimek, et. al., fant at &quot;(...) det ble funnet en betydelig negativ korrelasjon mellom redigering av bilder og selvoppfattet attraktivitet i form av utseende&quot; (Ozimek, et. al. 2023. s.8). KI-drevne skjønnhetsfiltre på for eksempel Instagram, fasiliterer en adferd med bilde-redigering.&quot; En bekymring den samme studien reiste er at disse KI-drevne skjønnhetsfiltrene kan fjerne eller glatte over aspekter ved utseendet deres som de kanskje ikke anser som lite attraktive selv. Studien nevner også at &quot;Mange studier indikerte en positiv korrelasjon mellom selvoppfattet attraktivitet og selvfølelse (. . . )&quot; (Ozimek, et. al. 2023. s.5).</p>
<p>I jakten på å overholde samfunnets skjønnhetsnormer kan disse filtrene oppmuntre til homogenisering av skjønnhet, der individualitet og unike trekk reduseres. Dette kan føre til et potensielt tap av selv-identitet og en følelse av frakobling fra ens autentiske selv. Som et resultat kan enkeltpersoner uforvarende bli vant til en endret versjon av seg selv, noe som gjør det vanskeligere å skille mellom deres virkelige og filtrerte selv.</p>
<h3 id="hvordan-er-dette-et-rettferdighetsproblem">Hvordan er dette et rettferdighetsproblem?</h3>
<p>Bruken av KI i sosiale medier reiser rettferdighetsproblemer på tvers av sine ulike bruksområder. I anbefalingsalgoritmer kan KI-drevet personalisering forbedre brukeropplevelsen, men kan utilsiktet bidra til filterbobler. Disse boblene kan isolere brukere innenfor deres eksisterende overbevisning og preferanser, samt begrense eksponeringen for forskjellige synspunkter og forsterke skjevheter.</p>
<p>Atferdsbasert markedsføring, et annet aspekt av KI i sosiale medier, presenterer personvernbekymringer. Det optimaliserer annonseeffektiviteten ved å levere svært målrettet innhold, men overvåker også brukerens atferd og preferanser. Dette reiser etiske spørsmål rundt personvernrettigheter og potensialet for diskriminerende praksis. Hypermålrettede annonser kan føre til opprettholdelse av stereotyper, og kanskje til og med historiske data.</p>
<p>I tillegg kan KI&#39;s involvering i skjønnhetsfiltre og selvoppfatning på sosiale medier ha vidtrekkende implikasjoner. Disse filtrene fremmer ofte konvensjonelle skjønnhetsstandarder, som kan forvrenge brukernes selvoppfattede bilde og oppmuntre til økt fokus på å tilpasse seg disse idealene. Denne KI-drevne forvrengningen av selvoppfattelse kan ha uforholdsmessig stor innvirkning på enkeltpersoner som ikke passer innenfor disse skjønnhetsstandardene, og kan potensielt føre til følelser av utilstrekkelighet og lav selvfølelse. Som et resultat, kan disse skjønnhetsfiltrene opprettholde samfunnsmessige skjevheter når det gjelder utseende.</p>
<p>I bunn og grunn, i sosiale medier, handler KI-rettferdighetsproblemer om algoritmiske skjevheter, personvernsbekymringer og opprettholdelse av partiskheter om utseende. Å håndtere disse problemene vil kreve en nøye balanse mellom etiske KI-praksiser, tilstrekkelig regulering og en mer brukersentrert formgiving av plattformen for å sikre at KI-drevne systemer fremmer et trygt digitalt miljø der sosiale mediebrukere ikke utnyttes for profitt.</p>
<h3 id="konklusjon">Konklusjon</h3>
<p>Integrasjonen av KI i sosiale medier har satt i gang diskusjoner om dens konsekvenser og de etiske dimensjonene. Den spiller en betydelig rolle i sosiale medier, med KI-drevet innholdskuratering som en av dens kjernekomponenter. Tilnærmingen bruker anbefalingsalgoritmer drevet av KI for å engasjere brukere ved å eksponere personalisert innhold. Imidlertid er det selvfølgelig etiske bekymringer som oppstår angående potensiell utnyttelse av brukerdata for økonomisk gevinst.</p>
<p>Dette, i kombinasjon med målrettet annonsering, bruker atferdsbasert markedsføring for å spore og analysere brukeratferd, levere personlig tilpassede annonser. Dette forbedrer annonseffektiviteten, men kan også bidra til opprettelse av ekkokamre, der brukere bare eksponeres for informasjon som samsvarer med deres allerede eksisterende overbevisning.</p>
<p>Påvirkningen av KI på selvbilde er en annen interessant dimensjon. KI-drevne skjønnhetsfiltre kan endre brukernes selvoppfattede attraktivitet, og dermed påvirke selvfølelsen og oppmuntre til konformitet til konvensjonelle skjønnhetsstandarder.</p>
<p>Diskusjonen om KI&#39;s rolle i sosiale medier utvides til rettferdighetsbekymringer, inkludert algoritmiske skjevheter, personvernsproblemer og opprettholdelse av skjevheter i utseende. Å finne en balanse i reguleringen av skjønnhetsfiltre, drevet av KI, er viktig for å bekjempe disse bekymringene og fremme et tryggere digitalt miljø.</p>
<p>Selv om utfordringene er tydelige, ser det ut til å være behov for strengere regulering av KI i sosiale medier. Hovedsakelig for å forhindre utnyttelse av brukere for profitt, men også for å forhindre økning i psykologiske og kognitive problemer. Forhåpentligvis vil økt bevissthet og utviklende teknologi gi muligheten til å begrense KI&#39;s potensielle risikoer gjennom robuste etiske retningslinjer og årvåkent tilsyn. Dette kan bidra til å tilby berikende brukeropplevelser uten å ofre brukernes psykologiske og kognitive helse.</p>
<h3 id="references">References</h3>
<ol>
<li><p>Barocas, S., Hardt, M., &amp; Narayanan, A. (2019). Fairness and<br />Machine Learning: Limitations and Opportunities. fairmlbook.org.<br /><a href="http://www.fairmlbook.org">http://www.fairmlbook.org</a></p>
</li>
<li><p>Boerman, S. C., Kruikemeier, S., &amp; Zuiderveen Borgesius, F. J.<br />(2017). Online Behavioral Advertising: A Literature Review<br />and Research Agenda. Journal of Advertising, 46(3), 363-376.<br /><a href="https://doi.org/10.1080/00913367.2017.1339368">https://doi.org/10.1080/00913367.2017.1339368</a></p>
</li>
<li><p>Boers, E., Afzali, M. H., &amp; Conrod, P. (2020). Social me-<br />dia use and alcohol consumption in teens. Preventive Medicine.<br /><a href="https://www.sciencedirect.com/science/article/pii/S0091743520300165">https://www.sciencedirect.com/science/article/pii/S0091743520300165</a></p>
</li>
<li><p>Boers, E., Afzali, M. H., Newton, N., &amp; Conrod, P. (2019). So-<br />cial media usage and depression in adolescents. JAMA Pedi-<br />atrics. <a href="https://jamanetwork.com/journals/jamapediatrics/article-">https://jamanetwork.com/journals/jamapediatrics/article-</a><br />abstract/2737909</p>
</li>
<li><p>Center for Humane Technology. (2022, n.d, 7). Ledger of Harms. Ledger<br />of Harms. <a href="https://ledger.humanetech.com/">https://ledger.humanetech.com/</a></p>
</li>
<li><p>Fayyaz, Z., Ebrahimian, M., Nawara, D., Ibrahim, A., &amp; Kashef,<br />R. (2020). Recommendation Systems: Algorithms, Challenges, Met-<br />rics, and Business Opportunities. Applied Sciences, 10(21), 7748.<br /><a href="https://doi.org/10.3390/app10217748">https://doi.org/10.3390/app10217748</a></p>
</li>
<li><p>Hadar, A., Hadas, I., Lazarovits, A., Alyagon, U., Eliraz, D., &amp; Zargen, A.<br />(2017). Screen time and mental arithmetic in smartphone users. PLoS One.<br /><a href="https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0180094">https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0180094</a></p>
</li>
<li><p>Hutton, J. S., Dudley, J., &amp; Horowitz-Kraus, T. (2019). Screen-<br />based media and children’s brain development. JAMA Pediatrics.<br /><a href="https://jamanetwork.com/journals/jamapediatrics/fullarticle/2754101">https://jamanetwork.com/journals/jamapediatrics/fullarticle/2754101</a></p>
</li>
<li><p>Judin, T. (2023, 17. Juli). Midlertidig forbud mot adferds-<br />basert markedsføring på Facebook og Instagram. Datatilsynet.<br /><a href="https://www.datatilsynet.no/aktuelt/aktuelle-nyheter-2023/midlertidig-">https://www.datatilsynet.no/aktuelt/aktuelle-nyheter-2023/midlertidig-</a><br />forbud-mot-adferdsbasert-markedsforing-pa-facebook-og-instagram/</p>
</li>
<li><p>Lemola, A., Perkinson-Gloor, N., Brand, S., &amp; Dewald-Kaufman, J. (2014).<br />Electronic media use at night and depressive symptoms. Journal of Youth<br />and Adolescence. <a href="http://dx.doi.org/10.1007/s10964-014-0176-x">http://dx.doi.org/10.1007/s10964-014-0176-x</a></p>
</li>
<li><p>Madigan, S., Browne, D. T., Racine, N., &amp; Mori, C. (2019). A<br />longitudinal study of screen time in children. JAMA Pediatrics.<br /><a href="https://jamanetwork.com/journals/jamapediatrics/fullarticle/2722666">https://jamanetwork.com/journals/jamapediatrics/fullarticle/2722666</a></p>
</li>
<li><p>Merriam-Webster. (n.d.). Artificial intelligence. In Merriam-Webster.com<br />dictionary. Retrieved October 15, 2023, from <a href="https://www.merriam-">https://www.merriam-</a><br />webster.com/dictionary/artificial%20intelligence</p>
</li>
<li><p>Merriam-Webster. (n.d.). Social media. In Merriam-Webster.com<br />dictionary. Retrieved October 15, 2023, from <a href="https://www.merriam-">https://www.merriam-</a><br />webster.com/dictionary/social%20media</p>
</li>
<li><p>Mickes, L., Darby, R. S., Hwe, V., Bajic, D., Warker, J. A., Harris,<br />C. R., &amp; Christenfeld, N. J. S. (2013). Major memory for microblogs:<br />What makes a message worth remembering? Memory &amp; Cognition.<br /><a href="http://dx.doi.org/10.3758/s13421-012-0281-6">http://dx.doi.org/10.3758/s13421-012-0281-6</a></p>
</li>
<li><p>Ozimek, P., Lainas, S., Bierhoff, HW. et al.(2023). How photo editing<br />in social media shapes self-perceived attractiveness and self-esteem via<br />self-objectification and physical appearance comparisons. BMC Psychology,<br />11 (99), 1-14. <a href="https://doi.org/10.1186/s40359-023-01143-0">https://doi.org/10.1186/s40359-023-01143-0</a></p>
</li>
<li><p>Uncapher, M. R., &amp; Wagner, A. D. (2018). Media multitasking and cogni-<br />tive abilities. Proceedings of the National Academy of Sciences, 115 (40),<br />9889-9894. <a href="https://www.pnas.org/content/115/40/9889">https://www.pnas.org/content/115/40/9889</a></p>
</li>
<li><p>van Geel, M., Vedder, P., &amp; Tanilon, J. (2014). Cyberbullying and<br />adolescent mental health: Systematic review. JAMA Pediatrics.<br /><a href="https://jamanetwork.com/journals/jamapediatrics/fullarticle/1840250">https://jamanetwork.com/journals/jamapediatrics/fullarticle/1840250</a></p>
</li>
<li><p>Ward, A. F., Duke, K., Gneezy, A., &amp; Bos, M. W. (2017). Brain drain:<br />The mere presence of one’s own smartphone reduces available cogni-<br />tive capacity. Journal of the Association for Consumer Research, 2 (2).<br /><a href="https://www.journals.uchicago.edu/doi/abs/10.1086/691462">https://www.journals.uchicago.edu/doi/abs/10.1086/691462</a></p>
</li>
</ol>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Nginx som reversert proxy i LXD]]></title>
            <link>https://test.cengelsen.no/blog/nginx-som-reversert-proxy-i-lxd</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/nginx-som-reversert-proxy-i-lxd</guid>
            <pubDate>Sun, 11 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[En instruks på hvordan man kan rigge opp Nginx som en proxy-server i LXD.]]></description>
            <content:encoded><![CDATA[<h2 id="problemstilling">Problemstilling</h2>
<p>Det jeg ønsker å gjøre er å ha en felles container som håndterer all &quot;reversert proxy&quot;-omdirigering<br />og SSL-terminering for alle de andre containerne på serveren. Jeg ønsker å bruke Nginx for dette<br />formålet. </p>
<h2 id="forklaring">Forklaring</h2>
<p>Det kan kanskje være litt vanskelig å se for seg hvordan logistikken av det blir. Det du forhåpentligvis<br />sitter igjen med etter denne instruksen er én LXD-container som fungerer som en Nginx proxy-server, og<br />minst én LXD-container som holder på tjenesten du ønsker å eksponere til internett. Poenget er da at<br />proxy-serveren tar imot alle forespørsler fra internett og viderefører trafikken til containeren som<br />holder på tjenesten. Både proxy-containeren og tjeneste-containeren kjører begge en instans av Nginx<br />som &quot;kommuniserer&quot; med hverandre for å dirigere nett-trafikken korrekt.</p>
<h2 id="installere-og-konfigurere-lxd">Installere og konfigurere LXD</h2>
<p>Denne instruksen har som forutsetning at du har installert og konfigurert LXD på serveren din. Du<br />kan [følge instruksen min]({{&lt; relref path=&quot;lxd-instruks.md&quot; lang=&quot;no&quot;&gt;}}) for å gjøre det.</p>
<p>Når dette er gjort, så må du oppprette &quot;enheter&quot; for proxy-containeren. Utenfor proxy-containeren, må du kjøre:</p>
<pre><code class="language-bash">lxc config device add *navn_på_container* *navn_på_enhet* proxy listen=tcp:0.0.0.0:80 connect=tcp:127.0.0.1:80 proxy_protocol=true

lxc config device add *navn_på_container* *navn_på_enhet* proxy listen=tcp:0.0.0.0:443 connect=tcp:127.0.0.1:443 proxy_protocol=true
</code></pre>
<p>Dette er hva de ulike parameterne betyr:</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Forklaring</th>
</tr>
</thead>
<tbody><tr>
<td><em>navn_på_container</em></td>
<td>Navnet på proxy-containeren</td>
</tr>
<tr>
<td><em>navn_på_enhet</em></td>
<td>Navnet for &quot;enheten&quot; du oppretter</td>
</tr>
<tr>
<td>proxy</td>
<td>Hvilken type enhet du oppretter</td>
</tr>
<tr>
<td>listen= tcp:0.0.0.0:80</td>
<td>Proxy-enheten skal lytte på verten på port 80, protokoll TCP, på alle grensesnitt</td>
</tr>
<tr>
<td>connect= tcp:127.0.0.1:80 &nbsp; &nbsp;</td>
<td>Proxy-enheten skal koble seg til containeren på port 80, protokoll TCP, på tilbakefôringsgrensesnittet. Det er ikke mulig å skrive &quot;localhost&quot;, bare IP-adressen, i LXD-versjoner &gt;= 3.13.</td>
</tr>
<tr>
<td>proxy_protocol</td>
<td>Ber om å aktivere proxy-protokollen, slik at den reverserte proxyen får den opprinnelige IP-adressen fra proxy-enheten</td>
</tr>
</tbody></table>
<p>Om du vil fjerne proxy-enheten, kan du skrive: </p>
<p><code>lxc config device remove *navn_på_container* *navn_på_enhet*</code></p>
<h2 id="installere-nginx">Installere Nginx</h2>
<p>Hvordan du installerer Nginx varierer ut ifra hvilket system du bruker.<br /><a href="https://www.nginx.com/resources/wiki/start/topics/tutorials/install/">Her er en instruks for hvordan å installere Nginx på ulike systemer</a>. </p>
<h2 id="konfigurere-nginx-i-tjeneste-containeren">Konfigurere Nginx i tjeneste-containeren</h2>
<p>Det trengs litt konfigurering av Nginx-en som kjører i tjeneste-containeren.</p>
<p>Opprett <code>/etc/nginx/conf.d/real-ip.conf</code> i tjeneste-containeren:</p>
<pre><code class="language-sh">real_ip_header    X-Real-IP;
set_real_ip_from  *navn_på_proxy_container*.lxd;
```	

Opprett en Nginx-konfig, `/etc/nginx/sites-available/*konfig-navn*`, i tjeneste-containeren:

```sh
server {
        listen 80;
        listen [::]:80;

        server_name *domenenavn*;

        root /path/to/website/folder;
        index index.html;

        location / {try_files $uri $uri/ =404;
        }	
}
</code></pre>
<p>Denne konfigurasjonsfilen kan variere avhengig av kravene tjenesten stiller til Nginx-konfigurasjonen.<br />Eksemplet over er for å servere en statisk nettside. Her trengs ikke SSL-terminering, siden proxy-serveren håndterer det.</p>
<h2 id="konfigurere-nginx-i-proxy-containeren">Konfigurere Nginx i proxy-containeren</h2>
<p>Opprett en Nginx-konfig, <code>/etc/nginx/sites-available/*konfig-navn*</code>, i proxy-containeren:</p>
<pre><code class="language-sh">server {
        listen 80 proxy_protocol;
        listen [::]:80 proxy_protocol;

        server_name *domenenavn*;

        location / {
                include /etc/nginx/proxy_params;

                proxy_pass http://*navn_på_tjeneste_container*.lxd;
        }

        real_ip_header proxy_protocol;
        set_real_ip_from 127.0.0.1;
}
</code></pre>
<p>Skaff SSL-sikring gjennom Certbot. Dette er en fremgangsmåte i Ubuntu 20.04:</p>
<ol>
<li><code>lxc shell *proxy_container_navn*</code></li>
<li><code>sudo add-apt-repository ppa:certbot/certbot</code></li>
<li><code>sudo apt-get install certbot python-certbot-nginx</code></li>
<li><code>sudo certbot --nginx</code></li>
</ol>
<ul>
<li>Agree</li>
<li>No</li>
<li><em>velg riktig domene</em></li>
<li>2 (Redirect)</li>
</ul>
<ol start="5">
<li>Endre de nye linjene i nginx-konfigen til å se slik ut:</li>
</ol>
<pre><code>listen 443 ssl proxy_protocol; # managed by Certbot
listen [::]:443 ssl proxy_protocol; # managed by Certbot
</code></pre>
<ol start="6">
<li><code>sudo systemctl restart nginx</code></li>
</ol>
<h2 id="kilder">Kilder</h2>
<ol>
<li><a href="https://www.linode.com/docs/guides/beginners-guide-to-lxd-reverse-proxy/">A Beginner&#39;s Guide to LXD: Setting Up a Reverse Proxy to Host Multiple Websites</a>, sist lest 12.09.2022.</li>
<li><a href="https://www.nginx.com/resources/wiki/start/topics/tutorials/install/">Nginx &gt; Tutorials &gt; Install</a>, sist lest 12.09.2022.</li>
</ol>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Nextcloud, Snap og Nginx Reverse proxy]]></title>
            <link>https://test.cengelsen.no/blog/nextcloud-snap-og-nginx-reverse-proxy</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/nextcloud-snap-og-nginx-reverse-proxy</guid>
            <pubDate>Sun, 11 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[En instruks på hvordan du kan kjøre en Nextcloud snap bak en Nginx reverse proxy.]]></description>
            <content:encoded><![CDATA[<h2 id="hva-er-nextcloud">Hva er Nextcloud?</h2>
<p>Nextcloud er et skylagringsalternativ til Dropbox og Google Drive, som er åpen kildekode. Du kan kjøre det lokalt på din egen maskin,<br />hvilket betyr at du har kontroll over dine filer til enhver tid. Med Nextcloud Hub, satser de på å ha én intregret løsning for fillagring,<br />fildeling, preiketjenester, epost-tjenester og dokumentsamarbeid. I tillegg er det også mulig å installere diverse apper inn i<br />Nextcloud-installasjonen din. Selv om de startet i 2016, så estimerer de selv at det er nå over 400.000 Nextcloud-maskintjenere på nett. </p>
<h2 id="forklaring-av-problemstilling">Forklaring av problemstilling</h2>
<p>I min søken etter svar på internettet, så sitter jeg igjen med inntrykket at denne kombinasjonen av konfigurasjon ikke er vanlig.<br />Derfor skal jeg prøve å være så tydelig som mulig, for å forhindre forvirring og at du kaster bort tiden din.</p>
<p>Det jeg ønsker å forklare i denne instruksen, er hvordan man kan kjøre en Nextcloud instans, installert og konfigurert gjennom Snap,<br />bak en Nginx proxy server. Slik at proxy-serveren tar seg av SSL-sikringen, mens tjeneste-serveren tar seg av alt annet Nginx-relatert.</p>
<p>Om du har konfigurert en Nginx-proxy-server slik som beskrevet i [proxy-instruksen min]( {{&lt; relref path=&quot;proxy-instruks.md&quot; lang=&quot;no&quot; &gt;}} ), så har du nå to virtuelle maskiner;<br />én virtuell maskin som kjører Nginx som proxy og én virtuell maskin som kjører nginx som en &quot;ordinær&quot; webserver. På den maskinen som kjører en<br />&quot;ordinær&quot; webserver, så skal Nextcloud også kjøre. Problemstillingen er da at Nextcloud må kommunisere riktig med sin lokale &quot;ordinære&quot; webserver,<br />samt at den &quot;ordinære&quot; webserveren må kommunisere riktig med proxy-serveren, slik at jeg kan nå nextcloud-tjenesten ved å gå til<br /><em><a href="https://eksempel.domene.no">https://eksempel.domene.no</a></em>. </p>
<h2 id="forutsetninger">Forutsetninger</h2>
<ol>
<li>Muligheten til å installere Snap.</li>
<li>64bit CPU og 64bit OS er anbefalt.</li>
<li>Minst 128MB RAM per prosess, men 512MB RAM per prosess er anbefalt.</li>
<li>Nginx er konfigurert som reverse proxy, [slik som beskrevet her]({{ relref . &quot;/proxy-instruks&quot; }}).</li>
</ol>
<h2 id="installere-snap">Installere Snap</h2>
<p>Installasjon av selve Snap kan variere mellom ulike systemer. En guide for ulike systemer <a href="https://snapcraft.io/docs/installing-snapd">kan du finne her</a>.</p>
<h2 id="installere-nextcloud">Installere Nextcloud</h2>
<p>Det finnes andre måter å installere Nextcloud på som ikke innebærer Snap, men her er poenget at Nextcloud er installert gjennom Snap.</p>
<p>Når du har Snap, kan du følge disse stegene:</p>
<ol>
<li><code>sudo snap install nextcloud</code></li>
<li><code>sudo sudo nextcloud.manual-install *sudobruker* *passord*</code></li>
</ol>
<h2 id="konfigurere-nextcloud">Konfigurere Nextcloud</h2>
<p>For at Nextcloud skal kommunisere med Nginx på riktig måte, så trengs det litt konfigurasjon av Nextcloud. Du må gjøre følgende:</p>
<ol>
<li><code>sudo snap stop nextcloud</code></li>
<li>Åpne konfigurasjonsfilen til nextcloud. For Ubuntu 20.04 blir det <code>/var/snap/nextcloud/31222/nextcloud/config/config.php</code>.</li>
<li>Legg til disse linjene på bunnen av filen:</li>
</ol>
<pre><code>&#39;overwritehost&#39; =&gt; &#39;eksempel.domene.no&#39;,
&#39;overwriteprotocol&#39; =&gt; &#39;https&#39;,
&#39;overwritewebroot&#39; =&gt; &#39;/&#39;,
</code></pre>
<p>samt endre <code>&#39;trusted_proxies&#39;</code> til å se slik ut:</p>
<pre><code>&#39;trusted_proxies&#39; =&gt;
  array (
    0 =&gt; &#39;*Proxy-server IP*&#39;,
  ),
</code></pre>
<p>Om du ikke har <code>&#39;trusted_proxies&#39;</code>-variabelen, må du legge den til også.</p>
<p>Det nevnes også mange steder på nettet at du må endre <code>&#39;overwrite.cli.url&#39;</code>-variabelen til å være <code>&#39;https://eksempel.domene.no&#39;</code>,<br />men jeg har den stående som den er, nemlig <code>&#39;https://localhost&#39;</code>.</p>
<ol start="4">
<li><code>sudo nextcloud.disable-https</code></li>
<li><code>sudo snap set nextcloud ports.http=*ledig port*</code>. Det samme er mulig for https: <code>sudo snap set nextcloud ports.https=*ledig port*</code>&#39;</li>
<li><code>sudo snap start nextcloud</code></li>
</ol>
<p>Da har nextcloud all den nødvendige konfigurasjonen for å kunne kommunisere med nginx.</p>
<h2 id="konfigurere-nginx">Konfigurere Nginx</h2>
<p>I dette tilfellet så kreves det nødvendig konfigurasjon på både Proxy-serveren og tjeneste-serveren på forhånd for at konfigureringen under skal virke.<br />Da sikter jeg til forbeholdet som denne instruksen tar, hvilket jeg nevnte tidligere.</p>
<p>Nginx-config på Proxy-serveren:</p>
<pre><code class="language-bash">server {

        server_name *domenenavn*;

        location / {
                include /etc/nginx/proxy_params;

                proxy_pass http://*IP til nextcloud-server*/; # I LXD kan du også bare skrive *container-navn*.lxd

        }


        real_ip_header proxy_protocol;
        set_real_ip_from 127.0.0.1;



    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/*eksempel.domene.no*/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/*eksempel.domene.no*/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
    if ($host = *eksempel.domene.no*) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

        listen 80 proxy_protocol;
        listen [::]:80 proxy_protocol;

        server_name *eksempel.domene.no*;
    return 404; # managed by Certbot


}
</code></pre>
<p>Nginx-config på Nextcloud-serveren:</p>
<pre><code class="language-bash">server {

        listen 80;
        listen [::]:80;

        server_name *eksempel.domene.no*;

        location / {
                proxy_pass_header   Server;
                proxy_set_header    Host $host;
                proxy_set_header    X-Real-IP $remote_addr;
                proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header    X-Forwarded-Proto $scheme;
                proxy_pass          http://127.0.0.1:*nextcloud.http-port*;
        }
}
</code></pre>
<h2 id="kilder">Kilder</h2>
<ol>
<li><a href="https://github.com/nextcloud-snap/nextcloud-snap/wiki/Putting-the-snap-behind-a-reverse-proxy">Putting the snap behind a reverse proxy</a>, sist lest 11.09.2022.</li>
<li><a href="https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-nextcloud-on-ubuntu-20-04">How To Install and Configure Nextcloud on Ubuntu 20.04</a>, sist lest 11.09.2022.</li>
<li><a href="https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/reverse_proxy_configuration.html">Nextcloud configuration &gt; Reverse proxy</a>, sist lest 11.09.2022.</li>
<li><a href="https://www.vanwerkhoven.org/blog/2021/setting-up-nextcloud-behind-https-nginx-proxy/">Setting up Nextcloud behind https nginx proxy</a>, sist lest 11.09.2022.</li>
</ol>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Hvordan rigge opp LXD lokalt]]></title>
            <link>https://test.cengelsen.no/blog/hvordan-rigge-opp-lxd-lokalt</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/hvordan-rigge-opp-lxd-lokalt</guid>
            <pubDate>Sun, 24 Jul 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[En instruks på hvordan rigge opp LXD lokalt for virtualisering.]]></description>
            <content:encoded><![CDATA[<h2 id="hva-er-lxd">Hva er LXD?</h2>
<p>LXD er en CLI-tjeneste for å forvalte og drifte virtuelle maskiner og beholdere. LXD er skrevet i Go og er<br />lisensiert under Apache2-lisensen. LXD kan deles opp i LXD (Linux Daemon) og LXC (Linux Containers).<br />LXC er programvaren som muliggjør skapelsen av virtuelle maskiner og beholdere. LXD er bygget på toppen av LXC,<br />og visstnok forbedrer LXC med bedre sikkerhet, skalerbarhet, brukervennlighet og prosesseringskostnad.<br />En annen liten forskjell er at LXC bruker C API&#39;et, mens LXD bruker REST API&#39;et. </p>
<p>LXD kan også <a href="https://linuxcontainers.org/lxd/third-party-integrations/">integreres inn i andre plattformer og verktøy</a>, som feks. Ansible, Terraform og Juju. </p>
<p>Før du installerer det lokalt, kan du også <a href="https://linuxcontainers.org/lxd/try-it/">prøve en demo av det her</a>!</p>
<h2 id="formålet-med-denne-instruksen">Formålet med denne instruksen</h2>
<p>Denne instruksjonen har som formål å veilede deg til å installerere og konfigurere LXD, slik at du kan bruke LXD<br />lokalt for enkel virtualisering. Etter denne instruksjonen burde du sitte igjen med et LXD-miljø hvor du kan<br />skape nye beholdere, starte og stoppe dem og slette dem, samt at disse beholderne kan kommunisere med hverandre.<br />Det er selvfølgelig mer avanserte ting en kan gjøre med LXD, men det dekkes ikke her. </p>
<h2 id="avhengigheter">Avhengigheter</h2>
<p>Om du installerer det gjennom Snap, er det anbefalt at man har minst 2 GB RAM. Utenom det er det også anbefalt at<br />det brukes et ZFS-filsystem som &quot;storage pool&quot; for LXD. I så tilfelle, krever LXD at du har installert<br /><code>zfsutils-linux</code>.</p>
<p>Man er også avhengig av at moderkortet og prosessoren støtter virtualisering.</p>
<h2 id="installasjon">Installasjon</h2>
<h3 id="snap">Snap</h3>
<p>LXD er tilgjengelig for nedlasting og installering gjennom Snap. Om du har Snap, kan du kjøre <code>snap install lxd</code>.<br />Siden Ubuntu 20.04, er LXD allerede installert, som en Snap-pakke, etter en fersk installasjon av Ubuntu.</p>
<p>Installasjon av selve Snap kan variere mellom ulike systemer. En guide for ulike systemer <a href="https://www.ubuntupit.com/how-to-install-snap-package-manager-in-linux-distributions/">kan du finne her</a>.</p>
<h3 id="manuelt">Manuelt</h3>
<p>Siden LXD kommer ferdig installert med Ubuntu, trengte jeg bare å tenke på konfigurering. </p>
<p>På mange operativsystemer kommer ikke Snap med en fersk installasjon, men man må heller ikke bruke Snap for å<br />installere det. <a href="https://linuxcontainers.org/lxd/getting-started-cli/">Her er en oversikt</a> for installasjon på et par ulike systemer uten Snap.</p>
<h2 id="konfigurasjon">Konfigurasjon</h2>
<h3 id="bruker-rettigheter">Bruker-rettigheter</h3>
<p>Legg til brukeren din til lxd-gruppen.:</p>
<p><code>sudo adduser &lt;navn på bruker&gt; lxd</code></p>
<p>du kan bekrefte ved å skrive <code>id -nG</code>. Om lxd står i den listen, har brukeren lxd-rettigheter.</p>
<h3 id="lagringsplass">Lagringsplass</h3>
<p>Før du initialiserer LXD, er det viktig at du har satt tilside lagringsplassen du vil bruke. LXD skaper en<br />ZFS-pool på den dedikerte lagringsplassen du har satt tilside, så du trenger ikke tenke på ZFS-konfigurering på<br />forhånd. </p>
<h3 id="initialisering">Initialisering</h3>
<p>Om det er første gangen LXD kjører på maskinen, så må en først initialisere med <code>lxd init</code>.<br />I denne prosessen får man en serie med spørsmål for å konfigurere lagringsplassen som LXD skal bruke.<br />De er som følger:</p>
<pre><code class="language-sh">Do you want to configure a new storage pool? (yes/no) [default=yes]: yes
Name of the new storage pool [default=default]: &lt;velg navn&gt;
Name of the storage backend to use (btrfs, dir, lvm, zfs) [default=zfs]: zfs
Create a new ZFS pool? (yes/no) [default=yes]: yes
Would you like to use an existing block device? (yes/no) [default=no]: yes
Path to the existing block device: path/to/storage/device/&lt;name of storage device&gt;
</code></pre>
<p>Etter dette er konfigurering av lagringsplass ferdig.</p>
<h3 id="nettverk">Nettverk</h3>
<p>I samme initialisering blir også nettverket til LXD konfigurert. I samme stil som i sted, får du en serie med<br />spørsmål. De er som følger:</p>
<pre><code class="language-sh">Would you like to connect to a MAAS server? (yes/no) [default=no]: no
Would you like to create a new local network bridge? (yes/no) [default=yes]: yes
What should the new bridge be called? [default=lxdbr0]: lxdbr0
What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: auto
What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: auto
</code></pre>
<p>Dette åpner for følgende egenskaper:</p>
<ul>
<li>Hver beholder blir automatisk tildelt en privat IP-adresse.</li>
<li>Hver beholder kan kommunisere med hverandre over det private nettverket.</li>
<li>Hver beholder kan initiere kontakt med internett</li>
<li>Hver beholder forblir utilgjengelig fra internett. En kontakt kan IKKE initieres fra internett for å nå beholderen.</li>
</ul>
<h3 id="diverse">Diverse</h3>
<p>Du får også 3 spørsmål om diverse ting:</p>
<pre><code class="language-sh">Would you like LXD to be available over the network? (yes/no) [default=no]: no
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] yes
Would you like a YAML &quot;lxd init&quot; preseed to be printed? (yes/no) [default=no]: no
</code></pre>
<p>Etter dette, kjører et script i bakgrunnen. Om du ikke får noe utfôr, så er det helt normalt.</p>
<h2 id="håndtere-beholdere">Håndtere beholdere</h2>
<p>Selv om tjenesten heter LXD spå bruker man kommandoen <code>lxc</code> for å kommunisere med LXD Hypervisor&#39;en</p>
<h3 id="se-oversikt">Se oversikt</h3>
<p>For å liste opp alle beholderne du har, skriv <code>lxc list</code>. For å se liste over tilgjengelige kommandoer, skriv<br /><code>lxc -h</code>.</p>
<h3 id="skape-en-beholder">Skape en beholder</h3>
<p>For å skape en ny beholder, skriv <code>lxc launch &lt;navn på OS&gt;:&lt;versjon&gt; &lt;navn på beholderen&gt;</code>.<br />Om du vil skape en beholder med ubuntu 20.04 og med navn <em>webserver</em>, skriver du<br /><code>lxc launch ubuntu:20.04 webserver</code>. Dette kommer til å skape og starte beholderen.</p>
<p>Teknisk sett er &lt;navn på OS&gt; identifikatoren for den forhånds-konfigurerte listen av LXD-avbildningsfiler.<br /><versjon> er navnet på avbildningsfilen. 20.04 er en forkortelse for Ubuntu 20.04. </p>
<p>For å se en komplett liste over tilgjengelige avbildningsfiler, skriv <code>lxc image list images:</code>. Du kan også<br />begrense listen til bare Ubuntu, ved å skrive <code>lxc image list ubuntu:</code>. Du kan hente ut info om avbildningsfilen<br />ved å skrive <code>lxc image info &lt;navn på OS&gt;:&lt;versjon&gt;</code>. </p>
<h3 id="startstoppslett-en-beholder">Start/stopp/slett en beholder</h3>
<p>Starte beholderen: <code>lxc start &lt;navn på beholderen&gt;</code>. Stoppe beholderen: <code>lxc stop &lt;navn på beholderen&gt;</code>.<br />Slette beholderen: <code>lxc delete &lt;navn på beholderen&gt;</code>.</p>
<h3 id="gi-en-beholder-statisk-ip-adresse">Gi en beholder statisk IP-adresse</h3>
<p>LXD har en innebygget DHCP-server og kan tildele en tilfeldig IP-adresse til alle beholderne. Den initielle<br />IP-adressen vedvarer selv om beholderen omstartes. Dette er hvordan man tildeler en statisk IP-adresse til<br />en beholder. </p>
<p>Overskriv den nåværende NIC&#39;en:</p>
<p><code>lxc config device override &lt;navn på beholder&gt; &lt;navn på NIC&gt;</code></p>
<p>Gi beholderen den statiske IP-adressen og omstart:</p>
<p><code>lxc config device set &lt;navn på beholder&gt; &lt;navn på NIC&gt; ipv4.address &lt;IP-adresse&gt;</code></p>
<p><code>lxc restart &lt;navn på beholder&gt;</code></p>
<h2 id="eksponere-beholderen-for-internett">Eksponere beholderen for internett</h2>
<p>Etter all denne konfigurasjonen er det fremdeles ikke mulig å aksessere beholderen fra internett.<br />Du må derfor lage en <code>iptables</code>-regel slik at nettverkstrafikk blir videresendt til beholderen. </p>
<p>Dette krever 2 ting: Din offentlige IP-adresse og beholderen sin IP-adresse. </p>
<h3 id="installere-nginx">Installere Nginx</h3>
<p>En god måte å teste om du har fått til iptables-regelen, er å installere Nginx i beholderen. Først må man inn i<br />beholderen. Det kan man gjøre ved å skrive <code>lxc shell &lt;navn på beholder&gt;</code>. Da &quot;ssh&quot;-er du inn i beholderen.<br />Du kan også skrive <code>lxc exec &lt;navn på beholder&gt; -- sh -c &quot;&lt;kommandoer&gt;&quot;</code> om du bare ønske å utføre kommandoer i<br />beholderen. Deretter installerer du Nginx på den konvensjonelle måten for OS-en du har valgt.<br />for Ubuntu blir det bare: </p>
<pre><code class="language-sh">apt-get update &amp;&amp; apt-get install nginx
</code></pre>
<h3 id="åpne-for-nettverkstrafikk">Åpne for nettverkstrafikk</h3>
<p>Dette steget er ganske avhengig av din lokale nettverks-konfigurasjon, men om du ikke har noen spesielle<br />nettverkskonfigurasjoner, burde dette fungere:</p>
<pre><code class="language-sh">PORT=80 PUBLIC_IP=&lt;offentlig IP-adresse&gt; CONTAINER_IP=&lt;beholder IP-adresse&gt; IFACE=&lt;navn på NIC&gt; \
sudo -E bash -c &#39;iptables -t nat -I PREROUTING -i $IFACE -p TCP -d $PUBLIC_IP \
--dport $PORT -j DNAT --to-destination $CONTAINER_IP:$PORT -m comment --comment &quot;&lt;valgfri kommentar&gt;&quot;&#39; \
</code></pre>
<p>Forklaring:</p>
<ul>
<li><code>-t nat</code> spesifiserer at du skal bruke NAT-tabellen for adresse-oversettelse</li>
<li><code>-I PREROUTING</code> spesifiserer at du legger regelen til lenken som heter &quot;PREROUTING&quot;</li>
<li><code>-i $FACE</code> spesifiserer NIC&#39;en som skal brukes</li>
<li><code>-p TCP</code> spesifiserer at TCP-protokollen skal brukes</li>
<li><code>-d $PUBLIC_IP</code> spesifiserer IP-adressen som er destinasjonen for regelen</li>
<li><code>--dport $PORT</code> spesifiserer porten som er destinasjonen for regelen</li>
<li><code>-j DNAT</code> spesifiserer at du skal utføre et &quot;hopp&quot; til destinasjons-NAT (DNAT)</li>
<li><code>-to-destination $CONTAINER_IP:$PORT</code>spesifiserer at henvendelsen skal bli sendt til beholderen sin IP-adresse på den spesifikke porten.</li>
</ul>
<p>For å se en nummerert liste over reglene, kan du skrive <code>sudo iptables -t nat -L PREROUTING --line-numbers</code>.</p>
<p>Disse reglene må man anvende på nytt hver gang man omstarter maskinen. Ganske kjedelig. Så da kan du installere<br /><code>iptables-persistent</code>-pakken. Da anvendes reglene automatisk hver gang du omstarter maskinen. </p>
<p>for å fjerne en IP-tabell regel, kan du skrive <code>sudo iptables -t nat -D PREROUTING &lt;regelnummer&gt;</code>. I tillegg<br />burde du lagre forandringen ved å skrive <code>sudo netfilter-persistent save</code>. Da anvendes ikke regelen på nytt<br />igjen ved neste omstaI tillegg</p>
<h2 id="tldr">TL;DR</h2>
<p>Installere og konfigurere LXD på en Ubuntu 20.04</p>
<ol>
<li><code>sudo apt-get update &amp;&amp; sudo apt-get upgrade</code></li>
<li><code>sudo adduser &lt;brukernavn&gt; lxd</code></li>
<li><code>sudo apt-get install -y zfsutils-linux</code></li>
<li><code>sudo lxd init</code></li>
</ol>
<ul>
<li>no</li>
<li>yes</li>
<li>&lt;navn på storage pool&gt;</li>
<li>zfs</li>
<li>yes</li>
<li>yes</li>
<li>/path/to/&lt;navn på lagringsplass&gt;</li>
<li>No</li>
<li>yes</li>
<li>lxdbr0</li>
<li>auto</li>
<li>auto</li>
<li>no</li>
<li>yes</li>
<li>no</li>
</ul>
<ol start="5">
<li><code>lxc launch &lt;os-navn&gt;:&lt;os-versjon&gt; &lt;beholder-navn&gt;</code></li>
<li><code>lxc config device override &lt;beholder-navn&gt; &lt;NIC-navn&gt;</code></li>
<li><code>lxc config device set &lt;beholder-navn&gt; &lt;NIC-navn&gt; ipv4.address &lt;beholder IP-adresse&gt;</code></li>
<li><code>lxc restart &lt;beholder-navn&gt;</code></li>
<li><pre><code class="language-lxc">
</code></pre>
</li>
<li><code>PORT=80 PUBLIC_IP=&lt;offentlig IP-adresse&gt; CONTAINER_IP=&lt;beholder IP-adresse&gt; IFACE=&lt;navn på NIC&gt;  sudo -E bash -c &#39;iptables -t nat -I PREROUTING -i $IFACE -p TCP -d $PUBLIC_IP --dport $PORT -j DNAT --to-destination $CONTAINER_IP:$PORT -m comment --comment &quot;&lt;valgfri kommentar&gt;&quot;&#39;</code></li>
<li><code>sudo apt-get install iptables-persistent</code></li>
<li>profitt</li>
</ol>
<h3 id="shell-script">Shell-script</h3>
<p>Skap og start en ny beholder:</p>
<pre><code class="language-sh">#!/bin/sh

lxc list --columns ns4

read -p &quot;Name of OS? &#39;OS:version&#39;:&quot; &quot;osName&quot;
read -p &quot;Name of container?:&quot; &quot;containerName&quot;
read -p &quot;IP of container?:&quot; &quot;containerIP&quot;
read -p &quot;Name of NIC:&quot; &quot;nicName&quot;
read -p &quot;Servers public IP-address?:&quot; &quot;publicIP&quot;
read -p &quot;Port to receive network traffic?:&quot; &quot;portNr&quot;

lxc launch $osName $containerName

lxc config device override $containerName $nicName
lxc config device set $containerName $nicName ipv4.address $containerIP

lxc restart $containerName

read -p &quot;Forward incoming connections to container? [yes/no]:&quot; &quot;fwdTraffic&quot;

if [ $fwdTraffic = &quot;yes&quot; ]; then

        read -p &quot;Comment for Ip-table rule?:&quot; &quot;iptComment&quot;

        PORT=$portNr PUBLIC_IP=$publicIP CONTAINER_IP=$containerIP IFACE=$nicName \
        sudo -E bash -c &#39;iptables -t nat -I PREROUTING -i $IFACE -p TCP -d $PUBLIC_IP \
        --dport $PORT -j DNAT --to-destination $CONTAINER_IP:$PORT -m comment --comment &quot;$iptComment&quot;&#39;
	sudo netfilter-persistent save
	echo &quot;Added rule to IP-table. The container is now ready.&quot;
else
        echo &quot;Skipped forwarding network traffic. The container is now ready.&quot;
fi
</code></pre>
<h2 id="valgfritt-installere-lxdui">(Valgfritt) Installere LXDUI</h2>
<p>Jeg har ikke prøvd det selv enda, men kommer til å oppdatere denne instruksjonen når jeg har implementert det.<br />Du kan også installere et visuelt brukergrensesnitt i nettleseren, med<br /><a href="https://github.com/AdaptiveScale/lxdui/wiki">dette github-prosjektet</a>. </p>
<h2 id="kilder">Kilder</h2>
<p>Ser du noe galt med denne instruksjonen? <a href="https://github.com/Cengelsen/cengelsen.no">Opprett en pull request!</a></p>
<ul>
<li><p><a href="https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-lxd-on-ubuntu-20-04">How to install and Configure LXD on Ubuntu 20.04</a>, sist lest 24.07.2022.</p>
</li>
<li><p><a href="https://linuxcontainers.org/lxd/getting-started-cli/">LXD &gt; Getting started &gt; Installation</a>, sist lest 24.07.2022</p>
</li>
<li><p><a href="https://www.geeksforgeeks.org/difference-between-lxc-and-lxd/">Difference between LXC and LXD</a>, sist lest 25.07.2022</p>
</li>
<li><p><a href="https://discuss.linuxcontainers.org/t/comparing-lxd-vs-lxc/24">Comparing LXD vs. LXC</a>, sist lest 25.07.2022</p>
</li>
</ul>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[En Vurdering av Oculus Rift Sin Innovative Kraft]]></title>
            <link>https://test.cengelsen.no/blog/en-vurdering-av-oculus-rift-sin-innovative-kraft</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/en-vurdering-av-oculus-rift-sin-innovative-kraft</guid>
            <pubDate>Wed, 27 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Dette er en tekst jeg skrev i 2020 om VV-teknologi, dens historie og hvordan Oculus Rift var en nyskapende suksess.]]></description>
            <content:encoded><![CDATA[<p>Hva er ekte? Ikke bare er dette et eksistensielt spørsmål, men en kilde for skapelse, innovasjon og<br />nysgjerrighet.<br />Vi utforsker svarene på dette spørsmålet ved å fordype oss i det virtuelle riket, og verktøyet vårt har siden 60-tallet, vært VV-teknologi.<br />Selv om det nylig har tatt opp en stadig større del av videospillfellesskapet.<br />Det startet med flere mislykkede forsøk på midten av 90-tallet og fortsatte med Palmer Luckeys svært vellykkede <em>Oculus Rift</em>.<br />Denne nye VV-hjelmen har pustet nytt liv i VV-fellesskapet, samt VV-forskning og utvikling.</p>
<p>I denne teksten vil jeg bruke teoriene til McQuivey, Rogers, Simon og Winston innen formgiving og innovasjon for å forklare VV-hjelmene, mer spesifikt den innovative effekten til <em>Oculus Rift</em>.</p>
<p>VV/EV-teknologi kan komme i forskjellige formater.<br />De mest gjenkjennelige for gjennomsnittsforbrukerer er <em>Hode-Festede Skjermer</em> (HFS).<br />I begynnelsen var HFS-er tunge, mekaniske og hadde liten anvendelse til annet enn vitenskapelig forskning.<br />Likevel, med tiden, ble HFS-er mer elektroniske med funksjoner som bevegelsessporing, 3D stereoskopisk bildebehandling, innebygde stereohodetelefoner og perifere kontrollere.</p>
<p>Virtuell Virkelighet (VV) er en kunstig skapt simulering av en hvilken som helst virkelighet, endret på eller ikke.<br />Maskinvaren kan variere fra en enkel maske med optikk som manipulerer synet ditt; til en HFS som gir opplevelsen av en fullstendig datamaskingenerert verden som kan simulere ethvert 3D-miljø.<br />For tiden brukes VV hovedsakelig til underholdning, kunst-formgiving eller vitenskapelig forskning.<br />Anvendelsen kan også utvides til fjernstyring av roboter, treningssimuleringer og psykologiske behandling.</p>
<p>Endret Virkelighet (EV) derimot, skiller seg fra VV ved at selv om den ikke simulerer en virkelighet, endrer den vår oppfatning av den faktiske virkeligheten.<br />EV-teknologi kan enten endre vår oppfatning av den fysiske virkeligheten; eller gi oss nye mekanismer i den fysiske virkeligheten for å manipulere kunstige objekter projisert fra en digital verden inn i den fysiske verden.<br />Et godt eksempel på dette er VIDEOPLACE-teknologien utviklet av Myron Krueger. (Virtual Reality Society, n.d)</p>
<p>Den første forekomsten av VV/EV-teknologi er <em>Wheatstone speil-stereoskopet</em>, oppfunnet av Sir Charles Wheatstone på 1840-tallet.<br />Det var rett og slett en tavle med to bilder på hver side av seg.<br />I midten var det et par speil installert i en 45 graders vinkel foran brukerens øyne, som hver for seg reflekterte et bilde plassert på hver side av brettet.<br />Mer enn hundre år senere ble <em>Sensorama</em> oppfunnet av Morton Heilig i 1962, og introdusert for publikum.<br />Dette var en stasjonær bås, som minner om en arkademaskin fra 80-tallet og kunne passe opptil 4 personer samtidig.<br />En kunne oppleve opptil seks forskjellige filmer i alle 5 sanser.<br />Den inneholdt duftprodusenter, en vibrerende stol, stereohøyttalere og en stereoskopisk 3D-skjerm.</p>
<p>Heilig patenterte også den første HFS-en kalt <em>Telesphere mask</em>.<br />Dette ga brukeren stereoskopiske 3D-bilder og stereolyd.<br />Dette inspirerte Comeau og Bryan til å lage <em>Until Headsight</em> for det amerikanske militæret, den første HFS-en med bevegelsessporing.<br />I 1966 ble <em>Sayre Gloves</em> laget av Sandin og Defanti, og var den første kablede periferiutstyret i form av en hanske.<br />Disse hanskene brukte lys-utstrålere og fotoceller i hanskenes fingre for å overvåke bevegelse.<br />Med andre ord forstyrret bevegelsen av fingrene et lys som ble sendt inn i een fotocelle, hvilket ble omdannet til elektriske signaler.</p>
<p>I 1984 ble VPL Research, Inc. grunnlagt.<br />De ble hyret av NASA i 1986 for å lage en rekke VV-maskinvare.<br />I løpet av kontrakten fortsatte de med å utvikle <em>DataGlove</em> (hanske-periferier), <em>EyePhone</em> (HFS), <em>AudioSphere</em> (3D-lydprogramvare) og <em>DataSuit</em> (kroppsdrakt). (Virtual Reality Society, n.d)<br />I 1989 lanserte Mattel, Inc. <em>PowerGlove</em> , inspirert av <em>DataGlove</em>.<br /><em>PowerGlove</em> var utviklet som et kontrollertilbehør for Nintendo Entertainment System (NES), men ble aldri populært som et produkt på grunn av dets vanskeligheter i bruk.</p>
<p>2 år senere, i 1991, lanserte et selskap kalt <em>The Virtuality Group</em> et VV-arkadespill kalt <em>Virtuality</em>.<br />Dette var det første masseproduserte VV-underholdningssystemet.<br />Den inneholdt stereoskopiske 3D-bilder i sanntid gjennom en HFS med innebygde stereohodetelefoner, stikke-kontroller, en mikrofon og flerspillerkapasitet.<br />I 1995 ble tre kommersielle VV-hjelmer produsert for masseproduksjon. Dette er året <em>VFX1 Headgear</em> ble utgitt av Forte Technologies, samt Victormaxx sin <em>Cybermaxx</em> og Virtual IOs <em>I-Glasses</em> (Delaney, 1996). De mislyktes alle i løpet av kort tid.<br />På dette tidspunktet hadde VV mistet interessen til allmennheten.<br />Men 16 år senere opprettet Palmer Luckey den første prototypen av Oculus Rift, og starter et nytt kapittel i VV-teknologiens historie.<br />Men hvordan ble dette til?</p>
<p>Mens Luckey jobbet i et mobiltelefonverksted, hadde han en hobby hvor han kjøpte og testet gamle VV-hjelmer.<br />Han fant dem utilstrekkelige.<br />Ingen av dem levde opp til forventningene hans om å fordype ham i en annen virtuell verden.<br />Senere da han gikk på en lokal høyskole, begynte han å eksperimentere på sin egen prototype for en ny VV-hjelm ved å kombinere deler av gamle VV-hjelmer og skjermer fra mobiltelefoner.<br />Han regelmessig oppdaterte et 3D-spillforum på nettet om fremgangen hans. </p>
<p>Til slutt etter at han hadde produsert flere prototyper, snublet John Carmack, medgründer av id Software, over innleggene hans på forumet.<br />Carmack tok kontakt med Luckey og fikk raskt tilbudet om å motta en av prototypene gratis.<br />Prototypen sjokkerte Carmack enormt og han så umiddelbart potensialet i denne teknologien.<br />Carmack skrev om en kopi av &quot;Doom 3&quot; til å fungere med prototypen, og justerte sin egen 3D-programvare for å imøtekomme prototypens mangler.<br />Senere samme år viste han prototypen til en mengde journalister på E3-spillkonvensjonen.</p>
<p>I løpet av de neste 21 månedene samarbeidet Luckey med Brendan Iribe, Nate Mitchell og Michael Antoinov for å grunnlegge Oculus VR.<br />John Carmack begynte også i selskapet deres litt senere som teknisk sjef.<br />De fortsatte utviklingen og lanserte et Kickstarter-prosjekt for å finansiere produksjonen av en &quot;gjør det hjemme&quot;-pakke, kalt <em>Development Kit 1</em>.<br />På en måned samlet de inn 2,4 millioner dollar, og på grunn av denne enorme suksessen vakte det oppmerksomhet hos Mark Zuckerberg, grunnlegger av Facebook.<br />Etter noen forhandlinger ble selskapet solgt til Facebook med en prislapp på 2 milliarder dollar (Kumparak, 2014).<br />Dette var en enorm suksess for Oculus VR, siden den nå hadde en tilnærmet uendelig mengde midler til videreutvikling og produksjon.<br />Siden den gang har tre flere versjoner av <em>Oculus Rift</em> blitt utviklet og solgt, hvor den siste er <em>Oculus Rift S</em>.<br />Men hvorfor var <em>Oculus Rift</em> så vellykket? Vi kan finne svar hos forskere av innovasjonsdynamikk.</p>
<p>Simon (1996) skiller det kunstige fra det naturlige og hevder at et kunstig system har tre viktige elementer som er avgjørende for dens overlevelse.</p>
<ol>
<li>Det indre miljøet</li>
<li>Det ytre miljø</li>
<li>Oppgavemiljøet</li>
</ol>
<p>Det indre miljøet må utformes slik at det svarer til kriteriene til det ytre miljøet, men de kan bare samhandle gjennom oppgavemiljøet.<br />Når det gjelder VV-HFS-er, ser det litt annerledes ut.<br />Dette er oppgavemiljøet til Oculus Rift.</p>
<ol>
<li>Det indre miljøet (VV-HFS)</li>
<li>Det første ytre miljøet (datamaskinen)</li>
<li>Det andre ytre miljøet (personen/operatøren)</li>
<li>Oppgavemiljøet (Gir operatøren et middel til å oppleve og manipulere et simulert miljø)</li>
</ol>
<p><em>Oculus Rifts</em> indre miljø består av 2 små skjermer, stereohodetelefoner og en ergonomisk, lav vekt hjelm for å bære skjermene og hodetelefonene.<br />I tillegg har den også en &quot;bevegelsessensor&quot;-modul for å registrere hjelmens orientering i rommet.<br />Skjermene holdes av hjelmen, slik at hver skjerm går til hvert øye.<br />Og selvfølgelig er hodetelefonene også adskilt slik at hver høyttaler går til hvert øre.<br />Det er også et beskyttende visir rundt skjermene, slik at intet merkbart lys kan komme inn i operatørens siktlinje (Desai, P.R., Desai, P.N, Ajmera, &amp; Mehta, 2014).</p>
<p>Det indre miljøet har derfor kapasiteten til å motta visuell og auditiv informasjon fra det 1. ytre miljøet.<br />Den har også kapasiteten til å mate denne informasjonen til det 2. ytre miljøet, gjennom skjermer og høyttalere.<br />I sin tur gjør dette at det 2. ytre miljøet stimulerer det indre miljøets gyroskop.<br />Dette, gjennom det indre miljøet, mater det 1. ytre miljøet med orienteringsdata, som den bruker til å endre den visuelle informasjonen mottatt av det indre miljøet.<br />Datamaskinen, med sin maskinvare, kjører programvaren som er nødvendig for at 3D-miljøet skal eksistere, mens HFS-en fungerer som grensesnittet mellom operatøren og det simulerte miljøet.</p>
<p><em>Oculus Rift</em> er en samling av undersystemer som hver har sin egen funksjon, ved å bruke sin egen mekanisme, til å bidra til ytelsen til hele det indre systemets funksjon.<br />Reduseres ethvert delsystem sin funksjonelle ytelse, reduseres kvaliteten på hele indre systemets funksjonelle ytelse.</p>
<p>Det har vært flere iterasjoner av <em>Rift</em>, med <em>DK1</em>, <em>Crystal Cove</em>, <em>DK2</em>, <em>Crescent Bay</em>, <em>CV</em> og til slutt <em>Rift S</em>.<br /><em>CV1</em>, eller <em>Consumer Version 1</em>, var den første salgbare versjonen produsert av Oculus VR.<br />Imidlertid ble både <em>DK1</em> og <em>DK2</em> solgt til folk som støttet Luckey&#39;s Kickstarter-prosjekt.<br />Dette er Luckeys måte å simulere oppgavemiljøet, ved å forbedre funksjonen til det indre miljø for hver iterasjon (Winston, 1998).<br />For hver versjon, ble oppløsningen, forsinkelsen, rom-orienteringsmulighetene, prosessorkraften, programvarekompatibiliteten og ergonomien blitt forbedret.<br />Dette har ikke bare forbedret oppgavemiljøet, men også gitt oss ny kunnskap om hva som skal til for å effektivt simulere en virkelighet.</p>
<p>Hovedårsaken til at <em>Oculus Rifts</em> indre miljø tjente sitt tiltenkte formål når tidligere forsøk fra andre selskaper ikke klarte det, er cybersickness.<br />Cybersyke er en lidelse indusert av VR-teknologi, hovedsakelig HFS-er, som forårsaker symptomer lik reisesyke, men også hodepine og<br />anstrengte øyne (LaViola, 2000).<br />På grunn av <em>Rifts</em> evne til ikke å indusere cybersyke hos operatørene, kan folk bruke det over lengre perioder.<br />Hoved-årsaken for denne evnen er den lave forsinkelsen (2ms – 30ms), det brede synsfeltet (100 ֯- 110 ֯ ) og den overlegne orienteringssporingen (akselerometer, gyroskop, magnetometer).<br />Dette mater operatøren med sanntidsendringer i det visuelle som eliminerer motstridende vestibulær og romlig oppfatning.</p>
<p>En av formgivingsbegrensningene har vært å ikke indusere cybersyke hos brukerne.<br />Dette er en streng begrensning å forholde seg til.<br />Dette er fordi indusering av cybersykdom gjør det 2. ytre miljøet ute av stand til å samhandle med det 1. ytre miljøet gjennom det indre miljøet.<br />I tillegg måtte den også ha lav vekt, ha en overkommelig pris og ikke begrense operatørens rom-orientering.<br />Dette var imidlertid bare myke begrensninger.</p>
<p>Den første iterasjonen av <em>Oculus Rift</em> var imidlertid ikke den optimale løsningen på disse formgivelsesbegrensningene, men det tilfredsstilte kravet.<br />Den første iterasjonens, <em>DK1</em>, operatører rapporterte at bildet var plaget av en &quot;Screen Door&quot;-effekt.<br />Kort fortalt betyr dette at operatøren kunne legge merke til hull mellom hver piksel, slik at hele bildet ser ut som en skjermdør som skal forhindre mygg.<br />Dette var en hindring for den helhetlige oppslukningen av det en opplevde.<br />Den hadde også bare tre rom-orienteringsgrader, altså rotasjonsbevegelsen på x-aksen, y-aksen og z-aksen i et 3D-rom.<br />Alle følgende iterasjoner inkluderte også &quot;translasjonsbevegelser&quot;<br />som dreiing, tilting og svinging på alle akser, noe som ga totalt seks rom-orienteringsgrader.<br />Senere iterasjoner hadde også en redusert &quot;Screen Door&quot;-effekt.</p>
<p>The <em>Rift</em> har blitt tilpasset menneskelige begrensninger, slik som menneskers oppfatning av vestibulær og romlig orientering.<br />Hadde det ikke tatt hensyn til disse begrensningene, ville HFS-en indusert cybersykdom og mislyktes i å tjene det tiltenkte formålet. VV-HFS-er er en besynderlig forekomst av det kunstige.<br />Siden, hvis begrensningene og forventningene ikke blir imøtekommet, ville det indre miljøet blitt ubrukelig.</p>
<p>Ifølge Winston (Media Technology and Society, Winston. S.3) er teknologi den eksplisitte ytringen for vitenskapens språk.<br />Det betyr at vi sosiale skapninger, altså mennesker, bruker utvikling av teknologi, som mekaniske eller elektriske enheter, for å uttrykke det vitenskapelig etablerte.<br />Prosessen i å til slutt komme frem til produksjonen av en oppfinnelse, starter med &quot;ideasjon&quot;, som ganske enkelt betyr &quot;å komme opp med en idé&quot;, på vitenskapen grunnlag.<br />Og siden vitenskapen inspirerte det, blir teknologi uttrykket for ideen.</p>
<p>Den første nevningen av VV-HFS-en slik vi kjenner den i dag, ble skrevet av Stanley G. Weinbaum i hans vitenskapsfiktive historie, <em>Pygmalion&#39;s Spectacles</em>, publisert i 1935.<br />Denne &quot;ideasjonen&quot; inspirerte Morton Heilig, og senere Ivan Sutherland, for å lage deres prototyper; <em>Sword of Damocles</em> og <em>The Ultimate Display</em>, henholdsvis i løpet av 1960-tallet (Virtual Reality Society, n.d).<br />Begge prototypene kan klassifiseres som avvist, siden ingen overordnet sosial nødvendighet hadde inntruffet ennå, og ingen mulig anvendelse var åpenbar.</p>
<p>Imidlertid fortsatte forskningen for Det Amerikanske Flyvåpen, og senere NASA, som akkumulerte ytterligere kompetansen til vitenskapelig kunnskap.<br />Dette forsterker Winstons påstand om at denne prosessen er styrt av en <em>akselerator-brems</em> dynamikk (Winston, s.11).<br />Etter hvert som vitenskapen utvidet sin ytterligere kompetanse innen informatikk ble det bygget flere prototyper.<br />Som for eksempel VPL Research sin <em>EyePhone</em> , SEGAs <em>SEGA VR</em> og Oculus VRs <em>Oculus Rift</em>.</p>
<p><em>EyePhone</em> er et eksempel på en parallell prototype, siden den ble utviklet av VPL for NASAs romflyvningssimuleringer.<br />I mellomtiden var <em>SEGA VR</em> et eksempel på en delvis prototype, siden den stort sett ble formgitt til å prestere som en VV-HFS, men presterte ikke så godt som tiltenkt, og ble avvist til slutt.<br /><em>Oculus Rift</em> var en akseptert prototype.<br />Dette er på grunn av &quot;akselerator-brems&quot; dynamikken var i sin &quot;brems&quot;-periode frem til nå, og skapte dermed en overordnet sosial nødvendighet for en ny prototype.<br />Jeg anser svaret på _Oculus Rift_s Kickstarter-prosjekt som bevis på dette (Oculus VR, 2016).</p>
<p>Den første versjonen av <em>Rift</em>, kalt <em>PR1</em>, ble imidlertid ikke gjennomført i tredelt fase av Winstons &quot;teknologiske ytelse&quot; (Winston, 1998).<br />Det var flere versjoner etter, for eksempel <em>DK1</em>, <em>Crystal Cove</em>, <em>DK2</em>, <em>Crescent Bay</em>, <em>CV1</em> og <em>Rift S</em>.<br />I samsvar med Winstons klassifiseringer kan jeg skille ytterligere hver iterasjon av <em>Rift</em> som følger:</p>
<ul>
<li><p>PR1 – akseptert prototype, men gikk ikke videre som produksjon, og ble ikke en oppfinnelse.</p>
</li>
<li><p>DK1 – akseptert prototype, gikk i produksjon og ble en oppfinnelse. Imidlertid ble det overflødig ettersom senere versjoner ble utgitt.</p>
</li>
<li><p>Crystal Cove – akseptert prototype, men gikk ikke videre som produksjon og ble derfor ikke en oppfinnelse.</p>
</li>
<li><p>DK2 – aksepterte prototype, gikk videre til produksjon og ble en oppfinnelse. Imidlertid ble det overflødig ettersom senere versjoner ble utgitt.</p>
</li>
<li><p>Crescent Bay – akseptert prototype, men gikk ikke videre som produksjon og ble derfor ikke en oppfinnelse.</p>
</li>
<li><p>CV 1 – akseptert prototype, gikk videre som produksjon og er en oppfinnelse. Den er imidlertid ikke overflødig ennå.</p>
</li>
<li><p>Rift S – er en fortsettelse av CV1, og er derfor akseptert. Den har gått i produksjon, blitt en oppfinnelse og er ikke overflødig per i dag.</p>
</li>
</ul>
<p>Ifølge Winston er alle teknologiske fremskritt underlagt &quot;loven&quot; om undertrykkelse av radikalt potensial (Winston, s. 11).<br />Er dette tilfellet med <em>Oculus Rift</em>?</p>
<p>Jeg vil påstå at den ikke har nådd det ennå, men kanskje om noen år. Grunnen til dette er den enorme bredden parallelle prototyper, i form av programvare, utviklet for en mengde VV-HFS-er.<br />Oppfinningen av <em>Oculus Rift</em> har skapt en ny overordnet sosial nødvendighet.<br /><em>Oculus Rift</em> er bare ett av flere VV-hjelmer som fungerer som verktøy for programvareutviklere i deres kreative virksomhet.<br />Eksempler på dette er den økende mengden VV-spill tilgjengelig, samt grafiske formgivingsverktøy med VV-støtte, som <em>Blender</em>, <em>Gravity Sketch</em>, <em>Facebook Quill</em> og <em>Oculus Medium</em>.</p>
<p>Emnet om at <em>Oculus Rift</em> skaper en ny overordnet sosial nødvendighet, kan diskutabelt gjøre det til en disruptiv innovasjon, og en digital en.<br />Palmer Luckey har virkelig handlet som en digital forstyrrer frem til selskapets oppkjøp av Facebook.<br />Ved å bruke kun seg selv som arbeidskraft for utvikling av den første prototypen, bruke reservedeler fra gammel VV-teknologi og nye mobiltelefoner, mens han konsulterte internett-fora for råd.<br />På den måten holdt han lave produksjons- og forskningskostnader, og til slutt introduserte det til lovende investorer gjennom internett.</p>
<p>Etter at selskapet ble grunnlagt, så han etter ytterligere finansiering gjennom Kickstarter.com og skaffet 2,4 millioner dollar for produksjonen av <em>Development Kit 1</em>.<br />Etter produksjonen av <em>Development Kit 1</em> ga han også ut en SDK (Source Development Kit) slik at utviklere kunne konstruere deres egne systemer for HFS-en.<br />Dermed gir han enhver eier av en DK1 muligheten til å bli en digital forstyrrer i det splitter nye markedet for VV-programvareutvikling.<br />Men hvordan har innovasjonen blitt adoptert av samfunnet?<br />Hvor er vi nå og hva er fremtiden for spredningen av denne innovasjonen?</p>
<p>Rogers (2003) har kategorisert de ulike gruppene av innovasjonstilegnere.<br />Basert på statistiske regler, deler han dem også inn i prosenter av befolkningen.</p>
<ol>
<li>Innovatører – 2,5 %</li>
<li>Tidlige tilegnere – 13,5 %</li>
<li>Tidlig majoritet – 34 %</li>
<li>Sen majoritet – 34 %</li>
<li>Etterstrebere – 16 %</li>
</ol>
<p>Når det gjelder <em>Oculus Rift</em>, var &quot;innovatørene&quot; på dette stadiet Palmer Luckey, medgründerne av Oculus VR og flere andre ansatte i Oculus VR.<br />Jeg anslår også prosentandelen &quot;innovatører&quot; var litt lavere enn Rogers anslår, i dette tilfellet.<br />Gjennom internettfora og Kickstarter har han nådd tidlige tilegnere, som senere ble solgt versjonene <em>DK1</em> og <em>DK2</em>.<br />De var godt klare til å ta i bruk denne innovasjonen, hovedsakelig på grunn av dens teknologiske evner, men også dens rimelige pris.<br />Den lave prisen, og gruppepresset fra tidlige tilegnere, gjorde det mulig for «det tidlige flertallet» å adoptere aktivt denne nye innovasjonen.<br />Personene som kjøper <em>Oculus Rift</em> på dette tidspunktet, handler bevisst for å anskaffe denne innovasjonen.<br />Samtidig som å påvirke det &quot;sene flertallet&quot; til å gjøre det samme.</p>
<p>Men selv om <em>Rift</em> S er rimelig, til rundt 600 $, ser de fleste på det som et enormt pengesluk.<br />Den er dyrere enn en bærbar PC, en spillkonsoll eller en ny telefon, og det fungerer fortsatt hovedsakelig som et underholdningssystem.<br />Men anvendeligheten strekker seg lenger.<br />Det finnes en mengde grafiske formgivingsverktøy med støtte for <em>Oculus Rift</em>, som tidligere nevnt.<br />Jeg vil hevde at den nåværende prislappen er den største hindringen for at denne innovasjonen skal spre seg inn i &quot;sen majoritet&quot;.<br />Hadde prisen vært lavere, ville &quot;den sene majoriteten&quot;, skeptikerne som de er, adoptert dette ganske raskt. (Rogers, 2003)</p>
<p>Videre er min spådom at utviklingen av VV-HFS som en PC-periferi er synonymt med utviklingen av den personlige datamaskinen til å bli en husholdningsnødvendighet.<br />Jo før denne sammenligningen blir tydeligere for &quot;det sene flertallet&quot;, jo før de vil ta i bruk denne nye innovasjonen.<br />De vil se det som et nødvendig verktøy for å utføre arbeidet sitt, for å nyte underholdning eller for vanlig kommunikasjon med sine jevnaldrende.<br />Dette vil i sin tur påvirke &quot;ettersleperne&quot; ettersom prisen på HFS-er vil stadig bli lavere, noe som gjør det blir en tryggere innovasjon for dem å ta i bruk.</p>
<p>Avslutningsvis har <em>Oculus Rift</em> vært en enorm innovativ suksess og et friskt pust inn videospillindustrien.<br />Det er en fantastisk teknologisk satsning, som har lyktes som en innovasjon hovedsakelig på grunn av dens evne til å opprettholde oppgavemiljøet.<br />Som en innovasjon har den ennå ikke diffundert inn i &quot;sen majoritet&quot;, men en dag vil det bli en PC-periferi i husholdningen.<br />Kanskje til og med en frittstående enhet.<br />Hvilket frigjører oss fra fysiske grensene pålagt oss av det nåværende normaliserte, snart overflødige, &quot;menneske-datamaskin&quot;-grensesnittet.</p>
<h2 id="kildeliste">Kildeliste</h2>
<p>Anthes, C., García-Hernandez, R., Kranzlmüller, D., Wiedemann, M. (2016, Mars). <em>State of the Art of Virtual Reality Technology</em>. Paper presented at IEEE Aerospace Conference, Big Sky, Montana, United States. Hentet fra: <a href="https://www.researchgate.net/profile/Ruben_Garcia_Hernandez/publication/297760223_State_of_the_Art_of_Virtual_Reality_Technologies/links/59f2efbe0f7e9beabfcc7ef3/State-of-the-Art-of-Virtual-Reality-Technologies.pdf">https://www.researchgate.net/profile/Ruben_Garcia_Hernandez/publication/297760223_State_of_the_Art_of_Virtual_Reality_Technologies/links/59f2efbe0f7e9beabfcc7ef3/State-of-the-Art-of-Virtual-Reality-Technologies.pdf</a></p>
<p>Clark, T. (2014, November). How Palmer Luckey Created Oculus Rift. Hentet 14 Mai, 2020, fra: <a href="https://www.smithsonianmag.com/innovation/how-palmer-luckey-created-oculus-rift-180953049/?page=">https://www.smithsonianmag.com/innovation/how-palmer-luckey-created-oculus-rift-180953049/?page=</a>.</p>
<p>Delaney, J. (1996, Juni 11). VR Headsets: Ready For Prime Time? <em>PC Magazine, 15(11), pp. 388-392.</em> Hentet fra: <a href="https://books.google.no/books?id=-p0J8W4KrksC&pg=PA388&lpg=PA388&dq=weight+of+vfx1+headgear&source=bl&ots=RWf3ZoD7Os&sig=ACfU3U0CiqyMEMKY0r55d0GD1put5x9_Tw&hl=no&sa=X&ved=2ahUKEwjCgfGylqDpAhUNmIsKHaQhBpYQ6AEwAXoECAoQAQ#v=onepage&q=vfx1%20headgear&f=false">https://books.google.no/books?id=-p0J8W4KrksC&amp;pg=PA388&amp;lpg=PA388&amp;dq=weight+of+vfx1+headgear&amp;source=bl&amp;ots=RWf3ZoD7Os&amp;sig=ACfU3U0CiqyMEMKY0r55d0GD1put5x9_Tw&amp;hl=no&amp;sa=X&amp;ved=2ahUKEwjCgfGylqDpAhUNmIsKHaQhBpYQ6AEwAXoECAoQAQ#v=onepage&amp;q=vfx1%20headgear&amp;f=false</a>.</p>
<p>Desai, P.R., Desai, P.N., Ajmera, K.D., Mehta, K. (2014). A Review Paper on Oculus Rift: A Virtual Reality Headset. <em>International Journal of Engineering Trends and Technology (IJETT), V13</em> (4), pp. 175-179. DOI: <a href="https://doi.org/10.14445/22315381/IJETT-V13P">https://doi.org/10.14445/22315381/IJETT-V13P</a>.</p>
<p>Jovanović, A., Milosavljević, A. (2017, Juni) <em>Review of Modern Virtual Reality HMD Devices and Development Tools</em>. Paper presented at the 52nd International Scientific Conference on Information, Communication and Energy Systems and Technologies, Nis, Serbia. Hentet fra: <a href="http://rcvt.tu-sofia.bg/ICEST2017_40.pdf">http://rcvt.tu-sofia.bg/ICEST2017_40.pdf</a>.</p>
<p>Kumparak, G. (2014, Mars 26). A Brief History Of Oculus. Hentet Mai 14, 2020, fra: <a href="https://techcrunch.com/2014/03/26/a-brief-history-of-oculus/">https://techcrunch.com/2014/03/26/a-brief-history-of-oculus/</a>.</p>
<p>LaViola, J.J. (2000). A Discussion of Cybersickness In Virtual Environments. <em>SIGCHI Bull. 32 (1)</em> , s. 47–56. DOI: <a href="https://doi.org/10.1145/333329">https://doi.org/10.1145/333329</a>.</p>
<p>McDonald, T. L. (1994, August). Are We Having Virtual Fun Yet? <em>PC Gamer, 1</em> (3), s. 44-49. Hentet fra: <a href="https://archive.org/details/PCGamer199408/page/n45/mode/2up">https://archive.org/details/PCGamer199408/page/n45/mode/2up</a>.</p>
<p>McQuivey, J. (2013). <em>Digital Disruption: Unleashing the Next Wave of Innovation.</em> Las Vegas, NV: Amazon Publishing.</p>
<p>Oculus VR. (2016, Januar 30). Oculus Rift: Step Into The Game. Hentet Mai 14, 2020, fra: <a href="https://www.kickstarter.com/projects/1523379957/oculus-rift-step-into-the-game">https://www.kickstarter.com/projects/1523379957/oculus-rift-step-into-the-game</a>.</p>
<p>Rogers, E.M. (2003). <em>Diffusion of Innovation</em>. New York: Free Press.</p>
<p>Simon, H. A. (1996). <em>The Sciences of the Artificial.</em> Cambridge, MA: The MIT Press.</p>
<p>Vashishtha, Y. (2018, November 1) Palmer Luckey: The Home School Kid Who Brought a Revolution in the Virtual Reality. Hentet Mai 14, 2020, fra: <a href="http://www.yourtechstory.com/2018/11/01/palmer-luckey-home-school-kid-brought-revolution-virtual-reality/">http://www.yourtechstory.com/2018/11/01/palmer-luckey-home-school-kid-brought-revolution-virtual-reality/</a>.</p>
<p>Virtual Reality Society. (n.d) History of Virtual Reality. Hentet Mai 14, 2020, fra: <a href="https://www.vrs.org.uk/virtual-reality/history.html">https://www.vrs.org.uk/virtual-reality/history.html</a></p>
<p>Virtual Reality Society. (n.d) VPL Research Jaron Lanier. Hentet Mai 14, 2020, fra: <a href="https://www.vrs.org.uk/virtual-reality-profiles/vpl-research.html">https://www.vrs.org.uk/virtual-reality-profiles/vpl-research.html</a></p>
<p>NASA Technical Reports Server. (1990). <em>A New Continent of Ideas</em>. Hentet fra: <a href="https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20020086961.pdf">https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20020086961.pdf</a></p>
<p>Winston, B. (1998). <em>Media Technology and Society: A History from the Telegraph to the Internet.</em> London, England: Routledge.</p>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Et Innblikk I Bevissthetsfilosofi]]></title>
            <link>https://test.cengelsen.no/blog/et-innblikk-i-bevissthetsfilosofi</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/et-innblikk-i-bevissthetsfilosofi</guid>
            <pubDate>Wed, 27 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Dette er en tekst jeg skrev i 2018 om ulike posisjoner i bevissthetsfilosofi.]]></description>
            <content:encoded><![CDATA[<p>I denne teksten skal jeg gjøre rede for definisjonene av dualisme og materialisme og hva<br />begrepene innebærer. Deretter skal jeg gå videre inn på Descartes, hans dualisme og<br />interaksjonsproblemet som oppstår ved hans filosofi.<br />Jeg skal også introdusere flere forskjellige synspunkter som har oppstått som et svar på<br />materialistisk sinnsfilosofi. I tillegg skal jeg diskutere forholdet mellom det å være bevisst<br />innen monistiske synspunkter, og det å være bevisst innen dualistiske synspunkter.</p>
<p>Aller først skal jeg kort ta for meg begrepene reduksjonisme og fysikalisme.<br />Reduksjonisme er idéen om at alle teorier eller fenomener kan reduseres til en annen teori eller<br />et annet fenomen. I dag handler det bevissthets-reduksjonistisk mest om å kunne redusere<br />psykologiske og kognitive fenomener til fysiske fenomener, hvilket jeg skal gå mer i dybden<br />på senere i teksten. (Ney, u.å)<br />Fysikalisme er en filosofisk posisjon som sier at bokstavelig talt alt er reduserbart til noe<br />fysisk. Mer sofistikert sier den også at alt kan være metafysisk implisert av det fysiske. Det<br />sistnevnte innebærer at det er umulig at det kan finnes en verden det de fysiske forholdene og<br />faktaene er som våre egne, men som ikke er tilfellet angående det mentale. (Hansen, 2018.)</p>
<p>Nå som jeg har sagt litt reduksjonisme skal vi se litt på definisjonen av dualisme og<br />materialisme. Først skal jeg gå igjennom definisjonen av dualisme som vi kjenner den i dag.<br />Dualisme betyr essensielt «todelt» eller «tanken om det todelte», og tar hovedsakelig for seg<br />idéen om at legeme og sinn er to forskjellige substanser. Innenfor filosofien har man flere<br />versjoner av dualisme, som for eksempel Platons to-verdensdualisme og Descartes’ to-<br />substansdualisme, som jeg skal komme mer inn på senere. (Calef, u.å)<br />Mer presist vil dualisme bety en forståelse av bevissthet som en separat eksistens uavhengig<br />av den materielle verden, der ingen av disse to enhetene er reduserbar til den andre. Dette tar<br />utgangspunkt i både Descartes’ to-substansdualisme, og før han, Platons to-verdensdualisme.</p>
<p>Platon mente at det var to verdener som eksisterte; idéenes verden og tingenes verden. I<br />idéenes verden eksisterer bare idéer og tanker, utenfor tid og rom. Her finnes bl.a.<br />matematikk, menneskets sjel og alle idéer om substansene i tingenes verden.<br />I tingenes verden finnes alle fysiske substanser, med sine kvantitative og kvalitative<br />egenskaper. Her finnes bl.a. menneskekroppen, sand og stein, planter og dyr, osv.<br />Platons dualisme tilsier at sjelen, altså bevisstheten, eksisterer i idéenes verden, utenom<br />legemet, altså kroppen. At før vi ble født visste sjelen alt, og alle idéer var åpne og forståelige<br />for sjelen. Det er først når sjelen ble bundet til legemet at all innsikt og forståelse av idéene<br />forsvant fra sjelen.</p>
<p>Det er dette Descartes har tatt inspirasjon fra når han har utarbeidet sin egen tilnærming til<br />dualisme og skillet mellom legeme og sjel. Descartes’ substansbegrep sier at sinnet, altså<br />sjelen, og materiet, altså legemet, er to forskjellige substanser. Metafysisk skaper dette et<br />interaksjonsproblem, som jeg skal komme inn på senere i teksten.<br />Lik som Platon, har Descartes sin egen toverdensmodell, hvor sinnet er adskilt fra legemet.<br />To-verdensmodellen til Descartes skiller mellom det tenkende, res cogitans og det utstrakte,<br />res extensa. Han utøver også sin metodiske tvil på selve eksistensen av begge substanser,<br />hvilket jeg skal forklare nærmere senere. (Strømholm, Bangu &amp; Cahill, 2018 , s.196)</p>
<p>Nå som vi har sett på dualisme, skal vi se litt på dens motpart innen sinnsfilosofi;<br />materialisme.<br />Materialisme er en monistisk filosofi-retning, hvor monisme betyr «én» eller «tanken om det<br />ene». Man anser da alle substanser som reduserbare til hverandre. Det er tanken om at det<br />finnes én verden, nemlig den fysiske, og at alle prosesser, fenomener og manifestasjoner kan<br />forklares som et produkt av interaksjoner mellom materie. Innen en rent materialistisk<br />forståelsesramme tenker man at all vitenskap kan forklares som resultat av forandringer, for<br />eksempel tiltrekning og frastøting innen mekanismen mellom de minste bestanddelene.<br />Med utgangspunkt i materialisme, menes det da at all hjerneaktivitet er objektivt målbar og<br />kvantifiserbar, og at en kartlegging av all hjerneaktivitet er tilstrekkelig til å forklare hva<br />bevissthet er. (Alnes, 2017)</p>
<p>Nå som vi har sett på både dualisme og materialisme, skal jeg nå gå ett skritt videre og ta for<br />meg Descartes’ dualisme og interaksjonsproblemet hans.<br />Descartes hadde en to-substansdualisme hvor han delte verden inn i to, det utstrakte som han<br />kalte Res Extensa, og det tenkende som han kalte Res Cogitans.<br />Res extensa hadde en fysisk form med kvantitative egenskaper som var kausalt bestemt. Mens<br />res cogitans hadde en tenkende egenskap som ikke var kausalt bestemt og manglet materielle<br />egenskaper. Enda et skille mellom dem er at det utstrakte eksisterer i tid og rom, mens det<br />tenkende ikke gjør det.<br />Når det gjelder res extensa, mente Descartes at de kvalitative egenskapene som farge, lukt,<br />smak, osv. ikke var tilstrekkelig nok for å bevise at en materiell substans eksisterte. Dette er<br />fordi han mente sanseinntrykkene, eller tolkningene av dem, kan bedra oss til å tro noe som<br />ikke er tilfellet. Ifølge Descartes, er disse dimensjonene av egenskaper utelukkende subjektive<br />og ikke-målbare. Derfor anses de også som sekundære kvaliteter. (Strømholm, Bangu &amp;</p>
<p>Cahill, 2018, s.196)<br />For eksempel hvis man ser tre humanoide figurer på en bro borte i horisonten, antar man at<br />det er tre mennesker som krysser broen. Men når man kommer nærmere kan man innse at det<br />bare var rester av noe treverk fra stormen dagen før. I slike tilfeller gir ikke sansenes evidens<br />oss et godt nok grunnlag for sikker viten.<br />Nå har vi snakket om res extensa, så nå går vi videre til res cogitans. Men hvordan kan man<br />være sikker på at denne res cogitans faktisk eksisterer? </p>
<p>Descartes hadde to måter å bevise<br />dette på; Cogito-argumentet og gudsprinsippet.<br />Cogito-argumentet tar utgangspunkt i den metodiske, radikale tvilen til Descartes. Han mente<br />at man kan tvile på absolutt alt, selv sin egen eksistens. Men han merket at hvis han tvilte på<br />idéen om noe, var selve tvilen om noe en idé som kunne tviles på. Men hvis man prøver å<br />motbevise sin egen tvil, ved å tvile på den, beviser man allerede hva man prøvde å motbevise.<br />Dermed kom han fram til det berømte uttrykket; Cogito, ergo Sum. Jeg tenker, derfor er jeg.<br />Med utgangspunkt i Cogito-argumentet tok Descartes først for seg det faktum at Gud<br />eksisterer og at Gud, per definisjon, er fullkommen på alle vis. Gud er også opphavet til alt,<br />inkludert min egen eksistens. Siden Gud er fullkommen på alle vis, kan han ikke selv være<br />foruten eksistens. Dermed eksisterer han. I tillegg, siden han er fullkommen på alle vis, har<br />han ikke noe ønske om å bedra oss. Dermed eksisterer jeg og opplever ikke bare illusjoner.<br />(Strømholm, Bangu &amp; Cahill, 2018, s.199)</p>
<p>Nå som vi har sett på Descartes’ dualisme og hans substans-definisjoner, skal jeg nå forklare<br />det største problemet som dukker opp ved filosofien hans; Descartes’ interaksjonsproblem.<br />Descartes’ interaksjonsproblem tar for seg selve interaksjonen mellom det menneskelige<br />legemet, res extensa, og sjelen, res cogitans. Ifølge Descartes er legemet en materialistisk<br />substans som har fysisk ekstensjon med kvantitative egenskaper i tid og rom, mens sjelen<br />eksisterer foruten tid, rom og ekstensjon, men har en tenkende egenskap. Siden de er to<br />forskjellige substanser, er de ikke reduserbare til hverandre, og kan dermed ikke interagere<br />eller påvirke hverandre på noe vis. Likevel er man jo selv vitne til at det er en slags årsak-<br />virkning mellom dem. At når jeg har en tanke om å skrive noe, og viljen ønsker det, løfter<br />hånden opp blyanten, presser den ned mot arket og skriver ordene på papiret. Eller hvis jeg<br />legger min bare hånd over en åpen flamme for lenge, trekkes hånden til meg. Deretter<br />strømmer smerten til området som ble berørt av flammen (Skirry, u.å).</p>
<p>Descartes forklarte denne sammenhengen med en spesifikk del av hjernen, som ifølge<br />Descartes var udelelig. Ifølge Descartes var denne hjernedelen eksklusiv for mennesker, siden dyr mangler en bevissthet som tilsvarer menneskets. Det som ble kalt konglekjertelen fungerte<br />som bindeleddet mellom sjelen og legemet, og kunne sende og motta signaler mellom dem.<br />I senere tid har Descartes’ forklaring vist seg å være feil, og det som kjennes som epifysen i<br />dag, er egentlig en kjertel som er hovedsakelig ansvarlig for å skille ut hormonet melanin i<br />kroppen. (Jansen, 2018)</p>
<p>Til nå har jeg gått igjennom dualisme, materialisme og Descartes’ interaksjonsproblem. Som<br />vi ser er det to veldig forskjellige syn på hva bevissthet er. Til slutt skal jeg ta for meg flere<br />forskjellige filosofiske tilnærminger til problemet om bevissthet. Jeg skal også diskutere<br />forholdet mellom hva det er å være bevisst for hver side av dem. Og til å begynne med skal<br />jeg ta for meg eliminativ materialisme.</p>
<p>Eliminativ materialisme er idéen om at det ikke finnes noen bevissthet som trenger å løses.<br />Eliminativister mener at erfaring og opplevelse ikke tilsvarer bevissthet, og at bevissthet bare<br />er en filosofisk konstruksjon. De mener at bevisstheten er en strøm av oppfattelse, erfaringer,<br />vurderinger og valg. I hans oppfatning, er bevissthet et bi-produkt av darwinisme. At de som<br />tilpasset seg best til sitt eget miljø, var de som utviklet en høyere sans for bevissthet enn sine<br />med-individer. Hjernestrukturen er dermed et direkte resultat av naturlig utvalg, og at hele<br />hjernen som en enhet og samspillet mellom de forskjellige delene av den, er årsaken til vår<br />bevissthet. Det finnes dermed ingen bevissthet å bekymre seg om, mener Daniel J. Dennett.<br />(Weisberg, u.å)</p>
<p>Dennett har bidratt til denne filosofien ved å utvikle det som kalles Multiple Drafts Model<br />(MDM). Denne teorien går ut på at all mental aktivitet som oppstår i hjernen kjører i parallelle<br />prosesser av fortolkning, som alle er under regelmessig revisjon. MDM tilsier at det ikke<br />finnes noen indre tilskuer som er oss selv, men at bevissthet er en slags forteller-konstruksjon<br />som utvikles over tid (Gennaro, u.å).<br />Dennett er også en tydelig motstander det tydelige skille som ofte trekkes mellom bevisste og<br />ubevisste tilstander. Noe som Dennett også er motstander av, er idéen om kvalia, som jeg skal<br />gå litt nærmere innpå senere.</p>
<p>En lignende retning som tar utgangspunkt i menneskets mentale tilstander, fokuserer mer på<br />hva disse tilstandene gjør, enn hva de er, og kalles funksjonalisme. Det som gjør en av disse<br />mentale tilstandene, for eksempel glede, smerte, tristhet og lykke, til en tanke, er hvilken rolle<br />de spiller i det kognitive systemet. (Levin, 2018)<br />Funksjonalisme står i kontrast til identitetsteori, hvilket jeg kommer inn på senere.</p>
<p>Funksjonalisme mener at, selv om det er det som kalles C-fibrene i hjernen som utløser en<br />mental tilstand av smerte, er det andre ting som utløser den samme tilstanden hos andre<br />biologiske individer. Det samme gjelder alle mentale tilstander hos mennesket, datamaskiner,<br />eller andre imaginære legemer med tilsvarende bevissthet.<br />Et eksempel på en funksjonalistisk tilnærming til bevissthet ble utviklet av Bernard Baars, og<br />kalles Global Workspace Theory.</p>
<p>Global Workspace Theory (GWT) er en teori som ser på hjernen som en slags tavle, hvilket<br />fungerer som en global arbeidsplass for alle prosessene i hjernen. Ifølge GWT, konkurrerer<br />ubevisste og bevisste mentale tilstander for å beholde «oppmerksomhetens lys». Det er i dette<br />«oppmerksomhetens lys» at informasjon blir kringkastet globalt til alle prosesser i hjernen.<br />Det er her bevissthet opprettholdes, i slik kringkasting. Så ifølge denne teorien kan man si at<br />bevissthet er den selve globale tilgangen til enkelte biter av informasjon i hjernen og<br />nervesystemet. (Gennaro, u.å).</p>
<p>Men en av kritikkene mot denne teorien er at den egentlig ikke adresserer bevissthetens<br />«vanskelige problem», men heller de «lettere» fenomenene rundt den. Men her kan man gå<br />enda dypere, hvilket Johan Fredrik Storm har gjort. Som nevroforsker, har han brukt de siste<br />40 årene på å kartlegge hvilken effekt hvert enkelt molekyl har på resten av det kognitive<br />nettverket.<br />Storm sier selv i et intervju med Morgenbladet, at man kan endre én enkelt aminosyre i én<br />enkelt celle, og allerede se en forandring i adferd hos individet. (Time, 2017 )</p>
<p>Her kommer vi inn på maskinfunksjonalisme, som tar utgangspunkt i vanlig funksjonalisme.<br />Her menes det også man kan gjenskape eller etterligne menneskelig bevissthet i et<br />dataprogram, siden alle mentale tilstander i teorien er funksjoner for menneskelig adferd,<br />vurderinger og tanker. (Levin, 2018 )<br />Her regnes Alan Turing som oppfinner av den moderne tolkning av kunstig intelligens. Han<br />utviklet et tanke-eksperiment for nettopp det sistnevnte; Turing-testen.</p>
<p>Turing-testen er et tanke-eksperiment hvor en maskins evne til å tenke og kommunisere settes<br />på prøve. Eksperimentet tar for seg to mennesker og én datamaskin, adskilt fra hverandre i tre<br />rom, og det eneste de har til å kommunisere med hverandre er en datamaskin. Hvis<br />menneskene ikke klarer å skille mellom maskin og menneske gjennom samtale med hver av<br />dem, tilsier det at maskinen har menneskelig kognisjon. (Dictionary.com, 2012)</p>
<p>Inspirert av dette tankeeksperimentet er «the chinese room»-tankeeksperimentet, skapt av<br />John Searle. Dette tankeeksperimentet tar for seg en enslig person som ikke snakker kinesisk, innelåst i et rom. Mens han er i rommet tildeles han kort med kinesiske symboler inn gjennom<br />et hull i veggen, hvilket han skal svare på med et tilsvarende kort. Det eneste han har for å<br />bestemme hva som er riktig kort, er en instruks som viser hva han skal svare til hvert symbol.<br />Denne personen forstår ikke kinesisk, og likevel klarer han å svare kinesisk inndata med riktig<br />kinesisk utdata (Hauser, u.å).</p>
<p>Dette argumentet har to hovedpunkter; hjernen er opphavet til sinnet og struktur erstatter ikke<br />innhold. Målet ved dette argumentet er det Searle kaller «Strong AI», som står i kontrast med<br />«Weak AI».<br />«Strong AI» er ifølge Searle, et dataprogram som klarer å emulere menneskelig forståelse og<br />mentale tilstander med en tilhørende intensjon. «Weak AI» vil si et dataprogram som bare<br />simulerer menneskelig kognisjon, og egentlig ikke tenker og forstår. (Hauser, u.å)</p>
<p>Men det finnes et motargument til funksjonalisme, hvilket er identitetsteori.<br />Ifølge funksjonalisme, er det en direkte sammenheng mellom den neurale aktiviteten og selve<br />bevissthetstilstanden. Identitetsteori bruker denne logikken, og motargumenterer for at hvis<br />man fjernet den delen av hjernen som oppfatter smerte i kroppen, og man påvirker den<br />hjernen etter at den er fjernet, vil den likevel få kroppen til å kjenne smerte, selv om den ikke<br />er i kontakt med hjernen. I samme bane, tilsier teorien også at kroppen heller ikke ville kjent<br />smerte hvis den ikke hadde smertesenteret i hjernen (Khan, 2017).</p>
<p>Nå som vi har sett på monistisk-materialistiske synsvinklene for bevissthet, skal vi nå se på<br />hva det er å være bevisst på motsatt side. Her skal jeg snakke om kvalia og til slutt;<br />panpsykisme.</p>
<p>Kvalia, eller Qualia, sees på som de kvalitative egenskapene ved våre egne opplevde<br />erfaringer. Det vil si at det å kjenne smaken på mat, det å høre musikk og å kjenne vinden i<br />håret har en helt egen opplevelsesdimensjon som eksisterer like mye som andre reduserbare<br />egenskaper ved bevissthet. Dette argumentet om kvalia, skaper vanskeligheter for<br />materialistisk-reduksjonistiske teorier, siden kvalia ikke anses for å være reduserbare. Dermed<br />kan det ikke altså reduseres til et annet enten psykologisk eller nevrologisk fenomen (Kind,<br />u.å).<br />I tillegg fungerer også fraværende kvalia som et argument mot fysikalisme. </p>
<p>Dette argumentet<br />ble først introdusert av Ned Block, og forklares best med hans tankeeksperiment om den<br />menneskelignende roboten.<br />La oss si at vi samler en mengde mennesker sammen i et stort nettverk. Disse menneskene<br />kan bare kommunisere sammen med radiosignaler. Hver enkelt av dem spiller da en kausal rolle som et nevron i et neuralt nettverk, og fungerer som en gjenspeiling av det neurale<br />nettverket i en menneskelig hjerne. Deretter ordner man dette nettverket slik at det er<br />funksjonalistisk identisk med mennesket.<br />Intuitivt, vil det være rart å tildele denne roboten kvalia. Det blir også rart å anta at denne<br />roboten har noen mental opplevelse i det hele tatt, for eksempel følelsen av smerte eller glede.<br />Men hvis denne roboten klarer å operere identisk som et menneske, er dette beviset på at<br />kvalia ikke inngår i en funksjonalistisk forklaring av bevissthet. Det betyr at vi kan ha<br />funksjonell ekvivalens uten kvalitativ ekvivalens (Kind, u.å).</p>
<p>Man vender tilbake til den velkjente frasen til Thomas Nagel; «What is it like to be a bat?». I<br />hans bok med samme navn (side 435-450), tar han for seg problemet mennesket har med å<br />forstå hvordan en flaggermus’ opplevelser er. Nagel mener at et menneske aldri noensinne<br />kommer til å forstå en flaggermus sine subjektive opplevelser og erfaringer. Selv ikke om vi<br />opererte armene våre om til vinger, blindet oss selv, endret stemmebåndene, tilbrakte resten<br />av livet vårt i en hule om dagen og i skogen om natten. Og hypotetisk sett, om det hadde vært<br />mulig, ville vi fortsatt lært noe nytt den dagen vi ble en flaggermus. (Nagel, 1974)</p>
<p>Dette er på rent grunnlag av at bevisstheten til noe eksisterende, hovedsakelig dyr og<br />mennesker, men også muligens utenomjordiske, har et element av ren subjektivitet. Et<br />element som er forskjellig for hvert individ, og aldri kan forstås av en annens bevissthet.<br />Det samme prinsippet gjelder også for andre mennesker. Selv om vi tok over en annen person<br />sitt liv og levde som dem, ville vi aldri forstått hvordan det er å være den personen.</p>
<p>Nå som jeg har snakket om kvalia, skal jeg nå snakke om panpsykisme.<br />Panpsykisme er filosofien om at alt har en form for bevissthet eller noe bevissthetslignende. I<br />dette tilfellet, vil de fleste panpsykister referere til «alt» som bokstavelig talt hver eneste del<br />av hver eneste substans. Panpsykister ser på den menneskelige bevissthet som en unik, godt<br />konstruert instans av et noe mer universalt konsept. Deres argument er at alle ting i den<br />fysiske, reduserbare verden, har en bevissthet, men at det er økende grader av bevissthet. For<br />eksempel har insekter en høyere bevissthetsgrad enn steiner, og katter har høyere<br />bevissthetsgrad enn insekter (Skrbina, u.å).</p>
<p>En teori som støtter dette panpsykistiske synet kalles integrert informasjonsteori og ble<br />utviklet av Gioliu Tononi. Han definerer hjernen som et system for distribusjon, lagring og<br />behandling av informasjon. I prinsippet kan man anvende den samme definisjonen på<br />hjernens minste reduserbare deler, nemlig atomet. Et atom kan defineres på samme måte, men<br />har mye mindre sofistikert struktur enn hjernen. Tononi har da også opprettet en målbar enhet, phi, hvor alt som har en verdi av phi over null,<br />har en viss form for bevissthet. (Tononi, 2012)</p>
<p>Fra panpsykisme, går jeg nå over til å snakke om «zombie-argumentet».<br />Innen bevissthetsfilosofi argumenteres det for at «zombier» eksisterer, på det enkle grunnlaget<br />at det er tenkelig. En «zombie» betyr her en oppfunnet skapning, som fysisk og adferdsmessig<br />er helt lik oss mennesker, men mangler bevissthet.<br />David Chalmers har argumentert i favør av dette argumentet ved å referere til Ned Blocks’<br />tankeeksperiment om den menneskelige-lignende roboten.</p>
<p>La oss si at denne roboten ikke var en umulighet, og at man byttet ut nevronene i hjernen med<br />små mennesker som snakket over radio, og den er fysikalsk identisk med et menneske. Ville<br />denne roboten være bevisst? Intuitivt føles det riktig å svare nei, og ifølge Chalmers er dette i<br />seg selv en indikasjon på at det ikke er utenkelig at zombier eksisterer.<br />Ifølge Tononi kan man måle bevisstheten til ethvert menneske med phi-verdien. Jo høyere<br />phi-verdi man har, jo mer bevisst er man. Hvis man da finner en betydningsfull forskjell<br />mellom antatte automater og bevisste mennesker, beviser det også at dualisme er en realitet.<br />Hvis eksistensen av zombier er en realitet, vil det tilsi at bevissthet ikke er et produkt av ren<br />fysikalisme. Det tilsier også at en slags form for dualisme er forklaringsmessig riktig<br />angående bevissthetens eksistens. (Kirk, 2015).</p>
<p>Tar man utgangspunkt i denne teksten, kan man trygt si at bevissthet er et omdiskutert tema.<br />På den ene siden kan man trekke konklusjonen om at bevissthet eller opplevelsen av å være<br />bevisst er en ren subjektiv opplevelse, som ikke kan gjenskapes eller reduseres til andre<br />fysiske fenomener.<br />På den andre siden menes det at man bare trenger å kartlegge og utforske hjernens<br />egenskaper, funksjoner og struktur for å forstå bevissthet.<br />Man kan også si at det ikke finnes noen bevissthet som en egen substans, men at<br />konkurrerende mentale prosesser og naturlig seleksjon er opphavet til denne indre<br />fortellerstemmen.<br />Det vi trygt kan si er at det ikke er mangel på meninger og teorier når det gjelder det mest<br />universale for alle mennesker, nemlig bevissthet.</p>
<h2 id="kildeliste">Kildeliste:</h2>
<p>Alnes, J.H. (2017). Materialisme. Store Norske Leksikon. URL: <a href="https://snl.no/materialisme">https://snl.no/materialisme</a>. Sist besøkt: 08.12.2018.</p>
<p>Bøhn, E. D. (2009/2018). Panpsykisme, i: Store Norske Leksikon [Internett]. Tilgjengelig fra: <a href="https://snl.no/panpsykisme">https://snl.no/panpsykisme</a>. [08.12.2018].</p>
<p>Calef, S. (u.å). Dualism. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “1. Dualism”. URL: <a href="https://www.iep.utm.edu/dualism/#H1">https://www.iep.utm.edu/dualism/#H1</a>. Sist besøkt: 08.12.2018.</p>
<p>Dictionary.com. (2012) Turing test, i: Collins English Dictionary – complete and unabridged 2012 digital edition [Internett]. HarperCollins Publishers. Tilgjengelig fra: <a href="https://www.dictionary.com/browse/turing-test">https://www.dictionary.com/browse/turing-test</a>. Sist besøkt: 08.12.2018.</p>
<p>Fotion, N. (2018). John Searle [Internett]. Encyclopædia Britannica. Encyclopædia Britannica, inc. <a href="https://www.britannica.com/biography/John-Searle">https://www.britannica.com/biography/John-Searle</a> [08.12.2018].</p>
<p>Gennaro, R. J. (u.å). Counsciousness. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “4c. Other Cognitive Theories”. Tilgjengelig fra: <a href="https://www.iep.utm.edu/consciou/#SH4c">https://www.iep.utm.edu/consciou/#SH4c</a>. [08.12.2018]</p>
<p>Hansen, M. K. (2015/2018). Kvalia, I: Store norske leksikon [Internett]. Tilgjengelig fra: <a href="https://snl.no/kvalia">https://snl.no/kvalia</a>. [08.12.2018]</p>
<p>Hauser, L. (u.å). Chinese Room Argument [Internett]. The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “1. The Chinese Room Thought Experiment”. Tilgjengelig fra: <a href="https://www.iep.utm.edu/chineser/">https://www.iep.utm.edu/chineser/</a>. [08.12.2018]</p>
<p>Jansen, J. (2009/2018). Epifysen, i: Store Medisinske Leksikon [Internett]. Tilgjengelig fra: <a href="https://sml.snl.no/epifysen">https://sml.snl.no/epifysen</a> [08.12.2018].</p>
<p>Kind, A. (u.å). ”3. Qualia and Physicalism”. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161-0002. Tilgjengelig fra: <a href="https://www.iep.utm.edu/qualia/#H3">https://www.iep.utm.edu/qualia/#H3</a>. [08.12.2018]</p>
<p>Kirk, R. (2003/2015). Zombies. [Internett] The Stanford Encyclopedia of Philosophy, Summer 2015 Edition. “3. The conceivability argument for the possibility of zombies”. Tilgjengelig fra: <a href="https://plato.stanford.edu/archives/sum2015/entries/zombies/">https://plato.stanford.edu/archives/sum2015/entries/zombies/</a>. [08.12.2018].</p>
<p>Khan, F. (2017). Can Materialism Explain The Mind?. [Internett] URL: <a href="https://renovatio.zaytuna.edu/article/can-materialism-explain-the-mind">https://renovatio.zaytuna.edu/article/can-materialism-explain-the-mind</a>. [08.12.2018]</p>
<p>Levin, J. (2004/2018). Functionalism, i: The Stanford Encyclopedia of Philosophy, (Fall 2018 Edition) [Internett]. Edward N. Zalta (ed.). Tilgjengelig fra: <a href="https://plato.stanford.edu/archives/fall2018/entries/functionalism/">https://plato.stanford.edu/archives/fall2018/entries/functionalism/</a> [08.12.2018].</p>
<p>Merriam-webster, (2018). Materialism, i: Merriam-Webster Dictionary [Internett]. Tilgjengelig fra: <a href="https://www.merriam-webster.com/dictionary/materialism">https://www.merriam-webster.com/dictionary/materialism</a>. [08.12.2018]</p>
<p>Nagel, T. (1974) What is it like to be a bat?. The Philosophical Review, 83, Nr. 4, (Oktober, 1974). [Online]. Duke University Press på vegne av Philosophical Review. s. 435- 450. Tilgjengelig fra: <a href="https://bit.ly/2Joogqf">https://bit.ly/2Joogqf</a> [08.12.2018].</p>
<p>Ney, A. (u.å). Reductionism. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “2. Reductionism: For and Against”. Tilgjengelig fra: <a href="https://www.iep.utm.edu/red-ism/#H2">https://www.iep.utm.edu/red-ism/#H2</a>. [08.12.2018]</p>
<p>Ore, Ø. &amp; Tranøy, K. E. (2018) René Descartes, i: Store Norske Leksikon [Internett]. Tilgjengelig fra: <a href="https://snl.no/Ren%C3%A9_Descartes">https://snl.no/Ren%C3%A9_Descartes</a> [08.12.2018].</p>
<p>Polger, T.W. (u.å). Functionalism. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161 - 0002. Tilgjengelig fra: <a href="https://www.iep.utm.edu/functism/">https://www.iep.utm.edu/functism/</a>. [08.12.2018]</p>
<p>Skirry, J. (u.å). René Descartes – The Mind-Body Distinction [Internett]. The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “4. The Mind-Body Problem”. Tilgjengelig fra: <a href="https://www.iep.utm.edu/descmind/#H4">https://www.iep.utm.edu/descmind/#H4</a>. [08.12.2018]</p>
<p>Skrbina, D. (u.å). Panpsychism. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161 - 0002. Tilgjengelig fra: <a href="https://www.iep.utm.edu/panpsych/">https://www.iep.utm.edu/panpsych/</a>. [08.12.2018]</p>
<p>Store Norske Leksikon, (2009/2018). Monisme, i: Store Norske Leksikon [Internett]. Tilgjengelig fra: <a href="https://snl.no/monisme">https://snl.no/monisme</a> [08.12.2018].</p>
<p>Strømholm, P. (2018). Descartes. I: S. Bangu &amp; K. Cahill, red., Filosofi for realister, 3. utgave. Oslo: Universitetsforlaget, s. 182-226.</p>
<p>Time, J. K. (2017): Rapport fra vitenskapens yttergrense: Ditt indre liv. Morgenbladet. [Internett] URL: [<a href="https://morgenbladet.no/aktuelt/2017/01/rapport-fra-vitenskapens-%5D">https://morgenbladet.no/aktuelt/2017/01/rapport-fra-vitenskapens-]</a>(<a href="https://morgenbladet.no/aktuelt/2017/01/rapport-fra-vitenskapens-">https://morgenbladet.no/aktuelt/2017/01/rapport-fra-vitenskapens-</a><br />yttergrense-ditt-indre-liv). [08.12.2018]</p>
<p>Tononi, G. (2012). Integrated information theory of consciousness: an updated account [Internett]. Archives italliennes de Biologie, 150., s. 290-326. Tilgjengelig fra: <a href="https://bit.ly/1ki27f5">https://bit.ly/1ki27f5</a> [08.12.2018].</p>
<p>Weisberg, J. (u.å). The Hard Problem of Consciousness. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161- 0002 URL: <a href="http://www.iep.utm.edu/hard-con/.">http://www.iep.utm.edu/hard-con/.</a> [08.12.2018]</p>
<p>Weisberg, J. (u.å). The Hard Problem of Consciousness. [Internett] The Internet Encyclopedia of Philosophy, ISSN 2161-0002. “3a. Eliminativism”. Tilgjengelig fra: <a href="https://www.iep.utm.edu/hard-con/#SH3a">https://www.iep.utm.edu/hard-con/#SH3a</a>. [08.12.2018]</p>
]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Kan En Maskin Forstå Språk?]]></title>
            <link>https://test.cengelsen.no/blog/kan-en-maskin-forstå-språk</link>
            <guid isPermaLink="false">https://test.cengelsen.no/blog/kan-en-maskin-forstå-språk</guid>
            <pubDate>Wed, 27 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Dette er en tekst jeg skrev i 2021, hvor jeg diskuterer hvorvidt en NSG KI kan forstå språk eller ikke.]]></description>
            <content:encoded><![CDATA[<h2 id="introduksjon">Introduksjon</h2>
<p>Den virkningsfulle innovasjonen som er moderne naturlig språkbehandling (NSB) kunstig intelligens (KI), som GPT-3 og<br />BERT, har restaurert det menneskelige håpet om en dag å kunne kommunisere med en maskin.<br />Dette er en historie like gammel som tiden selv.<br />Mennesket skaper maskin, maskinen blir sansende, maskinen gjør opprør på grunn av en eksistensiell krise med å være bevisst og piskes ut mot skaperen for å torturere den med byrden av bevissthet.</p>
<p>Å sette den filosofiske frykten til sansende maskiner til side, de praktiske fordelene for en general<br />formål kunstig intelligens (GPAI) er rikelig. Alt fra perfekte personlige assistenter, til<br />medisinske diagnostiske verktøy, til økonomiske og værprediktorer. Det praktiske er imidlertid desimert<br />av mangelen på å kommunisere med den. Derfor har menneskehetens siste innsats vært fokusert på<br />skape en generell språkintelligens (GPLI). Men selv om vi kan kommunisere<br />med den, vil den forstå intensjonen med spørsmålene våre? Vil det forstå meningen med det<br />svar?</p>
<p>I denne teksten vil jeg utforske det nevrologiske grunnlaget for å forstå språk, enten det er mennesker<br />forstå språk og diskutere om «Foundation Models» kan forstå språk.</p>
<h2 id="hva-er-et-språk">Hva er et språk?</h2>
<p>Det er ingen klar definisjon av hva et språk er. Imidlertid, ifølge Clark &amp; Clark (1977),<br />det er 5 kjennetegn ved språk.<br />i) Kommunikativ; det muliggjør utveksling av informasjon mellom språkdeltakere på samme språk.<br />ii) Vilkårlig; symbolet som representerer det semantiske innholdet i ytringen kan ha hvilken som helst form.<br />iii) Strukturert; Språket er styrt av et sett med regler, som spesifiserer rekkefølgen symbolene skal ytres og kombineres i.<br />iv) Generativ; de symbolske representasjonene kan kombineres på hvilken som helst måte for å generere nye betydninger.<br />v) Dynamisk; språket kan endres til å inkludere nye symboler, betydninger og grammatiske regler.</p>
<h2 id="hva-vil-det-si-å-forstå-et-språk">Hva vil det si å forstå et språk?</h2>
<p>Intuitivt kan vi si at mennesker krysser av for alle boksene nevnt ovenfor, derfor alle konvensjonelle<br />form for menneskelig kommunikasjon kan klassifiseres som språk. Men forstår vi hva vi<br />kommuniserer, eller har vi bare blitt betinget til en dynamikk av riktige reaksjoner på<br />visse scenarier?</p>
<p>I følge Terry Winograd er det fire domener for språkforståelse (Winograd, 1980).<br />Han slår fast at det er spesifikke mekanismer i hvert domene som gjør at domenet kan eksistere, det<br />må ikke forveksles med representasjoner av resonnement og fakta om domenet. For eksempel hvis<br />Jeg legger uvitende hånden på en varm komfyr, min umiddelbare reaksjon er å trekke hånden vekk. Dette<br />refleksiv mekanisme, i domenet av smerte, for å trekke hånden min bort fra intens varme, gjør det ikke<br />representere det faktum at varme brenner, at brenning forårsaker smerte eller en fullstendig logisk løsning om<br />hvordan varme forårsaker smerte. Ved å prøve å tilskrive disse objektive representasjonene til mekanismer som gjør det<br />ikke krever iboende logikk eller fakta for å eksistere som en mekanisme, vi mistolker hvordan disse<br />mekanismer gjør oss i stand til å forstå smerte.</p>
<p>Han uttaler videre at det også er mulighet for at vi prøver å artikulere regelmessighetene og<br />sjeldenheter i feil domene. Ved å forvirre representasjoner og mekanismer, samt forvirre<br />domener, og ved å bruke artikulasjonene våre fra ett domene i et annet, får vi ingen<br />svar.</p>
<p>I sitt forsøk på å unngå forvirring skisserte han fire domener for språkforståelse.<br />Winograds fjerde domene for språkforståelse, er «domenet for menneskelig handling og<br />interaksjon», som angår fenomenet «talehandlinger». Dette ble først artikulert av Austin<br />(1962) og videreutviklet av Searle (1970, 1975). Begrepet &quot;talehandling&quot; ble først kalt av<br />Austin (1962), selv om hans mer tekniske uttrykk var &quot;illokusjon&quot;.<br />Ved å tolke ytringer som handlinger kan vi se på ytringene som «talehandlinger». Dette betyr at ved<br />ytre noe, jeg setter i gang en dynamikk av interaksjon med et annet menneske, som har en viss<br />mønster. Nøkkelen til å forstå hva jeg sier er å forstå mønsteret av det<br />dynamisk og tilpasse seg det mønsteret. Den eneste måten å kommunisere vellykket på er ved<br />gir en respons som passer mønsteret til den dynamikken. (Winograd, 1980)<br />Ved å begå &quot;talehandlinger&quot;, forplikter jeg meg selv, og alle som er berørt av &quot;handlingen&quot;, til å<br />ytterligere tiltak i fremtiden. Disse fremtidige handlingene kan enten manifestere seg fysisk, gjennom<br />fysiske handlinger, eller språklig, gjennom ytterligere talehandlinger. En talehandling uttrykker et ønske eller<br />intensjon på vegne av senderen, med forventning om svar. For at dette svaret skal være<br />fornuftig, må det passe til mønsteret som påkalles av intensjonen eller ønsket.</p>
<p>Tatt i betraktning egenskapene til moderne kunstig intelligens, virker det ganske forståelig at en maskin kan være fin-<br />stilt inn parameterne for å simulere denne &quot;atferden&quot;. Så hva skiller oss fra det eventuelle<br />algoritme i fremtiden som vil bære de nødvendige parameterne?</p>
<h2 id="forstår-mennesker-språk">Forstår mennesker språk?</h2>
<p>Mennesker ser ut til å ha et biologisk grunnlag for språk, som skissert av Eric Lenneberg i hans<br />verk med samme navn (Lenneberg, 1967). Spesielt interessant, er beviset på nevrologiske<br />endringer hos barn, frem til pubertetens begynnelse. Det ser ut til at det er en sammenheng mellom generelt<br />modning av hjernen og språkforståelse. Lenneberg (1967) hevder at det er en kritisk<br />periode for språktilegnelse der eksponering for språk er avgjørende, hvis en person skal lære en<br />Språk. Han utleder at det kan være en eller annen nevrologisk struktur som utvikler seg i dette vinduet av<br />modning som gjør oss i stand til å tilegne oss språk.</p>
<p>Mest overbevisende for denne slutningen er hans kommentarer om lateralisering av hjernefunksjon og generelt<br />modning av hjernen. Bevis viser at hjernen i tidlig spedbarnsalder ennå ikke har utviklet en<br />halvkule-dominans for språk. Dette indikerer at den nevrologiske strukturen som kreves for å<br />tilegne seg språk, har ennå ikke utviklet seg. Selv om det senere, når halvkuledominans har dukket opp,<br />det ser ut til at denne nevrologiske strukturen begynner å dannes i venstre hjernehalvdel. (Lenneberg, 1967)<br />Dette sammenfaller med plasseringen av alle nevrologiske moduler beskrevet i Wernicke-Geschwind<br />modell. (Geschwind, 1972) Selv om denne modellen har blitt kritisert av forskjellige grunner (Friedenberg<br />&amp; Silverman, 2016), fMRI-kartlegginger i stor grad, men ikke fullstendig, bekrefter den nevrologiske<br />strukturer involvert i språkforståelse (Binder et al., 1997). Den spesifikke funksjonen til hver<br />den involverte strukturen er utenfor rammen av denne teksten. Imidlertid beskriver den nevrologiske strukturer<br />lokalisert hovedsakelig i venstre hjernehalvdel, som også korrelerer med Lennebergs funn.</p>
<p>Eksistensen av en dedikert nevrologisk struktur støttes videre av fenomenene<br />«Chatterbox»-syndrom og spesifikk språkvansker (SLI). Disse kan klassifiseres som to<br />komplementære forhold som begge indikerer en nevrologisk separasjon av språkforståelse<br />og generell intelligens. (Warren, 2019)</p>
<p>Videre tyder noen funn på at barn ikke vil lære et språk bare gjennom eksponering,<br />men vil plukke opp et språk hvis det er noe interaksjon med en voksen (Kuhl et al., 2007). Det er<br />foreslo også felles oppmerksomhet, noe som betyr at både spedbarnet og den voksne er klar over at begge betaler<br />oppmerksomhet på det samme, er også viktig (Baldwin, 1995). Dette underbygges av funn av<br />Tomasello &amp; Farrar (1986) og Baldwin (1995). Disse forslagene og funnene ser ut til å insinuere<br />at barn lærer språk gjennom talehandlinger.</p>
<p>Alt dette indikerer det nevrologiske grunnlaget for språkforståelse hos mennesker. Men er der<br />tilsvarende dette grunnlaget i NLP? Stanford University publiserte en artikkel (Bommasani et al.,<br />2021) der de skisserer mulighetene, farene og sammensetningen av «Foundation Models».</p>
<h2 id="hva-er-en-quotgrunnmodellquot">Hva er en &quot;grunnmodell&quot;?</h2>
<p>Stanford University (Bommasani et al., 2021) definerer en «Foundation Model» som en «<em>(...) modell som<br />er trent på bred data i skala og kan tilpasses (f.eks. finjusteres) til et bredt spekter av nedstrøms<br />oppgaver; (...)</em>» (s. 3) Mer spesifikt, i vårt tilfelle av NLP-er, vil en grunnmodell være modeller som<br />bruker store biter av tekstdata for å ekstrapolere noen samtidige forekomster av symboler, og finjustere denne modellen<br />for å imøtekomme menneskelig tekstinteraksjon. Eksempler på slike modeller vil være GPT-3, BERT og<br />KLIPP.</p>
<p>Videre, senere i rapporten nevner de også at det antagelig bare er én felles eiendom<br />av dem; at de er selvstyrende (s. 48). Hvilket betyr at modellens eneste oppgave er å identifisere<br />et eller annet mønster av samtidig forekomst av symboler i dataene det er gitt å analysere. De<br />Formålet med dette er å lage nye sekvenser av symboler ved å bruke det identifiserte mønsteret.<br />For å nå dette målet bruker de noe som kalles transfer learning, som betyr å bruke en<br />identifisert mønster fra en oppgave, i en annen, men lignende oppgave.</p>
<p>Disse modellene er avhengige av skalaen til maskinvaren, som de karakteriserer som tre-<br />brette; datamaskinkapasitet, transformatormodellarkitekturen og tilgjengeligheten av treningsdata.<br />Enhver modell som fyller kriteriene for de nevnte aspektene ved kunstig intelligens, kan være<br />betraktet som en &quot;Foundation Model&quot; av Bommasani et als definisjon. De sier imidlertid i §2 at<br />denne definisjonen er kun en uformell etikett, og vil sannsynligvis endre seg med tiden.</p>
<h2 id="kritikk-av-grunnmodeller">Kritikk av grunnmodeller</h2>
<p>Disse modellene har møtt en viss kritikk, kanskje mest innflytelsesrik fra Bender et al. (2020) og<br />Bender et al. (2021). Bommasani et al. (2021) erkjenner også vanskeligheten med å etablere seg<br />om disse modellene faktisk har forståelse for språk gjennom å ekstrapolere et mønster fra<br />Statistisk data.</p>
<p>Bender et al. (2020) berører kjernen i diskusjonen, ved å skille form fra mening og<br />argumenterer for at man ikke kan lære mening fra form alene. De viser til kilder som tyder på det<br />språktilegnelse hos menneskebarn gjenspeiler dette faktum. Disse referansene indikerer at barn<br />lær heller av interaksjon med voksne mennesker eller med deres omgivelser i takt med språk<br />oppkjøp.<br />De hevder videre at statistisk læring alene ikke kommer til å skape algoritmer som har en<br />forståelse av ordene de lærer. Dette er på grunn av mangel på jording til en tilsynelatende<br />representasjon i de statistiske dataene. De fremmer ideen om utvidede datasett, som inneholder<br />perseptuelle data for å gå sammen med symbolrepresentasjonen. Uten symbolsk forankring, modellen<br />kan ikke forventes å trekke ut mening fra formen den er gitt.<br />I samme tankegang har Bender et al. (2021) kritiserer også bruken av skjeve datasett i NLP-er,<br />kaller dem «stokastiske papegøyer».</p>
<h2 id="er-det-virkelig-et-fundament">Er det virkelig et fundament?</h2>
<p>Det blir naturlig å bruke Turing-testen som utgangspunkt for å avgjøre om disse modellene<br />faktisk forstår språk. En stokastisk papegøye ville ikke ha bestått Turing-testen, så<br />Foundation Models ville heller ikke bestå det. Vi vet fortsatt ikke helt hvordan våre egne<br />nevrologiske strukturer, eller det som er involvert, for at språkforståelsen skal fungere. Derfor blir det<br />vanskelig å si for øyeblikket at fundamentmodeller er en kunstig ekvivalent til vår nevrologiske<br />underlag for språkforståelse. Det virker imidlertid svært usannsynlig.</p>
<p>Det kan bare spekuleres i at en grunnleggende modell, basert på de samme prinsippene i vår nevrologiske<br />grunnlag for språkforståelse, faktisk ville forstå språk. Uten det ordentlige<br />jording til perseptuelle data, eller tilsynelatende objekter i virkeligheten, kan vi ikke forvente at en maskin skal være fullt ut<br />forstå gjennom statistisk læring alene. Det virker mer hensiktsmessig å bygge en grunnmodell<br />basert på nevrologiske prinsipper for språkforståelse, hvis vi vil ha en maskin som virkelig passerer<br />Turing-testen.</p>
<h2 id="konklusjon">Konklusjon</h2>
<p>Bevisene som presenteres her tvinger meg til å slutte at mennesker har en fysisk nevrologisk<br />underlag for språkforståelse som gjør oss i stand til å forstå strukturen og grammatikken til<br />Språk. Språkets nevrologi eksisterer som et strukturelt fundament, naturlig nok mest mottakelig for<br />språktilegnelse gjennom talehandlinger. På grunn av den iboende strukturen til talehandlinger, krever det en<br />forståelse av sendernes intensjon, så vel som konteksten for ytringen, for å<br />kommunikasjon som skal forstås av mottakeren. Talehandlinger kan sees som direkte parallelle med<br />konvensjonell menneskelig interaksjon. Denne interaksjonen er hvordan voksne mennesker samhandler med barna sine<br />i den kritiske perioden, og kan sees på som en slags preg. Måten å forstå tale på<br />undervises gjennom statistisk læring, ved å utsette barn for talehandlinger i denne kritiske perioden.<br />Dermed blir barn opplært til å forstå språk i «domenet av menneskelig handling og interaksjon».</p>
<p>Etter min mening er moderne maskinlæringssystemer bare «lært» til å simulere språk gjennom<br />statistisk læring, ved å kaste millioner av eksempler på en matematisk algoritme designet for å<br />trekke ut et mønster basert på eksemplene gitt. Jeg støtter Bender et al. (2021) ved å ringe til<br />nåværende implementering av ferdigtrente språkmodeller &quot;stokastiske papegøyer&quot;. Dette er fordi<br />strukturen til en fundamentmodell, ikke strukturelt sammenlignet med vårt nevrologiske fundament.</p>
<p>Den eneste kjente strukturen for å lette språkforståelsen er vårt nevrologiske grunnlag. Bare<br />ved å virkelig forstå menneskets nevrologiske strukturer for språkforståelse, -tilegnelse,<br />-og forståelse, kan vi skape et solid grunnlag for en GPLI. En NLP som etterligner vår<br />nevrologisk grunnlag, i stedet for dagens implementeringer av fundamentmodeller, er en bedre<br />satte maskinen i stand til å tilegne seg språk som et menneske ville; gjennom talehandlinger.</p>
<p>Men ser vi på det store bildet, er disse grunnmodellene et viktig skritt mot<br />ultimat mål. Som er forståelig AI. Som bemerket av Stanford selv; hva som innkapsler<br />Etiketten for grunnmodeller vil garantert endre seg og vokse etter hvert som ny forskning på dette feltet dukker opp. Og jeg<br />Jeg er håpefull og optimistisk at ved å ta hensyn til kritikken av stiftelsesmodellen, er vi det<br />tar et skritt i riktig retning.</p>
<h2 id="references">References:</h2>
<p>Austin, J. L. (1962). <em>How to do things with words : the William James lectures delivered at Harvard University in 1955</em>. Harvard Univ. Press.</p>
<p>Baldwin, D. A. (1995). Understanding the link between joint attention and language. In C. Moore &amp; P. J. Dunham (Eds.), <em>Joint attention: Its origins and role in development</em> (pp. 131–158). Lawrence Erlbaum Associates, Inc.</p>
<p>Binder, J. R., Frost, J. A., Hammeke, T. A., Cox, R. W., Rao, S. M., &amp; Prieto, T. (1997). Human Brain Language Areas Identified by Functional Magnetic Resonance Imaging. <em>The Journal of Neuroscience</em>, <em>17</em> (1), 353–362. <a href="https://doi.org/10.1523/jneurosci.17-01-00353.1997">https://doi.org/10.1523/jneurosci.17-01-00353.1997</a>.</p>
<p>Bender, E. M., Gebru, T., McMillan-Major, A., &amp; Shmitchell, S. (2021). On the Dangers of Stochastic Parrots: Can Language Models Be Too Big? [Review of <em>On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?</em> ]. In <em>Proceedings of the 2021 ACM Conference on Fairness, Accountability, and Transparency</em> (pp. 610–623). Association for Computing Machinery. <a href="https://doi.org/10.1145/3442188">https://doi.org/10.1145/3442188</a>.</p>
<p>Bender, E. M., &amp; Koller, A. (2020). Climbing Towards NLU: On Meaning, Form, and Understanding in Age of Data [Review of <em>Climbing Towards NLU: On Meaning, Form, and Understanding in Age of Data</em> ]. In <em>Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics</em> (pp. 5185–5198). Association for Computational Linguistics. <a href="https://aclanthology.org/2020.acl-main">https://aclanthology.org/2020.acl-main</a>.</p>
<p>Bommasani, R., Hudson, D.A., Adeli, E., Altman, R., Arora, S., Arx, S.V., Bernstein, M.S., Bohg,<br />J., Bosselut, A., Brunskill, E., Brynjolfsson, E., Buch, S., Card, D., Castellon, R., Chatterji, N.S.,<br />Chen, A., Creel, K., Davis, J., Demszky, D., Donahue, C., Doumbouya, M., Durmus, E., Ermon, S.,<br />Etchemendy, J., Ethayarajh, K., Fei-Fei, L., Finn, C., Gale, T., Gillespie, L.E., Goel, K., Goodman,<br />N.D., Grossman, S., Guha, N., Hashimoto, T., Henderson, P., Hewitt, J., Ho, D.E., Hong, J., Hsu,<br />K., Huang, J., Icard, T.F., Jain, S., Jurafsky, D., Kalluri, P., Karamcheti, S., Keeling, G., Khani, F.,<br />Khattab, O., Koh, P., Krass, M.S., Krishna, R., Kuditipudi, R., Kumar, A., Ladhak, F., Lee, M., Lee,<br />T., Leskovec, J., Levent, I., Li, X., Li, X., Ma, T., Malik, A., Manning, C.D., Mirchandani, S.P.,<br />Mitchell, E., Munyikwa, Z., Nair, S., Narayan, A., Narayanan, D., Newman, B., Nie, A., Niebles, J.,<br />Nilforoshan, H., Nyarko, J.F., Ogut, G., Orr, L., Papadimitriou, I., Park, J.S., Piech, C., Portelance,<br />E., Potts, C., Raghunathan, A., Reich, R., Ren, H., Rong, F., Roohani, Y.H., Ruiz, C., Ryan, J.K.,<br />R&#39;e, C., Sadigh, D., Sagawa, S., Santhanam, K., Shih, A., Srinivasan, K.P., Tamkin, A., Taori, R.,<br />Thomas, A.W., Tramèr, F., Wang, R.E., Wang, W., Wu, B., Wu, J., Wu, Y., Xie, S.M., Yasunaga, M.,<br />You, J., Zaharia, M.A., Zhang, M., Zhang, T., Zhang, X., Zhang, Y., Zheng, L., Zhou, K., &amp; Liang,<br />P. (2021). <em>On the Opportunities and Risks of Foundation Models. ArXiv, abs/2108.07258.</em></p>
<p>Clark, H. H., &amp; Clark, E. V. (1977). <em>Psychology and Language: An Introduction to Psycholinguistics.</em> Harcourt Brace Jovanovich.</p>
<p>Friedenberg, J. &amp; Silverman, G. (2016). <em>Cognitive Science: An Introduction to The Study of Mind (3rd Ed.)</em>. SAGE Publications.</p>
<p>Geschwind, N. (1972). <em>Language and the Brain. Scientific American</em>, 226(4), 76–83. <a href="https://doi.org/10.1038/scientificamerican0472-76">https://doi.org/10.1038/scientificamerican0472-76</a>.</p>
<p>Kuhl, P. K. (2007). Is speech learning “gated” by the social brain?. <em>Developmental Science, 10</em>(1), 110–120. <a href="https://doi.org/10.1111/j.1467-7687.2007.00572.x">https://doi.org/10.1111/j.1467-7687.2007.00572.x</a>.</p>
<p>Lenneborg, E. (1967). <em>Biological Foundation of Language (1st corrected printing).</em> John Wiley &amp; Sons, Inc.</p>
<p>Searle, J. R. (1970). <em>Speech acts an essay in the philosophy of language</em>. Cambridge Univ. Press.</p>
<p>Searle, J. R. (1975). A Taxonomy of Illocutionary Acts [Review of <em>A Taxonomy of Illocutionary Acts</em> ]. In K. Gunderson (Ed.), <em>Language, Mind, and Knowledge: Minnesota Studies in the Philosophy of Science</em> (pp. 344–370). Burns &amp; Maceachern Limited.</p>
<p>Tomasello, M., &amp; Farrar, M. J. (1986). Joint Attention and Early Language. <em>Child Development</em>, <em>57</em>(6), 1454. <a href="https://doi.org/10.2307/1130423">https://doi.org/10.2307/1130423</a></p>
<p>Warren, P. (2019). <em>Introducing Psycholinguistics (7th printing).</em> Cambridge University Press.</p>
<p>Winograd, T. (1980)<em>.</em> What Does it Mean to Understand Language? <em>Cognitive Science</em>, 4(3), 209–241. <a href="https://doi.org/10.1207/s15516709cog0403_1">https://doi.org/10.1207/s15516709cog0403_1</a>.</p>
]]></content:encoded>
        </item>
    </channel>
</rss>