Версия на португальском языке aqui.

В этом проекте мы выясним, достаточно ли наиболее распространенных процессов и методов машинного обучения, чтобы определить, являются ли из 898 покемонов 8-го поколения игр съедобными.

В мире покемонов полно существ и уж точно не все они пойманы и обучены для боя. Некоторые из них остаются дикими, становятся пожарными или даже фигурами отцов для 10-летних главных героев. Но так ли это в полной мере его использование во вселенной покемонов?

Покемоны в основном состоят из мяса или растений, если не из камня, металла, грязи или мусора. Отделяя овец от козлов, можно предположить, что как есть только покемоны и люди, и не все люди в этом мире веганы, так и покемоны из мяса используются как домашний скот, а сделанные из растений как сельскохозяйственные культуры, так или иначе другой. Поскольку в этой вселенной есть потребность превращать покемонов в пищу, мы можем классифицировать их как съедобных или несъедобных.

Прежде чем мы определим, какие покемоны находятся под обеденным столом в ожидании еды, а какие на столе с яблоком во рту, можем ли мы не говорить об этичности поедания покемонов? Если взять яйцо из сумки Ченси и поджарить его, пока она смотрит, какой в ​​этом смысл? Этот проект, безусловно, не хочет приближаться к решению этой проблемы, хотя вкус этих яиц широко обсуждается в различных записях Pokédex. В лучшем случае мы рассмотрим, считают ли люди в мире покемонов приемлемым в регионе употребление в пищу определенных покемонов, как в случае с Farfetch'd, которые в Галаре не считаются деликатесами, в отличие от остального мира, который любит Farfetch. d грудь, приготовленная из лука-порея, который он носит.

Чтобы провести анализ глубокого обучения, нам нужен вектор с соответствующими данными из различных частей основных игр франшизы Pokémon, таких как покедекс и линии в аниме и манге серии.

Говоря о Pokédex, используя его записи, мы можем проанализировать, служат ли одни покемоны пищей для людей и других покемонов. Для исследования этих записей мы проведем очистку данных от Bulbapedia, мощной вики о карманных монстрах. Подробности этого парсинга — здесь.

После надлежащей обработки этих данных, видимых здесь, мы проведем анализ настроений с использованием обработки естественного языка (NLP), где рассматриваемое чувство не заходит так далеко, чтобы сказать, можно ли потреблять плавник до такой степени, что покемон является жертвой перелова. (Записи Sharpedo в Pokémon Moon), но этого достаточно, чтобы сказать, пригоден ли покемон для употребления.

Короче говоря, для того, чтобы вещество было съедобным, необходимо учитывать несколько факторов. Во-первых, указанное вещество не может быть токсичным или вредным. С другой стороны, он должен удовлетворять потребности в питании (обеспечивая организм энергией), социальные (принадлежность к культуре) и психологические потребности (его потребление обеспечивает удовлетворение), так как некоторые вещества могут быть питательными, но отрицательными в социальном или психологическом отношении. уровень. Там у нас есть первые четыре координаты вектора.

С помощью НЛП мы будем извлекать ключевые слова из каждого набора записей о покемонах, давать оценку каждому из этих слов, используя метод частоты термина, обратного частоте в документах, TF-IDF.

После создания облаков слов для каждого покемона мы вручную составим список терминов, относящихся к каждому фактору (токсичности, питательности, культуре и психологии), отметим, что генерирует TF-IDF, и добавим его, сформировав таким образом четыре индекса съедобности, которые определяют, сколько Pokédex говорит о факторах съедобности. Подробности этой обработки — здесь.

Но одного этого недостаточно, чтобы определить, какой покемон покинет ваш компьютер и отправится на сковороду. Нам нужно больше координат для вектора. И ключ к этой информации исходит от самой Ченси, откладывающей такие вкусные яйца, что их жадно пожирают даже люди, потерявшие аппетит (Покемон Изумруд). Покемоны яйцекладущие, все без исключения. И они разделены на 15 четко определенных групп, которые определяют внешний вид и биологию каждого покемона в каждой группе. С этой классификацией у нас есть еще две переменные для нашего вектора, поскольку у покемонов есть одна или две группы яиц.

