Oleg Ponomaryov
Oferta, która wygrała- Zlecenia 16
- Ocena -
- Ranking 609
Budżet: 2500 RUB Termin: 3 dni
Zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię, zrobię
Oferty ukryte
Aktualnie brak ofert
-
Maksim Ivanchenko 12 czerwca 2020Здравствуйте! В Вашей задаче есть тонкости, которые могут существенно улучшить результат. Пишу так, поскольку занял в своё время неплохое место на Kaggle и сравнил их задачу с Вашей, у Вас данные могут значительно повлиять на обучение и результат будет не такой радужный. Простейшая сеть, которую хотите применить, здесь может работать не идеально, да и только сети может не хватить для нормального обучения с процентом более 99 на тесте, а не на валидации. К сожалению, на C# не пишу, делал на Python. Но правильное алгоритмическое построение можно применить и на другом языке. Если нужна будет консультация, или будет другая работа с нейросетями - пишите в ЛС.
С уважением.
-
Oleg Ponomaryov 12 czerwca 2020Здравствуйте,
Библиотеки (правда, неофициальные) по интеграции с TensorFlow для C# есть, так что завестисть должно. Можно ещё, кстати, завернуть модель TensorFlow в контейнер Docker и работать с ней через REST API вообще из любого языка, если вдруг так вам удобнее.
На датасете из статьи, которую вы прикрепили, можно получить 95% точности даже простой логистической регрессией, у вас датасет посложнее (наложенные линии и меньше картинок). Точность > 90% не слишком высока и выглядит реалистичной, но надо пробовать.
Есть несколько вопросов:
1) Почему в приложенном архиве в Train всего 2000 картинок, хотя есть ещё 8000? Для обучения лучше ведь использовать бОльшую часть датасета.
2) Использовать планируете только на CPU или с GPU ускорением?
3) Не рассматриваете препроцессинг картинок перед сеткой? Мне кажется здесь можно было бы относительно простым алгоритмом попробовать поудалять наложенные линии и, вероятно, на получившихся изображениях сеть работала бы лучше.
-
Sanya Tor
13 czerwca 2020
1 - Там две папки Data и train. Распределены на 80% и 20%. Ну это ведь стандартный набор для обучения не так ли?)
2 - только CPU
3 - можно было бы и почистить, не критично. Но это тогда должен делать я, а на вход обученной сети уже очищенные картинки подавать.
Это не рабочий пример, у меня этот пример рабочий реализован методом:
https://m.habr.com/ru/post/144881/
--------------------------
Я лишь хочу обучить эти цифры и понять как всё это запустить на c# и работать с tensorflow. Можно сказать это только начало. Это самый простой пример для реализации.
В общем попробовав на c# я могу запустить обученную модель с расширением *.pb
Но, из h5 иэто легко переконвертируется в *.pb
-
Oleg Ponomaryov 13 czerwca 2020"Ну это ведь стандартный набор для обучения не так ли?)"
Ну так train - это же как раз обучение, именно в нём должно быть 80%, а не 20%, то есть путаница с названиями вышла. (Вообще, делят даже на 3 части - обучение, валидация и тестирование, но если вам пока не принципиально выжимать из модели максимальную точность и нужно просто освоить работу с ней из шарпа, то без валидации можно обойтись).
"только CPU"
Это хорошо, меньше потенциальных проблем со сторонними библиотеками под шарп
"можно было бы и почистить, не критично. Но это тогда должен делать я, а на вход обученной сети уже очищенные картинки подавать."
Да, алгоритмом нужно будет сначала преобразовать имеющийся датасет, чтобы модель обучалась на том же, что будет распознавать при использовании, а потом обрабатывать ним все изображения перед распознаванием. То есть можно делать алгоритм сразу на шарпе, чтобы потом вы могли его у себя в программах в месте с моделью использовать. Но, опять же, если вам пока не нужна максимальная точность, то это можно оставить на потом, вменяемую точность, вероятно, удастся получить и без этого.
"Это не рабочий пример, у меня этот пример рабочий реализован методом:"
Не совсем понял, о каком нерабочем примере речь? И в статье с хабра там совсем простая по современным меркам самописная сеть, вы сейчас её на этом датасете используете? Тогда, если не секрет, какую точность выдаёт?
"В общем попробовав на c# я могу запустить обученную модель с расширением *.pb
Но, из h5 иэто легко переконвертируется в *.pb"
То есть модели из *.pb файлов вы уже разобрались как использовать из шарпа или я что-то не так понял?
-
Sanya Tor
14 czerwca 2020
1 - Давайте пока без очистки попробуем на том что есть. Тут не сильно зашумленные изображения.
2 - моя сеть выдает гдето 80%. Да это простая сеть, вот я и хочу перейти на tensorflow. поэтому и помощи прошу здесь.
3 - Да мне удалось запустить *.pb на шарпе.
-
Sanya Tor
14 czerwca 2020
А с названиями папок да, вышла путаница по неопытности. 80% - тренировочная, и 20% валидация
-
Oleg Ponomaryov 14 czerwca 2020"Да мне удалось запустить *.pb на шарпе"
Тогда всё, что вам нужно, получается, это *.pb файл модели, ну и скрипт для её обучения и сохранения? Реализация Keras в TensorFlow поддерживает на выбор сохрание и в *.h5, и в *.pb, так что даже никакой конвертации делать не нужно.
-
Maksim Ivanchenko 13 czerwca 2020Олег, что-то мне подсказывает, что там алгоритм удалением прямых линий не стоит ограничивать, это только для начала такой датасет. Но вообще, конечно лучше чтобы заказчик определился, вопросы не только те, которые задаёте, есть, всё надо обсуждать. А точность обучения можно думаю заметно более 90 % получить и другими методами, работать даже лучше будет.
Aktualne zlecenia dla freelancerów w kategorii C#
Szukamy doświadczonego dewelopera Unity, który pomoże zakończyć rozwój gry. O grze: Gatunek: symulator farmy. Gra jest już rozwijana na Unity. Początkowo była tworzona na urządzenia mobilne, ale później podjęto decyzję o wydaniu jej na Steam (PC). Co należy zrobić: Ukończyć grę zgodnie z gotowym dokumentem technicznym. Dostosować istniejącą funkcjonalność do PC i Steam. Wdrożyć już zaplanowane mechaniki i interfejs. Co oferujemy: Szczegółowy dokument techniczny. Wszystkie niezbędne materiały (modele, grafika, obiekty itp.). Zdjęcia, filmy, zrzuty ekranu oraz nagrania z przejścia oryginalnej gry. Gotowy plan realizacji. Odtwarzamy grę, która z powodzeniem działała ponad 10 lat temu, więc nie trzeba nic wymyślać ani projektować od zera. Wszystkie mechaniki, interfejs i logika są już określone — należy je jakościowo zrealizować w Unity. Aby zapoznać się z projektem, dodajemy link do jednego z przeglądów gry: Wstaw link tutaj. Wymagania: Doświadczenie w pracy z Unity. Doświadczenie w rozwijaniu lub dostosowywaniu gier na PC/Steam będzie atutem. Umiejętność pracy według gotowego dokumentu technicznego. W odpowiedzi prosimy o podanie: przykładów swoich prac; doświadczenia w pracy z Unity; orientacyjnej stawki godzinowej lub kosztu wykonania. Jeden z przeglądów wideo: https://www.youtube.com/watch?v=5_wKoX7zRc0