mltype-Typing practice for programmører

for et par måneder siden besluttede jeg at lære touch typing! Jeg ved hvad du tænker… ” Er du en hurtigere maskinskriver end før, og var al den smerte det værd?”Jeg vil helt sikkert sige ja og ja. Imidlertid, internettet er fuld af lignende før og efter vidnesbyrd, og jeg vil ikke skrive endnu en.

hvad jeg vil tale om er, at jeg virkelig var overrasket over, hvor få ressourcer der er til at øve touch-typing med programmeringssprog. Efter en hurtig google-søgning vil du sandsynligvis opdage følgende sider:

mens ovenstående hjemmesider har flere stærke punkter, lad mig påpege nogle af deres mangler

  • manglende variabilitet og overraskelseselement
  • Manuelt valg af kildefiler og tilsvarende linjer
  • ikke tilpasses
  • ikke gratis (typing.com)
  • ikke nørdet nok — ville det ikke være muligt at gøre det i terminalen?

af de ovennævnte grunde besluttede jeg at give det et skud og skrive mit eget skrivepraksisprogram: mltype.

Hvad gør den?

kort sagt, det er et kommandolinjeværktøj (skrevet i Python). Det bruger neurale netværk til at generere tekst, der ligner et programmeringssprog (eller normalt sprog). Derudover giver det ikke-maskinindlærings funktionaliteter som at læse tekst fra en fil eller standardinput.

hvis du spekulerer på, hvilken slags “neuralt netværk” der ligger bag det, vil jeg mere end opfordre dig til at (gen)læse den urimelige effektivitet af tilbagevendende neurale netværk af Andrej Karpathy. mltype gør mere eller mindre det samme i baggrunden. For at være præcis er der en sprogmodel på karakterniveau. Det spytter en sandsynlighedsfordeling over det næste tegn givet tidligere tegn. Vigtigst er det, at det forsøger at skjule al kompleksitet og kedelige detaljer om træning og indledning fra brugeren. Generering af tekst fra en eksisterende model og træning af en ny model kan begge udføres i en enkelt kommando.

nedenfor er nogle eksempler på forskellige programmeringssprog. Alle de modeller, der genererede dem og mange andre pretrained modeller kan hentes (se README.md på github).

eksempler

C++

Python

vil du prøve det?

hvis du vil vide mere og prøve det selv, kan du besøge nedenstående links!

  • github: https://github.com/jankrepl/mltype
  • docs: https://mltype.readthedocs.io/en/latest/



+