" * czasami wymiennie używać będziemy terminów klasa oraz etykieta/tag\n",
" * $L^*$ — zbiór wszystkich ciągów etykiet\n",
"* $q$ — zapytanie\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Rekomendacje książkowe\n",
"\n",
"(Bez aparatu matematycznego! Na przykład do polecenia laikowi.)\n",
"\n",
"* Stanisław Lem, _Summa technologiae_, Wydawnictwo Literackie, 1964\n",
" * może zacząć od spojrzenia, jak kiedyś sobie to wyobrażano?\n",
"* Pedro Domingos, _Naczelny Algorytm. Jak jego odkrycie zmieni nasz świat_, Helion, 2016\n",
" * książka się trochę zestarzała, czas pokazał, że autor nie do końca trafnie przewidział, jak się dalej potoczą losy uczenia maszynowego (sieci neuronowe zdecydowanie wygrały)\n",
" * ... ale bardzo ciekawe spostrzeżenia, dobrze się czyta\n",
"* Kai-Fu Lee, _Inteligencja sztuczna, rewolucja prawdziwa_, Media Rodzina, 2019.\n",
" * ciekawe w kontekście ekonomicznym, szczególnie Chin\n",
" \n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Podstawowa idea\n",
"\n",
"**Uczenie maszynowe to odwrotność programowania** (trochę tak jak $\\sqrt{...}$ jest odwrotnością $^2$)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![Uczenie maszynowe a programowanie](./uczenie-a-programowanie.png)\n",
"\n",
"(Na razie trochę upraszczamy - odnosimy się tylko do uczenia nienadzorowanego.)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 5 epok uczenia maszynowego\n",
"\n",
"### I. Systemy regułowe\n",
"\n",
"Systemy regułowe, wyrażenia regularne, systemy eksperckie, programowanie logiczne (Prolog)\n",
"Zbiór danych (_data set_) - w uczeniu nadzorowanym po prostu zestaw danych wejściowych i oczekiwanych danych wyjściowych $(X, Y)$.\n",
"Wyzwanie uczenia maszynowego (_ML challenge_) - ustandaryzowany zbiór danych, podzielony na zbiór uczący i zbiory testowe, z określoną metryką ewaluacji.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Zob. listę na stronie https://gonito.net/list-challenges"
"# zbiór uczący, oczywiście z oczekiwanym wyjściem\n",
"! ls train"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"expected.tsv in.tsv meta.tsv\n"
]
}
],
"source": [
"# zbiór deweloperski też ma\n",
"! ls dev-0"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"in.tsv\n"
]
}
],
"source": [
"# a ostateczny zbiór testowy - nie ma (plik jest dostępny tylko dla ewaluatora)\n",
"! ls test-A"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1\t1) Amor omnia vincit!!!!- miłość wszystko zwycięży!!!! 2) każdy człowiek jest jak kwiat...Więdnieje bez miłości *) 3) Szukaj mnie cierpliwie dzień po dniu... 4) BĄDű DLA INNYCH SŁONECZNYM ZEGAREM, ODMIERZAJ TYLKO SŁONECZNE GODZINY 5) \\\"... Momenty ze ze snu wyrwana; zas nie wyspana...\\\" 6) ULEWA JEST MA SIOSTRA , STRUMIEN BRATEM 7) KażdaMiłośMusiPrzejścPrzezPróbęWtedyOkażeSięJejPrawdziwaWartość... 8) Zaplątana w pajęczynę snów.. Lepkie nici marzeń.. Utkane przez noc.. 9) Podobno ludzi lubimy za ich zalety, a kochamy za ich wady.... 10) Pozwól mi pozostać... 11) KIEDYŚ-to juz przeszeszłosc...Trzeba przyzwyczajic sie do-DZISIAJ;/ 12) To MoJa JeSt..NiEdOrOsLa MiLoSć..UpArcIe WiEc...BeDe BrOnIć JeJ... 13) Jeszcze jeden krok , a zgine.. 14) *CoRazBl!ŻejŚw!ęTa* NapisałamListDoŚw.Mikołaja ProszącOTwojąMiłość! 15) JeStEm W TeScO Na UrOdZiNaCh <EMOTICON> <EMOTICON> <EMOTICON> 16) Facet jest jak plemnik,tylko jeden na milion staje się człowiekiem! 17) Jeżeli ktoś komuś coś, ewentualnie nikt nikomu nic, to myślę iż wątpię 18) Samotna wśród ludzi którzy myślą...ONA NIGDY NIE JEST SAMA ! 19) PotrzebaCałegoŻycia, AbyZapomniecOKimś, KtoByłDla NasNaprawdeWażny :&# 20) NieŻałujTegoCoZrobiłeś,KaraPrzyjdzieZCzasem;TymczasemUczSięDobroci...\n",
"0\t@ Rodzyn \"Ech szkoda, że to wersja komercyjna <EMOTICON>\" A jaki to problem załatać jądro np. za pomocą RTAI lub skorzystać z preempt_RT? Tylko co ci po tym? @ Mily \"Ja chetnie bym przetestowal ten system. Mysle, ze pomimo ze jest on dedykowany do innych zastosowan, bardzo dobrze sprawowal by sie jako system desktopowy. Mam tu na mysli gwarantowane czsy odpowiedzi (muzyka, film, reakcja interface'u graficznego na dzialania uzytkownika).\" To nie działa w ten sposób. Zagadnienia systemów czasu rzeczywistego są o wiele bardziej skomplikowane. Zazwyczaj tylko krytyczne aplikacje działają w czasie rzeczywistym. Gdybyś nadał priorytet czasu rzeczywistego wszystkim aplikacjom \"zwykłego użytkownika\" walczyłyby między sobą o zasoby tak samo jak teraz. O wiele lepiej byłoby gdyby w końcu zaczęto tworzyć aplikacje również z myślą o oszczędności zasobów. @ Macius \"8 rdzeni rowna sie 1system, 2desktop, 3muza,4film, 5net, 6 7 8 inne pierdoly ktore dzialaja w czasie rzeczywistym to jest cos.\" Wybacz, ale uważam to za piekielne marnotrawienie zasobów. Chcesz żeby jeden rdzeń obsługiwał np. tylko muzykę? Przecież to będzie jakieś 5% zasobów współczesnego rdzenia. Wszystko działałoby szybciej gdybyśmy większą uwagę przywiązywali do szybkości działania aplikacji niż jej wizualnych bajerów.\n",
"0\tCzy u Was też taka brzydka pogoda, która sprawia, że nic się nie chce?<EMOTICON> ale ja na szczęście jakoś chyba na przekór tej jesieni zaczęłam wyplatać...\n",
"0\tPo spektaklu w teatrze,,KOMEDIA''wracałam obok tej pani samochodem i uśmiechałam się ,ale pani jest faktycznie sztuczna i sztywna....zagrała ,wyszła i ma gdzieś sympatię ludzi...ja już jej nie mam dla tej pani<EMOTICON>\n",
"1\ta wtedy i ekskomunika niestraszna <EMOTICON>\n",