ML - stary kod w książkach

ML - stary kod w książkach
RequiredNickname
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 651
0

Hej mam pytanie związane z przerabianiem kilkuletnich książek o tematyce uczenia maszynowego.
Na codzień jestem backendowcem (głównie ekosystem jvm) który wpadł do projektu gdzie gros czasu poświęca się na pythona i integrację z modelami ml stąd chciałem nieco więcej liznąć tematu.

Kupiłem ebooka na helionie:
https://helion.pl/ksiazki/uczenie-maszynowe-w-pythonie-leksykon-kieszonkowy-matt-harrison,umpylk.htm#section6_shift

i do niego załączone są źródła w postaci plików ipynb:
https://helion.pl/pobierz-przyklady/umpylk
Znalazłem też githuba autora:
https://github.com/mattharrison/ml_pocket_reference

W książce autor wymienia biblioteki i ich wersje na jakich pracuje choć mam wrażenie, że nie wszystkie. Nie jest również wskazana wersja pythona (drogą dedukcji doszedłem, że to prawdopodobnie 3.7) i próbowałem zsetupować sobie środowisko aby odpalić kod w tych notebookach.

Korzystam z maca na procku M2 pro toteż okazało się, że nie ma nawet pythona 3.7 + pewnie tych starych bibliotek więc na pececcie na wirtualce postawiłem ubuntu i tam konfiguruje interpreter pythona 3.7 (przez conde).

I tu zaczyna się zagwozdka: do źródeł nie ma dodanego żadnego pliku definiującego potrzebne biblioteki i ich wersje to też po kolei próbowałem sobie instalować te wymienione w książce w tych wersjach c otrzeba ale co rusz trafiałem albo na info, że libka w danej wersji wymaga pythona 2.7 albo że jakieś inne zależności są niespełnione np:

Kopiuj
(testowe2) maczugaherkulesa@myhostname:~$ pip install sklearn==0.21.1
ERROR: Could not find a version that satisfies the requirement sklearn==0.21.1 (from versions: 0.0, 0.0.post1, 0.0.post2, 0.0.post4, 0.0.post5, 0.0.post7, 0.0.post9, 0.0.post10, 0.0.post11, 0.0.post12)
ERROR: No matching distribution found for sklearn==0.21.1

I zastanawiam się czy ja źle do tego wszystkiego podchodzę czy po prostu gdy tego typu książki bazują na starym kodzie (ten ma koło 6 lat) to naturalne jest, że jest problem z odpaleniem tego i z marszu powinienem poszukać nowszych publikacji??

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5027
0

Minęło 6 lat, to może zainstaluj najnowsze wersje bibliotek z nowym Pythonem, powinno działać, ja tak robię; i dokup jednak coś na czasie. To może zostać, to jest reference, ale coś do nauki jeszcze.

CP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 70
0

Najpierw trzeba wzory wyprowadzić co rozwiązujesz za problem?

Jak korzystasz z pythona to polecam ci poetry menadżer pakietów, robisz sobie poetry init i nowe środowisko wirtualne masz i nie ma kolizji między wersjami pakietów. Poetry shell żeby odpalić dane środowisko.
Jak coś to pisz pomogę ci dalej.
Ogólnie mogę ci ten algorytm wytłumaczyć, ale nie wiem co rozwiązujesz ja studiowałem ponad 8-10 lat deep learning i uczenie maszynowe.
SkLearn czyli nie uczysz się algorytmu jak działą tylko korzystasz z gotowców.

RequiredNickname
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 651
0
lion137 napisał(a):

Minęło 6 lat, to może zainstaluj najnowsze wersje bibliotek z nowym Pythonem, powinno działać, ja tak robię; i dokup jednak coś na czasie. To może zostać, to jest reference, ale coś do nauki jeszcze.

To nie takie proste bo już się nadziałem na to, że w nowszych wersjach libek zmieniał się syntax przez co kod z książki się nie odpalał dlatego mimo wszystko chciałem się trzymać wersji na których bazował autor.

ChłopPrzyszłyRycerz napisał(a):

Najpierw trzeba wzory wyprowadzić co rozwiązujesz za problem?

Jak korzystasz z pythona to polecam ci poetry menadżer pakietów, robisz sobie poetry init i nowe środowisko wirtualne masz i nie ma kolizji między wersjami pakietów. Poetry shell żeby odpalić dane środowisko.
Jak coś to pisz pomogę ci dalej.
Ogólnie mogę ci ten algorytm wytłumaczyć, ale nie wiem co rozwiązujesz ja studiowałem ponad 8-10 lat deep learning i uczenie maszynowe.
SkLearn czyli nie uczysz się algorytmu jak działą tylko korzystasz z gotowców.

Thx ale raczej nie zamierzam schodzić aż tak głęboko ;)

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5027
0

To musisz instalować te same wersje i patrzeć na konflikty, acha, nie instalujesz, sklearn tylko, scikit-learn.

CP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 70
0

Jest w necie free wersja tej książki napisałeś specjalnie, że kupiłęś, żeby nikt cię nie oskrażał o czytanie bez zezwolenia.
Mnie się nie da oszukać.

Charyzmą też udajesz dobrego i niewinnego faceta. Coś mi się nie podoba.

RequiredNickname
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 651
0
lion137 napisał(a):

To musisz instalować te same wersje i patrzeć na konflikty, acha, nie instalujesz, sklearn tylko, scikit-learn.

No przecież pisałem że właśnie tak robiłem tylko była to walka z wiatrakami dlatego zwatpiłem czy to aby na pewno poprawna ścieżka ;)

ChłopPrzyszłyRycerz napisał(a):

Jest w necie free wersja tej książki napisałeś specjalnie, że kupiłęś, żeby nikt cię nie oskrażał o czytanie bez zezwolenia.
Mnie się nie da oszukać.

Charyzmą też udajesz dobrego i niewinnego faceta. Coś mi się nie podoba.

Nie rozumiem :)

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5027
0

Jaka walka z wiatrakami, pokaż, jakie mają być te wersje pakietów i jakie miałeś błędy.
A to pip install sklearn==0.21.1 nie instalujesz sklearn tylko scikit-learn.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.