![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 51 Pomógł: 0 Dołączył: 27.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam za zadanie zrobić generator tekstów w takim stylu, że musi on tworzyć sensowne zdania. Baza ma przechowywać wyrazy posegregowane w części mowy i w php trzeba stworzyć z nich sensowne zdania. Potrzebuję pomysłów, nie gotowych rozwiązań. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Ale właśnie Lorem ipsum to jest po to, żeby tworzyć bezsensowne zdania
http://pl.wikipedia.org/wiki/Lorem_ipsum -------------------- |
|
|
![]()
Post
#3
|
|
![]() Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Przykład: Cytat Zosia zjadła za duży telefon
-------------------- Life's simple... You make choices and don't look back...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Patent z mojego chatbota:
mamy sobie graf skierowany z dwoma wyróżnionymi wierzchołkami $ oraz #. Przyjmujemy, że wierzchołki to wyrazy oraz wszystkie ścieżki w tym grafie zaczynają się w $, a kończą w #, zatem ci dwaj delikwenci to specjalne symbole oznaczające początek i koniec zdania. Jeśli z wyrazu A prowadzi strzałka do wyrazu B, to znaczy, że po wyrazie A może pojawić się wyraz B. Ponadto, z wyrazu A do B może prowadzić więcej niż jedna strzałka. Algorytm polega na tym, że ustawiamy się w $ i następnie losujemy ścieżkę do #, a napotkane na niej wierzchołki łączymy w zdanie. Przykład: $ -> ala $ -> ola ala -> ma ala -> widziała ala -> jadła ola -> widziała ola -> jadła ma -> jabłko ma -> kota jadła -> jabłko widziała -> kota widziała -> jabłko kota -> # jabłko -> # Przykładowe ścieżki-zdania: $ -> ala -> ma -> kota -> # $ -> ala -> jadła -> jabłko -> # $ -> ola -> widziała -> kota -> # Taki graf ma własność uczenia się, tzn. możemy wziąć istniejące zdanie, rozbić je na wyrazy i utworzyć połączenia w grafie. Przykładowo, możemy zrobić zdanie "ala jadła kota". Rozbijamy je na wyrazy i dodajemy nowe połączenia: $ -> ala ala -> jadła jadła -> kota (tego nie ma) kota -> # Pamiętając, że między wyrazami A i B może prowadzić więcej niż jedna strzałka, graf zdobywa też informacje, które połączenia są częściej wykorzystywane, a które rzadziej. Dzięki temu podczas losowania często używane zwroty są "faworyzowane". Algorytm jest niezwykle debilny, ale po nafaszerowaniu grafu odpowiednią ilością sensownych zdań (tzn. nie za małą i nie za dużą, bo się totalny random zrobi) generuje naprawdę ciekawe wyniki. Jeśli by go wzbogacić o parę informacji gramatycznych niezbędnych do utrzymania związku zgody, rządu i przynależności w zdaniach (umieszczanych w grafie), wyniki powinny Cię usatysfakcjonować. -------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 06:29 |