Мы также собираемся включить технические данные игры. База дружбы, переменная, которая определяет, насколько дружелюбен покемон к своему тренеру, база HP, которая коррелирует с количеством белка в покемоне и его весом, показатель того, что покемон может производить много или мало еды, и, наконец, не в последнюю очередь, типы покемонов.

Таким образом, наш вектор будет иметь 11 координат и будет формироваться следующим образом:

(Индекс токсичности, Индекс питательности, Индекс культуры, Индекс психологии, Яичная группа 1, Яичная группа 2, База дружбы, База HP, Вес, Тип 1, Тип 2)

Теперь у нас есть все, чтобы машина могла творить чудеса! Мы будем использовать API Keras с платформы Tensorflow.

Чтобы машина могла учиться, ей нужно знать некоторых покемонов, о которых мы уже знаем, съедобны они или нет. Статьи «Еда для покемонов» и «15 подтвержденных покемонов, которых едят люди» содержат ценную информацию об этом квесте. Список съедобных продуктов взят непосредственно из этих статей, а также до и после эволюции. Для составления списка несъедобных покемонов я выбрал заведомо неорганических покемонов, таких как камни и призраки, сверхразумные покемоны и покемоны, подтвержденные статьями выше как несъедобные.

Итак, у нас есть следующие списки:

Выводы

Шакл, Крабби, Кинглер, Аррокуда, Барраскевда, Габите, Гарчомп, Эпплтун, Флаппл, Слоупок, Ченси, Блисси, Фарфетч'д, Черуби, Черрим, Карванья, Шарпедо, Крабравлер, Крабоминейбл, Марип, Флаффи, Амфарос, Клаунчер, Кроудаунт, Баскулин, Сеадра, Милтанк, Гротл, Таурос, Сновер, Тропиус, Парас, Парасект, Скиддо, Комби, Веспиквен, Октиллери, Рибомби, Голдин, Сикинг.

Съедобные:

Porygon, Porygon2, Porygon-Z, Abra, Kadabra, Alakazam, Geodude, Graveler, Golem, Grimer, Muk, Gastly, Haunter, Gengar, Mr. Mime, Mime Jr., Mr. Rime, Ditto, Houndour, Houndoom, Suicune, Арсеус, Траббиш, Гарбодор, Слагма, Магкарго, Ротом, Токсель, Токстрисити, Мэджикарп, Гьярадос, Мяут, Персиан, Перрсеркер, Слоукинг.

Несъедобные:

Имея на руках 75 покемонов из этого списка, мы можем обучить и протестировать нашу модель, которая подробно описана здесь.

Определив съедобность всего 8,3% покемонов до восьмого поколения, мы смогли хорошо предсказать, какие из них сочные и без яда устроить пир, при этом точность нашей модели достигала 70%.

И так вуаля! С вами 898 покемонов, разделенных по съедобности с помощью глубокого обучения.

Рекомендации

Найди меня в других местах! «Мое дерево ссылок».

«https://m.bulbapedia.bulbagarden.net»

«Предложения по подаче заявок на Mlearning.ai
Как стать писателем на Mlearning.aimedium.com»

