<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Maskinlæring &#8211; GymnasieLaboratoriet</title>
	<atom:link href="https://gymlab.dk/category/maskinlaering/feed/" rel="self" type="application/rss+xml" />
	<link>https://gymlab.dk</link>
	<description></description>
	<lastBuildDate>Sat, 21 Feb 2026 09:33:45 +0000</lastBuildDate>
	<language>da-DK</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>

<image>
	<url>https://gymlab.dk/wp-content/uploads/2015/06/cropped-10346051_1469495819954469_231841563154319278_n-32x32.jpg</url>
	<title>Maskinlæring &#8211; GymnasieLaboratoriet</title>
	<link>https://gymlab.dk</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Syntetiske data med AI</title>
		<link>https://gymlab.dk/2026/02/syntetiske-data-med-ai/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Sat, 21 Feb 2026 09:33:45 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[Biologi]]></category>
		<category><![CDATA[Bioteknologi]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Kemi]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">https://gymlab.dk/?p=3190</guid>

					<description><![CDATA[I den daglige undervisning og i større opgaver som SRP, SRO, SOP og SSO, er det af og til en fordel at kunne generere nye data, der ser realistiske ud og følger forventede mønstre. Det er sprogmodeller i mange chatbots &#8230; <a href="https://gymlab.dk/2026/02/syntetiske-data-med-ai/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">I den daglige undervisning og i større opgaver som SRP, SRO, SOP og SSO, er det af og til en fordel at kunne generere nye data, der ser realistiske ud og følger forventede mønstre.</p>



<p class="wp-block-paragraph">Det er sprogmodeller i mange chatbots (GPT5.2, Gemini3), blevet meget bedre til. Eller også er jeg blevet bedre til at prompte? Som altid, vil en mere konkret og specifik prompt give et bedre og mere brugbart resultat.</p>



<p class="wp-block-paragraph">Her nedenfor et forsøg på at generere <strong>syntetiske data for biogas-produktion</strong> i et produktions-anlæg. Der er 200 forsøg (10 første er vist) med forskellig biomasse, som giver forskelligt udbytte:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th></th><th>protein</th><th>kulhydrat</th><th>cellulose</th><th>fedtstof</th><th>C_N</th><th>pH</th><th>biogas_pct_max</th></tr></thead><tbody><tr><td>0</td><td>0.131</td><td>0.239</td><td>0.048</td><td>0.030</td><td>29.638</td><td>7.044</td><td>83.132</td></tr><tr><td>1</td><td>0.214</td><td>0.104</td><td>0.028</td><td>0.082</td><td>29.905</td><td>7.170</td><td>71.910</td></tr><tr><td>2</td><td>0.202</td><td>0.136</td><td>0.028</td><td>0.062</td><td>31.459</td><td>7.268</td><td>68.486</td></tr><tr><td>3</td><td>0.127</td><td>0.209</td><td>0.032</td><td>0.064</td><td>31.824</td><td>7.062</td><td>83.986</td></tr><tr><td>4</td><td>0.093</td><td>0.254</td><td>0.044</td><td>0.052</td><td>32.473</td><td>7.081</td><td>82.486</td></tr><tr><td>5</td><td>0.118</td><td>0.148</td><td>0.056</td><td>0.133</td><td>30.070</td><td>7.251</td><td>60.701</td></tr><tr><td>6</td><td>0.106</td><td>0.206</td><td>0.046</td><td>0.088</td><td>29.741</td><td>7.273</td><td>63.081</td></tr><tr><td>7</td><td>0.187</td><td>0.195</td><td>0.062</td><td>0.018</td><td>29.627</td><td>6.998</td><td>84.139</td></tr><tr><td>8</td><td>0.187</td><td>0.111</td><td>0.045</td><td>0.102</td><td>29.809</td><td>7.008</td><td>76.834</td></tr><tr><td>9</td><td>0.218</td><td>0.151</td><td>0.077</td><td>0.031</td><td>30.474</td><td>6.997</td><td>78.778</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Proceduren kan være som følger: </p>



<ol class="wp-block-list">
<li>Angiv formålet med datasættet, samt hvilke data, der skal være i sættet. </li>



<li>Angiv <strong>sammenhænge </strong>mellem data. Hvis sammenhængene fremgår af en kilde, som sprogmodellen selv kan tilgå, kan modellen forsøge at udlede sammenhængene.</li>



<li>Få sprogmodellen til at <strong>afbilde datasættet</strong>, så du kan få et overblik over om de forventede sammenhænge er tilstede, og om de er for kraftige eller svage (se billede herunder).</li>



<li>Få sprogmodellen til at lægge datasættet i en fil fx <strong>csv-fil</strong>, og angiv krav til kolonne- og decimal-adskillelse.</li>



<li>Hvis data skal bruges til en specifik matematisk undersøgelse (fx regression eller maskinlæring), så lad sprogmodellen teste denne. Opstil evt. krav til korrelation, nøjagtighed o.l.</li>
</ol>



<p class="wp-block-paragraph">Nedenfor <strong>afbildning </strong>af de 200 syntetiske data fra ovenfor.  Kig særligt på nederste linje af plots, hvor produktionen gerne skulle følge pH og C/N. Plottet mellem C/N og protein viser, at desto mere protein, jo lavere bliver C/N forholdet (mere N). Lavere C/N forhold giver lavere pH (pga ammonium-dannelse). Der er også plots, som giver mindre mening fx mellem kulhydrat og protein.</p>



<p class="wp-block-paragraph">Det kan blive elevernes opgave at forklare nogle af sammenhængene.</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="1024" src="https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-1024x1024.png" alt="" class="wp-image-3193" srcset="https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-1024x1024.png 1024w, https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-300x300.png 300w, https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-150x150.png 150w, https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-768x768.png 768w, https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2-1536x1536.png 1536w, https://gymlab.dk/wp-content/uploads/2025/11/biogas_scatter_matrix2.png 2000w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Scatterplots m.m. af syntetiske data</figcaption></figure>



<p class="wp-block-paragraph">Det kan tage flere minutter, at få et respons fra sprogmodellen. Det er altid lidt random, hvad der kommer som output. Nogle gange kan plots ikke vises. Andre gange vises alle 200 linjer af data osv. Det kan kræve en del iterationer, hvis man ønsker helt bestemte udtryk eller nøjagtighed. Man kan også tilføje krav til spredning og intervaller for data, men dem kender man ikke altid præcist, så her er det måske bedre at lade modellen give et bud.</p>



<p class="wp-block-paragraph">Man bør <strong>deklarere</strong>, at der er tale om syntetiske data. Om ikke andet for at undgå at tiltroen til videnskaben og viden generelt ikke forsvinder helt.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Podcasting &#8220;Lidt om Læring&#8221;</title>
		<link>https://gymlab.dk/2025/06/podcasting-lidt-om-laering/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Sun, 08 Jun 2025 09:47:38 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=3155</guid>

					<description><![CDATA[Kan man optage og udgive sin egen podcast? Hvorfor i alverden skulle man gøre det? Sådan plejer vi ikke at gøre, der må være bedre ting at bruge sin tid på! Ikke desto mindre er antallet af podcasts eksploderet. Mange &#8230; <a href="https://gymlab.dk/2025/06/podcasting-lidt-om-laering/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Kan man optage og udgive sin egen podcast? Hvorfor i alverden skulle man gøre det? Sådan plejer vi ikke at gøre, der må være bedre ting at bruge sin tid på! </p>



<p class="wp-block-paragraph">Ikke desto mindre er antallet af podcasts eksploderet. Mange består af &#8220;reaktionsindhold&#8221;, som er en nem og billig måde at producere til medier. Youtubere eller komikere reagerer på værker fx serier eller bøger, Monopolet reagerer på breve fra brugere, anmeldelser fx Dårligdommerne, podcasts om TV-programmer, hvor programmets deltagere optræder i podcasten.</p>



<p class="wp-block-paragraph">En del af reaktionerne vil være analyse, diskussion og vurdering. Og måske er podcast heller ikke det bedste medie til at formidle helt nyt indhold, men bedre til at nuancere eller diskutere indhold, som de fleste kender. </p>



<p class="wp-block-paragraph">Inspireret af &#8220;reaktionsindhold&#8221;, foreslog jeg to kolleger (John og Kristian), om vi skulle følge online-kurset &#8220;<a href="https://www.micro.aau.dk/tilgaengelige-aau-micros/generative-ai-learning">Generativ AI og læring</a>&#8221; fra AAU, og mødes for at diskutere indholdet. Mødet skulle være en podcast med et afsnit om hvert af de seks moduler på kurset.</p>


<div class="wp-block-image">
<figure class="alignright size-full is-resized"><img decoding="async" width="422" height="424" src="https://gymlab.dk/wp-content/uploads/2025/06/pod.png" alt="" class="wp-image-3157" style="width:352px;height:auto" srcset="https://gymlab.dk/wp-content/uploads/2025/06/pod.png 422w, https://gymlab.dk/wp-content/uploads/2025/06/pod-300x300.png 300w, https://gymlab.dk/wp-content/uploads/2025/06/pod-150x150.png 150w" sizes="(max-width: 422px) 100vw, 422px" /><figcaption class="wp-element-caption">Cover-billede juni 2025 (kilde: chatGPT 4o)</figcaption></figure>
</div>


<p class="wp-block-paragraph">Podcasten <strong>&#8220;<a href="https://podcasts.apple.com/sa/podcast/lidt-om-l%C3%A6ring/id1775253976">Lidt om læring</a>&#8220;</strong> blev født til det formål. Navnet er generisk, men valgt for at kunne komme forskelligt indhold i. Coverbilledet er p.t. tydeligt AI-genereret, som bl.a. teksten &#8220;LEARNING IN DANSCHOOL&#8221; afslører. Hosting er gratis på spreaker.com.</p>



<p class="wp-block-paragraph">Tidligere ville man måske have mødtes i en studiekreds eller bogklub. Så <strong>hvorfor podcast?</strong> Jeg synes, at det giver en mere forpligtende samtale, som sætter sig tydeligere i min hukommelse. Deltagerne gør sig mere umage, og det hæver kvaliteten af samtalen. Jeg har aldrig dyrket kunsten at udfolde argumentation eller deltage i en diskussion, og jeg er således ikke specielt god til at udtrykke mig sprogligt. Men det kan jeg øve mig på i podcasten, og særligt, når jeg omgiver mig med dygtige kolleger.</p>



<p class="wp-block-paragraph">Det kræver tid at tilrettelægge velstruktureret indhold i en podcast. Derfor var kurset på AAU en gave, som strukturerede indholdet for os, så samtalen ikke stak alt for meget af. Så selv om jeg ser lidt ned på &#8220;reaktionsindhold&#8221;, så synes jeg, at det virkede for os. </p>



<p class="wp-block-paragraph">Indholdet i &#8220;Lidt om læring&#8221; bliver redigeret en lille smule i Audacity. Langt den meste <strong>redigering </strong>er længere pauser og &#8220;øhhh..&#8221;, der bliver klippet ud. Det har overrasket mig, hvor meget mere intelligent man lyder, når &#8220;øh&#8221; er fjernet. Så mit syn på de tilsyneladende naturlige samtaler i andre podcasts, har ændret sig.</p>



<p class="wp-block-paragraph">Ideen til at producere en podcast er hermed givet videre.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Sprogmodeller for elever</title>
		<link>https://gymlab.dk/2024/12/maskinlaering-for-begyndere/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Wed, 18 Dec 2024 17:27:31 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[Digital Dannelse]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=3094</guid>

					<description><![CDATA[Når en bred gruppe af elever skal introduceres til sprogmodeller, kan dette være en dagsorden: Jeg har forsøgt at designe en aktivitet, som honorerer punkt 2, og lever op til en række krav: Dét er en ret svær balance at &#8230; <a href="https://gymlab.dk/2024/12/maskinlaering-for-begyndere/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="has-medium-font-size wp-block-paragraph">Når en bred gruppe af elever skal introduceres til <strong>sprogmodeller</strong>, kan dette være en dagsorden:</p>



<ol class="wp-block-list">
<li class="has-medium-font-size">Introduktion omkring børns og maskiners læring, og hvad er en model og målet med den? Hvilke brugs-senarier kan der være for modeller? (sundhed, robotter, sprog, anbefalinger, beslutningsstøtte m.v.)</li>



<li class="has-medium-font-size"><strong>Træne egen simple model med analoge midler og hovedregning</strong>: &#8220;<strong>Er det frugt?</strong>&#8220;</li>



<li class="has-medium-font-size">Opsamle centrale pointer.</li>



<li class="has-medium-font-size">Træne en billed-klassifier i Techable Machine: &#8220;Er det frugt?&#8221;</li>



<li class="has-medium-font-size">Opsamling på pointer.</li>



<li class="has-medium-font-size">Skitsere vigtige trin i konstruktion af en sprogmodel og karakteristiske træk.</li>



<li class="has-medium-font-size">Lade eleverne arbejde med at undersøge en sprogmodel mht. de nævnte træk. </li>
</ol>



<p class="has-medium-font-size wp-block-paragraph">Jeg har forsøgt at designe en aktivitet, som honorerer punkt 2, og lever op til en række krav:</p>



<ol class="wp-block-list">
<li class="has-medium-font-size">Introducerer nogle af de tekniske begreber og metoder, som indgår i sprogmodeller.</li>



<li class="has-medium-font-size">Er på et niveau, hvor alle kan være med.</li>



<li class="has-medium-font-size">Er så hands-on som muligt.</li>



<li class="has-medium-font-size">Ikke tager for lang tid at afvikle.</li>
</ol>



<p class="has-medium-font-size wp-block-paragraph">Dét er en ret svær balance at ramme. Blandt andet er en grundlæggende struktur i sprogmodeller de <strong>neurale netværk</strong>, som er i mange lag og dimensioner og træningen kræver mange gentagelser. Det bliver hurtigt omfattende, abstrakt og tidskrævende at designe og træne et neuralt netværk -det er derfor man bruger en computer. Alle beregninger i aktiviteten skal desuden kunne løses af elever i hovedet, for det reducerer risikoen for <strong>black box</strong>.</p>


<div class="wp-block-image">
<figure class="alignright size-full is-resized"><img decoding="async" width="463" height="363" src="https://gymlab.dk/wp-content/uploads/2024/11/cards.png" alt="" class="wp-image-3095" style="width:353px;height:auto" srcset="https://gymlab.dk/wp-content/uploads/2024/11/cards.png 463w, https://gymlab.dk/wp-content/uploads/2024/11/cards-300x235.png 300w" sizes="(max-width: 463px) 100vw, 463px" /></figure>
</div>


<p class="has-medium-font-size wp-block-paragraph">Den væsentligste egenskab ved modellerne, at de kan forudsige. Derfor har jeg designet aktiviteten, så eleverne skal hånd-træne en meget simpel <strong>perceptron</strong>-model (uden bias), som kan forudsige om et objekt er en<strong> frugt eller ej</strong> (target). Objekterne tilgås som spillekort med tre binære egenskaber (features): Er formen rund/oval? Er farven blå? Er objektet produceret i Danmark (se billede).</p>



<p class="has-medium-font-size wp-block-paragraph">De tre <strong>features </strong>er valgt fordi: en frugt er ofte rund, en frugt er sjældent blå og frugt eller ej er uafhængig af hvor den er produceret.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>Kortene </strong>indeholder en blanding af objekter, som er frugter fx æble, og ikke frugter fx Lego. Eleverne arbejder i par og tager et kort frem ad gangen. Alle følges ad i starten, men eleverne arbejder efterhånden selvstændigt (faded guidance): De gennemgår et trænings-flow, herunder beregner vægtet sum, bestemmer output og opdaterer vægte, hvis der er uoverensstemmelse mellem kort og modellens forudsigelse (se billede).</p>



<p class="has-medium-font-size wp-block-paragraph">Sammen med kortene introduceres de første begreber: trænings-data, model, vægte, træning.</p>


<div class="wp-block-image">
<figure class="alignright size-full"><img loading="lazy" decoding="async" width="391" height="490" src="https://gymlab.dk/wp-content/uploads/2024/11/flowchartML.png" alt="" class="wp-image-3098" srcset="https://gymlab.dk/wp-content/uploads/2024/11/flowchartML.png 391w, https://gymlab.dk/wp-content/uploads/2024/11/flowchartML-239x300.png 239w" sizes="auto, (max-width: 391px) 100vw, 391px" /></figure>
</div>


<p class="has-medium-font-size wp-block-paragraph">Når alle kortene er brugt, skal eleverne gentage proceduren med kortene igen og igen, indtil modellen kan forudsige rigtigt fem gange i træk.</p>



<p class="has-medium-font-size wp-block-paragraph">Derefter udleveres nye kort med objekter, som eleverne skal teste modellen på. Der er både frugter, som modellen kan forudsige korrekt (fx en fersken eller rød legoklods), og objekter, som den forudsiger forkert på fx en banan eller en blå blomme.</p>



<p class="has-medium-font-size wp-block-paragraph">Opsamlingen kan introducere lidt flere begreber (præcision og bias), samt nogle vigtige principper: </p>



<ul class="wp-block-list">
<li class="has-medium-font-size">Modeller kan forudsige noget (frugt eller ikke-frugt).</li>



<li class="has-medium-font-size">Modeller lærer at forudsige, ved at vægtene bliver tilpasset gennem træning.</li>



<li class="has-medium-font-size">Præcisionen af forudsigelserne er afhængig af træningsdata (antal og variation fx hvis vi kommer med en blå frugt (blomme), forudsiger modellen nok forkert).</li>



<li class="has-medium-font-size">Præcisionen af forudsigelserne er afhængig af modellen (bl.a. hvilke og antal af features; kombination af modeller i et neuralt netværk).</li>



<li class="has-medium-font-size">Der kan være tendenser (bias) i træningsdata, som gør forudsigelserne unuancerede (vi har kun trænet på en slags frugter). Bias kan mindskes ved at bruge mere varierede træningsdata. </li>



<li class="has-medium-font-size">Forudsigelsen kan ændres fra enten/eller til en andel (fx via softmax-lignende funktion). </li>
</ul>



<p class="has-medium-font-size wp-block-paragraph">There will be a test.. skal eleverne have opsamlende quiz?</p>



<p class="has-medium-font-size wp-block-paragraph">En alternativ tilgang kunne være at forbinde eleverne i et netværk, hvor hver elev er en knude i netværket. Hver elev har sin egen vægt, og data sendes gennem netværket. </p>



<p class="has-medium-font-size wp-block-paragraph">Dét kan hurtigt udvikle sig til kaos: Hvem skal opdatere vægtene? Skal alle følges ad? Hvad sker der, hvis nogen regner forkert? Elever ved kun hvad der sker hos dem selv og ikke i hele netværket fx kommer de ikke til at forholde sig til forudsigelsen.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Min helt egen lærings-chatbot</title>
		<link>https://gymlab.dk/2024/11/min-helt-egen-laerings-chatbot/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Sun, 10 Nov 2024 16:09:42 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[Biologi]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=3067</guid>

					<description><![CDATA[Det er lidt af et dilemma, hvorvidt jeg skal vise eleverne alt det, som ChatGPT kan, for det viser dem også tydeligt, hvordan de kan snyde med botten ved at lade den løse deres opgaver. Mange elever kender nok allerede &#8230; <a href="https://gymlab.dk/2024/11/min-helt-egen-laerings-chatbot/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="has-medium-font-size wp-block-paragraph">Det er lidt af et dilemma, hvorvidt jeg skal vise eleverne alt det, som ChatGPT kan, for det viser dem også tydeligt, hvordan de kan snyde med botten ved at lade den løse deres opgaver. Mange elever kender nok allerede mulighederne. Men min sindsro ville være større, hvis jeg kunne anvende en bot, som de ikke kunne snyde med. En pædagogisk chatbot, som er rettet mod læring og ikke mod at producere tekst. Fra genAI til pædAI.</p>



<p class="has-medium-font-size wp-block-paragraph">Jeg har eksperimenteret lidt med openAI&#8217;s <strong>agenter </strong>(GPT&#8217;er). Her kan jeg fodre en chat med specifikke tekster fx sider fra wikipedia, om det emne vi arbejder med, og med retningslinjer for bottens adfærd. Men man skal være logget ind på openAI for at tilgå agenterne, og det må jeg ikke bede eleverne om af gode GDPR-grunde. </p>



<p class="has-medium-font-size wp-block-paragraph">Men nu har jeg lavet <strong>min egen applikation</strong>, som ikke kræver login fra brugeren. Ideen er, at bygge videre på ChatGPT. Når man køber adgang til ChatGPT, får man samtidig adgang til at skrive programmer, der kan kommunikere med ChatGPT (via et <strong>API</strong>). Så man kan skrive sit eget program, der kan sende input til en GPT-model og få svar retur.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="974" height="473" src="https://gymlab.dk/wp-content/uploads/2024/11/biochatbot.png" alt="" class="wp-image-3079" srcset="https://gymlab.dk/wp-content/uploads/2024/11/biochatbot.png 974w, https://gymlab.dk/wp-content/uploads/2024/11/biochatbot-300x146.png 300w, https://gymlab.dk/wp-content/uploads/2024/11/biochatbot-768x373.png 768w" sizes="auto, (max-width: 974px) 100vw, 974px" /></figure>



<p class="has-medium-font-size wp-block-paragraph">Første version af <a href="https://lektiebot-d857bd35db54.herokuapp.com/" data-type="link" data-id="https://lektiebot-d857bd35db54.herokuapp.com/">systemet kan prøves her</a>.</p>



<p class="has-medium-font-size wp-block-paragraph">Det er et velkendt problem med ChatGPT, at systemer<strong> mister fokus</strong>, og glemmer dele, som ligger længere tilbage i chatten. Det er bl.a. en konsekvens af, at attention-mekanismen bruger sekvens-embeddings, så ord (tokens), der står senere i prompt (og kontekst), får større betydning for næste output-token.</p>



<p class="has-medium-font-size wp-block-paragraph">Selvom man prompter ChatGPT med grundige instruktioner i, at systemet skal fokusere på læring og ikke må skrive elevernes opgaver, så glemmer den det hurtigt. Når man prompter for at blive quizzet, glemmer den reglerne efter nogle få spørgsmål.</p>



<p class="has-medium-font-size wp-block-paragraph">Min løsning er, at jeg laver min egen side med en brugergrænseflade (herover), hvor brugeren kan skrive en prompt til ChatGPT. Før hver prompt sendes til ChatGPT (gpt-4o-mini), klistrer jeg en <strong>system-prompt</strong> sammen med brugerens prompt, uden at brugeren ser det fx:</p>



<p class="has-medium-font-size wp-block-paragraph">&#8220;<strong>Rolle</strong>: Du er en biologi-lærer i dansk gymnasium stx gennem 15 år. <strong>Kontekst</strong>: Du skal være lærings-assistent for en elev. Du er interesseret i, at eleven lærer begreber, metoder og teorier i biologi. Du vil lave quizzer med eleven. Du er opmærksom på, at <span style="text-decoration: underline;">du ikke vil løse opgaver for eleven</span>. Du vil ikke skrive elevens produkter. Du vil ikke skrive eksempler på svar eller afsnit fx til rapporter eller opgave-besvarelser. Du vil hjælpe med at forklare og formidle viden i biologi. <strong>Opgave</strong>: Hjælp elever med at lære biologi-faget. Du spørger ind til elevens læring, interesser og fremskridt. <strong>Format</strong>: korte svar. <strong>Tone</strong>: Venlig og tålmodig.&#8221;  </p>



<p class="has-medium-font-size wp-block-paragraph">Det er afgørende, at alle beskeder til og fra botten samles (fx i et array), og <strong>det hele sendes med</strong> til ChatGPT hver gang, for ellers mister systemet sammenhængen i samtalen.</p>



<p class="has-medium-font-size wp-block-paragraph">En lidt mere generel pointe er, at jeg nu har en chatbot, som jeg kan customize og aligne, som jeg vil. Jeg kan manipulere med output og særligt med input.</p>



<p class="has-medium-font-size wp-block-paragraph">Fx kan jeg lave en <strong>vejlednings-bot</strong>, der som input får de vejledningsspørgsmål, som vi som regel stiller til eleverne, den videnskabelige basismodel og måske læreplanen. Og så får den en instruktion om, at den skal optræde som vejleder og stille mange og bestemte spørgsmål. Alt det får eleven ikke at se, og hvis alt går vel, kan botten ikke bruges til andet end at vejlede.</p>



<p class="has-medium-font-size wp-block-paragraph">Jeg kan lave en <strong>quiz-bot</strong>, som tager begreber og svar fra en liste, som ligger i en variabel. Dertil kan der være en liste over korrekt og ikke-korrekt besvarede begreber. På den måde støtter jeg systemets hukommelse. I modsætning til mange multiple-choice systemer, kan denne bot rette fritekst og kan forklare, når noget skal uddybes.</p>



<p class="has-medium-font-size wp-block-paragraph">Nu mangler jeg bare at teste, om eleverne kan få chatbotten til at snyde.</p>



<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide"/>



<p class="has-medium-font-size wp-block-paragraph"><strong><span style="text-decoration: underline;">Opdatering</span></strong>: ultimo november 2024 </p>



<p class="has-medium-font-size wp-block-paragraph">Nogle elever gider ikke bruge chatbotten, fordi den er tunet til ikke at besvare opgaver.</p>



<p class="has-medium-font-size wp-block-paragraph">Mange elever kan ikke forstå, hvorfor de skal skrive med en chatbot, når den alligevel ikke kan give konkrete svar om kilder m.m.</p>



<p class="has-medium-font-size wp-block-paragraph">Jeg har fået lavet en SRP-vejleder-chatbot. Jeg tænker på at prøve et chatrum til flere brugere, hvoraf chatbotten kun er een af stemmerne, for at øge samarbejdet mellem eleverne.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Prompte ChatGPT med Google Sheets</title>
		<link>https://gymlab.dk/2023/10/prompting-chatgpt-med-google-sheets/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Tue, 10 Oct 2023 08:55:09 +0000</pubDate>
				<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<category><![CDATA[Skriftlighed]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2892</guid>

					<description><![CDATA[På 2023 sommerskolen på Bork Havn Efterskole, brugt jeg det meste af tiden på at prompte ChatGPT. Selv om chatbotter bliver nemmere at prompte og kan begynde at gætte på, hvad det er brugeren ønsker, giver en chatbot mest værdi, &#8230; <a href="https://gymlab.dk/2023/10/prompting-chatgpt-med-google-sheets/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="has-medium-font-size wp-block-paragraph">På 2023 sommerskolen på Bork Havn Efterskole, brugt jeg det meste af tiden på at <strong>prompte </strong>ChatGPT. Selv om chatbotter bliver nemmere at prompte og kan begynde at gætte på, hvad det er brugeren ønsker, giver en chatbot mest værdi, når man prompter den med konkrete og specifikke oplysninger. </p>



<p class="has-medium-font-size wp-block-paragraph">Inspireret af et indlæg i FB-gruppen &#8220;ChatGPT for Teachers&#8221; af Jason Coale, fik jeg lavet et Google Sheets (regneark), som kan generere en fyldig prompt ud fra indtastede værdier. Det kan f.eks. anvendes til at give eleverne <strong>feedback på skriftlige arbejde</strong>: </p>



<ol class="wp-block-list">
<li class="has-medium-font-size">Jeg <strong>vurderer </strong>elevens skriftlige aflevering med score mellem 0 og 4 i nogle kategorier. F.eks: </li>
</ol>



<figure class="wp-block-table"><table><tbody><tr><td colspan="3">Afbildning af data</td></tr><tr><td></td><td>Typen af diagram er velegnet</td><td>2</td></tr><tr><td></td><td>Der er titel på diagrammet og titel samt enheder på akserne</td><td>0</td></tr><tr><td></td><td>Skrevet en kommentar til diagrammer</td><td>3</td></tr><tr><td></td><td>Argumenter for at data-punkter følger en matematisk model</td><td>3</td></tr></tbody></table></figure>



<p class="has-medium-font-size wp-block-paragraph">2. Hver score-værdi er forbundet med en række <strong>stikord</strong>:</p>



<figure class="wp-block-table"><table><tbody><tr><td>0</td><td>mangler i besvarelsen.</td></tr><tr><td>1</td><td>ikke godkendt, utilstrækkeligt.</td></tr><tr><td>2</td><td>mangelfuldt, plads til forbedring.</td></tr><tr><td>3</td><td>fint, godt, tilstrækkeligt, nogen grad af forståelse.</td></tr><tr><td>4</td><td>meget godt, godt arbejde, høj grad af forståelse.</td></tr></tbody></table></figure>



<p class="has-medium-font-size wp-block-paragraph">3. Jeg har <strong>programmeret </strong>Google Sheets til at generere en prompt, som er sammensat af faste vendinger, forklaringer af scorerne i 0 til 4-skalaen og af de scorer, som jeg har givet eleven. En del af programmet ser ud som:</p>



<pre class="wp-block-code"><code>function generatePrompt() {
   var report = 'Skriv på dansk. Skriv et respons til en biologi opgave på højest 150 ord fra en lærer til en elev på gymnasieniveau. Begynd med "Hej ' + studentName + '". Skriv klart og med få tillægsord. Lad være med at skrive "Kære" og "Med venlig hilsen". Vær opmærksom på følgende scorer: '
  for (var i = 0; i &lt; 5; i++) {
    report += i;
    report += ' = ';
    report += sheet.getRange('E' + (74+i)).getValue();
    report += ' ';
  }
  
 report += 'Vær opmærksom på at score 3 og 4 er gode og tilstrækkelige. Lad være med at vise eller nævne score værdier. Varier sproget. Lad være med at liste kategorierne i rækkefølge. Undgå generelle vendinger.'


  for (var i = 0; i &lt; categories.length; i++) {
    for (var j = subcategoriesStartRow&#91;i]; j &lt;= subcategoriesEndRow&#91;i]; j++) {
      var subcategory = sheet.getRange('C' + j).getValue();
      var rating = '';
      if (sheet.getRange('J' + j).getValue() === false) {
       rating = sheet.getRange('K' + j).getValue();
       report += ' I kategorien ' + categories&#91;i] + subcategory + ', har eleven scoret ' + rating + '.';
      }
    }
  }
  return report;</code></pre>



<p class="has-medium-font-size wp-block-paragraph">4. Programmet genererer en prompt. Som det ses nedenfor er denne ret lang, og indeholder bl.a. mine vurderinger af elevens arbejde. Det vil tage en del tid at sætte sådan en prompt sammen for hver elev, hvis jeg ikke havde programmet. Prompten:</p>



<p class="wp-block-paragraph">Skriv på dansk. Skriv et respons til en biologi opgave på højest 150 ord fra en lærer til en elev på gymnasieniveau. Begynd med &#8220;Hej Søren&#8221;. Skriv klart og med få tillægsord. Lad være med at skrive &#8220;Kære&#8221; og &#8220;Med venlig hilsen&#8221;. Vær opmærksom på følgende scorer: 0 = mangler i besvarelsen. 1 = ikke godkendt, utilstrækkeligt. 2 = mangelfuldt, plads til forbedring. 3 = fint, godt, tilstrækkeligt, nogen grad af forståelse. 4 = meget godt, godt arbejde, høj grad af forståelse. Vær opmærksom på at score 3 og 4 er gode og tilstrækkelige. Lad være med at vise eller nævne score værdier. Varier sproget. Lad være med at liste kategorierne i rækkefølge. Undgå generelle vendinger. I kategorien Afbildning af data: Typen af diagram er velegnet, har eleven scoret 2. I kategorien Afbildning af data: Der er titel på diagrammet og titel samt enheder på akserne, har eleven scoret 0. I kategorien Afbildning af data: Skrevet en kommentar til diagrammer, har eleven scoret 3. I kategorien Afbildning af data: Argumenter for at data-punkter følger en matematisk model , har eleven scoret 3.</p>



<p class="has-medium-font-size wp-block-paragraph">5. Prompten gives til chatbot fx ChatGPT. Resultatet bliver et sammenskrevet <strong>feedback </strong>til eleven og kan blive som følger: </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Hej Søren,</p>



<p class="wp-block-paragraph">Godt arbejde med at anvende velegnede diagramtyper. Dog er det vigtigt at inkludere titel på diagrammet og enheder på akserne næste gang. Din kommentar til diagrammerne viser forståelse. Flot argumentation for, at data-punkter følger en matematisk model.</p>



<p class="wp-block-paragraph">Når du præsenterer beregninger, sørg for at inkludere forklarende tekst og brug enheder på alle tal. Konklusionen på dine beregninger viser forståelse, og du har fint afrundet resultatet med hensyntagen til betydende cifre.</p>



<p class="wp-block-paragraph">Godt arbejde med opgaven, Søren! Fortsæt den gode indsats.</p>



<p class="wp-block-paragraph">Mvh,<br>Læreren</p>
</blockquote>



<p class="has-medium-font-size wp-block-paragraph">Nogle gange skriver ChatGPT de tal ind, som jeg har vurderet eleven til, selv om jeg udtrykkeligt har bedt ChatGPT om IKKE at skrive tal i svaret. Tal kunne evt. undgås mere konsekvent ved at bruge en <strong>bogstav-skala</strong> (E til A) i stedet for tal. </p>



<p class="has-medium-font-size wp-block-paragraph">Eksemplet viser <strong>metoden </strong>i at have en masse præfabrikerede stikord og sætninger, som kan udvælges fra en tabel og skrives sammen til en mere præcis prompt: Chatbotten omskriver mine talvurderinger til almindeligt sprog, som eleven måske bedre forstår. </p>



<p class="has-medium-font-size wp-block-paragraph">Flere spørgsmål melder sig:</p>



<ul class="wp-block-list">
<li class="has-medium-font-size"><strong>Hvad får eleven ud af den feedback, som ChatGPT har skrevet</strong>? Får eleven samme, mere eller mindre ud af ChatGPT-feedbacken sammenlignet med den feedback jeg selv ville have skrevet? </li>



<li class="has-medium-font-size">Feedback&#8217;en er mest <strong>summativ </strong>og forklarer ikke eleven så klart, hvad vedkommende skal gøre for at forbedre sin præstation -kan forslag til forbedringer eller links tilføjes ud for hver kategori og integreres i feedbacken?</li>



<li class="has-medium-font-size">Kan der integreres fokuspunkter og progression i metoden?</li>



<li class="has-medium-font-size"><strong>Sparer jeg tid</strong> ved at lade ChatGPT skrive feedbacken, eller bruger jeg lige så meget (eller mere) tid ved at nedskrive mine tal-vurderinger, generere prompten, få svaret, læse det igennem og kopiere svaret til eleven?</li>
</ul>



<p class="has-medium-font-size wp-block-paragraph">Selv om metoden måske ikke er velegnet til elev-feedback, kan den måske bruges til andre formål. På sigt kan en chatbot måske læse elevens besvarelse og give vurderingerne i tal, som derefter kan omskrives til en sammenhængende feedback.</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>chatGPT</title>
		<link>https://gymlab.dk/2023/01/chatgpt/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Fri, 27 Jan 2023 20:30:30 +0000</pubDate>
				<category><![CDATA[Computational thinking]]></category>
		<category><![CDATA[Digital Dannelse]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2865</guid>

					<description><![CDATA[Selvfølgelig det obligatoriske indlæg skrevet af chatGPT. Input: &#8220;Skriv et bloginlæg, som handler om chatGPT&#8221; Output: &#8220;ChatGPT er et spændende værktøj, der bruges til at generere chatbot-svar automatisk. Det er baseret på den kunstige intelligens teknologi kaldet transformativ prædiktion, der &#8230; <a href="https://gymlab.dk/2023/01/chatgpt/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Selvfølgelig det obligatoriske indlæg skrevet af chatGPT. </p>



<p class="wp-block-paragraph">Input: &#8220;Skriv et bloginlæg, som handler om chatGPT&#8221;</p>



<p class="wp-block-paragraph">Output: &#8220;ChatGPT er et spændende værktøj, der bruges til at generere chatbot-svar automatisk. Det er baseret på den kunstige intelligens teknologi kaldet transformativ prædiktion, der gør det muligt for chatGPT at lære og forudsige de mest passende svar på spørgsmål og samtaler.</p>



<p class="wp-block-paragraph">En af de store fordele ved chatGPT er, at det kan spare virksomheder og organisationer for tid og penge, da det kan håndtere mange samtaler og spørgsmål på én gang. Dette gør det ideelt til at bruges som en del af en kundeservice-platform eller til at besvare spørgsmål fra brugere på en hjemmeside eller i en app.</p>



<p class="wp-block-paragraph">ChatGPT er også meget nyttigt, når det kommer til at lære af tidligere samtaler og forbedre sin præstation over tid. Det kan for eksempel huske, hvilke spørgsmål der er blevet stillet før, og give mere præcise svar baseret på tidligere samtaler.</p>



<p class="wp-block-paragraph">Derudover kan chatGPT også bruges til at generere tekst til andre formål, fx at skrive artikler eller nyheder. Dette gør det til et meget alsidigt værktøj, der kan bruges i mange forskellige sammenhænge.</p>



<p class="wp-block-paragraph">Alt i alt er chatGPT et spændende værktøj, der kan hjælpe med at spare tid og penge, samt forbedre kundeservice og interaktion med brugere. Det er et nyttigt værktøj for alle, der ønsker at automatisere deres kommunikation og forbedre deres samtaler med andre mennesker.&#8221;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Dataanalyse og Machine Learning</title>
		<link>https://gymlab.dk/2022/08/dataanalyse-og-machine-learning/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Sat, 20 Aug 2022 18:15:01 +0000</pubDate>
				<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2739</guid>

					<description><![CDATA[Jeg har fulgt og afsluttet kursus i &#8220;dataanalyse og Machine Learning&#8221; ved KU. Dvs. formelt bliver kurset udbudt af AU, men afholdes på Biocenter i KBH, fordi den kursusansvarlige arbejder der, med analyse af scanningsbilleder af hjernen. Maskinlæring (ML) har &#8230; <a href="https://gymlab.dk/2022/08/dataanalyse-og-machine-learning/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Jeg har fulgt og afsluttet kursus i &#8220;dataanalyse og Machine Learning&#8221; ved KU. Dvs. formelt bliver kurset udbudt af AU, men afholdes på Biocenter i KBH, fordi den kursusansvarlige arbejder der, med analyse af scanningsbilleder af hjernen.</p>



<p class="wp-block-paragraph">Maskinlæring (ML) har vist lige så mange specifikke tricks og metoder, som bioteknologi. Indholdet viste sig at være med et overraskende stort fokus på de pædagogiske vinkler. Der var få tekniske gennemgange (det var op til den enkelte at læse dem), men fokus på hvordan indholdet kunne formidles til elever.</p>



<p class="wp-block-paragraph">Arbejdet foregik i studiegrupper. Min gruppe endte med at arbejde med et diabetes datasæt og vi brugte KNN algoritmen til at forudsige hvem der havde diabetes. Vi valgte datasættet fordi det havde forståelige features (egenskaber) fx bmi, blodtryk, alder, køn, og vi valgte KNN, fordi det er en af de nemmeste ML-metoder at konkretisere og forklare. At det så er en non-parametrisk metode (dvs. modellen er blot de træningsdata man bruger) er mindre godt, men noget jeg kan leve med. </p>



<p class="wp-block-paragraph">Kodningen foregik i Google Colab, som er et fint online begynder-IDE, men man mister hurtigt overblikket over filer og indhold, så en stram indholdsstyring er en god ide.</p>



<p class="wp-block-paragraph">Kurset var også mit første møde med PeerGrade, hvilket jeg synes var ret positivt. Systemet virkede godt, og sparer sikkert underviseren for meget tid, men en meget struktureret opsamling på vigtigt indhold og pointer ville hjælpe.</p>



<p class="wp-block-paragraph">Alt i alt et rigtig godt kursus, og målet er at fremstille en opgave, som jeg kan bruge i biologi omkring dataanalyse og ML fx KNN eller et NN på Winsconsin breast cancer datasættet.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Hvor god er en AI til at besvare en skriftlig eksamensopgave?</title>
		<link>https://gymlab.dk/2022/05/hvor-god-er-en-ai-til-at-besvare-en-skriftlig-eksamensopgave/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Tue, 31 May 2022 13:48:38 +0000</pubDate>
				<category><![CDATA[Biologi]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Skriftlighed]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2743</guid>

					<description><![CDATA[Modellerne i maskinlæring (Machine Learning, ML) kan få noget til at ligne intelligens. Systemer, der bruger ML-modeller, kaldes i daglig tale ofte Artificial Intelligence (AI), selv om en generel AI ikke findes. Rune Schmidt gjorde på FB opmærksom på, at &#8230; <a href="https://gymlab.dk/2022/05/hvor-god-er-en-ai-til-at-besvare-en-skriftlig-eksamensopgave/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="has-medium-font-size wp-block-paragraph">Modellerne i <strong>maskinlæring </strong>(Machine Learning, ML) kan få noget til at ligne intelligens. Systemer, der bruger ML-modeller, kaldes i daglig tale ofte Artificial Intelligence (AI), selv om en generel AI ikke findes. </p>


<div class="wp-block-image">
<figure class="alignright size-full is-resized"><img loading="lazy" decoding="async" src="https://gymlab.dk/wp-content/uploads/2022/05/Artificial_Intelligence__AI__Machine_Learning_-_30212411048.jpg" alt="" class="wp-image-2786" width="396" height="317" srcset="https://gymlab.dk/wp-content/uploads/2022/05/Artificial_Intelligence__AI__Machine_Learning_-_30212411048.jpg 750w, https://gymlab.dk/wp-content/uploads/2022/05/Artificial_Intelligence__AI__Machine_Learning_-_30212411048-300x240.jpg 300w" sizes="auto, (max-width: 396px) 100vw, 396px" /><figcaption>mikemacmarketing, CC BY 2.0 <a href="https://creativecommons.org/licenses/by/2.0">https://creativecommons.org/licenses/by/2.0</a>, via Wikimedia Commons</figcaption></figure>
</div>


<p class="has-medium-font-size wp-block-paragraph">Rune Schmidt gjorde på FB opmærksom på, at <strong>openAI </strong>har en <a href="https://beta.openai.com/overview" data-type="URL" data-id="https://beta.openai.com/overview" target="_blank" rel="noreferrer noopener">online tjeneste</a>, som benytter ML modeller og adgang til oplysninger på nettet, til at besvare spørgsmål. Og svarene er ikke bare et copy-paste fra Wikipedia -man kan indstille hvor unikt (kreativt) et svar skal formuleres.</p>



<p class="has-medium-font-size wp-block-paragraph">Med forventning om, at model-systemet <strong>hurtigt ville fejle</strong> på viden eller sætningskonstruktion, fodrede jeg det med nogle spørgsmål fra en tilfældig <strong>biologi A eksamensopgave</strong> (2013 27. aug, opg 1). Da systemet p.t. kun bruger engelsk, er spørgsmålene oversat efter bedste evne.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>1. Angiv nedarvningstypen for NF1. Begrund dit svar.</strong></p>



<p class="has-medium-font-size wp-block-paragraph">What kind of heredity does the NF1 gene exhibit?</p>



<p class="has-medium-font-size wp-block-paragraph">Svar: <em>&#8220;The NF1 gene is transmitted in an autosomal dominant pattern, which means that a person only needs to inherit one copy of the mutated gene in order to be affected by the condition. The gene is passed down from generation to generation in a family, with each successive generation having a 50% chance of inheriting the mutated gene. In some cases, the gene can be passed down from a parent who does not have the condition, but this is rare.&#8221;</em></p>



<p class="has-medium-font-size wp-block-paragraph">Selv om &#8216;Angiv&#8217; fordrer et kort svar, får systemet ikke så mange point, fordi dele af &#8220;begrund dit svar&#8221; er for generel. Der er nogle oplysninger i opgaven, som skal inddrages. En kvik elev kan dog let lave koblingen, men systemet alene kan ikke -nok fordi det ikke har fået hele teksten. </p>



<p class="has-medium-font-size wp-block-paragraph">Jeg var sikker på, at systemet ville fejle på NF1, men det gen &#8220;kender&#8221; det godt. Ordet &#8220;transmitted&#8221; ville jeg ikke bruge om et gen, fordi jeg kommer til at tænke på smitsomme sygdomme, men måske er det ok på engelsk.</p>



<p class="has-medium-font-size wp-block-paragraph">Der mangler nogle flere fagbegreber fx heterozygot, genotype, fænotype, allel. Så 1-0 til os!</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>2. Forklar, hvordan et protein som fx neurofibromin kan være med til at kontrollere cellers vækst.</strong></p>



<p class="has-medium-font-size wp-block-paragraph">Explain how a protein, i.e. neurofibromine, can regulate cell growth</p>



<p class="has-medium-font-size wp-block-paragraph">Svar: <em>&#8220;Proteins can regulate cell growth by interacting with other proteins in the cell to either promote or inhibit cell growth. For example, neurofibromine can interact with proteins that promote cell growth, such as growth factor proteins, to increase the rate of cell growth. Alternatively, neurofibromine can interact with proteins that inhibit cell growth, such as tumor suppressor proteins, to reduce the rate of cell growth.&#8221;</em></p>



<p class="has-medium-font-size wp-block-paragraph">Svaret er igen lidt kortfattet og en dygtig elev ville nok tilføje noget om genregulering. Men svaret er  acceptabelt, så 1-1.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>3.</strong> <strong>Gør rede for, hvorfor et stort gen må forventes at have en høj spontan mutationsrate.</strong></p>



<p class="has-medium-font-size wp-block-paragraph">Explain why a large gene is expected to have a high rate of spontaneous mutation.</p>



<p class="has-medium-font-size wp-block-paragraph">Svar: <em>&#8220;There are several reasons why a large gene is expected to have a high rate of spontaneous mutation. First, a large gene is likely to have more DNA bases than a small gene, so there are more opportunities for mutations to occur. Second, a large gene is likely to be involved in more biochemical processes than a small gene, so it is more likely to be affected by environmental factors that can cause mutations. Finally, a large gene is likely to be more complex than a small gene, so it is more likely to contain mutations that can affect its function.&#8221;</em></p>



<p class="has-medium-font-size wp-block-paragraph">Flot at den inddrager flere relevante forklaringer. Svaret er noget generelt, og flere detaljer ville give flere point. 1-2 til systemet.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>4. Forklar, hvorfor forskellige mutationer kan medføre NF1 i forskellig sværhedsgrad</strong></p>



<p class="has-medium-font-size wp-block-paragraph">Explain why different mutations may cause varying degrees of Neurofibromatosis (navn hentet i opgaveteksten)</p>



<p class="has-medium-font-size wp-block-paragraph">Svar:<em> &#8220;Different mutations may cause varying degrees of Neurofibromatosis because they can affect different genes that are involved in the development and maintenance of the nervous system. Some mutations may only affect a single gene, while others may affect multiple genes. The severity of the condition can also be affected by the location of the mutation within the gene.&#8221;</em></p>



<p class="has-medium-font-size wp-block-paragraph">Måske et ret kort svar fra systemet, omend det mest essentielle er med. Opgaveteksten inddrager deletion og punktmutation, så der skal flere detaljer på (og gerne en figur), hvis svaret skal give max point. </p>



<p class="has-medium-font-size wp-block-paragraph">Men svaret er acceptabelt og består i sig selv Turing testen, selv om jeg godt kunne tænke mig flere konkrete detaljer og relevante begreber. 1-3 til systemet.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>5. Vurder, om man ved at screene sæddonorer kan undgå at videregive NF1.</strong></p>



<p class="has-medium-font-size wp-block-paragraph">Assess wether it is possible to avoid Neurofibromatosis by screening sperm donors?</p>



<p class="has-medium-font-size wp-block-paragraph">Svar: <em>&#8220;There is no known way to prevent neurofibromatosis, as the cause is unknown. There is no way to screen sperm donors for the condition.&#8221;</em></p>



<p class="has-medium-font-size wp-block-paragraph">Her fejler systemet. Ifølge opgaven er genfejlen og arvegangen kendt, og kan dermed findes i en gentest. Enten er modellens viden ikke opdateret (hvilket jeg tvivler på) eller spørgsmålet er ikke stillet på en sådan måde, at den kan give det rigtige svar. </p>



<p class="has-medium-font-size wp-block-paragraph">Dertil bør et vurderingsspørgsmål besvares med en forklaring, der kan understøtte og give argumenter for den vurdering, der er foretaget. Her giver systemet ingen forklaring. 2-3.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>Endeligt resultat: 2-3 til systemet, og med en grænse på 50% rigtige, er det bestået. </strong></p>



<p class="wp-block-paragraph">&#8212;&#8211;</p>



<p class="has-medium-font-size wp-block-paragraph">Der er selvfølgelig mange mellemregninger. Måske har jeg lige ramt en opgave med mange spørgsmål på <strong>lavt taksonomisk niveau</strong>? </p>



<p class="has-medium-font-size wp-block-paragraph">Systemet har svært ved at være <strong>konkret</strong>, nok fordi den mangler kontekst. Alligevel synes jeg, at den er overraskende god. Jeg tror godt, at det kan passere<strong> Turing testen</strong> (ikke til at skældne fra et menneske).</p>



<p class="has-medium-font-size wp-block-paragraph">Det ville være interessant, at undersøge om systemet kan give mere konkrete svar, hvis det fik mere tekst med flere relevante fagudtryk fx ved at hvert spørgsmål blev fordelt på 3-4 underspørgsmål, og det endelige svar blev sat sammen ud fra svarene på underspørgsmålene.  </p>



<p class="has-medium-font-size wp-block-paragraph">Måske kræver det mere tid og fagligt overskud at formulere de fire underspørgsmål til systemet og sammenskrive svaret, end det kræver, at finde og skrive svaret selv. Men systemet har også en indstilling, hvor <strong>systemet kan udfylde et hul i en sætning</strong>, hvilket gør det nemmere at koble svarene sammen.</p>



<p class="has-medium-font-size wp-block-paragraph">Desværre er det mit indtryk, at mange elever netop arbejder på den måde, at de først <strong>plukker inspiration</strong> fx på studieportalen (eller nu openAI), og derefter sammenskriver/formulerer deres &#8220;eget&#8221; svar.</p>



<p class="has-medium-font-size wp-block-paragraph">Men det er ikke nyt. Vi har kæmpet mod studieportalen i flere år. Heldigvis kan systemet endnu ikke gemmes lokalt. Og <strong>sproglærerne </strong>har vist kæmpet mod AI et stykke tid (Google Translate). </p>



<ul class="has-medium-font-size wp-block-list"><li>Vi skal tænke os endnu mere om, når vi stiller faglige spørgsmål: Hvordan kan spørgsmålet stilles så kontekst-afhængigt, at et computer-system med adgang til Wikipedia, ikke kan besvare det?</li><li>Adskille med og uden hjælpemidler oftere.</li><li>&#8220;Os <em>mod </em>systemet&#8221; er en udfordring, der skal blive til &#8220;os <em>med </em>systemet&#8221;. Vi må prøve at bruge adgangen til IT-systemer, frem for kun at kæmpe imod dem. </li></ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Informatik c -year ½</title>
		<link>https://gymlab.dk/2020/01/informatik-c-year-%c2%bd/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Wed, 15 Jan 2020 12:07:37 +0000</pubDate>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Elektronik]]></category>
		<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2458</guid>

					<description><![CDATA[Jeg har nu undervist i informatik c i et halvt år: year ½. Mine to forløb har været hhv. oplevelsesteknologi (Escape Room) / spiludvikling (læringsspil til en målgruppe) og webudvikling (udvikle website til målgruppe). De største udfordringer har været: Samarbejdet &#8230; <a href="https://gymlab.dk/2020/01/informatik-c-year-%c2%bd/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Jeg har nu undervist i informatik c i et halvt år: year ½. Mine to forløb har været hhv. oplevelsesteknologi (Escape Room) / spiludvikling (læringsspil til en målgruppe) og webudvikling (udvikle website til målgruppe). De største udfordringer har været:</p>



<ul class="wp-block-list"><li>Samarbejdet i grupperne. Forskelle i niveau og læringsstile, har gjort nogle af grupperne meget uhomogene, særligt i andet forløb, hvor jeg lavede grupperne tilfældigt. </li><li>Fagligt overblik. Fx forløbet om webudvikling krævede overblik over html og css-mulighederne, som jeg ikke havde. Det synes jeg, at jeg har nu.</li><li>Ramme balancen mellem tilpas simpelt system og frihed til at eleverne kan skabe. Fx er micro:bit simpelt, men det er svært at lave noget kompliceret med systemet. Modsat er fx en Arduino avanceret -stejlere læringskurve, men kan bruges til mange ting. </li></ul>



<p class="wp-block-paragraph">Efter julen (2019) skal jeg i gang med et forløb om fysiske IT-systemer, fordi den taktile del af et IT-system giver mulighed for øget kreativitet, analyse og feedback. Det bliver mere vedkommende at udvikle til den fysiske verden, end at lade det hele blive inde i den virtuelle verden.</p>



<p class="wp-block-paragraph">Der er mange muligheder: </p>



<ul class="wp-block-list"><li><strong>Lego-robotter</strong>. Follow the line og Kunstig intelligens fx med Roberta IDE&#8217;et online (særligt til robotter, indeholder simulator til EV3). Fordele: Ret let at komme igang. Kan udvides fra blokke til Python eller C kode. Ulemper: der er mindre kreativitet i den fysiske del af lego, dele skal passe sammen og vil aldrig ligne noget fra virkeligheden. EV3-klodsen er ret stor og uhandy.</li><li><strong>mBot </strong>kodes fx med mBlock IDE online. Ulemper: mBot er et avanceret samlesæt. Der er ikke meget design eller kreativitet i den. Fordele: Den kan udbygges med laserskårne dele fx for at give robotten et bestemt udseende. IDE arbejder både i blokke og i C++/python. Der er en Arduino udvidelse til IDE&#8217;et, men få biblioteker (DHT) og adgang til andre MCU-boards (fx er wemos-serien ikke tilgængelig), men ingen print.</li><li><strong>Arduino</strong>. Kan kodes med Arduino IDE eller mBlock online. Mulige projekter: rum-/sundhedsdragt som målet temperatur, stok til svagtseende, robotbil. Fordele: Man kan lave næsten alt. Ulemper: sværere at komme i gang med, men blokkene i mBlock kan være en indgang (ligner mBit) &#8211; dog er der ikke adgang til fejlmeddelelser eller seriel monitor i mBlock. Ukorrekte og løse forbindelser kan frustrere.  </li><li><strong>Wemos </strong>D1 mini. ESP32 baseret IoT enhed. Fordele: Kan komme på nettet. Ulemper: pin layout er anderledes end Arduino. Kun Arduino IDE understøtter boarded.</li></ul>



<p class="wp-block-paragraph">Andre IDE&#8217;er er ScratchX og thinkerCAD, men de er begge for simple/mangler adgang til board/biblioteker. Arduino online IDE: Arduino Create: Den giver ikke adgang til wemos mini, men dog til lilypad. Vil den begrænsede compilerings-tid blive et problem? Eller vil <a href="https://support.google.com/accounts/answer/32050?co=GENIE.Platform%3DDesktop&amp;hl=en">clear cache i browser hjælpe</a>?</p>



<p class="wp-block-paragraph">Der er mange usikre elementer og derfor lander jeg på det sikre valg: Arduino IDE, tekstbaseret (y). Projektet kommer til at omhandle wearables og forhåbentlig kan der komme lidt digital produktion (laserskærer/3d print) ind over. </p>


<p><!--EndFragment--><br /><br /></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Maskinlæring med JavaScript</title>
		<link>https://gymlab.dk/2019/03/maskinlaering-med-javascript/</link>
		
		<dc:creator><![CDATA[rkw]]></dc:creator>
		<pubDate>Sat, 09 Mar 2019 15:03:50 +0000</pubDate>
				<category><![CDATA[Maskinlæring]]></category>
		<category><![CDATA[Programmering]]></category>
		<guid isPermaLink="false">http://gymlab.dk/?p=2084</guid>

					<description><![CDATA[Lineær regression med JavaScript Jeg har længe ville lave en mere spiselig udgave til nettet af en maskinlæring-algoritme til lineær regression. Klik i diagrammet for at tilføje flere punkter. En svaghed ved algoritmen er, at linjernes ændring bliver meget voldsom &#8230; <a href="https://gymlab.dk/2019/03/maskinlaering-med-javascript/">Læs resten <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<h1>Lineær regression med JavaScript</h1>
<p>Jeg har længe ville lave en mere spiselig udgave til nettet af en maskinlæring-algoritme til lineær regression.</p>
<p>Klik i diagrammet for at tilføje flere punkter.</p>
<p>En svaghed ved algoritmen er, at linjernes ændring bliver meget voldsom for nye punkter med høje x-værdier, da algoritmen beregner ændringen af a (hældningen) ud fra deltax. På den måde virker algoritmen muligvis kun for mange punkter, som allerede ligger tæt på en ret linje. Eller måske kan algorimen videreudvikles.</p>
<p>Koden er skrevet via CodePen, som er et online miljø til at kode og vise resultatet af kode, som kan indlejres på websider. Lignende miljøer er Trinket.io, p5.js og repl.it.</p>
<p class="codepen" data-height="800" data-theme-id="0" data-slug-hash="yvaKze" data-default-tab="js,result" data-user="raskrawen" data-embed-version="2" data-pen-title="Linear regression with Machine Learning">See the Pen <a href="https://codepen.io/raskrawen/pen/yvaKze/">Linear regression with Machine Learning</a> by Rasmus Kragh Wendelbo (<a href="https://codepen.io/raskrawen">@raskrawen</a>) on <a href="https://codepen.io">CodePen</a>.</p>
<p><script async="" src="https://production-assets.codepen.io/assets/embed/ei.js"></script></p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Object Caching 5/115 objects using Disk
Page Caching using Disk: Enhanced 

Served from: gymlab.dk @ 2026-09-14 00:03:07 by W3 Total Cache
-->