MCPcopy Create free account
hub / github.com/bab2min/tomotopy / PLDAModelObject

Method PLDAModelObject

src/python/handler/py_PLDA.cpp:15–43  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13}
14
15PLDAModelObject::PLDAModelObject(size_t tw, size_t minCnt, size_t minDf, size_t rmTop,
16 size_t latentTopics, size_t topicsPerLabel, PyObject* alpha, float eta,
17 PyObject* seed, PyObject* corpus, PyObject* transform)
18{
19 tomoto::PLDAArgs mArgs;
20 mArgs.numLatentTopics = latentTopics;
21 mArgs.numTopicsPerLabel = topicsPerLabel;
22 if (alpha)
23 {
24 mArgs.alpha = broadcastObj<tomoto::Float>(alpha, mArgs.k,
25 [&]() { return "`alpha` must be an instance of `float` or `List[float]` with length `k` (given " + py::repr(alpha) + ")"; }
26 );
27 }
28 mArgs.eta = eta;
29 if (seed && seed != Py_None && !py::toCpp<size_t>(seed, mArgs.seed))
30 {
31 throw py::ValueError{ "`seed` must be an integer or None." };
32 }
33
34 inst = tomoto::IPLDAModel::create((tomoto::TermWeight)tw, mArgs);
35 if (!inst) throw py::ValueError{ "unknown tw value" };
36 isPrepared = false;
37 seedGiven = !!seed;
38 minWordCnt = minCnt;
39 minWordDf = minDf;
40 removeTopWord = rmTop;
41
42 insertCorpus(corpus, transform);
43}
44
45std::optional<size_t> PLDAModelObject::addDoc(PyObject* words, PyObject* labels, bool ignoreEmptyWords)
46{

Callers

nothing calls this directly

Calls 1

reprFunction · 0.85

Tested by

no test coverage detected