«https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_food»

  1. https://conciito.de/comestivel
  2. https://www.thegamer.com/pokemon-humans-eat-confirmed/
  3. https://www.polygon.com/videos/2020/12/28/22195388/pokemon-edibility-unraveled
  4. https://modernfarmer.com/2014/05/food-politics-pokemon/
  5. https://www.kaggle.com/mariotormo/complete-pokemon-dataset-updated-090420/discussion/195347
  6. https://www.gamespot.com/gallery/do-people-eat-pokemon-13-examples-from-the-anime-o/2900-2769/#1
  7. Бульбазавр, Ивизавр, Венузавр, Чармандер, Чармелеон, Чаризард, Сквиртл, Вартортл, Бластойз, Катерпи, Метапод, Баттерфри, Видл, Какуна, Бидрилл, Пиджи, Пиджеотто, Пиджеот, Раттата, Ратикейт, Спироу, Фироу, Эканс, Арбок, Пикачу, Райчу, Сэндшрю, Нидоран♀, Нидорина, Нидокуин, Нидоран♂, Нидорино, Нидокинг, Клефейри, Клефейбл, Вульпикс, Найнталес, Джигглипафф, Вигглитафф, Зубат, Голбат, Оддиш, Глум, Вилеплюм, Парас, Парасект, Венонат, Веномот, Псайдак, Golduck, Growlithe, Arcanine, Poliwag, Poliwhirl, Poliwrath, Machoke, Machamp, Bellsprout, Weepinbell, Victreebel, Tentacruel, Ponyta, Rapidash, Slowpoke, Slowbro, Magnemite, Farfetch'd, Doduo, Dodrio, See, Dewgong, Shellder, Hypno, Krabby, Kingler, Electrode, Exeggcute, Exeggutor, Cubone, Marowak, Lickitung, Koffing, Rhyhorn, Rhydon, Chansey, Tangela, Kangaskhan, Horsea, Seadra, Golden, Seaking, Starmie, Scyther, Magmar, Pinsir, Tauros, Lapras, Eevee, Vaporeon, Jolteon, Flareon, Omastar, Aerodactyl, Zapdos, Moltres, Mew, Chikorita, Bayleef, Meganium, Cyndaquil, Quilava, Typhlosion, Totodile, Croconaw, Feraligatr, Sentret, Furret, Hoothoot, Noctowl, Ledyba, Ledian, Spinarak, Ariados, Crobat, Chinchou, Lanturn, Igglybuff, Togetic, Natu, Xatu, Mareep, Flaaffy, Ampharos, Bellosom, Marill, Azumarill, Politoed, Hoppip, Skiploom, Jumpluff, Aipom, Sunkern, Sunflora, Yanma, Wooper, Quagsire, Wobbuffet, Girafarig, Pineco, Forretress, Dunsparce, Gligar, Snubbull, Granbull, Qwilfish, Scizor, Shuckle, Heracross, Teddiursa, Ursaring, Corsola, Remoraid, Octillery, Delibird, Kingdra, Donphan, Stantler, Smeargle, Magby, Miltank, Blissey, Entei, Larvitar, Селеби, Treecko, Grovyle, Sceptile, Torchic, Combusken, Blaziken, Mudkip, Marshtomp, Swampert, Zigzagoon, Linoone, Wurmple, Silcoon, Beautifly, Cascoon, Dustox, Lotad, Lombre, Ludicolo, Seedot, Nuzleaf, Shiftry, Taillow, Swellow, Wingull, Pelipper, Surskit, Masquerain, Shroomish, Breloom, Slakoth, Vigoroth, Slaking, Nincada, Ninjask, Whismur, Loudred, Exploud, Makuhita, Hariyama, Azurill, Skitty, Delcatty, Electrike, Plusle, Minun, Volbeat, Illumise, Roselia, Гулпин, Свалот, Карванья, Шарпедо, Уэйлмер, Нумель, Торкоал, Грампиг, Спинда, Трапинч, Вибрава, Флигон, Какнеа, Кактурн, Сваблу, Алтария, Зангуст, Севайпер, Лунатон, Солрок, Барбоуч, Вискэш, Корфиш, Кроудаунт, Клейдол, Milotic, Castform, Kecleon, Tropius, Snorunt, Sealeo, Walrein, Huntail, Gorebyss, Relicanth, Luvdisc, Shelgon, Salamence, Latias, Jirachi, Turtwig, Grotle, Chimchar, Monferno, Infernape, Piplup, Prinplup, Empoleon, Starly, Staravia, Staraptor, Bidoof, Bibarel, Kricketot, Kricketune, Shinx, Luxio, Luxray, Budew, Roserade, Rampardos, Burmy, Wormadam, Mothim, Combee, Vespiquen, Pachirisu, Buizel, Floatzel, Cherubi, Cherrim, Shellos, Gastrodon, Ambipom, Drifloon, Дрифблим, Бунири, Лопунни, Гламеоу, Пуругли, Стунки, Скунтанк, Хэппини, Чато, Габите, Гарчомп, Манчлакс, Лукарио, Бегемот, Скорупи, Драпион, Кроаганк, Токсикроак, Карнивин, Финнеон, Люминеон, Мантик, Сновер, Абомасноу, Ликилики, Tangrowth, Electivire, Magmortar, Togekiss, Yanmega, Leafeon, Gliscor, Gallade, Froslass, Uxie, Mesprit, Azelf, Cresselia, Phione, Manaphy, Shaymin, Victini, Snivy, Servine, Serperior, Tepig, Pignite, Emboar, Oshawott, Dewott, Samurott, Patrat, Watchog, Lillipup, Herdier, Stoutland, Pansage, Simisage, Pansear, Simisear, Panpour, Simipour, Pidove, Tranquill, Unfezant, Blitzle, Zebstrika, Boldore, Woobat, Swoobat, Drilbur, Excadrill, Audino, Timburr, Conkeldurr, Тимпол, Пальпитоад, Сейсмитоад, Сьюаддл, Пеленание, Ливанни, Венипед, Вирлипед, Коттони, Уимсикотт, Петилил, Лиллигант, Баскулин, Сандайл, Крокорок, Крокодил, Дарумака, Дарманитан, Марактус, Двеббл, Сигилиф, Тиртуга, Карракоста, Архен, Археопс, Minccino, Cinccino, Ducklett, Swanna, Deerling, Sawsbuck, Emolga, Karrablast, Escavalier, Foongus, Amoonguss, Frillish, Jellycent, Alomomola, Joltik, Galvantula, Ferroseed, Ferrothorn, Eelektross, Haxorus, Shelmet, Accelgor, Stunfisk, Mienfoo, Mienshao, Друддигон, Голетт, Буффалан, Раффлет, Бравиари, Хитмор, Дюран, Гидригон, Ларвеста, Волкарона, Тундурус, Ландорус, Келдео, Мелоэтта, Генесек, Чеспин, Квилладин, Чесноут, Феннекин, Брейксен, Дельфокс, Фроки, Фрогадир, Гренинджа, Баннелби, Диггерсби, Флетчлинг, Флетчиндер, Talonflame, Scatterbug, Spewpa, Vivillon, Litleo, Pyroar, Flabébé, Floette, Florges, Skiddo, Gogoat, Pancham, Pangoro, Furfrou, Espurr, Meowstic, Spritzee, Aromatisse, Swirlix, Slurpuff, Inkay, Malamar, Barbaracle, Skrelp, Dragalge, Clauncher, Clawitzer, Helioptile, Heliolisk, Tyrunt, Amaura, Aurorus, Sylveon, Hawlucha, Dedenne, Carbink, Goodra, Noivern, Hoopa, Volcanion, Rowlet, Dartrix, Decidueye, Litten, Torracat, Incineroar, Popplio, Brionne, Primarina, Pikipek, Trumbeak, Toucannon, Yungoos, Gumshoos, Grubbin, Charjabug, Vikavolt, Crabrawler, Crabominable, Oricorio, Cutiefly, Ribombee, Wishiwashi, Mareanie, Toxapex, Mudbray, Dewpider, Araquanid, Fomantis, Lurantis, Morelull, Shiino
  8. Сэндслэш, Диглетт, Дагтрио, Мяут, Персиан, Манки, Праймейп, Абра, Кадабра, Алаказам, Мачоп, Тентакул, Геодуд, Гравелер, Голем, Магнетон, Граймер, Мук, Клойстер, Гастли, Хонтер, Генгар, Оникс, Дроузи, Вольторб, Hitmonlee, Hitmonchan, Weezing, Staryu, Mr. Эспеон, Амбреон, Муркроу, Слоукинг, Мисдреавус, Унаун, Стиликс, Снизел, Слагма, Магкарго, Свинаб, Пилосвин, Мантин, Скармори, Хаундур, Хаундум, Фанпи, Поригон2, Тирог, Хитмонтоп, Смучам, Элекид, Райкоу, Суйкун, Пупитар, Тиранитар, Лугия, Хо-О, Пучиена, Майтиена, Ральтс, Кирлия, Гардевуар, Шединья, Носпасс, Сабле, Мавайл, Арон, Лайрон, Аггрон, Медитайт, Медичам, Манектрик, Вейлорд, Камерупт, Спойнк, Балтой, Лилип, Крадили, Anorith, Armaldo, Feebas, Shuppet, Banette, Duskull, Dusclops, Chimecho, Absol, Wynaut, Glalie, Spheal, Clamperl, Bagon, Beldum, Metang, Metagross, Regirock, Regice, Registeel, Latios, Kyogre, Groudon, Rayquaza, Deoxys, Torterra, Cranidos, Shieldon, Bastiodon, Mismagius, Honchkrow, Chingling, Bronzor, Bronzong, Bonsly, Mime Jr., Spiritomb, Gible, Riolu, Hippowdon, Weavile, Magnezone, Rhyperior, Glaceon, Mamoswine, Porygon-Z, Probopass, Dusknoir, Ротом, Диалга, Палкия, Хитран, Регигигас, Гиратина, Даркрай, Аркеус, Пуррлойн, Лиепард, Мунна, Мушарна, Роггенрола, Гигалит, Гурдурр, Трох, Соук, Сколипед, Крастл, Тонкий, Скрафти, Ямаск, Кофагригус, Труббиш, Гарбодор, Zorua, Zoroark, Gothita, Gothorita, Gothitelle, Solosis, Duosion, Reuniclus, Vanillite, Vanillish, Vanilluxe, Klink, Klang, Klinklang, Tynamo, Eelektrik, Elgyem, Beheeyem, Litwick, Lampent, Chandelure, Axew, Fraxure, Cubchoo, Beartic, Криогонал, Голурк, Пауниард, Бишарп, Вуллаби, Мандибазз, Дейно, Цвейлоус, Кобалион, Терракион, Виризион, Торнадус, Реширам, Зекром, Кюрем, Хонедж, Дублейд, Эгислэш, Бинакл, Тирантрум, Гуми, Слиггу, Клефки, Фантамп, Тревенант, Pumpkaboo, Gourgeist, Bergmite, Avalugg, Noibat, Xerneas, Yveltal, Zygarde, Diancie, Rockruff, Lycanroc, Mudsdale, Sandygast, Palossand, Type: Null, Minor, Turtonator, Mimikyu, Drampa, Dhelmise, Jangmo-o, Hakamo-o, Тапу Леле, Космог, Космоэм, Солгалео, Нихилего, Баззволе, Ксуркитри, Целестила, Гузлорд, Некрозма, Магирна, Маршадоу, Пойпол, Наганадель, Стакатака, Зераора, Мелтан, Мелметал, Рукиди, Корвисквайр, Корвинайт, Никит, Тиевул, Болтунд, Роликоли , Coalossal, Cramorant, Toxel, Toxtricity, Sinistea, Hatenna, Hattrem, Hatterene, Impidimp, Obstagoon, Perrserker, Mr. Иней, Сном, Фросмот, Стонджорнер, Копперах, Драковиш, Дрипи, Драклоак, Драгапульт, Зациан, Замазента, Этернатус, Кубфу, Заруд, Гластриер, Спектриер.

Каких покемонов следует есть на ужин: подход машинного обучения



Versão эм português aqui.