def setElementType(self, element, prediction, classSet=None, classIds=None, unmergeEPINeg=False): eText = element.get("text") if classSet == None: # binary classification if prediction[0] > 0: element.attrib["type"] = str(True) else: element.attrib["type"] = str(False) else: if unmergeEPINeg: element.set( "type", ResolveEPITriggerTypes.determineNewType( classSet.getName(prediction[0]), eText)) else: element.attrib["type"] = classSet.getName(prediction[0]) classWeights = prediction[1:] predictionString = "" for i in range(len(classWeights)): if predictionString != "": predictionString += "," className = classSet.getName(classIds[i]) if unmergeEPINeg: className = InteractionXML.ResolveEPITriggerTypes.determineNewType( className, eText) predictionString += className + ":" + str(classWeights[i]) element.attrib["predictions"] = predictionString
def getElementTypes(self, prediction, classSet=None, classIds=None, unmergeEPINegText=None): if classSet == None: # binary classification if prediction[0] > 0: return [str(True)] else: return [str(False)] else: if isinstance(prediction, dict): encoded = prediction["prediction"] eTypes = [ classSet.getName(i) for i in range(len(encoded)) if encoded[i] == 1 ] if len(eTypes) == 0: eTypes = ["neg"] else: eTypes = classSet.getName(prediction[0]).split( "---") # split merged types if unmergeEPINegText != None: # an element text was provided for i in range(len(eTypes)): eTypes[i] = ResolveEPITriggerTypes.determineNewType( eTypes[i], unmergeEPINegText) return eTypes
def getElementTypes(self, prediction, classSet=None, classIds=None, unmergeEPINegText=None): if classSet == None: # binary classification if prediction[0] > 0: return [str(True)] else: return [str(False)] else: eTypes = classSet.getName(prediction[0]).split("---") # split merged types if unmergeEPINegText != None: # an element text was provided for i in range(len(eTypes)): eTypes[i] = ResolveEPITriggerTypes.determineNewType(eTypes[i], unmergeEPINegText) return eTypes
def setElementType(self, element, prediction, classSet=None, classIds=None, unmergeEPINeg=False): eText = element.get("text") if classSet == None: # binary classification if prediction[0] > 0: element.attrib["type"] = str(True) else: element.attrib["type"] = str(False) else: if unmergeEPINeg: element.set("type", ResolveEPITriggerTypes.determineNewType(classSet.getName(prediction[0]), eText)) else: element.attrib["type"] = classSet.getName(prediction[0]) classWeights = prediction[1:] predictionString = "" for i in range(len(classWeights)): if predictionString != "": predictionString += "," className = classSet.getName(classIds[i]) if unmergeEPINeg: className = InteractionXML.ResolveEPITriggerTypes.determineNewType(className, eText) predictionString += className + ":" + str(classWeights[i]) element.attrib["predictions"] = predictionString