predictionio-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pat Ferrel <...@occamsmachete.com>
Subject Re: Empty result even though there are events
Date Mon, 03 Apr 2017 13:13:03 GMT
I am unclear. What is the problem? You can’t use different datasets (different appNames)?

What is the output of `pio app list`


On Apr 2, 2017, at 9:06 PM, Vaghawan Ojha <vaghawan781@gmail.com> wrote:

Hi, 

Thank you, I did the changes. But whenever I changed the appname and did pio build its Ok,
but while training it says invalid appname for any other app name. I'm missing something,
however when I left the appname as handmade, it works. 

Now the data and recommendation are all working. Thank you very much, I used engine.json.minimum.
I will be testing other features, like cart recommendation. Here's my engine.json

{
  "comment":" This config file uses default settings for all but the required values see README.md
for docs",
  "id": "default",
  "description": "Default settings",
  "engineFactory": "org.template.RecommendationEngine",
  "datasource": {
    "params" : {
      "name": "sample-handmade-data.txt",
      "appName": "handmade",
      "eventNames": ["purchase", "view"]
    }
  },
  "sparkConf": {
    "spark.serializer": "org.apache.spark.serializer.KryoSerializer",
    "spark.kryo.registrator": "org.apache.mahout.sparkbindings.io.MahoutKryoRegistrator",
    "spark.kryo.referenceTracking": "false",
    "spark.kryoserializer.buffer.mb": "300",
    "spark.kryoserializer.buffer": "300m",
    "es.index.auto.create": "true"
  },
  "algorithms": [
    {
      "comment": "simplest setup where all values are default, popularity based backfill,
must add eventsNames",
      "name": "ur",
      "params": {
        "appName": "handmade",
        "indexName": "urindex",
        "typeName": "items",
        "comment": "must have data for the first event or the model will not build, other
events are optional",
        "eventNames": ["purchase", "view"]
      }
    }
  ]
}

I was very curious, what does this means: "name": "sample-handmade-data.txt",
Thanks


On Sat, Apr 1, 2017 at 1:29 AM, Pat Ferrel <pat@occamsmachete.com <mailto:pat@occamsmachete.com>>
wrote:
You have active date range filters and no dates in your data. This is because you are using
the engine.json from the integration test, which uses that config. 

Start form engine.json.minimum and set the appName for your data and the eventNames you will
use.


On Mar 31, 2017, at 12:52 AM, Vaghawan Ojha <vaghawan781@gmail.com <mailto:vaghawan781@gmail.com>>
wrote:

More info: I don't have the secondary event like "View" in my data, I just don't collect the
view event, since I'm using old purchased history of the user. 

With integration test data everything is Ok, but with my real data, it's not.  All the data
looks like this with varying item_id and user_id. There is no view events. 

{"entityId":"00068116","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM8941"}
{"entityId":"00068116","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM8920"}
{"entityId":"00088894","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM66336"}
{"entityId":"00097710","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM42110"}
{"entityId":"00097710","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM61833"}
{"entityId":"00097710","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM65826"}
{"entityId":"00097710","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM40182"}
{"entityId":"00097710","entityType":"user","event":"purchase","targetEntityType":"item","targetEntityId":"BM5001"}

Is my data wrong? I am able to successfully  train and deploy the engine. 

On Fri, Mar 31, 2017 at 11:40 AM, Vaghawan Ojha <vaghawan781@gmail.com <mailto:vaghawan781@gmail.com>>
wrote:
I've 50000 transection data for experiment. I don't  think it's the data because with the
same data I could get recommendation using Recommendation template. 

On Fri, Mar 31, 2017 at 11:29 AM, Vaghawan Ojha <vaghawan781@gmail.com <mailto:vaghawan781@gmail.com>>
wrote:
Hi, 

I imported the bulk data using pio import --appid (id) --input  data.json . The import was
successful, then I build and trained and deployed the UR, but when I query the server, it
always returns a empty json {"itemScores":[]} . 


I think,  I must be missing something in the config, here is my engine.json 

{
  "comment":" This config file uses default settings for all but the required values see README.md
for docs",
  "id": "default",
  "description": "Default settings",
  "engineFactory": "org.template.RecommendationEngine",
  "datasource": {
    "params" : {
      "name": "sample-handmade-data.txt",
      "appName": "handmade",
      "eventNames": ["purchase", "view"]
    }
  },
  "sparkConf": {
    "spark.serializer": "org.apache.spark.serializer.KryoSerializer",
    "spark.kryo.registrator": "org.apache.mahout.sparkbindings.io <http://sparkbindings.io/>.MahoutKryoRegistrator",
    "spark.kryo.referenceTracking": "false",
    "spark.kryoserializer.buffer": "300m",
    "es.index.auto.create": "true"
  },
  "algorithms": [
    {
      "comment": "simplest setup where all values are default, popularity based backfill,
must add eventsNames",
      "name": "ur",
      "params": {
        "appName": "handmade",
        "indexName": "urindex",
        "typeName": "items",
        "comment": "must have data for the first event or the model will not build, other
events are optional",
        "indicators": [
          {
            "name": "purchase"
          },{
            "name": "view",
            "maxCorrelatorsPerItem": 50
          }
        ],
        "availableDateName": "available",
        "expireDateName": "expires",
        "dateName": "date",
        "num": 4
      }
    }
  ]
}

is the data supposed to come from the sample-handmade-data.txt? I'm not sure this is weird.
My json data import and trains correctly without an error. And example integration runs fine.



-- 
You received this message because you are subscribed to the Google Groups "actionml-user"
group.
To unsubscribe from this group and stop receiving emails from it, send an email to actionml-user+unsubscribe@googlegroups.com
<mailto:actionml-user+unsubscribe@googlegroups.com>.
To post to this group, send email to actionml-user@googlegroups.com <mailto:actionml-user@googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/actionml-user/CA%2B69RXbRLmJXz7k%2BaB%2BPp1i1ZA0gmvH0U8U2kMzZ%2B-stgx-xjA%40mail.gmail.com
<https://groups.google.com/d/msgid/actionml-user/CA%2B69RXbRLmJXz7k%2BaB%2BPp1i1ZA0gmvH0U8U2kMzZ%2B-stgx-xjA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.



-- 
You received this message because you are subscribed to the Google Groups "actionml-user"
group.
To unsubscribe from this group and stop receiving emails from it, send an email to actionml-user+unsubscribe@googlegroups.com
<mailto:actionml-user+unsubscribe@googlegroups.com>.
To post to this group, send email to actionml-user@googlegroups.com <mailto:actionml-user@googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/actionml-user/CA%2B69RXbiz0ghijds%2B3X8Z8fO%3DQOnwVxY_TWh_Pg%3DHqVMsFziAQ%40mail.gmail.com
<https://groups.google.com/d/msgid/actionml-user/CA%2B69RXbiz0ghijds%2B3X8Z8fO%3DQOnwVxY_TWh_Pg%3DHqVMsFziAQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.


Mime
View raw message