mirror of
https://github.com/marian-nmt/marian.git
synced 2024-12-03 03:54:56 +03:00
namespace
This commit is contained in:
parent
6cde867f37
commit
36eaa17f93
@ -6,6 +6,7 @@
|
||||
#include "common/types.h"
|
||||
#include "scorer.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class BestHypsBase
|
||||
{
|
||||
@ -24,3 +25,5 @@ public:
|
||||
};
|
||||
|
||||
typedef std::shared_ptr<BestHypsBase> BestHypsBasePtr;
|
||||
|
||||
}
|
||||
|
@ -5,6 +5,8 @@
|
||||
#include <memory>
|
||||
#include "common/types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Hypothesis;
|
||||
typedef std::shared_ptr<Hypothesis> HypothesisPtr;
|
||||
typedef std::vector<HypothesisPtr> Beam;
|
||||
@ -24,3 +26,6 @@ class BaseMatrix {
|
||||
|
||||
virtual std::string Debug() const = 0;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,8 @@
|
||||
#include "common/exception.h"
|
||||
#include "common/git_version.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
#define SET_OPTION(key, type) \
|
||||
do { if(!vm_[key].defaulted() || !config_[key]) { \
|
||||
config_[key] = vm_[key].as<type>(); \
|
||||
@ -342,3 +344,5 @@ void Config::LogOptions() {
|
||||
OutputRec(config_, out);
|
||||
LOG(info) << "Options: \n" << out.c_str();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -5,6 +5,8 @@
|
||||
|
||||
#include "logging.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Config {
|
||||
private:
|
||||
YAML::Node config_;
|
||||
@ -33,3 +35,6 @@ class Config {
|
||||
|
||||
void LogOptions();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -14,6 +14,8 @@
|
||||
#include "common/exception.h"
|
||||
#include "common/translation_task.h"
|
||||
|
||||
using namespace amunmt;
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
God god;
|
||||
god.Init(argc, argv);
|
||||
|
@ -8,6 +8,8 @@
|
||||
|
||||
#include "exception.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class InputFileStream {
|
||||
public:
|
||||
InputFileStream(const std::string& file)
|
||||
@ -45,3 +47,6 @@ class InputFileStream {
|
||||
boost::filesystem::ifstream ifstream_;
|
||||
boost::iostreams::filtering_istream istream_;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -14,6 +14,8 @@
|
||||
#include "common/utils.h"
|
||||
#include "common/types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Filter::Filter(const size_t numFirstWords) : numFirstWords_(numFirstWords) {}
|
||||
|
||||
Filter::Filter(const Vocab& srcVocab,
|
||||
@ -117,3 +119,5 @@ size_t Filter::GetNumFirstWords() const {
|
||||
void Filter::SetNumFirstWords(const size_t numFirstWords) {
|
||||
numFirstWords_ = numFirstWords;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -7,6 +7,8 @@
|
||||
|
||||
#include "common/types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Vocab;
|
||||
|
||||
class Filter {
|
||||
@ -56,3 +58,6 @@ class Filter {
|
||||
};
|
||||
|
||||
typedef std::unique_ptr<Filter> FilterPtr;
|
||||
|
||||
}
|
||||
|
||||
|
@ -19,6 +19,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
God::God()
|
||||
:threadIncr_(0)
|
||||
{
|
||||
@ -292,3 +294,6 @@ Search &God::GetSearch() const
|
||||
assert(obj);
|
||||
return *obj;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -20,6 +20,8 @@
|
||||
#include "common/processor/bpe.h"
|
||||
#include "common/utils.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Search;
|
||||
class Weights;
|
||||
class Vocab;
|
||||
@ -103,3 +105,6 @@ class God {
|
||||
mutable boost::thread_specific_ptr<Search> search_;
|
||||
mutable boost::shared_mutex accessLock_;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
#include "history.h"
|
||||
#include "sentence.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Histories::Histories(const God &god, const Sentences& sentences)
|
||||
: coll_(sentences.size())
|
||||
{
|
||||
@ -41,3 +43,6 @@ void Histories::Append(const Histories &other)
|
||||
coll_.push_back(history);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,8 @@
|
||||
#include "god.h"
|
||||
#include "hypothesis.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class History {
|
||||
private:
|
||||
struct HypothesisCoord {
|
||||
@ -99,3 +101,4 @@ class Histories {
|
||||
Histories(const Histories &) = delete;
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -3,6 +3,8 @@
|
||||
#include "common/types.h"
|
||||
#include "common/soft_alignment.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Hypothesis;
|
||||
|
||||
typedef std::shared_ptr<Hypothesis> HypothesisPtr;
|
||||
@ -74,3 +76,6 @@ typedef std::vector<HypothesisPtr> Beam;
|
||||
typedef std::vector<Beam> Beams;
|
||||
typedef std::pair<Words, HypothesisPtr> Result;
|
||||
typedef std::vector<Result> NBestList;
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,2 +1,7 @@
|
||||
#include "loader.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,8 @@
|
||||
#include "scorer.h"
|
||||
#include "common/base_best_hyps.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Loader {
|
||||
public:
|
||||
Loader(const std::string& name,
|
||||
@ -39,3 +41,6 @@ class Loader {
|
||||
};
|
||||
|
||||
typedef std::unique_ptr<Loader> LoaderPtr;
|
||||
|
||||
}
|
||||
|
||||
|
@ -13,6 +13,7 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
LoaderPtr LoaderFactory::Create(
|
||||
const God &god,
|
||||
@ -82,3 +83,6 @@ Loader *LoaderFactory::CreateCPU(
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,8 @@
|
||||
#include "common/exception.h"
|
||||
#include "common/loader.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
#define IF_MATCH_RETURN(god, typeVar, typeStr, LoaderType) \
|
||||
do { \
|
||||
if(typeVar == typeStr) { \
|
||||
@ -38,3 +40,5 @@ class LoaderFactory {
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,3 +1,7 @@
|
||||
#include "logging.h"
|
||||
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
}
|
||||
|
||||
|
@ -2,4 +2,8 @@
|
||||
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
#define LOG(logger) spdlog::get(#logger)->info()
|
||||
|
||||
}
|
||||
|
@ -3,6 +3,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
OutputCollector::OutputCollector()
|
||||
: nextId_(0),
|
||||
outStrm_(&std::cout)
|
||||
@ -46,3 +48,6 @@ void OutputCollector::Write(long sourceId, const std::string& output)
|
||||
outputs_[sourceId] = output;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,8 @@
|
||||
#include <boost/thread/mutex.hpp>
|
||||
#include <boost/unordered_map.hpp>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class OutputCollector {
|
||||
public:
|
||||
OutputCollector();
|
||||
@ -21,3 +23,6 @@ class OutputCollector {
|
||||
Outputs outputs_;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "printer.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::vector<size_t> GetAlignment(const HypothesisPtr& hypothesis) {
|
||||
std::vector<SoftAlignment> aligns;
|
||||
HypothesisPtr last = hypothesis->GetPrevHyp();
|
||||
@ -31,3 +33,6 @@ std::string GetAlignmentString(const std::vector<size_t>& alignment) {
|
||||
}
|
||||
return alignString.str();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -8,6 +8,8 @@
|
||||
#include "common/vocab.h"
|
||||
#include "common/soft_alignment.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::vector<size_t> GetAlignment(const HypothesisPtr& hypothesis);
|
||||
|
||||
std::string GetAlignmentString(const std::vector<size_t>& alignment);
|
||||
@ -65,3 +67,6 @@ void Printer(const God &god, const Histories& histories, OStream& out) {
|
||||
Printer(god, history, out);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -7,6 +7,7 @@
|
||||
#include "utf8/utf8.h"
|
||||
#include "common/utils.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::vector<std::string> BPE::Preprocess(const std::vector<std::string> input) const {
|
||||
return Encode(input);
|
||||
@ -216,3 +217,5 @@ bool BPE::EndsWith(std::string const &fullString, std::string const suffix) cons
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -9,6 +9,7 @@
|
||||
|
||||
#include "common/processor/processor.h"
|
||||
|
||||
|
||||
template<class T>
|
||||
inline void hash_combine(std::size_t & seed, const T & v)
|
||||
{
|
||||
@ -30,6 +31,8 @@ namespace std
|
||||
};
|
||||
}
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class BPE : public Processor {
|
||||
using BPEPair = std::pair<std::string, std::string>;
|
||||
|
||||
@ -68,3 +71,4 @@ class BPE : public Processor {
|
||||
|
||||
|
||||
};
|
||||
}
|
||||
|
@ -4,6 +4,8 @@
|
||||
#include <vector>
|
||||
#include <memory>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Preprocessor {
|
||||
public:
|
||||
virtual std::vector<std::string> Preprocess(const std::vector<std::string> input) const = 0;
|
||||
@ -24,3 +26,5 @@ class Processor : public Preprocessor, public Postprocessor {
|
||||
virtual ~Processor() {}
|
||||
};
|
||||
using ProcessorPtr = std::unique_ptr<Processor>;
|
||||
|
||||
}
|
||||
|
@ -1,7 +1,11 @@
|
||||
#include "scorer.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Scorer::Scorer(const std::string& name,
|
||||
const YAML::Node& config, size_t tab)
|
||||
: name_(name), config_(config), tab_(tab)
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -8,6 +8,8 @@
|
||||
#include "common/base_matrix.h"
|
||||
#include "yaml-cpp/node/node.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class God;
|
||||
|
||||
class State {
|
||||
@ -83,3 +85,5 @@ class SourceIndependentScorer : public Scorer {
|
||||
};
|
||||
|
||||
typedef std::shared_ptr<Scorer> ScorerPtr;
|
||||
|
||||
}
|
||||
|
@ -9,6 +9,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Search::Search(const God &god)
|
||||
{
|
||||
deviceInfo_ = god.GetNextDevice();
|
||||
@ -132,3 +134,6 @@ std::shared_ptr<Histories> Search::Decode(const God &god, const Sentences& sente
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "common/base_best_hyps.h"
|
||||
#include "common/history.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Search {
|
||||
public:
|
||||
@ -27,3 +28,6 @@ class Search {
|
||||
|
||||
DeviceInfo deviceInfo_;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,8 @@
|
||||
#include "utils.h"
|
||||
#include "common/vocab.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Sentence::Sentence(const God &god, size_t vLineNum, const std::string& line)
|
||||
: lineNum_(vLineNum), line_(line)
|
||||
{
|
||||
@ -80,3 +82,5 @@ void Sentences::SortByLength() {
|
||||
std::sort(coll_.rbegin(), coll_.rend(), LengthOrderer());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,8 @@
|
||||
#include <string>
|
||||
#include "types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class God;
|
||||
|
||||
class Sentence {
|
||||
@ -58,3 +60,6 @@ class Sentences {
|
||||
|
||||
Sentences(const Sentences &) = delete;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -38,6 +38,8 @@ This source code has been modified to have optional bounded size.
|
||||
#include <functional>
|
||||
#include <stdexcept>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class ThreadPool {
|
||||
public:
|
||||
explicit ThreadPool(size_t threads, size_t bound /* bound on size, or 0 for unbounded */ = 0);
|
||||
@ -129,5 +131,5 @@ inline ThreadPool::~ThreadPool() {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
void TranslationTask(const God &god, std::shared_ptr<Sentences> sentences, size_t taskCounter) {
|
||||
Search &search = god.GetSearch();
|
||||
|
||||
@ -75,3 +77,5 @@ void TranslationTask(const God &god, std::shared_ptr<Sentences> sentences, size_
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,11 @@
|
||||
#include <string>
|
||||
#include "history.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class God;
|
||||
|
||||
void TranslationTask(const God &god, std::shared_ptr<Sentences> sentences, size_t taskCounter);
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,12 @@
|
||||
#include "types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::ostream& operator<<(std::ostream& out, const DeviceInfo& obj)
|
||||
{
|
||||
out << obj.deviceType << " t=" << obj.threadInd << " d=" << obj.deviceId;
|
||||
return out;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,8 @@
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
typedef size_t Word;
|
||||
typedef std::vector<Word> Words;
|
||||
|
||||
@ -25,3 +27,6 @@ struct DeviceInfo
|
||||
size_t threadInd;
|
||||
size_t deviceId;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,8 @@
|
||||
#include <iostream>
|
||||
#include <sstream>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
void Trim(std::string& s) {
|
||||
boost::trim_if(s, boost::is_any_of(" \t\n"));
|
||||
}
|
||||
@ -49,3 +51,6 @@ std::string Join(const std::vector<std::string>& words,
|
||||
}
|
||||
return ss.str();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,8 @@
|
||||
#include <vector>
|
||||
#include <boost/algorithm/string.hpp>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
void Trim(std::string& s);
|
||||
|
||||
void Split(const std::string& line, std::vector<std::string>& pieces, const std::string del=" ");
|
||||
@ -11,3 +13,6 @@ std::string Join(const std::vector<std::string>& words, const std::string del="
|
||||
std::string Join(const std::vector<std::string>& words,
|
||||
const std::vector<size_t>& align, const std::string del=" ");
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -7,6 +7,8 @@
|
||||
#include "common/file_stream.h"
|
||||
#include "common/exception.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
Vocab::Vocab(const std::string& path) {
|
||||
YAML::Node vocab = YAML::Load(InputFileStream(path));
|
||||
for(auto&& pair : vocab) {
|
||||
@ -63,3 +65,6 @@ const std::string& Vocab::operator[](size_t id) const {
|
||||
size_t Vocab::size() const {
|
||||
return id2str_.size();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,8 @@
|
||||
|
||||
#include "common/types.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Vocab {
|
||||
public:
|
||||
Vocab(const std::string& path);
|
||||
@ -26,3 +28,5 @@ class Vocab {
|
||||
std::map<std::string, size_t> str2id_;
|
||||
std::vector<std::string> id2str_;
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include "common/exception.h"
|
||||
#include "cpu/mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
struct ProbCompare {
|
||||
@ -143,3 +144,4 @@ public:
|
||||
};
|
||||
|
||||
} // namespace
|
||||
}
|
||||
|
@ -18,6 +18,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
namespace CPU {
|
||||
|
||||
using EDState = EncoderDecoderState;
|
||||
@ -153,3 +155,5 @@ BestHypsBasePtr EncoderDecoderLoader::GetBestHyps(const God &god) const {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -12,6 +12,8 @@
|
||||
|
||||
#include "../mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Sentence;
|
||||
|
||||
namespace CPU {
|
||||
@ -86,3 +88,5 @@ class EncoderDecoder : public Scorer {
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -9,6 +9,8 @@
|
||||
#include "common/logging.h"
|
||||
#include "common/base_best_hyps.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
namespace CPU {
|
||||
|
||||
class Weights;
|
||||
@ -28,3 +30,4 @@ class EncoderDecoderLoader : public Loader {
|
||||
};
|
||||
|
||||
} // namespace CPU
|
||||
}
|
||||
|
@ -1,2 +1,7 @@
|
||||
#include "decoder.h"
|
||||
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
#include "gru.h"
|
||||
#include "common/god.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
class Decoder {
|
||||
@ -308,3 +309,5 @@ class Decoder {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,3 +3,8 @@
|
||||
#include "model.h"
|
||||
#include "encoder.h"
|
||||
#include "decoder.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
void Encoder::GetContext(const std::vector<size_t>& words,
|
||||
@ -27,3 +28,5 @@ void Encoder::GetContext(const std::vector<size_t>& words,
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,7 @@
|
||||
#include "../dl4mt/model.h"
|
||||
#include "../dl4mt/gru.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
class Encoder {
|
||||
@ -95,4 +96,5 @@ class Encoder {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,3 +1,6 @@
|
||||
#include "gru.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
#include "../mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
template <class Weights>
|
||||
@ -78,4 +79,5 @@ class GRU {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
Weights::Embeddings::Embeddings(const NpzConverter& model, const std::string &key)
|
||||
@ -75,4 +76,5 @@ decSoftmax_(model)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -8,6 +8,7 @@
|
||||
|
||||
#include "../mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
struct Weights {
|
||||
@ -183,4 +184,5 @@ inline std::ostream& operator<<(std::ostream &out, const Weights &obj)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -13,10 +13,12 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
namespace mblas {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -9,6 +9,7 @@
|
||||
#include "phoenix_functions.h"
|
||||
#include "common/base_matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
namespace mblas {
|
||||
@ -303,3 +304,4 @@ MT Broadcast(const Functor& functor, const MT1& m1, const MT2& m2) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3,10 +3,12 @@
|
||||
|
||||
#include "phoenix_functions.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
namespace mblas
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
namespace mblas
|
||||
{
|
||||
@ -108,4 +109,5 @@ namespace mblas
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "cnpy/cnpy.h"
|
||||
#include "mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace CPU {
|
||||
|
||||
class NpzConverter {
|
||||
@ -90,4 +91,5 @@ class NpzConverter {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -11,6 +11,7 @@
|
||||
|
||||
#include "gpu/decoder/encoder_decoder.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class BestHyps : public BestHypsBase
|
||||
@ -167,3 +168,5 @@ class BestHyps : public BestHypsBase
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
#include "language_model.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class ClassLanguageModel : public LanguageModel {
|
||||
@ -61,3 +62,4 @@ class ClassLanguageModel : public LanguageModel {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
////////////////////////////////////////////
|
||||
@ -162,4 +163,5 @@ BestHypsBasePtr EncoderDecoderLoader::GetBestHyps(const God &god) const {
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,6 +10,7 @@
|
||||
#include "gpu/types-gpu.h"
|
||||
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class EncoderDecoderState;
|
||||
@ -87,3 +88,5 @@ class EncoderDecoderLoader : public Loader {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
|
||||
#include "gpu/mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class EncoderDecoderState : public State {
|
||||
@ -24,4 +25,5 @@ class EncoderDecoderState : public State {
|
||||
mblas::Matrix embeddings_;
|
||||
};
|
||||
|
||||
}
|
||||
} // namespace GPU
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "gpu/types-gpu.h"
|
||||
#include "common/god.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class Decoder {
|
||||
@ -350,3 +351,5 @@ class Decoder {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
Encoder::Encoder(const Weights& model)
|
||||
@ -66,4 +67,5 @@ void Encoder::GetContext(const Sentences& source, size_t tab, mblas::Matrix& Con
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "common/sentence.h"
|
||||
#include "gpu/types-gpu.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class Encoder {
|
||||
@ -105,4 +106,5 @@ class Encoder {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
#include "gru.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
__global__ void gElementwiseOps(float* out,
|
||||
@ -43,4 +44,5 @@ __global__ void gElementwiseOps(float* out,
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
#include "gpu/mblas/matrix_functions.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
template <class Weights>
|
||||
@ -148,4 +149,6 @@ template<class T>
|
||||
using GRU = FastGRU<T>;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "gpu/mblas/matrix.h"
|
||||
#include "gpu/npz_converter.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
struct Weights {
|
||||
@ -213,4 +214,6 @@ struct Weights {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include <cuda.h>
|
||||
#include <cublas_v2.h>
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
namespace mblas {
|
||||
|
||||
@ -58,3 +59,4 @@ class CublasHandler {
|
||||
|
||||
} // namespace mblas
|
||||
} // namespace GPU
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
#include "gpu/types-gpu.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
namespace mblas {
|
||||
|
||||
@ -143,3 +144,4 @@ typedef TMatrix<DeviceVector<int>> IMatrix;
|
||||
|
||||
} // namespace mblas
|
||||
} // namespace GPU
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
#include "gpu/mblas/handles.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
namespace mblas {
|
||||
|
||||
@ -508,3 +509,4 @@ void MapMatrix(Matrix& state, const DeviceVector<int>& mapping, size_t i) {
|
||||
|
||||
} // namespace mblas
|
||||
} // namespace GPU
|
||||
}
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include "gpu/mblas/matrix.h"
|
||||
#include "gpu/mblas/handles.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
namespace mblas {
|
||||
|
||||
@ -373,3 +374,4 @@ void SetColumn(Matrix& In, int noColumn, float value);
|
||||
|
||||
} // namespace mblas
|
||||
} // namespace GPU
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include <iostream>
|
||||
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
static void HandleError(cudaError_t err, const char *file, int line ) {
|
||||
@ -356,4 +357,5 @@ void NthElement::getValueByKey(std::vector<float>& out, float* d_in) {
|
||||
cudaStreamSynchronize(stream_);
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace GPU
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include <cuda.h>
|
||||
#include "gpu/mblas/matrix.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class NthElement {
|
||||
@ -47,4 +48,5 @@ class NthElement {
|
||||
size_t lastN;
|
||||
};
|
||||
|
||||
}
|
||||
} // namespace GPU
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "npz_converter.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "cnpy/cnpy.h"
|
||||
#include "mblas/matrix_functions.h"
|
||||
|
||||
namespace amunmt {
|
||||
namespace GPU {
|
||||
|
||||
class NpzConverter {
|
||||
@ -87,5 +88,6 @@ class NpzConverter {
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -3,6 +3,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::string HypoInfo::Debug() const
|
||||
{
|
||||
stringstream strm;
|
||||
@ -13,3 +15,6 @@ std::string HypoInfo::Debug() const
|
||||
<< " score=" << score;
|
||||
return strm.str();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -8,6 +8,8 @@
|
||||
#include <string>
|
||||
#include "common/scorer.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
struct HypoInfo
|
||||
{
|
||||
std::vector<size_t> words;
|
||||
@ -20,4 +22,5 @@ struct HypoInfo
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,8 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
std::string NeuralPhrase::Debug() const
|
||||
{
|
||||
stringstream strm;
|
||||
@ -13,5 +15,6 @@ std::string NeuralPhrase::Debug() const
|
||||
return strm.str();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -3,6 +3,8 @@
|
||||
#include <vector>
|
||||
#include <string>
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class NeuralPhrase {
|
||||
public:
|
||||
std::vector<size_t> words;
|
||||
@ -28,3 +30,6 @@ class NeuralPhrase {
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "common/history.h"
|
||||
#include "common/sentence.h"
|
||||
|
||||
using namespace GPU;
|
||||
namespace amunmt {
|
||||
|
||||
void MosesPlugin::initGod(const std::string& configPath) {
|
||||
std::string configs = "-c " + configPath;
|
||||
@ -240,3 +240,5 @@ void MosesPlugin::Rescore(std::vector<HypoInfo> &hypos)
|
||||
hypo.nextStates = nextStates;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -14,6 +14,8 @@
|
||||
#include "neural_phrase.h"
|
||||
#include "hypo_info.h"
|
||||
|
||||
namespace amunmt {
|
||||
|
||||
class Vocab;
|
||||
|
||||
class StateInfo;
|
||||
@ -34,7 +36,7 @@ class MosesPlugin {
|
||||
static size_t GetDevices(size_t = 1);
|
||||
void SetDevice();
|
||||
size_t GetDevice();
|
||||
const God &GetGod() const
|
||||
const amunmt::God &GetGod() const
|
||||
{ return god_; }
|
||||
|
||||
void SetDebug(bool debug) {
|
||||
@ -75,7 +77,7 @@ class MosesPlugin {
|
||||
// std::vector<double> RescoreNBestList(
|
||||
// const std::vector<std::string>& nbest,
|
||||
// const size_t maxBatchSize=64);
|
||||
void GeneratePhrases(const States& states, size_t lastWord, size_t numPhrases,
|
||||
void GeneratePhrases(const amunmt::States& states, size_t lastWord, size_t numPhrases,
|
||||
std::vector<NeuralPhrase>& phrases);
|
||||
|
||||
States GenerateStates(const States& parentStates, size_t lastWord, std::vector<size_t>& phrase);
|
||||
@ -84,15 +86,17 @@ class MosesPlugin {
|
||||
private:
|
||||
bool debug_;
|
||||
|
||||
God god_;
|
||||
amunmt::God god_;
|
||||
|
||||
std::vector<ScorerPtr> scorers_;
|
||||
Words filterIndices_;
|
||||
BestHypsBasePtr bestHyps_;
|
||||
Sentences sentences_;
|
||||
std::vector<amunmt::ScorerPtr> scorers_;
|
||||
amunmt::Words filterIndices_;
|
||||
amunmt::BestHypsBasePtr bestHyps_;
|
||||
amunmt::Sentences sentences_;
|
||||
|
||||
std::shared_ptr<States> states_;
|
||||
std::shared_ptr<amunmt::States> states_;
|
||||
bool firstWord_;
|
||||
|
||||
std::vector<size_t> filteredId_;
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -13,6 +13,8 @@
|
||||
#include "common/sentence.h"
|
||||
#include "common/exception.h"
|
||||
|
||||
using namespace amunmt;
|
||||
|
||||
God god_;
|
||||
|
||||
std::shared_ptr<Histories> TranslationTask(const std::string& in, size_t taskCounter) {
|
||||
|
Loading…
Reference in New Issue
Block a user