Wpis z mikrobloga

Mirki mam pomysł na prosty skrypt w #python ale nie wiem jak się do tego zabrać. Chciałbym wykorzystać jakąś sieć neuronową (albo coś w tym stylu) do kategoryzowania przelewów bankowych.

Prowadzę budżet domowy i bardzo by mi to ułatwiło spisywanie wydatków. Mam dostęp do sporej ilości przychodów/wydatków i wszystkie są w jakiś sposób skategoryzowane. Chciałbym żeby skrypt proponował kategorię przelewu w oparciu o historię. Coś tam z programowania wiem ale nie bardzo wiem czym to ugryźć

Jakieś sugestie?
#programowanie #siecineuronowe
  • 10
@przepyszna_frytka napisalem że coś tam wiem, po prostu nie jestem zawodowym devem ;)
Dane mam w postaci plików csv i modyfikuje je przy użyciu pandas i numpy. Myślałem że użyje coś ze scikit - jeśli się nie mylę to są tam jakieś narzędzia do NLP a to chyba się przyda
@Bogdan191: raczej nie masz takiej ilości danych by wytrenować. Dlaczego tworzyć koło na nowo jeśli wiele banków ma już wbudowane kategoryzacje? Podpowiem jeszcze, że jest to tam oparte głównie na regexach i w jakimś stopniu NLP :) no i oczywiście ogromnej ilości danych
@cohontes @ProfesorBigos
Tak sobie myślę że najprościej byłoby porównać opis przelewu z opisami historycznymi. Załóżmy że porównałbym stringa z listą stringów i szukał który historycznie był najbardziej podobny. Jak do czegoś takiego podejść?
@Bogdan191 no jak chcesz analizowac tekst to NLP i pewnie bys musial znalezc slowa kluczowe, ktore wskazuja na dana kategorie, a pozniej przypisywac do danej kategorii przelewy na podstawie tego

no tez moglbys popatrzec na jakies inne dane, ktore masz w .csv np jesli przelewy z kategorii "Zakupy" wykonujesz zawsze miedzy 1700, a 2000 to wtedy godzina wykonania przelewu moglaby byc dla modelu przydatna informacja
@Bogdan191: chcesz rozwiązac problem klasyfikacji, czyli danym wejściowym przypisywać labelkę. Masz jakiś zbiór oznaczony, więc jakiś punkt startowy. Przy pracy z tekstem musisz go najpierw w jakiś sposób zamienić na wektor liczb (tokenizacja, itp.)
Zobacz sobie tutaj: https://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html
Tam masz przykład klasyfikatora na tekstach z gazet i przypisania im odpowiednich kategorii.
U siebie do treningu możesz oprócz samych opisów wykorzystać kwoty, daty, czy inne dane, które w tej CSV masz. Oczywiście,
@Bogdan191: nie za bardzo wiem jakie kategoryzowanie masz na myśli, bo jest wpół do drugiej i nie chce mi się za bardzo czytać komentarzy wyżej, ale wydaje mi się, że mógłbyś napisać jakiś banalny algorytm a la łańcuchy Markowa - zliczasz sobie na przykład, że 90% przelewów na dany numer konta to rachunki za prąd, potem tworzysz sobie z tego wszystkiego macierz, gdzie przechowujesz dane w stylu:


.......rachunki zakupy
nr konta