PageSourceSearch

https://www.maartengrootendorst.com/blog/

html maartengrootendorst.com collected 2026-09-24 09:10:22 UTC 43,993 bytes, 1,332 lines download raw bytes

1
2<!doctype html>
3<html lang="en" class="no-js">
4  <head>
5    
6      <meta charset="utf-8">
7      <meta name="viewport" content="width=device-width,initial-scale=1">
8      
9        <meta name="description" content="My Personal Website">
10      
11      
12        <meta name="author" content="Maarten Grootendorst">
13      
14      
15        <link rel="canonical" href="https://maartengrootendorst.com/blog/">
16      
17      
18        <link rel="prev" href="../book/">
19      
20      
21        <link rel="next" href="../projects/">
22      
23      
24      <link rel="icon" href="../images/favicon.ico">
25      <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.15">
26    
27    
28      
29        <title>Newsletter - Maarten Grootendorst</title>
30      
31    
32    
33      <link rel="stylesheet" href="../assets/stylesheets/main.342714a4.min.css">
34      
35        
36        <link rel="stylesheet" href="../assets/stylesheets/palette.06af60db.min.css">
37      
38      
39
40
41    
42    
43      
44    
45    
46      
47        
48        
49        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
50        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lora:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
51        <style>:root{--md-text-font:"Lora";--md-code-font:"Roboto Mono"}</style>
52      
53    
54    
55      <link rel="stylesheet" href="../stylesheets/extra.css">
56    
57      <link rel="stylesheet" href="../stylesheets/custom_box.css">
58    
59      <link rel="stylesheet" href="../stylesheets/hbox.css">
60    
61      <link rel="stylesheet" href="../stylesheets/profile.css">
62    
63    
63<script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
63
64    
65      
66
67    
68    
69    
70  </head>
71  
72  
73    
74    
75    
76    
77    
78    <body dir="ltr" data-md-color-scheme="light" data-md-color-primary="indigo" data-md-color-accent="indigo">
79  
80    
81    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
82    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
83    <label class="md-overlay" for="__drawer"></label>
84    <div data-md-component="skip">
85      
86        
87        <a href="#newsletter" class="md-skip">
88          Skip to content
89        </a>
90      
91    </div>
92    <div data-md-component="announce">
93      
94    </div>
95    
96    
97      <!--
98  Copyright (c) 2016-2024 Martin Donath <[email protected]>
99
100  Permission is hereby granted, free of charge, to any person obtaining a copy
101  of this software and associated documentation files (the "Software"), to
102  deal in the Software without restriction, including without limitation the
103  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
104  sell copies of the Software, and to permit persons to whom the Software is
105  furnished to do so, subject to the following conditions:
106
107  The above copyright notice and this permission notice shall be included in
108  all copies or substantial portions of the Software.
109
110  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
111  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
112  FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
113  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
114  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
115  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
116  IN THE SOFTWARE.
117-->
118
119<!-- Determine classes -->
120
121
122
123<!-- Header -->
124<header class="md-header" data-md-component="header">
125  <nav
126    class="md-header__inner md-grid"
127    aria-label="Header"
128  >
129
130    <!-- Link to home -->
131    <a
132      href=".."
133      title="Maarten Grootendorst"
134      class="md-header__button md-logo"
135      aria-label="Maarten Grootendorst"
136      data-md-component="logo"
137    >
138      
139  <img src="../images/logo.png" alt="logo">
140
141    </a>
142
143    <!-- Button to open drawer -->
144    <label class="md-header__button md-icon" for="__drawer">
145      
146      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
147    </label>
148
149    <!-- Header title -->
150    <div class="md-header__title">
151      <div class="md-header__ellipsis">
152        <div class="md-header__topic">
153          <span class="md-ellipsis">
154            Maarten Grootendorst
155          </span>
156        </div>
157        <div class="md-header__topic" data-md-component="header-topic">
158          <span class="md-ellipsis">
159            
160              Newsletter
161            
162          </span>
163        </div>
164      </div>
165    </div>
166
167    <!-- Color palette toggle -->
168    
169      
170    
171
172    <!-- User preference: color palette -->
173    
174
175    <!-- Site language selector -->
176    
177
178    <!-- Button to open search modal -->
179    
180      <label class="md-header__button md-icon" for="__search">
181        
182        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
183      </label>
184
185      <!-- Search interface -->
186      <div class="md-search" data-md-component="search" role="dialog">
187  <label class="md-search__overlay" for="__search"></label>
188  <div class="md-search__inner" role="search">
189    <form class="md-search__form" name="search">
190      <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
191      <label class="md-search__icon md-icon" for="__search">
192        
193        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
193<path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
194        
195        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
196      </label>
197      <nav class="md-search__options" aria-label="Search">
198        
199        <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
200          
201          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
202        </button>
203      </nav>
204      
205    </form>
206    <div class="md-search__output">
207      <div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
208        <div class="md-search-result" data-md-component="search-result">
209          <div class="md-search-result__meta">
210            Initializing search
211          </div>
212          <ol class="md-search-result__list" role="presentation"></ol>
213        </div>
214      </div>
215    </div>
216  </div>
217</div>
218    
219
220    <!-- Repository information -->
221    
222  </nav>
223
224  <!-- Navigation tabs (sticky) -->
225  
226</header>
227    
228    <div class="md-container" data-md-component="container">
229      
230      
231        
232          
233            
234<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
235  <div class="md-grid">
236    <ul class="md-tabs__list">
237      
238        
239  
240  
241  
242  
243    <li class="md-tabs__item">
244      <a href=".." class="md-tabs__link">
245        
246  
247  
248    
249  
250  Home
251
252      </a>
253    </li>
254  
255
256      
257        
258  
259  
260  
261  
262    <li class="md-tabs__item">
263      <a href="../book/" class="md-tabs__link">
264        
265  
266  
267    
268  
269  Books
270
271      </a>
272    </li>
273  
274
275      
276        
277  
278  
279  
280    
281  
282  
283    <li class="md-tabs__item md-tabs__item--active">
284      <a href="./" class="md-tabs__link">
285        
286  
287  
288    
289  
290  Newsletter
291
292      </a>
293    </li>
294  
295
296      
297        
298  
299  
300  
301  
302    <li class="md-tabs__item">
303      <a href="../projects/" class="md-tabs__link">
304        
305  
306  
307    
308  
309  Open Source
310
311      </a>
312    </li>
313  
314
315      
316        
317  
318  
319  
320  
321    <li class="md-tabs__item">
322      <a href="../talks/" class="md-tabs__link">
323        
324  
325  
326    
327  
328  Talks
329
330      </a>
331    </li>
332  
333
334      
335        
336  
337  
338  
339  
340    <li class="md-tabs__item">
341      <a href="../contact/" class="md-tabs__link">
342        
343  
344  
345    
346  
347  Contact
348
349      </a>
350    </li>
351  
352
353      
354    </ul>
355  </div>
356</nav>
357          
358        
359      
360      <main class="md-main" data-md-component="main">
361        <div class="md-main__inner md-grid">
362          
363            
364              
365                
366              
367              <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" hidden>
368                <div class="md-sidebar__scrollwrap">
369                  <div class="md-sidebar__inner">
370                    
371
372
373  
374
375
376<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
377  <label class="md-nav__title" for="__drawer">
378    <a href=".." title="Maarten Grootendorst" class="md-nav__button md-logo" aria-label="Maarten Grootendorst" data-md-component="logo">
379      
380  <img src="../images/logo.png" alt="logo">
381
382    </a>
383    Maarten Grootendorst
384  </label>
385  
386  <ul class="md-nav__list" data-md-scrollfix>
387    
388      
389      
390  
391  
392  
393  
394    <li class="md-nav__item">
395      <a href=".." class="md-nav__link">
396        
397  
398  
399  <span class="md-ellipsis">
400    Home
401    
402  </span>
403  
404
405      </a>
406    </li>
407  
408
409    
410      
411      
412  
413  
414  
415  
416    <li class="md-nav__item">
417      <a href="../book/" class="md-nav__link">
418        
419  
420  
421  <span class="md-ellipsis">
422    Books
423    
424  </span>
425  
426
427      </a>
428    </li>
429  
430
431    
432      
433      
434  
435  
436    
437  
438  
439  
440    <li class="md-nav__item md-nav__item--active">
441      
442      <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
443      
444      
445        
446      
447      
448        <label class="md-nav__link md-nav__link--active" for="__toc">
449          
450  
451  
452  <span class="md-ellipsis">
453    Newsletter
454    
455  </span>
456  
457
458          <span class="md-nav__icon md-icon"></span>
459        </label>
460      
461      <a href="./" class="md-nav__link md-nav__link--active">
462        
463  
464  
465  <span class="md-ellipsis">
466    Newsletter
467    
468  </span>
469  
470
471      </a>
472      
473        
474
475<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
476  
477  
478  
479    
480  
481  
482    <label class="md-nav__title" for="__toc">
483      <span class="md-nav__icon md-icon"></span>
484      Table of contents
485    </label>
486    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
487      
488        <li class="md-nav__item">
489  <a href="#visual-guides-to-llms" class="md-nav__link">
490    <span class="md-ellipsis">
491      Visual Guides to LLMs
492    </span>
493  </a>
494  
495</li>
496      
497        <li class="md-nav__item">
498  <a href="#tutorials-blogs" class="md-nav__link">
499    <span class="md-ellipsis">
500      Tutorials / Blogs
501    </span>
502  </a>
503  
504</li>
505      
506    </ul>
507  
508</nav>
509      
510    </li>
511  
512
513    
514      
515      
516  
517  
518  
519  
520    <li class="md-nav__item">
521      <a href="../projects/" class="md-nav__link">
522        
523  
524  
525  <span class="md-ellipsis">
526    Open Source
527    
528  </span>
529  
530
531      </a>
532    </li>
533  
534
535    
536      
537      
538  
539  
540  
541  
542    <li class="md-nav__item">
543      <a href="../talks/" class="md-nav__link">
544        
545  
546  
547  <span class="md-ellipsis">
548    Talks
549    
550  </span>
551  
552
553      </a>
554    </li>
555  
556
557    
558      
559      
560  
561  
562  
563  
564    <li class="md-nav__item">
565      <a href="../contact/" class="md-nav__link">
566        
567  
568  
569  <span class="md-ellipsis">
570    Contact
571    
572  </span>
573  
574
575      </a>
576    </li>
577  
578
579    
580  </ul>
581</nav>
582                  </div>
583                </div>
584              </div>
585            
586            
587              
588                
589              
590              <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" hidden>
591                <div class="md-sidebar__scrollwrap">
592                  <div class="md-sidebar__inner">
593                    
594
595<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
596  
597  
598  
599    
600  
601  
602    <label class="md-nav__title" for="__toc">
603      <span class="md-nav__icon md-icon"></span>
604      Table of contents
605    </label>
606    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
607      
608        <li class="md-nav__item">
609  <a href="#visual-guides-to-llms" class="md-nav__link">
610    <span class="md-ellipsis">
611      Visual Guides to LLMs
612    </span>
613  </a>
614  
615</li>
616      
617        <li class="md-nav__item">
618  <a href="#tutorials-blogs" class="md-nav__link">
619    <span class="md-ellipsis">
620      Tutorials / Blogs
621    </span>
622  </a>
623  
624</li>
625      
626    </ul>
627  
628</nav>
629                  </div>
630                </div>
631              </div>
632            
633          
634          
635            <div class="md-content" data-md-component="content">
636              <article class="md-content__inner md-typeset">
637                
638                  
639  
640
641
642
643
644<h1 id="newsletter">Newsletter</h1>
645<p>In my <a href="https://newsletter.maartengrootendorst.com/">Exploring Language Models</a> newsletter you can find posts and visual guides on topics related to Large Language Models. If you want to stay updated, you can subscribe here:</p>
646<iframe src="https://maartengrootendorst.substack.com/embed" width="100%" height="220" style="border:1px solid #EEE; background:white;" frameborder="0" scrolling="no"></iframe>
647
648<p><br></p>
649<p>Below, you can find an overview of all posts I have created on various platforms. I initally started on <a href="">Medium</a> and slowly transitioned to <a href="">Substack</a> as my main source of content. These posts will keep you on this website as a handy alternative to the previous sources mentioned.</p>
650<h2 id="visual-guides-to-llms"><strong>Visual Guides to LLMs</strong></h2>
651<p>These are the guides I'm most proud over, each containing more than 50 custom-made visuals describing the internals and specifics of Large Language Models (LLMs) without any of the (often difficult to interpret) mathematics. Expect an intuitive experience!</p>
652<div class="custom-box" onclick="location.href='moe';">
653  <div class="custom-box-image">
654    <img src="/images/posts/2024-07-10-moe/main.png" alt="Post Image">
655  </div>
656  <div class="custom-box-content">
657    <div class="custom-box-title">A Visual Guide to Mixture of Experts (MoE)</div>
658    <div class="custom-box-date">October 07, 2024</div>
659    <div class="custom-box-body">Demystifying the role of MoE in Large Language Models</div>
660  </div>
661</div>
662
663<div class="custom-box" onclick="location.href='quantization';">
664  <div class="custom-box-image">
665    <img src="/images/posts/2024-22-07-quantization/main.png" alt="Post Image">
666  </div>
667  <div class="custom-box-content">
668    <div class="custom-box-title">A Visual Guide to Quantization</div>
669    <div class="custom-box-date">July 22, 2024</div>
670    <div class="custom-box-body">Demystifying the Compression of Large Language Models</div>
671  </div>
672</div>
673
674<div class="custom-box" onclick="location.href='mamba';">
675  <div class="custom-box-image">
676    <img src="/images/posts/2024-21-02-mamba/main.png" alt="Post Image">
677  </div>
678  <div class="custom-box-content">
679    <div class="custom-box-title">A Visual Guide to Mamba and State Space Models</div>
680    <div class="custom-box-date">Februari 21, 2024</div>
681    <div class="custom-box-body">An Alternative to Transformers for Language Modeling</div>
682  </div>
683</div>
684
685<h2 id="tutorials-blogs"><strong>Tutorials / Blogs</strong></h2>
686<p>The rest of the posts are those I make on how to implement certain techniques, such as topic modeling, keyword extraction and LLM-based techniques. You can also expect many posts on my experience transitioning from psychology to data science.</p>
687<div class="custom-box" onclick="location.href='bertopic';">
688  <div class="custom-box-image">
689    <img src="/images/posts/2023-19-12-bertopic/main.svg" alt="Post Image">
690  </div>
691  <div class="custom-box-content">
692    <div class="custom-box-title">BERTopic: What Is So Special About v0.16?</div>
693    <div class="custom-box-date">December 19, 2023</div>
694    <div class="custom-box-body">Exploring Zero-Shot Topic Modeling, Model Merging, and LLMs</div>
695  </div>
696</div>
697
698<div class="custom-box" onclick="location.href='gguf';">
699  <div class="custom-box-image">
700    <img src="/images/posts/2023-12-11-quantization/main_small.jpg" alt="Post Image">
701  </div>
702  <div class="custom-box-content">
703    <div class="custom-box-title">Which Quantization Method is Right for You? (GPTQ vs. GGUF vs. AWQ)</div>
704    <div class="custom-box-date">November 12, 2023</div>
705    <div class="custom-box-body">Exploring Pre-Quantized Large Language Models</div>
706  </div>
707</div>
708
709<div class="custom-box" onclick="location.href='keyllm';">
710  <div class="custom-box-image">
711    <img src="/images/posts/2023-02-10-keyllm/main_small.jpg" alt="Post Image">
712  </div>
713  <div class="custom-box-content">
714    <div class="custom-box-title">Introducing KeyLLM  -  Keyword Extraction with LLMs</div>
715    <div class="custom-box-date">October 03, 2023</div>
716    <div class="custom-box-body">Use KeyLLM, KeyBERT, and Mistral 7B to extract keywords</div>
717  </div>
718</div>
719
720<div class="custom-box" onclick="location.href='improving-llms';">
721  <div class="custom-box-image">
722    <img src="/images/posts/2023-12-09-improving-llms/main_small.jpg" alt="Post Image">
723  </div>
724  <div class="custom-box-content">
725    <div class="custom-box-title">3 Ways To Improve Your Large Language Model</div>
726    <div class="custom-box-date">September 11, 2023</div>
727    <div class="custom-box-body">Enhancing the power of Llama 2</div>
728  </div>
729</div>
730
731<div class="custom-box" onclick="location.href='llama2-topic';">
732  <div class="custom-box-image">
733    <img src="/images/posts/2023-21-08-llama2-topic/main_small.jpg" alt="Post Image">
734  </div>
735  <div class="custom-box-content">
736    <div class="custom-box-title">Topic Modeling with Llama 2</div>
737    <div class="custom-box-date">August 22, 2023</div>
738    <div class="custom-box-body">Create easily interpretable topics with BERTopic and Llama 2</div>
739  </div>
740</div>
741
742<div class="custom-box" onclick="location.href='autogpt';">
743  <div class="custom-box-image">
744    <img src="/images/posts/2023-08-08-autogpt/main_small.jpg" alt="Post Image">
745  </div>
746  <div class="custom-box-content">
747    <div class="custom-box-title">Decoding Auto-GPT</div>
748    <div class="custom-box-date">August 08, 2023</div>
749    <div class="custom-box-body">The Mechanics of an Autonomous GPT-4</div>
750  </div>
751</div>
752
753<div class="custom-box" onclick="location.href='gpt-psychology';">
754  <div class="custom-box-image">
755    <img src="/images/posts/2023-01-07-gpt-psychology/main.png" alt="Post Image">
756  </div>
757  <div class="custom-box-content">
758    <div class="custom-box-title">GPT Psychology</div>
759    <div class="custom-box-date">July 01, 2023</div>
760    <div class="custom-box-body">Analogies with Human Thinking and Reasoning</div>
761  </div>
762</div>
763
764<div class="custom-box" onclick="location.href='whisper';">
765  <div class="custom-box-image">
766    <img src="/images/posts/2022-21-11-whisper/main.png" alt="Post Image">
767  </div>
768  <div class="custom-box-content">
769    <div class="custom-box-title">Using Whisper and BERTopic to model Kurzgesagt’s videos</div>
770    <div class="custom-box-date">November 21, 2022</div>
771    <div class="custom-box-body">Which topics can we find in the videos of Kurzgesagt?</div>
772  </div>
773</div>
774
775<div class="custom-box" onclick="location.href='opensource';">
776  <div class="custom-box-image">
777    <img src="/images/posts/2022-07-11-opensource/main.png" alt="Post Image">
778  </div>
779  <div class="custom-box-content">
780    <div class="custom-box-title">6 Lessons I learned from developing Open-Source Projects</div>
781    <div class="custom-box-date">November 07, 2022</div>
782    <div class="custom-box-body">A Data Scientist’s Perspective</div>
783  </div>
784</div>
785
786<div class="custom-box" onclick="location.href='ambiguous';">
787  <div class="custom-box-image">
788    <img src="/images/posts/2022-25-04-ambiguous/main.png" alt="Post Image">
789  </div>
790  <div class="custom-box-content">
791    <div class="custom-box-title">The Ambiguity of the Data Science Profession</div>
792    <div class="custom-box-date">April 25, 2022</div>
793    <div class="custom-box-body">Finding your way among the noise</div>
794  </div>
795</div>
796
797<div class="custom-box" onclick="location.href='concept';">
798  <div class="custom-box-image">
799    <img src="/images/posts/2021-01-11-concept/logo.png" alt="Post Image">
800  </div>
801  <div class="custom-box-content">
802    <div class="custom-box-title">Topic Modeling on Images? Why not?!</div>
803    <div class="custom-box-date">November 01, 2021</div>
804    <div class="custom-box-body">But let's call it Concept Modeling instead!</div>
805  </div>
806</div>
807
808<div class="custom-box" onclick="location.href='portfolio';">
809  <div class="custom-box-image">
810    <img src="/images/posts/2021-06-10-portfolio/portfolio.jpeg" alt="Post Image">
811  </div>
812  <div class="custom-box-content">
813    <div class="custom-box-title">Creating a Data Science Portfolio</div>
814    <div class="custom-box-date">October 06, 2021</div>
815    <div class="custom-box-body">Tips and examples for building up your portfolio</div>
816  </div>
817</div>
818
819<div class="custom-box" onclick="location.href='misleading';">
820  <div class="custom-box-image">
821    <img src="/images/posts/2021-23-03-misleading/cherry.png" alt="Post Image">
822  </div>
823  <div class="custom-box-content">
824    <div class="custom-box-title">Misleading Graphs</div>
825    <div class="custom-box-date">March 23, 2021</div>
826    <div class="custom-box-body">…and how to fix them!</div>
827  </div>
828</div>
829
830<div class="custom-box" onclick="location.href='jupyter';">
831  <div class="custom-box-image">
832    <img src="/images/posts/2021-14-06-jupyter/header.png" alt="Post Image">
833  </div>
834  <div class="custom-box-content">
835    <div class="custom-box-title">Why Jupyter Notebooks aren't all that Bad!</div>
836    <div class="custom-box-date">June 14, 2021</div>
837    <div class="custom-box-body">
837And how you can supercharge them.</div>
838  </div>
839</div>
840
841<div class="custom-box" onclick="location.href='truths';">
842  <div class="custom-box-image">
843    <img src="/images/posts/2021-04-05-truths/header.jpg" alt="Post Image">
844  </div>
845  <div class="custom-box-content">
846    <div class="custom-box-title">The Truth about working as a Data Scientist</div>
847    <div class="custom-box-date">May 04, 2021</div>
848    <div class="custom-box-body">Pros and Cons of working as a Data Scientist</div>
849  </div>
850</div>
851
852<div class="custom-box" onclick="location.href='distances';">
853  <div class="custom-box-image">
854    <img src="/images/posts/2021-01-02-distances/teaser.png" alt="Post Image">
855  </div>
856  <div class="custom-box-content">
857    <div class="custom-box-title">9 Distance Measures in Data Science</div>
858    <div class="custom-box-date">February 01, 2021</div>
859    <div class="custom-box-body">The advantages and pitfalls of common distance measures.</div>
860  </div>
861</div>
862
863<div class="custom-box" onclick="location.href='bertopictutorial';">
864  <div class="custom-box-image">
865    <img src="/images/posts/2021-10-01-bertopictutorial/header.gif" alt="Post Image">
866  </div>
867  <div class="custom-box-content">
868    <div class="custom-box-title">Interactive Topic Modeling with BERTopic</div>
869    <div class="custom-box-date">January 10, 2021</div>
870    <div class="custom-box-body">An in-depth guide to topic modeling with BERTopic.</div>
871  </div>
872</div>
873
874<div class="custom-box" onclick="location.href='polyfuzz';">
875  <div class="custom-box-image">
876    <img src="/images/posts/2020-30-11-polyfuzz/header_new.png" alt="Post Image">
877  </div>
878  <div class="custom-box-content">
879    <div class="custom-box-title">String Matching with BERT, TF-IDF, and more!</div>
880    <div class="custom-box-date">November 30, 2020</div>
881    <div class="custom-box-body">Introducing PolyFuzz, a framework for fuzzy string matching.</div>
882  </div>
883</div>
884
885<div class="custom-box" onclick="location.href='keybert';">
886  <div class="custom-box-image">
887    <img src="/images/posts/2020-28-10-keybert/header.jpg" alt="Post Image">
888  </div>
889  <div class="custom-box-content">
890    <div class="custom-box-title">Keyword Extraction with BERT</div>
891    <div class="custom-box-date">October 28, 2020</div>
892    <div class="custom-box-body">A minimal method for extracting keywords and keyphrases.</div>
893  </div>
894</div>
895
896<div class="custom-box" onclick="location.href='ctfidf';">
897  <div class="custom-box-image">
898    <img src="/images/posts/2020-20-10-ctfidf/teaser.jpg" alt="Post Image">
899  </div>
900  <div class="custom-box-content">
901    <div class="custom-box-title">Creating a class-based TF-IDF with Scikit-Learn</div>
902    <div class="custom-box-date">October 06, 2020</div>
903    <div class="custom-box-body">Extracting informative words per class.</div>
904  </div>
905</div>
906
907<div class="custom-box" onclick="location.href='topicbert';">
908  <div class="custom-box-image">
909    <img src="/images/posts/2020-10-5-bertopic/logo.png" alt="Post Image">
910  </div>
911  <div class="custom-box-content">
912    <div class="custom-box-title">Topic Modeling with BERT</div>
913    <div class="custom-box-date">October 05, 2020</div>
914    <div class="custom-box-body">
914Leveraging BERT and TF-IDF to create easily interpretable topics.</div>
915  </div>
916</div>
917
918<div class="custom-box" onclick="location.href='psychologists';">
919  <div class="custom-box-image">
920    <img src="/images/posts/2020-9-18-psychologists/teaser.jpg" alt="Post Image">
921  </div>
922  <div class="custom-box-content">
923    <div class="custom-box-title">Why Psychologists can be great Data Scientists</div>
924    <div class="custom-box-date">September 18, 2020</div>
925    <div class="custom-box-body">The Intersection of Psychology and Data Science</div>
926  </div>
927</div>
928
929<div class="custom-box" onclick="location.href='monitor';">
930  <div class="custom-box-image">
931    <img src="/images/posts/2020-8-21-monitor/teaser.png" alt="Post Image">
932  </div>
933  <div class="custom-box-content">
934    <div class="custom-box-title">Monitoring your Machine Learning Model</div>
935    <div class="custom-box-date">August 21, 2020</div>
936    <div class="custom-box-body">What to look out for when deploying your ML model</div>
937  </div>
938</div>
939
940<div class="custom-box" onclick="location.href='humming';">
941  <div class="custom-box-image">
942    <img src="/images/posts/2020-6-22-humming/teaser.jpg" alt="Post Image">
943  </div>
944  <div class="custom-box-content">
945    <div class="custom-box-title">Transform your ML-model to Pytorch with Hummingbird</div>
946    <div class="custom-box-date">June 22, 2020</div>
947    <div class="custom-box-body">Accelerate your Machine Learning model by leveraging Tensors</div>
948  </div>
949</div>
950
951<div class="custom-box" onclick="location.href='unit';">
952  <div class="custom-box-image">
953    <img src="/images/posts/2020-5-18-unit/teaser.png" alt="Post Image">
954  </div>
955  <div class="custom-box-content">
956    <div class="custom-box-title">Unit Testing for Data Scientists</div>
957    <div class="custom-box-date">May 18, 2020</div>
958    <div class="custom-box-body">Using Pytest to improve the stability of your pipelines</div>
959  </div>
960</div>
961
962<div class="custom-box" onclick="location.href='transition';">
963  <div class="custom-box-image">
964    <img src="/images/posts/2020-3-30-transition/teaser.jpg" alt="Post Image">
965  </div>
966  <div class="custom-box-content">
967    <div class="custom-box-title">Tips for transitioning from Psychology to Data Science</div>
968    <div class="custom-box-date">March 30, 2020</div>
969    <div class="custom-box-body">And how you can do both.</div>
970  </div>
971</div>
972
973<div class="custom-box" onclick="location.href='bias';">
974  <div class="custom-box-image">
975    <img src="/images/posts/2020-1-31-bias/teaser.jpg" alt="Post Image">
976  </div>
977  <div class="custom-box-content">
978    <div class="custom-box-title">How to Detect Bias in AI</div>
979    <div class="custom-box-date">January 31, 2020</div>
980    <div class="custom-box-body">Detecting common (cognitive) biases in your data</div>
981  </div>
982</div>
983
984<div class="custom-box" onclick="location.href='reinforce';">
985  <div class="custom-box-image">
986    <img src="/images/posts/2020-1-7-reinforce/header.png" alt="Post Image">
987  </div>
988  <div class="custom-box-content">
989    <div class="custom-box-title">Reinforcement Learning in a few lines of code</div>
990    <div class="custom-box-date">January 7, 2020</div>
991    <div class="custom-box-body">Train SOTA RL-algorithms using Stable Baselines and Gym</div>
992  </div>
993</div>
994
995<div class="custom-box" onclick="location.href='stacking';">
996  <div class="custom-box-image">
997    <img src="/images/posts/2019-12-10-stacking/teaser.jpg" alt="Post Image">
998  </div>
999  <div class="custom-box-content">
1000    <div class="custom-box-title">Stacking made easy with Sklearn</div>
1001    <div class="custom-box-date">December 10, 2019</div>
1002    <div class="custom-box-body">Create a StackingClassifier in a few lines of code with Scikit-Learn V0.22.</div>
1003  </div>
1004</div>
1005
1006<div class="custom-box" onclick="location.href='streamlit';">
1007  <div class="custom-box-image">
1008    <img src="/images/posts/2019-11-11-streamlit/header.jpg" alt="Post Image">
1009  </div>
1010  <div class="custom-box-content">
1011    <div class="custom-box-title">Build and Deploy a Dashboard with Streamlit</div>
1012    <div class="custom-box-date">November 11, 2019</div>
1013    <div class="custom-box-body">Deploying your Streamlit application to Heroku to showcase your Data Solution</div>
1014  </div>
1015</div>
1016
1017<div class="custom-box" onclick="location.href='validate';">
1018  <div class="custom-box-image">
1019    <img src="/images/posts/2019-09-26-validate/header.jpg" alt="Post Image">
1020  </div>
1021  <div class="custom-box-content">
1022    <div class="custom-box-title">Validating your Machine Learning Model</div>
1023    <div class="custom-box-date">September 26, 2019</div>
1024    <div class="custom-box-body">Going beyond k-Fold Cross-Validation</div>
1025  </div>
1026</div>
1027
1028<div class="custom-box" onclick="location.href='deploy';">
1029  <div class="custom-box-image">
1030    <img src="/images/posts/2019-08-30-deploy/header.jpg" alt="Post Image">
1031  </div>
1032  <div class="custom-box-content">
1033    <div class="custom-box-title">How to Deploy a Machine Learning Model</div>
1034    <div class="custom-box-date">August 30, 2019</div>
1035    <div class="custom-box-body">Creating a production-ready API using FastAPI + Uvicorn</div>
1036  </div>
1037</div>
1038
1039<div class="custom-box" onclick="location.href='feature-engineering';">
1040  <div class="custom-box-image">
1041    <img src="/images/posts/2019-08-12-feature-engineering/outlier.jpg" alt="Post Image">
1042  </div>
1043  <div class="custom-box-content">
1044    <div class="custom-box-title">Tips for Advanced Feature Engineering</div>
1045    <div class="custom-box-date">April 12, 2019</div>
1046    <div class="custom-box-body">Improving an important step in ML.</div>
1047  </div>
1048</div>
1049
1050<div class="custom-box" onclick="location.href='customer';">
1051  <div class="custom-box-image">
1052    <img src="/images/posts/2019-07-30-customer/kmeans_inertia_cosine.jpeg" alt="Post Image">
1053  </div>
1054  <div class="custom-box-content">
1055    <div class="custom-box-title">Create, Visualize and Interpret Customer Segments</div>
1056    <div class="custom-box-date">July 30, 2019</div>
1057    <div class="custom-box-body">In-depth exploration of cluster analysis.</div>
1058  </div>
1059</div>
1060
1061<div class="custom-box" onclick="location.href='black-boxes';">
1062  <div class="custom-box-image">
1063    <img src="/images/posts/2019-07-11-black-boxes/header.jpg" alt="Post Image">
1064  </div>
1065  <div class="custom-box-content">
1066    <div class="custom-box-title">How to leverage Explainable Machine Learning</div>
1067    <div class="custom-box-date">July 11, 2019</div>
1068    <div class="custom-box-body">Using PDP, LIME, and SHAP to create interpretable decisions that create value for your stakeholders</div>
1069  </div>
1070</div>
1071
1072<div class="custom-box" onclick="location.href='whatsapp';">
1073  <div class="custom-box-image">
1074    <img src="/images/posts/2019-06-27-whatsapp/header.jpeg" alt="Post Image">
1075  </div>
1076  <div class="custom-box-content">
1077    <div class="custom-box-title">How to use NLP to Analyze WhatsApp Messages</div>
1078    <div class="custom-box-date">June 27, 2019</div>
1079    <div class="custom-box-body">Using NLP to analyze WhatsApp messages between my wife and I</div>
1080  </div>
1081</div>
1082
1083
1084
1085
1086
1087
1088
1089  
1090  
1091
1092
1093
1094
1095  
1096
1097
1098
1099                
1100              </article>
1101            </div>
1102          
1103          
1104<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
1104
1105        </div>
1106        
1107      </main>
1108      
1109        <footer class="md-footer">
1110  
1111  <div class="md-footer-meta md-typeset">
1112    <div class="md-footer-meta__inner md-grid">
1113      <div class="md-copyright">
1114  
1115  
1116</div>
1117      
1118        <!--
1119  Copyright (c) 2016-2024 Martin Donath <[email protected]>
1120
1121  Permission is hereby granted, free of charge, to any person obtaining a copy
1122  of this software and associated documentation files (the "Software"), to
1123  deal in the Software without restriction, including without limitation the
1124  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
1125  sell copies of the Software, and to permit persons to whom the Software is
1126  furnished to do so, subject to the following conditions:
1127
1128  The above copyright notice and this permission notice shall be included in
1129  all copies or substantial portions of the Software.
1130
1131  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1132  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1133  FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
1134  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1135  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1136  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
1137  IN THE SOFTWARE.
1138-->
1139
1140<!-- Social links -->
1141<div class="md-social">
1142  
1143
1144    <!-- Automatically set rel=me for Mastodon -->
1145    
1146    
1147
1148    <!-- Compute title and render link -->
1149    
1150    
1151      
1152      
1153    
1154    <a
1155      href="https://github.com/MaartenGr/"
1156      target="_blank" rel="noopener"
1157      title="GitHub"
1158      class="md-social__link"
1159    >
1160    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
1161    </a>
1162    <a
1163      href="https://github.com/MaartenGr/"
1164      target="_blank" rel="noopener"
1165      title="GitHub"
1166      class="md-social__icons"
1167    >
1168    GitHub
1169    </a>
1170  
1171
1172    <!-- Automatically set rel=me for Mastodon -->
1173    
1174    
1175
1176    <!-- Compute title and render link -->
1177    
1178    
1179      
1180      
1181    
1182    <a
1183      href="https://www.linkedin.com/in/mgrootendorst/"
1184      target="_blank" rel="noopener"
1185      title="LinkedIn"
1186      class="md-social__link"
1187    >
1188    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3M135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5m282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9z"/></svg>
1189    </a>
1190    <a
1191      href="https://www.linkedin.com/in/mgrootendorst/"
1192      target="_blank" rel="noopener"
1193      title="LinkedIn"
1194      class="md-social__icons"
1195    >
1196    LinkedIn
1197    </a>
1198  
1199
1200    <!-- Automatically set rel=me for Mastodon -->
1201    
1202    
1203
1204    <!-- Compute title and render link -->
1205    
1206    
1207      
1208      
1209    
1210    <a
1211      href="https://twitter.com/MaartenGr"
1212      target="_blank" rel="noopener"
1213      title="Twitter"
1214      class="md-social__link"
1215    >
1216    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253"/></svg>
1217    </a>
1218    <a
1219      href="https://twitter.com/MaartenGr"
1220      target="_blank" rel="noopener"
1221      title="Twitter"
1222      class="md-social__icons"
1223    >
1224    Twitter
1225    </a>
1226  
1227
1228    <!-- Automatically set rel=me for Mastodon -->
1229    
1230    
1231
1232    <!-- Compute title and render link -->
1233    
1234    
1235      
1236      
1237    
1238    <a
1239      href="https://newsletter.maartengrootendorst.com"
1240      target="_blank" rel="noopener"
1241      title="Newsletter"
1242      class="md-social__link"
1243    >
1244    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M96 96c0-35.3 28.7-64 64-64h288c35.3 0 64 28.7 64 64v320c0 35.3-28.7 64-64 64H80c-44.2 0-80-35.8-80-80V128c0-17.7 14.3-32 32-32s32 14.3 32 32v272c0 8.8 7.2 16 16 16s16-
12447.2 16-16zm64 24v80c0 13.3 10.7 24 24 24h112c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24H184c-13.3 0-24 10.7-24 24m208-8c0 8.8 7.2 16 16 16h48c8.8 0 16-7.2 16-16s-7.2-16-16-16h-48c-8.8 0-16 7.2-16 16m0 96c0 8.8 7.2 16 16 16h48c8.8 0 16-7.2 16-16s-7.2-16-16-16h-48c-8.8 0-16 7.2-16 16m-208 96c0 8.8 7.2 16 16 16h256c8.8 0 16-7.2 16-16s-7.2-16-16-16H176c-8.8 0-16 7.2-16 16m0 96c0 8.8 7.2 16 16 16h256c8.8 0 16-7.2 16-16s-7.2-16-16-16H176c-8.8 0-16 7.2-16 16"/></svg>
1245    </a>
1246    <a
1247      href="https://newsletter.maartengrootendorst.com"
1248      target="_blank" rel="noopener"
1249      title="Newsletter"
1250      class="md-social__icons"
1251    >
1252    Newsletter
1253    </a>
1254  
1255
1256    <!-- Automatically set rel=me for Mastodon -->
1257    
1258    
1259
1260    <!-- Compute title and render link -->
1261    
1262    
1263      
1264      
1265    
1266    <a
1267      href="https://www.youtube.com/@MaartenGrootendorst"
1268      target="_blank" rel="noopener"
1269      title="YouTube"
1270      class="md-social__link"
1271    >
1272    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305m-317.51 213.508V175.185l142.739 81.205z"/></svg>
1273    </a>
1274    <a
1275      href="https://www.youtube.com/@MaartenGrootendorst"
1276      target="_blank" rel="noopener"
1277      title="YouTube"
1278      class="md-social__icons"
1279    >
1280    YouTube
1281    </a>
1282  
1283
1284    <!-- Automatically set rel=me for Mastodon -->
1285    
1286    
1287
1288    <!-- Compute title and render link -->
1289    
1290    
1291      
1292      
1293    
1294    <a
1295      href="https://scholar.google.nl/citations?user=Q-zH_GwAAAAJ&hl=nl"
1296      target="_blank" rel="noopener"
1297      title="Scholar"
1298      class="md-social__link"
1299    >
1300    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M390.9 298.5s0 .1.1.1c9.2 19.4 14.4 41.1 14.4 64C405.3 445.1 338.5 512 256 512s-149.3-66.9-149.3-149.3c0-22.9 5.2-44.6 14.4-64 1.7-3.6 3.6-7.2 5.6-10.7q6.6-11.4 15-21.3c27.4-32.6 68.5-53.3 114.4-53.3 33.6 0 64.6 11.1 89.6 29.9 9.1 6.9 17.4 14.7 24.8 23.5 5.6 6.6 10.6 13.8 15 21.3 2 3.4 3.8 7 5.5 10.5zm26.4-18.8c-30.1-58.4-91-98.4-161.3-98.4s-131.2 40-161.3 98.4L0 202.7 256 0l256 202.7-94.7 77.1z"/></svg>
1301    </a>
1302    <a
1303      href="https://scholar.google.nl/citations?user=Q-zH_GwAAAAJ&hl=nl"
1304      target="_blank" rel="noopener"
1305      title="Scholar"
1306      class="md-social__icons"
1307    >
1308    Scholar
1309    </a>
1310  
1311</div>
1312      
1313    </div>
1314  </div>
1315</footer>
1316      
1317    </div>
1318    <div class="md-dialog" data-md-component="dialog">
1319      <div class="md-dialog__inner md-typeset"></div>
1320    </div>
1321    
1322    
1323    
1324      
1325      
1325<script id="__config" type="application/json">{"base": "..", "features": ["navigation.tabs", "navigation.instant"], "search": "../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
1325
1326    
1327    
1328      
1328<script src="../assets/javascripts/bundle.56ea9cef.min.js"></script>
1328
1329      
1330    
1331  </body>
1332</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.