Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


PoetheProgrammer last won the day on November 12

PoetheProgrammer had the most liked content!

Community Reputation

10 Neutral

About PoetheProgrammer

  • Rank
  • Birthday 09/07/1992

Profile Information

  • Location
    Seattle, Washington
  • Interests
    History, Astronomy and Data Science/Artificial Intelligence
  • College Major/Degree
    Mathematics and Computer Science
  • Favorite Area of Science
    Data Science
  • Biography
    An intellectual hillbilly
  • Occupation
    Founding Engineer and Data Scientist
  1. I would say that, if your goal is domain specific as in the example of sales that we’re rolling with, you would need some hard coded primitives/nouns that you can push to a “topic stack,” by which I mean that chains are fine for just handling responses but you will have some logic that isn’t a machine learning. Mainly though my point is that moving from discussing the items to checkout doesn’t actually change the topic but it adds a new, derived, topic unto the “stack” which in reality would be a higher level chain than the markov chain. So perhaps you have a high level chain that learns the users hop from discussing the item to the checkout and as it sees you moving topics this high level models moves the “chatbot” to a chain trained on topics regarding checkout of items (which would still have to delegate to some logic that eg checks that weight and/or the freshness of the item and can then give proper answers to questions one would have at checkout.) As you say this stuff is ongoing research: but you’ll definitely need to stack machine learning techniques alongside old school search to both keep track of the “topic stack” and correctly answer it. That’s how I’d go about solving the OPs problem but from what I’m gathering from his post this is not a weekend project.
  2. On its own probably not. You could for sure use a markov chain to get “price n apples” from the phrase price of 5 apples, and it’d be trivial to allow the same or a related chain to keep track of a state (so as to disregard bananas) but you would then need to delegate the looking up of some price from an inventory system, etc. A chain is just that a chain of words and it learns to hop to the most likely word based off the previous N words. By the time you implemented a chain to extract that kind of data it wouldn’t be a markov chain. you could use a chain like that to process words and eg extract nouns and things about them (price n apples) but if you want real conversation you’ll need an object hierarchy no process nouns and a system to learn all the things they do e.g. price of bad apple needs to know apples go “bad” as in rot. To model proper human language such a hierarchy would need to be fairly complex and self building. edit: would need to be self building if the intent wasn’t to spend years training by manually writing out all these things.
  3. I haven’t used a markov chain in years so I don’t know a good tutorial but the first google result was a python library https://github.com/jsvine/markovify May I ask what did you try in regards to neural networks? There are lots of architectures of ANNs and things like a simple CNN will probably get you nowhere fast but RNNs will far exceed the capabilities of a markov chain.
  4. It seems my response in your other chatbot thread (intents classification) led you to only half the correct solution. In the other thread you had a link to a data set which provided you with both input parameters and a series of responses that fit them. I suggested a markov chain as a much simpler way to map those input phrases to output phrases than an ANN but you will still have to train it on that dataset (and likely format said data in a way the chain can learn to hop from the correct state to the next.) EDIT If you’re actually looking to properly model intent (I assumed you were looking for homework help) then that is a topic of ongoing research. GPT-3 is little more than a statistical model that, although a lot more complex, is similar to a markov chain in that it maps words to the next based on probabilities. It’s just GPT has 3 billion parameters while people tend to use markov chains with like, 3, parameters. GPT does not understand intent anymore than a markov chain does.
  5. The simple answer is making near identical copies of itself, tho simple proteins aren’t life, so what life is would be a group of proteins working in junction able to generate near exact copies of the entire protein chain. The atomic structure of that is likely near infinite in terms of how to it’s made up (although probably small in terms of how such things can arbitrarily form in our universe without some intelligent designer I.e. humans making proteins in a lab.)
  6. I’d think it depends on the species, however, Wikipedia says this in general: https://en.wikipedia.org/wiki/Millipede#Reproduction_and_growth
  7. If it’s homework or something that absolutely required a stat model I would recommend a markov chain. It’s about the simplest one that’ll work for you as you just train it to jump from one state or another (autocorrect used to be a markov chain until a few years ago) and can be implemented in a few dozen lines of code. Neural nets are sexier but very difficult to get right with language unless you have a lot of time (the complexity compounds quickly.)
  8. Of course the earth is the center of the known universe as that’s where we are looking out from. This is also a 7 year old discovery. It would be weirder if we somehow weren’t.
  9. FYI forum rules say we shouldn’t need to click links or watch videos to participate. I’m not sure a model would be best here as that’ll get complex /fast/. However it is possible to build a neural network that takes in input and maps to the given outputs. How you would build such a model is a topic in of itself but you could start with just a RNN where you’ve mapped all English words to a given number and setup the input and output layers to take/output the binary representation of said numbers. You could do a CNN but you’d need to allow each layer to take in and output entire sentences and unfortunately I think you would mostly get gibberish or overfitting. Neither are desired. it would be simpler to just build a simple “expert machine” since you have the data set available and you could trivially map inputs to outputs provided within the set provided. For instance when a user inputs “Hi there” you lookup in the data set what pattern it is in and then return one of the responses from that same node, I.e., “good to see you again!”
  10. It appears that set_pairs is a list of inputs and their respective outputs while intents is more of “one of these outputs should be returned if one of the inputs is given) Essentially you can randomize the intents outputs to seem more human (so you don’t get the same response every time.)
  11. There is an infinity *between* 0 and 1 but not including them.
  12. I’d break it down into individual states (you almost certainly need to regardless) and pull some polling data as a start to get probabilities. You’ll also need data about each states views on the issues at hand in order to properly account for them otherwise you’re just guessing. I would start with modeling an individual state (e.g. Texas) and building a backtester to verify results. Once you get that down add a couple of other states to guarantee you aren’t overfitting and scale up from there.
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.